macos: run glib idle functions when in nested run loop

It looks like DnD starts a nested run loop. We still have to run our
GLib handlers, so animations work.
This commit is contained in:
Arjan Molenaar 2023-01-11 16:29:24 +01:00
parent 9c3629653f
commit 420be8fb0f

View File

@ -1018,7 +1018,10 @@ run_loop_observer_callback (CFRunLoopObserverRef observer,
break;
}
if (getting_events > 0) /* Activity we triggered */
/* DnD starts a nested runloop, or so it seems.
If we have such a loop, we still want to run
our idle handlers. */
if (getting_events > 0 && current_loop_level < 2)
return;
switch (activity)