From 7797f8d318e3ff5d46a48bf8afe5fc8d92a7c816 Mon Sep 17 00:00:00 2001 From: "andreas.fink85" Date: Sat, 21 May 2011 18:32:54 +0000 Subject: [PATCH] *fix* register for the StructureNotifyEventMask early, since an icon can be created and unregistered directly after it, so we would 'forget' about it git-svn-id: http://tint2.googlecode.com/svn/trunk@629 121b4492-b84c-0410-8b4c-0d4edfb3f3cc --- src/systray/systraybar.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/systray/systraybar.c b/src/systray/systraybar.c index c0672e3..8a92a04 100644 --- a/src/systray/systraybar.c +++ b/src/systray/systraybar.c @@ -354,6 +354,9 @@ gboolean add_icon(Window id) Panel *panel = systray.area.panel; int hide = 0; + // watch for the icon trying to resize itself / closing again! + XSelectInput(server.dsp, id, StructureNotifyMask); + error = FALSE; XWindowAttributes attr; if ( XGetWindowAttributes(server.dsp, id, &attr) == False ) return FALSE; @@ -442,8 +445,6 @@ gboolean add_icon(Window id) systray.list_icons = g_slist_insert_sorted(systray.list_icons, traywin, compare_traywindows); //printf("add_icon id %lx, %d\n", id, g_slist_length(systray.list_icons)); - // watch for the icon trying to resize itself! - XSelectInput(server.dsp, traywin->tray_id, StructureNotifyMask); if (server.real_transparency || systray.alpha != 100 || systray.brightness != 0 || systray.saturation != 0) { traywin->damage = XDamageCreate(server.dsp, traywin->id, XDamageReportRawRectangles); XCompositeRedirectWindow(server.dsp, traywin->id, CompositeRedirectManual);