Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/windowmanager')
-rw-r--r--source/blender/windowmanager/intern/wm_event_system.c8
-rw-r--r--source/blender/windowmanager/intern/wm_files.c3
-rw-r--r--source/blender/windowmanager/wm_event_system.h2
3 files changed, 8 insertions, 5 deletions
diff --git a/source/blender/windowmanager/intern/wm_event_system.c b/source/blender/windowmanager/intern/wm_event_system.c
index 952382c2e36..e38d8723e06 100644
--- a/source/blender/windowmanager/intern/wm_event_system.c
+++ b/source/blender/windowmanager/intern/wm_event_system.c
@@ -313,7 +313,7 @@ static void wm_notifier_clear(wmNotifier *note)
memset(((char *)note) + sizeof(Link), 0, sizeof(*note) - sizeof(Link));
}
-void wm_event_do_depsgraph(bContext *C)
+void wm_event_do_depsgraph(bContext *C, bool is_after_open_file)
{
wmWindowManager *wm = CTX_wm_manager(C);
/* The whole idea of locked interface is to prevent viewport and whatever
@@ -347,6 +347,10 @@ void wm_event_do_depsgraph(bContext *C)
* across visible view layers and has overrides on it.
*/
Depsgraph *depsgraph = BKE_scene_get_depsgraph(scene, view_layer, true);
+ if (is_after_open_file) {
+ DEG_graph_relations_update(depsgraph, bmain, scene, view_layer);
+ DEG_graph_on_visible_update(bmain, depsgraph, true);
+ }
DEG_make_active(depsgraph);
BKE_scene_graph_update_tagged(depsgraph, bmain);
}
@@ -374,7 +378,7 @@ void wm_event_do_refresh_wm_and_depsgraph(bContext *C)
}
}
- wm_event_do_depsgraph(C);
+ wm_event_do_depsgraph(C, false);
CTX_wm_window_set(C, NULL);
}
diff --git a/source/blender/windowmanager/intern/wm_files.c b/source/blender/windowmanager/intern/wm_files.c
index 26130e8c3bd..f3aa5a1b6ca 100644
--- a/source/blender/windowmanager/intern/wm_files.c
+++ b/source/blender/windowmanager/intern/wm_files.c
@@ -557,8 +557,7 @@ static void wm_file_read_post(bContext *C,
/* After load post, so for example the driver namespace can be filled
* before evaluating the depsgraph. */
- DEG_on_visible_update(bmain, true);
- wm_event_do_depsgraph(C);
+ wm_event_do_depsgraph(C, true);
ED_editors_init(C);
diff --git a/source/blender/windowmanager/wm_event_system.h b/source/blender/windowmanager/wm_event_system.h
index 55285b884da..53b25a80dce 100644
--- a/source/blender/windowmanager/wm_event_system.h
+++ b/source/blender/windowmanager/wm_event_system.h
@@ -140,7 +140,7 @@ void wm_event_do_handlers(bContext *C);
void wm_event_add_ghostevent(wmWindowManager *wm, wmWindow *win, int type, void *customdata);
-void wm_event_do_depsgraph(bContext *C);
+void wm_event_do_depsgraph(bContext *C, bool is_after_open_file);
void wm_event_do_refresh_wm_and_depsgraph(bContext *C);
void wm_event_do_notifiers(bContext *C);