core: Move remaining default focus window handling to workspace

Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2489>
This commit is contained in:
Sebastian Wick
2022-07-12 00:45:43 +02:00
committed by Marge Bot
parent 3a96ef023b
commit b4b9a7c90f
9 changed files with 129 additions and 242 deletions

View File

@ -5058,9 +5058,15 @@ meta_window_update_appears_focused (MetaWindow *window)
workspace = meta_window_get_workspace (window);
if (workspace && workspace != workspace_manager->active_workspace)
appears_focused = window == meta_workspace_get_default_focus_window (workspace);
{
appears_focused =
window == meta_workspace_get_default_focus_window (workspace, NULL) &&
meta_prefs_get_focus_mode () == G_DESKTOP_FOCUS_MODE_CLICK;
}
else
appears_focused = window->has_focus || window->attached_focus_window;
{
appears_focused = window->has_focus || window->attached_focus_window;
}
if (window->appears_focused == appears_focused)
return;