summaryrefslogtreecommitdiff
path: root/gdk
diff options
context:
space:
mode:
authorElliot Lee <sopwith@src.gnome.org>1997-12-18 23:38:39 +0000
committerElliot Lee <sopwith@src.gnome.org>1997-12-18 23:38:39 +0000
commit8d0318387f8696786a5cec626a08112368a2ca55 (patch)
treeeb608692ebf52fcc1489c2a60d44248f3e7dd171 /gdk
parent1cf3f510d1e49bcf26b016d61e42dd51c1d1a42f (diff)
downloadgtk+-8d0318387f8696786a5cec626a08112368a2ca55.tar.gz
Fixed restoration of old event mask
Diffstat (limited to 'gdk')
-rw-r--r--gdk/gdk.c23
-rw-r--r--gdk/x11/gdkmain-x11.c23
2 files changed, 22 insertions, 24 deletions
diff --git a/gdk/gdk.c b/gdk/gdk.c
index 46d512adda..6b5c7ad1ec 100644
--- a/gdk/gdk.c
+++ b/gdk/gdk.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:
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: