Bug 305449 - Empty TabBox in case of no active Client
Summary: Empty TabBox in case of no active Client
Alias: None
Product: kwin
Classification: Plasma
Component: tabbox (show other bugs)
Version: 4.9.0
Platform: unspecified Linux
: NOR normal
Target Milestone: 4.9.1
Assignee: Martin Flöser
URL: https://git.reviewboard.kde.org/r/106...
: 286444 (view as bug list)
Depends on:
Reported: 2012-08-19 17:14 UTC by Martin Flöser
Modified: 2012-08-26 18:10 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In: 4.9.1
mgraesslin: ReviewRequest+

Unit Test highlighting the described problem (currently failing) (4.67 KB, patch)
2012-08-19 17:14 UTC, Martin Flöser

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Flöser 2012-08-19 17:14:21 UTC
Created attachment 73309 [details]
Unit Test highlighting the described problem (currently failing)

This is a bug report split out of bug #304620 and the discussion review request 105935.

Steps to reproduce:
1. Open a few windows
2. minimize all open windows
3. kquitapp plasma-desktop - there should now be no active window
4. invoke Alt+Tab

Actual Result:
The list is empty

Expected Result:
The list should include the minimized windows

Attached is a patch containing a unit test to highlight the issue.
Comment 1 Martin Flöser 2012-08-23 06:50:24 UTC
*** Bug 286444 has been marked as a duplicate of this bug. ***
Comment 2 Martin Flöser 2012-08-26 18:10:31 UTC
Git commit cc4fa37d22092e98b3d77fd1f3dd8ad752bb9879 by Martin Gräßlin.
Committed on 19/08/2012 at 19:32.
Pushed by graesslin into branch 'KDE/4.9'.

Use the first client as entrance to the focus chain if no active window

The recently used mode of TabBox uses the active window as the entrance
into the focus chain. If there is no active window it does not find any
Clients. To solve this issue the ClientModel now uses the first entry
of the focus chain in case there is no active window.
FIXED-IN: 4.9.1
REVIEW: 106088

M  +7    -1    kwin/tabbox/clientmodel.cpp
M  +17   -0    kwin/tabbox/tabbox.cpp
M  +2    -0    kwin/tabbox/tabbox.h
M  +8    -0    kwin/tabbox/tabboxhandler.h
M  +15   -9    kwin/tabbox/tests/mock_tabboxhandler.cpp
M  +3    -0    kwin/tabbox/tests/mock_tabboxhandler.h
M  +19   -0    kwin/tabbox/tests/test_tabbox_clientmodel.cpp
M  +7    -0    kwin/tabbox/tests/test_tabbox_clientmodel.h