From af83598ad3aed753b73ee9e851d6c56cee84928b Mon Sep 17 00:00:00 2001 From: Anders Carlsson Date: Sat, 11 May 2002 06:59:54 +0000 Subject: Add screen argument to meta_display_get_tab_next, since we only want 2002-05-11 Anders Carlsson * src/display.c: (find_tab_forward), (find_tab_backward), (meta_display_get_tab_next): * src/display.h: * src/keybindings.c: (handle_tab_forward), (handle_focus_previous): Add screen argument to meta_display_get_tab_next, since we only want windows on the same screen to appear in the tab chain. * src/screen.c: (meta_screen_new): Or the event mask with existing events since gtk+ may listen to certain events and we don't want to disable those events. (meta_screen_ensure_tab_popup): * src/tabpopup.c: (meta_ui_tab_popup_new): * src/tabpopup.h: Add a screen number argument to meta_ui_tab_popup_new so we can position the popup on the correct screen. --- src/screen.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) (limited to 'src/screen.c') diff --git a/src/screen.c b/src/screen.c index 98c7a425..c765eda4 100644 --- a/src/screen.c +++ b/src/screen.c @@ -165,6 +165,8 @@ meta_screen_new (MetaDisplay *display, MetaScreen *screen; Window xroot; Display *xdisplay; + XWindowAttributes attr; + int xinerama_event_base, xinerama_error_base; /* Only display->name, display->xdisplay, and display->error_traps @@ -191,13 +193,18 @@ meta_screen_new (MetaDisplay *display, /* Select our root window events */ meta_error_trap_push (display); + + /* We need to or with the existing event mask since + * gtk+ may be interested in other events. + */ + XGetWindowAttributes (xdisplay, xroot, &attr); XSelectInput (xdisplay, xroot, SubstructureRedirectMask | SubstructureNotifyMask | ColormapChangeMask | PropertyChangeMask | LeaveWindowMask | EnterWindowMask | ButtonPressMask | ButtonReleaseMask | - FocusChangeMask); + FocusChangeMask | attr.your_event_mask); if (meta_error_trap_pop (display) != Success) { meta_warning (_("Screen %d on display '%s' already has a window manager\n"), @@ -683,7 +690,7 @@ meta_screen_ensure_tab_popup (MetaScreen *screen, GSList *tmp; int len; int i; - + if (screen->tab_popup) return; @@ -747,8 +754,8 @@ meta_screen_ensure_tab_popup (MetaScreen *screen, ++i; tmp = tmp->next; } - - screen->tab_popup = meta_ui_tab_popup_new (entries); + + screen->tab_popup = meta_ui_tab_popup_new (entries, screen->number); g_free (entries); g_slist_free (tab_list); -- cgit v1.2.1