WM: don't skip AutoSave if modal operator is 'fileselect' #107555

Open
Germano Cavalcante wants to merge 1 commits from mano-wii/blender:autosave_relax into main

When changing the target branch, be careful to rebase the branch in your fork to match. See documentation.
1 changed files with 7 additions and 1 deletions

View File

@ -2083,6 +2083,11 @@ void wm_autosave_timer(Main *bmain, wmWindowManager *wm, wmTimer * /*wt*/)
LISTBASE_FOREACH (wmEventHandler *, handler_base, &win->modalhandlers) {
if (handler_base->type == WM_HANDLER_TYPE_OP) {
wmEventHandler_Op *handler = (wmEventHandler_Op *)handler_base;
if (handler->is_fileselect) {
/* Skip the file selection handle because, as a non-blocking operator, the user can keep
* its window open longer than is convenient for Auto-Save. */
continue;
}
if (handler->op) {
wm_autosave_timer_begin_ex(wm, 0.01);
return;
@ -3039,7 +3044,8 @@ static int wm_recover_last_session_invoke(bContext *C, wmOperator *op, const wmE
wm_open_init_use_scripts(op, false);
if (wm_operator_close_file_dialog_if_needed(
C, op, wm_recover_last_session_after_dialog_callback)) {
C, op, wm_recover_last_session_after_dialog_callback))
{
return OPERATOR_INTERFACE;
}
return wm_recover_last_session_exec(C, op);