diff options
Diffstat (limited to 'source/blender/editors')
-rw-r--r-- | source/blender/editors/include/ED_screen.h | 5 | ||||
-rw-r--r-- | source/blender/editors/screen/screen_edit.c | 10 |
2 files changed, 13 insertions, 2 deletions
diff --git a/source/blender/editors/include/ED_screen.h b/source/blender/editors/include/ED_screen.h index 92aeaf03329..b90c7f27c57 100644 --- a/source/blender/editors/include/ED_screen.h +++ b/source/blender/editors/include/ED_screen.h @@ -210,7 +210,10 @@ void ED_screen_ensure_updated(struct wmWindowManager *wm, struct bScreen *screen); void ED_screen_do_listen(struct bContext *C, struct wmNotifier *note); bool ED_screen_change(struct bContext *C, struct bScreen *screen); -void ED_screen_scene_change(struct bContext *C, struct wmWindow *win, struct Scene *scene); +void ED_screen_scene_change(struct bContext *C, + struct wmWindow *win, + struct Scene *scene, + const bool refresh_toolsystem); void ED_screen_set_active_region(struct bContext *C, struct wmWindow *win, const int xy[2]); void ED_screen_exit(struct bContext *C, struct wmWindow *window, struct bScreen *screen); void ED_screen_animation_timer(struct bContext *C, int redraws, int sync, int enable); diff --git a/source/blender/editors/screen/screen_edit.c b/source/blender/editors/screen/screen_edit.c index 4d387ad0191..841792d5f2d 100644 --- a/source/blender/editors/screen/screen_edit.c +++ b/source/blender/editors/screen/screen_edit.c @@ -57,6 +57,7 @@ #include "UI_interface.h" #include "WM_message.h" +#include "WM_toolsystem.h" #include "DEG_depsgraph_query.h" @@ -1239,7 +1240,10 @@ static void screen_set_3dview_camera(Scene *scene, } } -void ED_screen_scene_change(bContext *C, wmWindow *win, Scene *scene) +void ED_screen_scene_change(bContext *C, + wmWindow *win, + Scene *scene, + const bool refresh_toolsystem) { #if 0 ViewLayer *view_layer_old = WM_window_get_active_view_layer(win); @@ -1277,6 +1281,10 @@ void ED_screen_scene_change(bContext *C, wmWindow *win, Scene *scene) } } } + + if (refresh_toolsystem) { + WM_toolsystem_refresh_screen_window(win); + } } ScrArea *ED_screen_full_newspace(bContext *C, ScrArea *area, int type) |