Add GDK_SUBSTRUCTURE_NOTIFY_MASK

Add GDK_SUBSTRUCTURE_NOTIFY_MASK

Fixed GDK_DESTROY handling WRT GnomeRootwin widget.
This commit is contained in:
Elliot Lee 1998-05-19 22:33:24 +00:00
parent 6a322e11b2
commit eb3e74cae9
5 changed files with 18 additions and 9 deletions

View File

@ -2279,6 +2279,7 @@ gdk_event_translate (GdkEvent *event,
if (gdk_dnd.drag_perhaps && gdk_dnd.drag_really && if (gdk_dnd.drag_perhaps && gdk_dnd.drag_really &&
(xevent->xcrossing.window == gdk_dnd.real_sw->xwindow)) (xevent->xcrossing.window == gdk_dnd.real_sw->xwindow))
{ {
#if 0
gdk_dnd.drag_really = 0; gdk_dnd.drag_really = 0;
GDK_NOTE (DND, g_print("Ungrabbed\n")); GDK_NOTE (DND, g_print("Ungrabbed\n"));
@ -2288,6 +2289,7 @@ gdk_event_translate (GdkEvent *event,
gdk_dnd.drag_startwindows = NULL; gdk_dnd.drag_startwindows = NULL;
/* We don't want to ungrab the pointer here, or we'll /* We don't want to ungrab the pointer here, or we'll
* start getting spurious enter/leave events */ * start getting spurious enter/leave events */
#endif
#if 0 #if 0
XChangeActivePointerGrab (gdk_display, 0, None, CurrentTime); XChangeActivePointerGrab (gdk_display, 0, None, CurrentTime);
#endif #endif
@ -2519,7 +2521,8 @@ gdk_event_translate (GdkEvent *event,
return_val = window_private && !window_private->destroyed; return_val = window_private && !window_private->destroyed;
gdk_window_destroy_notify (window); if(window && window_private->xwindow != GDK_ROOT_WINDOW())
gdk_window_destroy_notify (window);
break; break;
case UnmapNotify: case UnmapNotify:

View File

@ -390,7 +390,8 @@ typedef enum
GDK_VISIBILITY_NOTIFY_MASK = 1 << 17, GDK_VISIBILITY_NOTIFY_MASK = 1 << 17,
GDK_PROXIMITY_IN_MASK = 1 << 18, GDK_PROXIMITY_IN_MASK = 1 << 18,
GDK_PROXIMITY_OUT_MASK = 1 << 19, GDK_PROXIMITY_OUT_MASK = 1 << 19,
GDK_ALL_EVENTS_MASK = 0x07FFFF GDK_SUBSTRUCTURE_MASK = 1 << 20,
GDK_ALL_EVENTS_MASK = 0x0FFFFF
} GdkEventMask; } GdkEventMask;
/* Types of enter/leave notifications. /* Types of enter/leave notifications.

View File

@ -33,8 +33,8 @@
#include <X11/extensions/shape.h> #include <X11/extensions/shape.h>
#endif #endif
int nevent_masks = 17; int nevent_masks = 20;
int event_mask_table[19] = int event_mask_table[20] =
{ {
ExposureMask, ExposureMask,
PointerMotionMask, PointerMotionMask,
@ -54,7 +54,8 @@ int event_mask_table[19] =
PropertyChangeMask, PropertyChangeMask,
VisibilityChangeMask, VisibilityChangeMask,
0, /* PROXIMITY_IN */ 0, /* PROXIMITY_IN */
0 /* PROXIMTY_OUT */ 0, /* PROXIMTY_OUT */
SubstructureNotifyMask
}; };

View File

@ -2279,6 +2279,7 @@ gdk_event_translate (GdkEvent *event,
if (gdk_dnd.drag_perhaps && gdk_dnd.drag_really && if (gdk_dnd.drag_perhaps && gdk_dnd.drag_really &&
(xevent->xcrossing.window == gdk_dnd.real_sw->xwindow)) (xevent->xcrossing.window == gdk_dnd.real_sw->xwindow))
{ {
#if 0
gdk_dnd.drag_really = 0; gdk_dnd.drag_really = 0;
GDK_NOTE (DND, g_print("Ungrabbed\n")); GDK_NOTE (DND, g_print("Ungrabbed\n"));
@ -2288,6 +2289,7 @@ gdk_event_translate (GdkEvent *event,
gdk_dnd.drag_startwindows = NULL; gdk_dnd.drag_startwindows = NULL;
/* We don't want to ungrab the pointer here, or we'll /* We don't want to ungrab the pointer here, or we'll
* start getting spurious enter/leave events */ * start getting spurious enter/leave events */
#endif
#if 0 #if 0
XChangeActivePointerGrab (gdk_display, 0, None, CurrentTime); XChangeActivePointerGrab (gdk_display, 0, None, CurrentTime);
#endif #endif
@ -2519,7 +2521,8 @@ gdk_event_translate (GdkEvent *event,
return_val = window_private && !window_private->destroyed; return_val = window_private && !window_private->destroyed;
gdk_window_destroy_notify (window); if(window && window_private->xwindow != GDK_ROOT_WINDOW())
gdk_window_destroy_notify (window);
break; break;
case UnmapNotify: case UnmapNotify:

View File

@ -33,8 +33,8 @@
#include <X11/extensions/shape.h> #include <X11/extensions/shape.h>
#endif #endif
int nevent_masks = 17; int nevent_masks = 20;
int event_mask_table[19] = int event_mask_table[20] =
{ {
ExposureMask, ExposureMask,
PointerMotionMask, PointerMotionMask,
@ -54,7 +54,8 @@ int event_mask_table[19] =
PropertyChangeMask, PropertyChangeMask,
VisibilityChangeMask, VisibilityChangeMask,
0, /* PROXIMITY_IN */ 0, /* PROXIMITY_IN */
0 /* PROXIMTY_OUT */ 0, /* PROXIMTY_OUT */
SubstructureNotifyMask
}; };