diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2009-09-28 19:34:15 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2009-09-28 19:34:15 +0400 |
commit | ea41a343c06db1077058a75a7835cac9508e5285 (patch) | |
tree | 4fa59441591ee86c68c1af2bd997288c34657ecc | |
parent | 45aedba8e4bcbf4b48af0053a8e7fb34eb91339c (diff) |
Fix #19479: ctrl+N could temporarily freeze the window when user
preferences were saved from a separate window. Missing transfor of
active window state to the new window.
-rw-r--r-- | source/blender/windowmanager/intern/wm_files.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/source/blender/windowmanager/intern/wm_files.c b/source/blender/windowmanager/intern/wm_files.c index 9694a8fa1c6..1aca9a66e57 100644 --- a/source/blender/windowmanager/intern/wm_files.c +++ b/source/blender/windowmanager/intern/wm_files.c @@ -195,6 +195,7 @@ static void wm_window_match_do(bContext *C, ListBase *oldwmlist) /* ensure making new keymaps and set space types */ wm->initialized= 0; + wm->winactive= NULL; /* only first wm in list has ghostwins */ for(win= wm->windows.first; win; win= win->next) { @@ -202,6 +203,10 @@ static void wm_window_match_do(bContext *C, ListBase *oldwmlist) if(oldwin->winid == win->winid ) { win->ghostwin= oldwin->ghostwin; + win->active= oldwin->active; + if(win->active) + wm->winactive= win; + GHOST_SetWindowUserData(win->ghostwin, win); /* pointer back */ oldwin->ghostwin= NULL; |