From de5588c10ee640c23426c62553df0964f29ef28e Mon Sep 17 00:00:00 2001 From: Elijah Newren Date: Wed, 2 Feb 2005 18:46:09 +0000 Subject: Focus parents of dismissed transient windows in preference to the window 2005-02-02 Elijah Newren Focus parents of dismissed transient windows in preference to the window that most recently had keyboard focus. Fixes #157360. * doc/how-to-get-focus-right.txt: Note the distinction between "most recently used window" and "most recent to have keyboard focus" that we are now making. * src/workspace.c: (focus_ancestor_or_mru_window): rename from meta_workspace_focus_mru_window, and first check whether we need to focus an ancestor window before looking for the mru window, (record_ancestor): helper function for focus_ancestor_or_mru_window, (meta_workspace_focus_default_window): update due to the function rename from meta_workspace_focus_mru_window to focus_ancestor_or_mru_window --- doc/how-to-get-focus-right.txt | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'doc') diff --git a/doc/how-to-get-focus-right.txt b/doc/how-to-get-focus-right.txt index 2f9f03e9..9d9ab696 100644 --- a/doc/how-to-get-focus-right.txt +++ b/doc/how-to-get-focus-right.txt @@ -37,6 +37,14 @@ Focus method Behavior mouse Focus the window containing the pointer if there is one, otherwise focus the designated "no_focus_window". +Note that "most recently used window", as used here, has a slightly +different connotation than "most recent to have keyboard focus". This +is because when a user activates a window that is a transient, its +ancestor(s) should be considered to be more recently used than other +windows that have had the keyboard focus more recently. (See bug +157360; this may mean that the alt-tab order should also change +simultaneously, although the current implementation does not do that.) + Also, sometimes a new window will be mapped (e.g. unminimizing a window or launching a new application). Most users want to interact with new windows right away, so these should typically be focused. -- cgit v1.2.1