all repos — tint2 @ 7797f8d318e3ff5d46a48bf8afe5fc8d92a7c816

fork of the tint2 desktop panel for my custom setup - only minimized windows across all desktops for the taskbar

*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
andreas.fink85 andreas.fink85@121b4492-b84c-0410-8b4c-0d4edfb3f3cc
commit

7797f8d318e3ff5d46a48bf8afe5fc8d92a7c816

parent

97001249b59c82200d96fabef7734482f1b594a1

1 files changed, 3 insertions(+), 2 deletions(-)

jump to
M src/systray/systraybar.csrc/systray/systraybar.c

@@ -354,6 +354,9 @@ XErrorHandler old;

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 @@ else

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);