Always select for property notify for maintaining window state.
* gdk/x11/gdkwindow-x11.c (gdk_window_new): (gdk_window_set_events): Always select for property notify for maintaining window state. * gdk/x11/gdkevents-x11.c (gdk_event_translate): Only propagate property notifys if they were selected by gdk_window_set_events.
This commit is contained in:
11
ChangeLog
11
ChangeLog
@ -1,3 +1,14 @@
|
|||||||
|
2002-05-07 Matthias Clasen <maclas@gmx.de>
|
||||||
|
|
||||||
|
Fix for #79248:
|
||||||
|
|
||||||
|
* gdk/x11/gdkwindow-x11.c (gdk_window_new):
|
||||||
|
(gdk_window_set_events): Always select for property notify for
|
||||||
|
maintaining window state.
|
||||||
|
|
||||||
|
* gdk/x11/gdkevents-x11.c (gdk_event_translate): Only propagate
|
||||||
|
property notifys if they were selected by gdk_window_set_events.
|
||||||
|
|
||||||
Mon May 6 23:48:14 2002 Kristian Rietveld <kris@gtk.org>
|
Mon May 6 23:48:14 2002 Kristian Rietveld <kris@gtk.org>
|
||||||
|
|
||||||
* gtk/gtktreeview.c (gtk_tree_view_map_expanded_rows_helper): call
|
* gtk/gtktreeview.c (gtk_tree_view_map_expanded_rows_helper): call
|
||||||
|
|||||||
@ -1,3 +1,14 @@
|
|||||||
|
2002-05-07 Matthias Clasen <maclas@gmx.de>
|
||||||
|
|
||||||
|
Fix for #79248:
|
||||||
|
|
||||||
|
* gdk/x11/gdkwindow-x11.c (gdk_window_new):
|
||||||
|
(gdk_window_set_events): Always select for property notify for
|
||||||
|
maintaining window state.
|
||||||
|
|
||||||
|
* gdk/x11/gdkevents-x11.c (gdk_event_translate): Only propagate
|
||||||
|
property notifys if they were selected by gdk_window_set_events.
|
||||||
|
|
||||||
Mon May 6 23:48:14 2002 Kristian Rietveld <kris@gtk.org>
|
Mon May 6 23:48:14 2002 Kristian Rietveld <kris@gtk.org>
|
||||||
|
|
||||||
* gtk/gtktreeview.c (gtk_tree_view_map_expanded_rows_helper): call
|
* gtk/gtktreeview.c (gtk_tree_view_map_expanded_rows_helper): call
|
||||||
|
|||||||
@ -1,3 +1,14 @@
|
|||||||
|
2002-05-07 Matthias Clasen <maclas@gmx.de>
|
||||||
|
|
||||||
|
Fix for #79248:
|
||||||
|
|
||||||
|
* gdk/x11/gdkwindow-x11.c (gdk_window_new):
|
||||||
|
(gdk_window_set_events): Always select for property notify for
|
||||||
|
maintaining window state.
|
||||||
|
|
||||||
|
* gdk/x11/gdkevents-x11.c (gdk_event_translate): Only propagate
|
||||||
|
property notifys if they were selected by gdk_window_set_events.
|
||||||
|
|
||||||
Mon May 6 23:48:14 2002 Kristian Rietveld <kris@gtk.org>
|
Mon May 6 23:48:14 2002 Kristian Rietveld <kris@gtk.org>
|
||||||
|
|
||||||
* gtk/gtktreeview.c (gtk_tree_view_map_expanded_rows_helper): call
|
* gtk/gtktreeview.c (gtk_tree_view_map_expanded_rows_helper): call
|
||||||
|
|||||||
@ -1,3 +1,14 @@
|
|||||||
|
2002-05-07 Matthias Clasen <maclas@gmx.de>
|
||||||
|
|
||||||
|
Fix for #79248:
|
||||||
|
|
||||||
|
* gdk/x11/gdkwindow-x11.c (gdk_window_new):
|
||||||
|
(gdk_window_set_events): Always select for property notify for
|
||||||
|
maintaining window state.
|
||||||
|
|
||||||
|
* gdk/x11/gdkevents-x11.c (gdk_event_translate): Only propagate
|
||||||
|
property notifys if they were selected by gdk_window_set_events.
|
||||||
|
|
||||||
Mon May 6 23:48:14 2002 Kristian Rietveld <kris@gtk.org>
|
Mon May 6 23:48:14 2002 Kristian Rietveld <kris@gtk.org>
|
||||||
|
|
||||||
* gtk/gtktreeview.c (gtk_tree_view_map_expanded_rows_helper): call
|
* gtk/gtktreeview.c (gtk_tree_view_map_expanded_rows_helper): call
|
||||||
|
|||||||
@ -1,3 +1,14 @@
|
|||||||
|
2002-05-07 Matthias Clasen <maclas@gmx.de>
|
||||||
|
|
||||||
|
Fix for #79248:
|
||||||
|
|
||||||
|
* gdk/x11/gdkwindow-x11.c (gdk_window_new):
|
||||||
|
(gdk_window_set_events): Always select for property notify for
|
||||||
|
maintaining window state.
|
||||||
|
|
||||||
|
* gdk/x11/gdkevents-x11.c (gdk_event_translate): Only propagate
|
||||||
|
property notifys if they were selected by gdk_window_set_events.
|
||||||
|
|
||||||
Mon May 6 23:48:14 2002 Kristian Rietveld <kris@gtk.org>
|
Mon May 6 23:48:14 2002 Kristian Rietveld <kris@gtk.org>
|
||||||
|
|
||||||
* gtk/gtktreeview.c (gtk_tree_view_map_expanded_rows_helper): call
|
* gtk/gtktreeview.c (gtk_tree_view_map_expanded_rows_helper): call
|
||||||
|
|||||||
@ -1,3 +1,14 @@
|
|||||||
|
2002-05-07 Matthias Clasen <maclas@gmx.de>
|
||||||
|
|
||||||
|
Fix for #79248:
|
||||||
|
|
||||||
|
* gdk/x11/gdkwindow-x11.c (gdk_window_new):
|
||||||
|
(gdk_window_set_events): Always select for property notify for
|
||||||
|
maintaining window state.
|
||||||
|
|
||||||
|
* gdk/x11/gdkevents-x11.c (gdk_event_translate): Only propagate
|
||||||
|
property notifys if they were selected by gdk_window_set_events.
|
||||||
|
|
||||||
Mon May 6 23:48:14 2002 Kristian Rietveld <kris@gtk.org>
|
Mon May 6 23:48:14 2002 Kristian Rietveld <kris@gtk.org>
|
||||||
|
|
||||||
* gtk/gtktreeview.c (gtk_tree_view_map_expanded_rows_helper): call
|
* gtk/gtktreeview.c (gtk_tree_view_map_expanded_rows_helper): call
|
||||||
|
|||||||
@ -1457,18 +1457,23 @@ gdk_event_translate (GdkDisplay *display,
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (xevent->xproperty.atom == gdk_x11_get_xatom_by_name_for_display (display, "_NET_WM_STATE") ||
|
||||||
|
xevent->xproperty.atom == gdk_x11_get_xatom_by_name_for_display (display, "_NET_WM_DESKTOP"))
|
||||||
|
{
|
||||||
|
/* If window state changed, then synthesize those events. */
|
||||||
|
gdk_check_wm_state_changed (window);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (window_private->event_mask & GDK_PROPERTY_CHANGE_MASK)
|
||||||
|
{
|
||||||
event->property.type = GDK_PROPERTY_NOTIFY;
|
event->property.type = GDK_PROPERTY_NOTIFY;
|
||||||
event->property.window = window;
|
event->property.window = window;
|
||||||
event->property.atom = gdk_x11_xatom_to_atom_for_display (display, xevent->xproperty.atom);
|
event->property.atom = gdk_x11_xatom_to_atom_for_display (display, xevent->xproperty.atom);
|
||||||
event->property.time = xevent->xproperty.time;
|
event->property.time = xevent->xproperty.time;
|
||||||
event->property.state = xevent->xproperty.state;
|
event->property.state = xevent->xproperty.state;
|
||||||
|
|
||||||
if (xevent->xproperty.atom == gdk_x11_get_xatom_by_name_for_display (display, "_NET_WM_STATE") ||
|
|
||||||
xevent->xproperty.atom == gdk_x11_get_xatom_by_name_for_display (display, "_NET_WM_DESKTOP"))
|
|
||||||
{
|
|
||||||
/* If window state changed, then synthesize those events. */
|
|
||||||
gdk_check_wm_state_changed (event->property.window);
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
return_val = FALSE;
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|||||||
@ -445,7 +445,7 @@ gdk_window_new (GdkWindow *parent,
|
|||||||
visual = gdk_screen_get_system_visual (screen);
|
visual = gdk_screen_get_system_visual (screen);
|
||||||
xvisual = ((GdkVisualPrivate*) visual)->xvisual;
|
xvisual = ((GdkVisualPrivate*) visual)->xvisual;
|
||||||
|
|
||||||
xattributes.event_mask = StructureNotifyMask;
|
xattributes.event_mask = StructureNotifyMask | PropertyChangeMask;
|
||||||
for (i = 0; i < _gdk_nenvent_masks; i++)
|
for (i = 0; i < _gdk_nenvent_masks; i++)
|
||||||
{
|
{
|
||||||
if (attributes->event_mask & (1 << (i + 1)))
|
if (attributes->event_mask & (1 << (i + 1)))
|
||||||
@ -2595,7 +2595,7 @@ gdk_window_set_events (GdkWindow *window,
|
|||||||
if (!GDK_WINDOW_DESTROYED (window))
|
if (!GDK_WINDOW_DESTROYED (window))
|
||||||
{
|
{
|
||||||
GDK_WINDOW_OBJECT (window)->event_mask = event_mask;
|
GDK_WINDOW_OBJECT (window)->event_mask = event_mask;
|
||||||
xevent_mask = StructureNotifyMask;
|
xevent_mask = StructureNotifyMask | PropertyChangeMask;
|
||||||
for (i = 0; i < _gdk_nenvent_masks; i++)
|
for (i = 0; i < _gdk_nenvent_masks; i++)
|
||||||
{
|
{
|
||||||
if (event_mask & (1 << (i + 1)))
|
if (event_mask & (1 << (i + 1)))
|
||||||
|
|||||||
Reference in New Issue
Block a user