From 55eb2b64056f1fe6c15cabf1afc3e6d9aba56a11 Mon Sep 17 00:00:00 2001 From: Andreas Fink Date: Tue, 30 Mar 2010 18:47:11 +0000 Subject: [PATCH] *fix* issue 241 --- src/systray/systraybar.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/systray/systraybar.c b/src/systray/systraybar.c index bb3d9ed..411f912 100644 --- a/src/systray/systraybar.c +++ b/src/systray/systraybar.c @@ -358,7 +358,7 @@ gboolean add_icon(Window id) error = FALSE; XWindowAttributes attr; - XGetWindowAttributes(server.dsp, id, &attr); + if ( XGetWindowAttributes(server.dsp, id, &attr) == False ) return FALSE; unsigned long mask = 0; XSetWindowAttributes set_attr; printf("icon with depth: %d\n", attr.depth); @@ -423,6 +423,7 @@ gboolean add_icon(Window id) XSendEvent(server.dsp, id, False, 0xFFFFFF, &e); } + printf("Adding systray with window: %d\n", id); traywin = g_new0(TrayWindow, 1); traywin->id = parent_window; traywin->tray_id = id; @@ -463,6 +464,7 @@ void remove_icon(TrayWindow *traywin) { XErrorHandler old; + printf("Removing systray with window: %d\n", traywin->tray_id); // remove from our list systray.list_icons = g_slist_remove(systray.list_icons, traywin); systray.area.resize = 1; @@ -543,7 +545,7 @@ void systray_render_icon_now(void* t) printf("Strange tray icon found with depth: %d\n", traywin->depth); return; } - Picture pict_image = XRenderCreatePicture(server.dsp, traywin->tray_id, f, 0, 0); + Picture pict_image = XRenderCreatePicture(server.dsp, traywin->id, f, 0, 0); Picture pict_drawable = XRenderCreatePicture(server.dsp, tmp_pmap, XRenderFindVisualFormat(server.dsp, server.visual32), 0, 0); XRenderComposite(server.dsp, PictOpSrc, pict_image, None, pict_drawable, 0, 0, 0, 0, 0, 0, traywin->width, traywin->height); XRenderFreePicture(server.dsp, pict_image); -- 2.44.0