Bug 230807

Summary: Alt+Tab box does not work correctly with multiple modal dialogs
Product: [Plasma] kwin Reporter: Michael Zanetti <mzanetti>
Component: generalAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED FIXED    
Severity: normal    
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Michael Zanetti 2010-03-15 09:57:06 UTC
Version:            (using KDE 4.4.1)
Compiler:          gcc 
OS:                Linux
Installed from:    Archlinux Packages

Steps to reproduce:
- Open some windows. At least 3.
- Open a modal dialog on at least two of the windows. (e.g. the settings dialog or a file-open dialog)
- Cycle through the windows list using Alt+Tab

Expected behaviour: Window switching should work just like it does without modal dialogs

Actual behaviour: The modal windows produce empty entries in the Alt+Tab list. Some entries are skipped and the order is messed up.

More open windows make this behaviour worse. But I'm able to reproduce it always with at least 5 windows (3 normal + 2 modal)
Comment 1 Martin Flöser 2010-03-15 10:00:25 UTC
could this be a duplicate of bug #228186?
Comment 2 Michael Zanetti 2010-03-15 10:30:32 UTC
(In reply to comment #1)
> could this be a duplicate of bug #228186?

Could be...I'm pretty sure it is related somehow. In my case the modal dialogs are not often shown twice. It's more that the whole list in the tabbox gets messed up. Sometimes I have duplicate windows in it, sometimes empty spaces, sometimes selecting an entry actually raises a different window.

I just made a quick screencast to show the bahaviour. You can see everything working fine in the beginning. As soon as I open the first modal window the empty spaces appear in the tabbox. In this example I haven't been able to select rekonq using alt+tab any more as soon as the second modal window was open. It just got skipped by the tabbox. You can also see how for example selecting kdevelop in the tabbox actually raises konversation etc.

http://follefuder.org/tabbox_modal.ogv
Comment 3 Martin Flöser 2010-03-20 11:47:09 UTC
damn I'm stupid :( 
svn rev 984690:
else if( !list.contains( modal ))

became in svn rev 1022861:
else if( clientList().contains( modal->tabBoxClient() ) )

I'm going to test it and commit the fix (I'm very sure it's this idioticy)
Comment 4 Martin Flöser 2010-03-20 12:04:20 UTC
SVN commit 1105473 by graesslin:

Prevent modal dialogs to be shown twice in alt+tab list.
BUG: 230807
CCBUG: 228186

 M  +1 -1      tabbox.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1105473
Comment 5 Martin Flöser 2010-03-20 12:07:46 UTC
SVN commit 1105476 by graesslin:

Backport rev 1105473: Prevent modal dialogs to be shown twice in alt+tab list.
CCBUG: 230807
CCBUG: 228186



 M  +1 -1      tabbox.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1105476