shell-app: Make recent all app windows on the target workspace

meta_window_raise_and_make_recent_on_workspace now works on a target
workspace instead of the active workspace. We call this before another
workspace is made active so the previous behavior made the window the
MRU window on the wrong workspace. If an app got activated and one
window closed, the stacking and focus diverged.

Related: https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3315
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2991>
This commit is contained in:
Sebastian Wick 2023-10-10 00:13:40 +02:00
parent c6dc2c1974
commit d383f4acac

View File

@ -458,8 +458,8 @@ shell_app_activate_window (ShellApp *app,
{
MetaWindow *other_window = iter->data;
if (other_window != window && meta_window_get_workspace (other_window) == workspace)
meta_window_raise_and_make_recent (other_window);
if (other_window != window)
meta_window_raise_and_make_recent_on_workspace (other_window, workspace);
}
g_slist_free (windows_reversed);