[mutter/wip/xinput2: 6/49] display: Use helper functions for getting window/root in input events



commit 1b7a6ce912b52b36d0bab8e4eec84f5a76436199
Author: Carlos Garnacho <carlosg gnome org>
Date:   Wed Jun 8 10:55:08 2011 +0200

    display: Use helper functions for getting window/root in input events

 src/core/display.c |   18 ++++++++++--------
 1 files changed, 10 insertions(+), 8 deletions(-)
---
diff --git a/src/core/display.c b/src/core/display.c
index f9282de..036de1e 100644
--- a/src/core/display.c
+++ b/src/core/display.c
@@ -1719,6 +1719,8 @@ event_callback (XEvent   *event,
 
   if (meta_input_event_get_type (display, event, &evtype))
     {
+      Window xwindow = meta_input_event_get_window (display, event);
+
       if (window && !window->override_redirect &&
           ((evtype == KeyPress) || (evtype == ButtonPress)))
         {
@@ -1781,7 +1783,7 @@ event_callback (XEvent   *event,
                   meta_topic (META_DEBUG_WINDOW_OPS,
                               "Syncing to old stack positions.\n");
                   screen =
-                    meta_display_screen_for_root (display, event->xany.window);
+                    meta_display_screen_for_root (display, xwindow);
 
                   if (screen!=NULL)
                     meta_stack_set_positions (screen->stack,
@@ -1984,8 +1986,9 @@ event_callback (XEvent   *event,
            * actually appear on the right screen.
            */
           {
+            Window xroot = meta_input_event_get_root_window (display, event);
             MetaScreen *new_screen =
-              meta_display_screen_for_root (display, event->xcrossing.root);
+              meta_display_screen_for_root (display, xroot);
 
             if (new_screen != NULL && display->active_screen != new_screen)
               meta_workspace_focus_default_window (new_screen->active_workspace,
@@ -2085,8 +2088,7 @@ event_callback (XEvent   *event,
             {
               meta_window_notify_focus (window, event);
             }
-          else if (meta_display_xwindow_is_a_no_focus_window (display,
-                                                              event->xany.window))
+          else if (meta_display_xwindow_is_a_no_focus_window (display, xwindow))
             {
               meta_topic (META_DEBUG_FOCUS,
                           "Focus %s event received on no_focus_window 0x%lx "
@@ -2094,15 +2096,15 @@ event_callback (XEvent   *event,
                           evtype == FocusIn ? "in" :
                           evtype == FocusOut ? "out" :
                           "???",
-                          event->xany.window,
+                          xwindow,
                           meta_event_mode_to_string (event->xfocus.mode),
                           meta_event_detail_to_string (event->xfocus.detail));
             }
           else
             {
               MetaScreen *screen =
-                meta_display_screen_for_root(display,
-                                             event->xany.window);
+                meta_display_screen_for_root(display, xwindow);
+
               if (screen == NULL)
                 break;
 
@@ -2112,7 +2114,7 @@ event_callback (XEvent   *event,
                           evtype == FocusIn ? "in" :
                           evtype == FocusOut ? "out" :
                           "???",
-                          event->xany.window,
+                          xwindow,
                           meta_event_mode_to_string (event->xfocus.mode),
                           meta_event_detail_to_string (event->xfocus.detail));
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]