[Xfce4-commits] <xfwm4:libxfce4ui> Do not swallow destroy/unmap notify events in cycling otherwise the compositor is not notified.

Olivier Fourdan noreply at xfce.org
Sun Jan 10 10:24:34 CET 2010


Updating branch refs/heads/libxfce4ui
         to feca4954b6be120e4d762fe1e07e9a20a50dfd2e (commit)
       from 866f08da056d9a5269ce5e87b80b9f3d15015a65 (commit)

commit feca4954b6be120e4d762fe1e07e9a20a50dfd2e
Author: Olivier Fourdan <fourdan at xfce.org>
Date:   Tue Nov 10 11:04:50 2009 +0100

    Do not swallow destroy/unmap notify events in cycling otherwise the compositor is not notified.

 src/cycle.c  |    3 ++-
 src/events.c |    1 +
 2 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/src/cycle.c b/src/cycle.c
index 7ab54f4..8baabe8 100644
--- a/src/cycle.c
+++ b/src/cycle.c
@@ -187,16 +187,17 @@ clientCycleEventFilter (XEvent * xevent, gpointer data)
     switch (xevent->type)
     {
         case DestroyNotify:
+            status = EVENT_FILTER_CONTINUE;
             if ((removed = myScreenGetClientFromWindow (screen_info, ((XDestroyWindowEvent *) xevent)->window, SEARCH_WINDOW)) == NULL)
                 break; /* No need to go any further */
             gone |= (c == removed);
             /* Walk through */
         case UnmapNotify:
+            status = EVENT_FILTER_CONTINUE;
             if (!removed && (removed = myScreenGetClientFromWindow (screen_info, ((XUnmapEvent *) xevent)->window, SEARCH_WINDOW)) == NULL)
                 break; /* No need to go any further */
             gone |= (c == removed);
             c = tabwinRemoveClient(passdata->tabwin, removed);
-            status = EVENT_FILTER_CONTINUE;
             /* Walk through */
         case KeyPress:
             key_pressed = (xevent->type == KeyPress);
diff --git a/src/events.c b/src/events.c
index 111488b..68b7b39 100644
--- a/src/events.c
+++ b/src/events.c
@@ -2293,6 +2293,7 @@ handleEvent (DisplayInfo *display_info, XEvent * ev)
                 status = handleXSyncAlarmNotify (display_info, (XSyncAlarmNotifyEvent *) ev);
             }
 #endif /* HAVE_XSYNC */
+             break;
     }
     if (!gdk_events_pending () && !XPending (display_info->dpy))
     {



More information about the Xfce4-commits mailing list