[gnome-panel] panel: Stop using gdk_display_add_client_message_filter()
- From: Vincent Untz <vuntz src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-panel] panel: Stop using gdk_display_add_client_message_filter()
- Date: Tue, 1 Feb 2011 12:05:15 +0000 (UTC)
commit bead7c5c222d8c161d9409ff3ae8b481c895ad9d
Author: Vincent Untz <vuntz gnome org>
Date: Tue Feb 1 13:04:33 2011 +0100
panel: Stop using gdk_display_add_client_message_filter()
We were already ready to use gdk_window_add_filter() anyway.
Also, double-check that the events are sent on root windows before
accepting them.
gnome-panel/panel-action-protocol.c | 12 +++++-------
1 files changed, 5 insertions(+), 7 deletions(-)
---
diff --git a/gnome-panel/panel-action-protocol.c b/gnome-panel/panel-action-protocol.c
index b2c09f4..14a7dba 100644
--- a/gnome-panel/panel-action-protocol.c
+++ b/gnome-panel/panel-action-protocol.c
@@ -113,6 +113,9 @@ panel_action_protocol_filter (GdkXEvent *gdk_xevent,
if (!window)
return GDK_FILTER_CONTINUE;
+ if (window != gdk_screen_get_root_window (screen))
+ return GDK_FILTER_CONTINUE;
+
if (xevent->xclient.data.l [0] == atom_gnome_panel_action_main_menu)
panel_action_protocol_main_menu (screen, xevent->xclient.data.l [1]);
else if (xevent->xclient.data.l [0] == atom_gnome_panel_action_run_dialog)
@@ -129,13 +132,9 @@ void
panel_action_protocol_init (void)
{
GdkDisplay *display;
- GdkAtom gdk_atom_gnome_panel_action;
display = gdk_display_get_default ();
- gdk_atom_gnome_panel_action =
- gdk_atom_intern_static_string ("_GNOME_PANEL_ACTION");
-
atom_gnome_panel_action =
XInternAtom (GDK_DISPLAY_XDISPLAY (display),
"_GNOME_PANEL_ACTION",
@@ -153,7 +152,6 @@ panel_action_protocol_init (void)
"_GNOME_PANEL_ACTION_KILL_DIALOG",
FALSE);
- gdk_display_add_client_message_filter (
- display, gdk_atom_gnome_panel_action,
- panel_action_protocol_filter, NULL);
+ /* We'll filter event sent on non-root windows later */
+ gdk_window_add_filter (NULL, panel_action_protocol_filter, NULL);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]