*fix* issue 272

*fix* correct transient window handling (f.ex window3 is transient for window2 and window2 transient for window1 and window1 is already in tint2, so 
window3 will not be added)


git-svn-id: http://tint2.googlecode.com/svn/trunk@542 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
This commit is contained in:
Andreas.Fink85
2010-08-18 12:32:08 +00:00
parent 95b35aefc0
commit d7914dd0ad
3 changed files with 14 additions and 7 deletions

View File

@@ -444,9 +444,11 @@ void active_task()
//printf("Change active task %ld\n", w1);
if (w1) {
Window w2;
if (XGetTransientForHint(server.dsp, w1, &w2) != 0)
if (w2 && !task_get_tasks(w1)) w1 = w2;
if (!task_get_tasks(w1)) {
Window w2;
while (XGetTransientForHint(server.dsp, w1, &w2))
w1 = w2;
}
set_task_state((task_active = task_get_task(w1)), TASK_ACTIVE);
}
}