summaryrefslogtreecommitdiff
path: root/src/keybindings.c
diff options
context:
space:
mode:
authorElijah Newren <newren@gmail.com>2005-12-28 06:24:30 +0000
committerElijah Newren <newren@src.gnome.org>2005-12-28 06:24:30 +0000
commit703f58cdf7cdb2f8b77f2230fa4104fa57997e48 (patch)
tree1fb211087429fd6dbfc79c887fb2d3f45cb6a877 /src/keybindings.c
parent5e9f20e94cf439b916910ad24b8c7681675ca0bf (diff)
downloadmetacity-703f58cdf7cdb2f8b77f2230fa4104fa57997e48.tar.gz
Make the workspace switcher work with dual-head (non-xinerama) setups.
2005-12-27 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/keybindings.c')
-rw-r--r--src/keybindings.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/keybindings.c b/src/keybindings.c
index e1872a0e..a70a5359 100644
--- a/src/keybindings.c
+++ b/src/keybindings.c
@@ -1451,11 +1451,15 @@ primary_modifier_still_pressed (MetaDisplay *display,
int x, y, root_x, root_y;
Window root, child;
guint mask;
+ MetaScreen *random_screen;
+ Window random_xwindow;
primary_modifier = get_primary_modifier (display, entire_binding_mask);
+ random_screen = display->screens->data;
+ random_xwindow = random_screen->no_focus_window;
XQueryPointer (display->xdisplay,
- display->no_focus_window, /* some random window */
+ random_xwindow, /* some random window */
&root, &child,
&root_x, &root_y,
&x, &y,