diff --git a/ChangeLog b/ChangeLog index 805cb9ca0..0baf282c4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,8 +1,15 @@ +2004-09-15 Elijah Newren + + Prevent focus inconsistencies by only providing one focus method + (fixes #151990) + + * + 2004-09-15 Elijah Newren Remove race condition for focus window choice on window close followed by rapid mouse movement in sloppy and mouse focus modes - (fixes #152000) + (partially fixes #152000) * src/window.c (meta_window_free): Don't increment the focus sentinel for windows being freed, (idle_calc_showing): don't diff --git a/src/screen.c b/src/screen.c index 1f19641fa..695c335b5 100644 --- a/src/screen.c +++ b/src/screen.c @@ -2239,8 +2239,6 @@ meta_screen_show_desktop (MetaScreen *screen) queue_windows_showing (screen); update_showing_desktop_hint (screen); - - meta_workspace_focus_top_window (screen->active_workspace, NULL); } void diff --git a/src/workspace.c b/src/workspace.c index 04f374c8c..912a41bd2 100644 --- a/src/workspace.c +++ b/src/workspace.c @@ -27,9 +27,12 @@ #include #include -void meta_workspace_queue_calc_showing (MetaWorkspace *workspace); - -static void set_active_space_hint (MetaScreen *screen); +void meta_workspace_queue_calc_showing (MetaWorkspace *workspace); +static void set_active_space_hint (MetaScreen *screen); +static void meta_workspace_focus_mru_window (MetaWorkspace *workspace, + MetaWindow *not_this_one); +static void meta_workspace_focus_top_window (MetaWorkspace *workspace, + MetaWindow *not_this_one); static void maybe_add_to_list (MetaScreen *screen, MetaWindow *window, gpointer data) diff --git a/src/workspace.h b/src/workspace.h index 5a45c60ce..4dc0df9db 100644 --- a/src/workspace.h +++ b/src/workspace.h @@ -77,12 +77,8 @@ void meta_workspace_get_work_area_for_xinerama (MetaWorkspace *workspace, void meta_workspace_get_work_area_all_xineramas (MetaWorkspace *workspace, MetaRectangle *area); -void meta_workspace_focus_mru_window (MetaWorkspace *workspace, - MetaWindow *not_this_one); void meta_workspace_focus_default_window (MetaWorkspace *workspace, MetaWindow *not_this_one); -void meta_workspace_focus_top_window (MetaWorkspace *workspace, - MetaWindow *not_this_one); MetaWorkspace* meta_workspace_get_neighbor (MetaWorkspace *workspace, MetaMotionDirection direction);