diff options
author | Elijah Newren <newren@gmail.com> | 2006-01-05 23:56:05 +0000 |
---|---|---|
committer | Elijah Newren <newren@src.gnome.org> | 2006-01-05 23:56:05 +0000 |
commit | 5af843f65b9bc1b3d0e739ce7dc9ee4ddaee6cfc (patch) | |
tree | d3f80c4a6004ebcd9366788abdd6a40f44a3f651 /src/display.h | |
parent | 10f774d2b4104a4fdb6c0abf7b65a4311636274a (diff) | |
download | metacity-5af843f65b9bc1b3d0e739ce7dc9ee4ddaee6cfc.tar.gz |
Make the workspace switcher work with dual-head (non-xinerama) setups.
2006-01-05 Elijah Newren <newren@gmail.com>
Make the workspace switcher work with dual-head (non-xinerama)
setups. Fixes #319423.
* src/display.c (meta_display_open, event_callback,
meta_display_focus_the_no_focus_window):
* src/display.h (struct MetaDisplay,
meta_display_focus_the_no_focus_window):
* src/keybindings.c (primary_modifier_still_pressed):
* src/screen.c (meta_screen_new):
* src/screen.h (struct MetaScreen):
* src/window.c (meta_window_new_with_attrs, meta_window_show):
* src/workspace.c (meta_workspace_focus_default_window):
Replace display->no_focus_window with a no_focus_window for each
screen.
* src/display.[ch] (meta_display_xwindow_is_a_no_focus_window,
event_callback):
* src/window.c (meta_window_new_with_attrs):
New utility function, meta_display_xwindow_is_a_no_focus_window(),
for checking if the given xwindow is a no_focus_window for one of
the screens.
Diffstat (limited to 'src/display.h')
-rw-r--r-- | src/display.h | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/src/display.h b/src/display.h index fef38d69..a27a0a14 100644 --- a/src/display.h +++ b/src/display.h @@ -223,11 +223,6 @@ struct _MetaDisplay XErrorEvent *error); int server_grab_count; - /* This window holds the focus when we don't want to focus - * any actual clients - */ - Window no_focus_window; - /* for double click */ Time last_button_time; Window last_button_xwindow; @@ -418,6 +413,9 @@ void meta_display_register_x_window (MetaDisplay *display, MetaWindow *window); void meta_display_unregister_x_window (MetaDisplay *display, Window xwindow); +/* Return whether the xwindow is a no focus window for any of the screens */ +gboolean meta_display_xwindow_is_a_no_focus_window (MetaDisplay *display, + Window xwindow); GSList* meta_display_list_windows (MetaDisplay *display); @@ -548,6 +546,7 @@ void meta_display_set_input_focus_window (MetaDisplay *display, * same as meta_display_set_input_focus_window */ void meta_display_focus_the_no_focus_window (MetaDisplay *display, + MetaScreen *screen, Time timestamp); void meta_display_queue_autoraise_callback (MetaDisplay *display, |