[mutter/wip/wayland-clutter-events-2: 3/19] display: Add a quick out path to handle_xevent
- From: Jasper St. Pierre <jstpierre src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter/wip/wayland-clutter-events-2: 3/19] display: Add a quick out path to handle_xevent
- Date: Sat, 5 Oct 2013 14:15:04 +0000 (UTC)
commit 52027d36818b180b5604b20e48b5dace993f1650
Author: Jasper St. Pierre <jstpierre mecheye net>
Date: Thu Oct 3 16:12:34 2013 -0400
display: Add a quick out path to handle_xevent
This makes the code flow more like the scheme we usually use, and allows
us to flatten out the method somewhat.
src/core/display.c | 22 +++++++++++++++++-----
1 files changed, 17 insertions(+), 5 deletions(-)
---
diff --git a/src/core/display.c b/src/core/display.c
index 9616a4b..ac15d6d 100644
--- a/src/core/display.c
+++ b/src/core/display.c
@@ -2260,16 +2260,20 @@ meta_display_handle_xevent (MetaDisplay *display,
sn_display_process_event (display->sn_display, event);
#endif
+ bypass_compositor = FALSE;
+ filter_out_event = FALSE;
+
/* Intercept XRandR events early and don't attempt any
processing for them. We still let them through to Gdk though,
so it can update its own internal state.
*/
monitor = meta_monitor_manager_get ();
if (meta_monitor_manager_handle_xevent (monitor, event))
- return FALSE;
-
- bypass_compositor = FALSE;
- filter_out_event = FALSE;
+ {
+ bypass_compositor = TRUE;
+ goto out;
+ }
+
display->current_time = event_get_time (display, event);
display->monitor_cache_invalidated = TRUE;
@@ -2290,7 +2294,10 @@ meta_display_handle_xevent (MetaDisplay *display,
if (screen)
{
if (meta_screen_handle_xevent (screen, event))
- return TRUE;
+ {
+ bypass_compositor = filter_out_event = TRUE;
+ goto out;
+ }
}
modified = event_get_modified_window (display, event);
@@ -2367,6 +2374,8 @@ meta_display_handle_xevent (MetaDisplay *display,
}
else
meta_idle_monitor_handle_xevent_all (event);
+
+ goto out;
}
#endif /* HAVE_XSYNC */
@@ -2392,6 +2401,8 @@ meta_display_handle_xevent (MetaDisplay *display,
window ? window->desc : "(none)",
frame_was_receiver);
}
+
+ goto out;
}
#endif /* HAVE_SHAPE */
@@ -3205,6 +3216,7 @@ meta_display_handle_xevent (MetaDisplay *display,
}
}
+ out:
if (display->compositor && !bypass_compositor)
{
if (meta_compositor_process_event (display->compositor,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]