diff options
author | Julian Eisel <julian@blender.org> | 2022-05-11 14:16:54 +0300 |
---|---|---|
committer | Julian Eisel <julian@blender.org> | 2022-05-23 19:01:11 +0300 |
commit | 0e6d70fec9af379eabcf2600bd574dd1488f8751 (patch) | |
tree | c62c5393a9193bbd6da87b815bf84e89640f9ae7 /source | |
parent | d91711bc85363fac5d58acc14ed006b526c17e63 (diff) |
Fix "Open Clip" operator in Clip Editor broken
Steps to reproduce were:
- Open Clip Editor
- Call "Open Clip" (e.g. Alt+O)
- Select video file
The file wouldn't be loaded into the Clip Editor.
Caused by 7849b56c3c41.
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/windowmanager/intern/wm_event_system.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/source/blender/windowmanager/intern/wm_event_system.c b/source/blender/windowmanager/intern/wm_event_system.c index 54598355c41..1648bdfb9d4 100644 --- a/source/blender/windowmanager/intern/wm_event_system.c +++ b/source/blender/windowmanager/intern/wm_event_system.c @@ -4087,7 +4087,11 @@ void WM_event_add_fileselect(bContext *C, wmOperator *op) /* Close any popups, like when opening a file browser from the splash. */ UI_popup_handlers_remove_all(C, &root_win->modalhandlers); - CTX_wm_window_set(C, root_win); + /* Setting the context window unsets the context area & screen. Avoid doing that, so operators + * calling the file browser can operate in the context the browser was opened in. */ + if (ctx_win != root_win) { + CTX_wm_window_set(C, root_win); + } /* The root window may already have a File Browser open. Cancel it if so, only 1 should be open * per window. The root context of this operation is also used for the new operation. */ @@ -4142,7 +4146,9 @@ void WM_event_add_fileselect(bContext *C, wmOperator *op) WM_event_fileselect_event(wm, op, EVT_FILESELECT_FULL_OPEN); - CTX_wm_window_set(C, ctx_win); + if (ctx_win != root_win) { + CTX_wm_window_set(C, ctx_win); + } } /** \} */ |