diff options
author | Elliot Lee <sopwith@src.gnome.org> | 1997-12-18 23:38:39 +0000 |
---|---|---|
committer | Elliot Lee <sopwith@src.gnome.org> | 1997-12-18 23:38:39 +0000 |
commit | 8d0318387f8696786a5cec626a08112368a2ca55 (patch) | |
tree | eb608692ebf52fcc1489c2a60d44248f3e7dd171 /gdk | |
parent | 1cf3f510d1e49bcf26b016d61e42dd51c1d1a42f (diff) | |
download | gtk+-8d0318387f8696786a5cec626a08112368a2ca55.tar.gz |
Fixed restoration of old event mask
Diffstat (limited to 'gdk')
-rw-r--r-- | gdk/gdk.c | 23 | ||||
-rw-r--r-- | gdk/x11/gdkmain-x11.c | 23 |
2 files changed, 22 insertions, 24 deletions
@@ -1876,6 +1876,14 @@ gdk_event_translate (GdkEvent *event, if(dnd_drag_perhaps) { + { + XSetWindowAttributes attrs; + /* Reset event mask to pre-drag value, assuming event_mask + doesn't change during drag */ + attrs.event_mask = real_sw->dnd_drag_savedeventmask; + XChangeWindowAttributes(gdk_display, real_sw->xwindow, + CWEventMask, &attrs); + } if(gdk_dnd.drag_really) { GdkPoint foo; @@ -1888,16 +1896,6 @@ gdk_event_translate (GdkEvent *event, gdk_dnd_drag_end(dnd_drag_target, foo); gdk_dnd.drag_really = 0; - if(gdk_dnd.drag_numwindows) - { - XSetWindowAttributes attrs; - /* Reset event mask to pre-drag value, assuming event_mask - doesn't change during drag */ - attrs.event_mask = real_sw->dnd_drag_savedeventmask; - XChangeWindowAttributes(gdk_display, real_sw->xwindow, - CWEventMask, &attrs); - } - gdk_dnd.drag_numwindows = 0; if(gdk_dnd.drag_startwindows) { @@ -1913,8 +1911,9 @@ gdk_event_translate (GdkEvent *event, dnd_drag_dropzone.x = dnd_drag_dropzone.y = 0; dnd_drag_dropzone.width = dnd_drag_dropzone.height = 0; dnd_drag_curwin = None; - } - return_val = window_private && !window_private->destroyed; + return_val = window_private?TRUE:FALSE; + } else + return_val = window_private && !window_private->destroyed; break; case MotionNotify: diff --git a/gdk/x11/gdkmain-x11.c b/gdk/x11/gdkmain-x11.c index 46d512adda..6b5c7ad1ec 100644 --- a/gdk/x11/gdkmain-x11.c +++ b/gdk/x11/gdkmain-x11.c @@ -1876,6 +1876,14 @@ gdk_event_translate (GdkEvent *event, if(dnd_drag_perhaps) { + { + XSetWindowAttributes attrs; + /* Reset event mask to pre-drag value, assuming event_mask + doesn't change during drag */ + attrs.event_mask = real_sw->dnd_drag_savedeventmask; + XChangeWindowAttributes(gdk_display, real_sw->xwindow, + CWEventMask, &attrs); + } if(gdk_dnd.drag_really) { GdkPoint foo; @@ -1888,16 +1896,6 @@ gdk_event_translate (GdkEvent *event, gdk_dnd_drag_end(dnd_drag_target, foo); gdk_dnd.drag_really = 0; - if(gdk_dnd.drag_numwindows) - { - XSetWindowAttributes attrs; - /* Reset event mask to pre-drag value, assuming event_mask - doesn't change during drag */ - attrs.event_mask = real_sw->dnd_drag_savedeventmask; - XChangeWindowAttributes(gdk_display, real_sw->xwindow, - CWEventMask, &attrs); - } - gdk_dnd.drag_numwindows = 0; if(gdk_dnd.drag_startwindows) { @@ -1913,8 +1911,9 @@ gdk_event_translate (GdkEvent *event, dnd_drag_dropzone.x = dnd_drag_dropzone.y = 0; dnd_drag_dropzone.width = dnd_drag_dropzone.height = 0; dnd_drag_curwin = None; - } - return_val = window_private && !window_private->destroyed; + return_val = window_private?TRUE:FALSE; + } else + return_val = window_private && !window_private->destroyed; break; case MotionNotify: |