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:
authorJulian Eisel <eiseljulian@gmail.com>2018-11-24 21:20:31 +0300
committerJulian Eisel <eiseljulian@gmail.com>2018-11-24 21:20:31 +0300
commit23d66c5d609ad9d113214ab0ec99668dded35ac3 (patch)
tree94158131e4d74cfaca862ca1f476f6c00f9a043f /source/blender/windowmanager/intern/wm_window.c
parent0c8b0771f26120d557c80df1a30905c8228fd702 (diff)
Fix T58022: Changing workspace may change layout of User Pref window
Logic to update child windows on workspace changes should simply ignore temporary child windows. Users opened those for a specific purpose (i.e. edit user preferences or show render result). Blender should not come in and repurpose it.
Diffstat (limited to 'source/blender/windowmanager/intern/wm_window.c')
-rw-r--r--source/blender/windowmanager/intern/wm_window.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/source/blender/windowmanager/intern/wm_window.c b/source/blender/windowmanager/intern/wm_window.c
index df20dbd8055..b644457e593 100644
--- a/source/blender/windowmanager/intern/wm_window.c
+++ b/source/blender/windowmanager/intern/wm_window.c
@@ -2230,6 +2230,11 @@ void WM_window_set_active_workspace(bContext *C, wmWindow *win, WorkSpace *works
for (wmWindow *win_child = wm->windows.first; win_child; win_child = win_child->next) {
if (win_child->parent == win_parent) {
+ bScreen *screen = WM_window_get_active_screen(win_child);
+ /* Don't change temporary screens, they only serve a single purpose. */
+ if (screen->temp) {
+ continue;
+ }
ED_workspace_change(workspace, C, wm, win_child);
}
}