all repos — tint2 @ f71967bbcaf15e3e77e237e4aef0cdd084c1a784

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

*fix* even better XSelectInput on traywindows. It's inside the block, where we listen to XError's, thus an icon which is already deleted before we ask for StuctureNotify will not be added at all


git-svn-id: http://tint2.googlecode.com/svn/trunk@630 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
andreas.fink85 andreas.fink85@121b4492-b84c-0410-8b4c-0d4edfb3f3cc
commit

f71967bbcaf15e3e77e237e4aef0cdd084c1a784

parent

7797f8d318e3ff5d46a48bf8afe5fc8d92a7c816

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

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

@@ -354,9 +354,6 @@ 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;

@@ -380,6 +377,8 @@ Window parent_window;

parent_window = XCreateWindow(server.dsp, panel->main_win, 0, 0, 30, 30, 0, attr.depth, InputOutput, visual, mask, &set_attr); old = XSetErrorHandler(window_error_handler); XReparentWindow(server.dsp, id, parent_window, 0, 0); + // watch for the icon trying to resize itself / closing again! + XSelectInput(server.dsp, id, StructureNotifyMask); XSync(server.dsp, False); XSetErrorHandler(old); if (error != FALSE) {