[Bf-blender-cvs] [285b06da515] blender2.8: Fix multi-object edit state on load

Campbell Barton noreply at git.blender.org
Thu Dec 6 07:56:14 CET 2018


Commit: 285b06da515d18c19f5674091fad60f7b3d52be3
Author: Campbell Barton
Date:   Thu Dec 6 17:52:21 2018 +1100
Branches: blender2.8
https://developer.blender.org/rB285b06da515d18c19f5674091fad60f7b3d52be3

Fix multi-object edit state on load

Objects selected on save would enter edit-mode on file load.

===================================================================

M	source/blender/editors/util/ed_util.c

===================================================================

diff --git a/source/blender/editors/util/ed_util.c b/source/blender/editors/util/ed_util.c
index f316b1a61cb..8de46442fe9 100644
--- a/source/blender/editors/util/ed_util.c
+++ b/source/blender/editors/util/ed_util.c
@@ -91,6 +91,7 @@
 void ED_editors_init(bContext *C)
 {
 	Main *bmain = CTX_data_main(C);
+	Scene *scene = CTX_data_scene(C);
 	wmWindowManager *wm = CTX_wm_manager(C);
 
 	if (wm->undo_stack == NULL) {
@@ -122,7 +123,15 @@ void ED_editors_init(bContext *C)
 					ID *data = ob->data;
 					ob->mode = OB_MODE_OBJECT;
 					if ((ob == obact) && !ID_IS_LINKED(ob) && !(data && ID_IS_LINKED(data))) {
-						ED_object_mode_toggle(C, mode);
+						if (mode == OB_MODE_EDIT) {
+							ED_object_editmode_enter_ex(bmain, scene, ob, 0);
+						}
+						else if (mode == OB_MODE_POSE) {
+							ED_object_posemode_enter_ex(bmain, ob);
+						}
+						else {
+							ED_object_mode_toggle(C, mode);
+						}
 					}
 				}
 			}
@@ -130,11 +139,8 @@ void ED_editors_init(bContext *C)
 	}
 
 	/* image editor paint mode */
-	{
-		Scene *sce = CTX_data_scene(C);
-		if (sce) {
-			ED_space_image_paint_update(bmain, wm, sce);
-		}
+	if (scene) {
+		ED_space_image_paint_update(bmain, wm, scene);
 	}
 
 	SWAP(int, reports->flag, reports_flag_prev);



More information about the Bf-blender-cvs mailing list