all repos — tint2 @ c59f2399991499f9650c56676f06640993f826b2

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

taskbar: fix task cycling bug in multi_desktop mode

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

c59f2399991499f9650c56676f06640993f826b2

parent

9ac902b62b321c2a552ceb8dcfcae46f1115b506

1 files changed, 6 insertions(+), 12 deletions(-)

jump to
M src/taskbar/task.csrc/taskbar/task.c

@@ -416,32 +416,26 @@ }

// Given a pointer to the active task (active_task) and a pointer // to the task that is currently under the mouse (current_task), -// return a pointer to the active task that is on the same desktop -// as current_task. Normally this is simply active_task, except when -// it is set to appear on all desktops. In that case we search for -// another Task on current_task's taskbar, with the same window as -// active_task. +// returns a pointer to the active task. Task *find_active_task(Task *current_task, Task *active_task) { - if (active_task == 0) + if (active_task == NULL) return current_task; - if (active_task->desktop != ALLDESKTOP) - return active_task; - if (current_task == 0) - return active_task; GSList *l0; Task *tsk; Taskbar* tskbar = current_task->area.parent; l0 = tskbar->area.list; - if (taskbarname_enabled) l0 = l0->next; + if (taskbarname_enabled) + l0 = l0->next; for (; l0 ; l0 = l0->next) { tsk = l0->data; if (tsk->win == active_task->win) return tsk; } - return active_task; + + return current_task; } Task *next_task(Task *tsk)