summaryrefslogtreecommitdiff
path: root/gdk
diff options
context:
space:
mode:
authorOwen Taylor <otaylor@redhat.com>1999-01-15 15:56:32 +0000
committerOwen Taylor <otaylor@src.gnome.org>1999-01-15 15:56:32 +0000
commiteb7c4e4589d40766c785d13000ae76d567232a1b (patch)
treec61dd32a0246bffdfd3753f4d48829be69c53ba4 /gdk
parent40f967046464440d13ba7f12b91771a0d7d8239e (diff)
downloadgtk+-eb7c4e4589d40766c785d13000ae76d567232a1b.tar.gz
Do all event processing in dispatch() instead of prepare() and check().
Thu Jan 14 19:19:51 1999 Owen Taylor <otaylor@redhat.com> * gdk/gdkevents.c: Do all event processing in dispatch() instead of prepare() and check().
Diffstat (limited to 'gdk')
-rw-r--r--gdk/gdkevents.c10
-rw-r--r--gdk/x11/gdkevents-x11.c10
2 files changed, 10 insertions, 10 deletions
diff --git a/gdk/gdkevents.c b/gdk/gdkevents.c
index 24e1b67a04..5eb1b7815b 100644
--- a/gdk/gdkevents.c
+++ b/gdk/gdkevents.c
@@ -2000,8 +2000,7 @@ gdk_event_prepare (gpointer source_data,
*timeout = -1;
- gdk_events_queue ();
- retval = (gdk_event_queue_find_first () != NULL);
+ retval = (gdk_event_queue_find_first () != NULL) || XPending (gdk_display);
GDK_THREADS_LEAVE ();
@@ -2017,9 +2016,9 @@ gdk_event_check (gpointer source_data,
GDK_THREADS_ENTER ();
if (event_poll_fd.revents & G_IO_IN)
- gdk_events_queue ();
-
- retval = (gdk_event_queue_find_first () != NULL);
+ retval = (gdk_event_queue_find_first () != NULL) || XPending (gdk_display);
+ else
+ retval = FALSE;
GDK_THREADS_LEAVE ();
@@ -2053,6 +2052,7 @@ gdk_event_dispatch (gpointer source_data,
GDK_THREADS_ENTER ();
+ gdk_events_queue();
event = gdk_event_unqueue();
if (event)
diff --git a/gdk/x11/gdkevents-x11.c b/gdk/x11/gdkevents-x11.c
index 24e1b67a04..5eb1b7815b 100644
--- a/gdk/x11/gdkevents-x11.c
+++ b/gdk/x11/gdkevents-x11.c
@@ -2000,8 +2000,7 @@ gdk_event_prepare (gpointer source_data,
*timeout = -1;
- gdk_events_queue ();
- retval = (gdk_event_queue_find_first () != NULL);
+ retval = (gdk_event_queue_find_first () != NULL) || XPending (gdk_display);
GDK_THREADS_LEAVE ();
@@ -2017,9 +2016,9 @@ gdk_event_check (gpointer source_data,
GDK_THREADS_ENTER ();
if (event_poll_fd.revents & G_IO_IN)
- gdk_events_queue ();
-
- retval = (gdk_event_queue_find_first () != NULL);
+ retval = (gdk_event_queue_find_first () != NULL) || XPending (gdk_display);
+ else
+ retval = FALSE;
GDK_THREADS_LEAVE ();
@@ -2053,6 +2052,7 @@ gdk_event_dispatch (gpointer source_data,
GDK_THREADS_ENTER ();
+ gdk_events_queue();
event = gdk_event_unqueue();
if (event)