*fix* finally fixed issue 145 git-svn-id: http://tint2.googlecode.com/svn/trunk@263 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
Andreas.Fink85 Andreas.Fink85@121b4492-b84c-0410-8b4c-0d4edfb3f3cc
1 files changed,
11 insertions(+),
6 deletions(-)
jump to
M
src/tint.c
→
src/tint.c
@@ -480,14 +480,19 @@ }
else { tsk = task_get_task (win); if (!tsk) { - // some stupid wm send _NET_WM_STATE after the window was minimized to tray??? if (at != server.atom._NET_WM_STATE) return; - else if (!window_is_skip_taskbar(win)) { - if (tsk = add_task(win)) - panel_refresh = 1; - else - return; + else { + // xfce4 sends _NET_WM_STATE after minimized to tray, so we need to check if window is mapped + // if it is mapped and not set as skip_taskbar, we must add it to our task list + XWindowAttributes wa; + XGetWindowAttributes(server.dsp, win, &wa); + if (wa.map_state == IsViewable && !window_is_skip_taskbar(win)) { + if ( (tsk = add_task(win)) ) + panel_refresh = 1; + else + return; + } } } //printf("atom root_win = %s, %s\n", XGetAtomName(server.dsp, at), tsk->title);