From 5fa8791c860fbeec4d03ac2f208168c153f4033b Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Fri, 10 Dec 2010 20:46:42 -0500 Subject: [PATCH] Add a vfunc for _gdk_events_queue --- gdk/gdkdisplay.c | 4 ++-- gdk/gdkinternals.h | 1 + gdk/x11/gdkdisplay-x11.c | 1 + gdk/x11/gdkeventsource.c | 18 +++++++++--------- gdk/x11/gdkprivate-x11.h | 3 ++- 5 files changed, 15 insertions(+), 12 deletions(-) diff --git a/gdk/gdkdisplay.c b/gdk/gdkdisplay.c index 157e5ef0b1..c0252c1d68 100644 --- a/gdk/gdkdisplay.c +++ b/gdk/gdkdisplay.c @@ -394,8 +394,8 @@ GdkEvent* gdk_display_get_event (GdkDisplay *display) { g_return_val_if_fail (GDK_IS_DISPLAY (display), NULL); - - _gdk_events_queue (display); + + GDK_DISPLAY_GET_CLASS (display)->queue_events (display); return _gdk_event_unqueue (display); } diff --git a/gdk/gdkinternals.h b/gdk/gdkinternals.h index a0dfff8cae..7b08fe84ae 100644 --- a/gdk/gdkinternals.h +++ b/gdk/gdkinternals.h @@ -303,6 +303,7 @@ struct _GdkDisplayClass void (*sync) (GdkDisplay *display); void (*flush) (GdkDisplay *display); gboolean (*has_pending) (GdkDisplay *display); + void (*queue_events) (GdkDisplay *display); GdkWindow * (*get_default_group) (GdkDisplay *display); gboolean (*supports_selection_notification) (GdkDisplay *display); gboolean (*request_selection_notification) (GdkDisplay *display, diff --git a/gdk/x11/gdkdisplay-x11.c b/gdk/x11/gdkdisplay-x11.c index 01bd04008e..a2c49e0e56 100644 --- a/gdk/x11/gdkdisplay-x11.c +++ b/gdk/x11/gdkdisplay-x11.c @@ -2682,6 +2682,7 @@ _gdk_display_x11_class_init (GdkDisplayX11Class * class) display_class->sync = gdk_x11_display_sync; display_class->flush = gdk_x11_display_flush; display_class->has_pending = gdk_x11_display_has_pending; + display_class->queue_events = _gdk_x11_display_queue_events; display_class->get_default_group = gdk_x11_display_get_default_group; display_class->supports_selection_notification = gdk_x11_display_supports_selection_notification; display_class->request_selection_notification = gdk_x11_display_request_selection_notification; diff --git a/gdk/x11/gdkeventsource.c b/gdk/x11/gdkeventsource.c index 22cc5b1e5e..21552dbc97 100644 --- a/gdk/x11/gdkeventsource.c +++ b/gdk/x11/gdkeventsource.c @@ -263,7 +263,7 @@ gdk_event_source_check (GSource *source) } void -_gdk_events_queue (GdkDisplay *display) +_gdk_x11_display_queue_events (GdkDisplay *display) { GdkEvent *event; XEvent xevent; @@ -279,14 +279,14 @@ _gdk_events_queue (GdkDisplay *display) XNextEvent (xdisplay, &xevent); switch (xevent.type) - { - case KeyPress: - case KeyRelease: - break; - default: - if (XFilterEvent (&xevent, None)) - continue; - } + { + case KeyPress: + case KeyRelease: + break; + default: + if (XFilterEvent (&xevent, None)) + continue; + } event = gdk_event_source_translate_event (event_source, &xevent); diff --git a/gdk/x11/gdkprivate-x11.h b/gdk/x11/gdkprivate-x11.h index e878b5146a..752099cca2 100644 --- a/gdk/x11/gdkprivate-x11.h +++ b/gdk/x11/gdkprivate-x11.h @@ -149,7 +149,8 @@ void _gdk_x11_display_update_grab_info_ungrab (GdkDisplay *display, GdkDevice *device, guint32 time, gulong serial); -void _gdk_x11_device_check_extension_events (GdkDevice *device); +void _gdk_x11_display_queue_events (GdkDisplay *display); +void _gdk_x11_device_check_extension_events (GdkDevice *device); void _gdk_x11_display_manager_add_display (GdkDisplayManager *manager, GdkDisplay *display);