all repos — tint2 @ b8eb8a233568b9f342a91724c6911f926cf75baa

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

should fixed issue 208

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

b8eb8a233568b9f342a91724c6911f926cf75baa

parent

2977d9379d908297314ed0f5cd09a608016abc7b

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

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

@@ -208,6 +208,8 @@ // position and size the icon window

XMoveResizeWindow(server.dsp, traywin->id, traywin->x, traywin->y, icon_size, icon_size); XResizeWindow(server.dsp, traywin->tray_id, icon_size, icon_size); } + // resize force the redraw + systray.area.redraw = 1; }

@@ -423,7 +425,6 @@ systray.list_icons = g_slist_append(systray.list_icons, traywin);

else systray.list_icons = g_slist_insert_sorted(systray.list_icons, traywin, compare_traywindows); systray.area.resize = 1; - systray.area.redraw = 1; //printf("add_icon id %lx, %d\n", id, g_slist_length(systray.list_icons)); // watch for the icon trying to resize itself!

@@ -453,7 +454,6 @@

// remove from our list systray.list_icons = g_slist_remove(systray.list_icons, traywin); systray.area.resize = 1; - systray.area.redraw = 1; //printf("remove_icon id %lx, %d\n", traywin->id); XSelectInput(server.dsp, traywin->tray_id, NoEventMask);

@@ -538,7 +538,8 @@ }

XCopyArea(server.dsp, systray.area.pix, panel->main_win, server.gc, traywin->x-systray.area.posx, traywin->y-systray.area.posy, traywin->width, traywin->height, traywin->x, traywin->y); imlib_free_image_and_decache(); - XDamageSubtract(server.dsp, traywin->damage, None, None); + if (traywin->damage) + XDamageSubtract(server.dsp, traywin->damage, None, None); XFlush(server.dsp); }