Bug 330529 - CoverSwitch effect shouldn't fade out windows on other screens if filter on screen is used
Summary: CoverSwitch effect shouldn't fade out windows on other screens if filter on s...
Alias: None
Product: kwin
Classification: Plasma
Component: effects-tabbox (show other bugs)
Version: 4.11.5
Platform: Arch Linux Linux
: NOR wishlist
Target Milestone: ---
Assignee: KWin default assignee
Depends on:
Reported: 2014-01-29 09:08 UTC by Alexander
Modified: 2021-12-23 17:39 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:

Example of the mentioned "carousel" effect. (3.28 MB, image/png)
2014-01-29 09:59 UTC, Alexander

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander 2014-01-29 09:08:59 UTC
I have 2 displays, one is 2440x1440 and another is 1280x1024.

Found 2 bugs:
1. Every time I am switching between windows using Alt+TAB the windows list appear on the primary display instead of the active one. Also, when the display with the smaller resolution is active windows list is broken (wrong resolution, wrong position), etc.
2. I have "filter windows by display" enabled, so when I am using Alt+TAB it only displays windows from the current display. But windows from all other displays also flickering (they disappear from the screen during switching). But why? Since they aren't affected by this operation in any way they should stay visible all the time. With more than 2 displays it become so annoying, almost impossible to use.

Reproducible: Always

Steps to Reproduce:
1. Plug in 2+ displays (preferably with different resolution)
2. Open a few windows on both of them
3. Enable the carousel effect
4. Enable "filter windows by display", only show windows from current display
5. Switch to the second display and try Alt+TAB
Actual Results:  
The carousel will still appear on the primary display and in wrong position. Even though you're only switching between windows on the second display, windows from the another display will also disappear while you're holding the keys.

Expected Results:  
The carousel should appear on the active display, not on the primary one. It should be of the correct size to match active display resolution and be in the correct position. If the "filter windows by display" option is enabled windows on all other displays should stay untouched, should not flicker or anything like that.

The severity is set to normal but I think it should be major because it is really almost impossible to use 2+ displays with KDE at the moment.
Comment 1 Martin Flöser 2014-01-29 09:17:11 UTC
Please report two issues if you discover two issues. Otherwise it's impossible to track the status.

For point 1 please check the state of systemsetting -> Window Behavior -> Window Behavior (side bar) -> Focus (tab) -> Active screen follows mouse (checkbox)

If that is enabled Alt+Tab should be shown on the screen which has the mouse.

Then a question: what's the "carousel" effect?
Comment 2 Alexander 2014-01-29 09:59:33 UTC
Created attachment 84877 [details]
Example of the mentioned "carousel" effect.

Hi, thanks, the "Active screen follows mouse" option helped. The carousel is the Kwin effect (it is how it was translated in my language), see the screenshot for example.

Can we then keep this ticket for the second issue I've described? We may just change the title.
Comment 3 Martin Flöser 2014-01-29 10:21:17 UTC
The second issue is not a bug at all. It's the intended behavior of the CoverSwitch effect to fade out all windows which should not be used during switching. I'm not even sure whether it's possible to adjust the effect to not do it. The effect has to filter out windows which are not included in Alt+Tab (e.g. main window covered by modal) and it doesn't know anything about the options which are used. So it doesn't know that the window is not shown because it's on a different screen.

As this is currently the intended behavior I adjusted the bug report to be a "wishlist" item. The chances that there will be changes is rather low. In fact the chances are that it's getting worse because you just triggered me to think about whether it makes sense to restrict the effect on single screen cases (I stopped using it since I use multi-screen and I wrote that effect ;-)
Comment 4 Alexander 2014-01-29 10:58:25 UTC
Yeah, that sounds right until you add second display and turn on the "filter windows by display" option, so windows from other displays aren't involved anymore.

E.g.: imagine I've 5 displays and use just one-two of them intensively, all others are just displaying some charts and/or other stats. It is pretty strange that all windows flicker when I am switching between windows on one of displays. Especially at the night, it is very unpleasant for the eyes, these flashes. And also seems wrong logically, why to hide (and to touch at all) windows from other displays that aren't even involved?

Don't know how it is built internally though thus understand it could get complicated to change/fix. Just describing how it looks to me as an end user.
Comment 5 Martin Flöser 2014-01-29 11:34:58 UTC
> E.g.: imagine I've 5 displays and use just one-two of them intensively, all
> others are just displaying some charts and/or other stats.

The effect doesn't support that. It has huge hacks to make two screens kind of 
working, but more screens will break. It's just outside the set of 
requirements for these kind of effects, thus the idea to disable them.
Comment 6 Alexander 2014-01-29 11:47:36 UTC
Ohh, I am waiting for 2 more displays to arrive...
Comment 7 Alexander 2014-01-29 11:57:20 UTC
So this feature requires an ability to work with currently active display only, like if there are no others. This would allow to handle as many displays as users may need.
Comment 8 Alexander Mentyu 2018-09-20 14:38:12 UTC
Is this still reproducible?
Comment 9 Ismael Asensio 2021-12-23 17:39:43 UTC
Git commit cc885d63fcbade47db682ae783c4c77091e8939e by Ismael Asensio.
Committed on 23/12/2021 at 17:27.
Pushed by iasensio into branch 'master'.

[windowswitchers] QML replacement for flipswitch and coverswitch

Rewrite of the flipswitch and coverswitch window switchers in QMl,
using the KWin Tabbox API and PathView to layout the thumbnails.

The use of common Plasma components, following the user's theme,
and lack of reflections gives the effects a more modern (breezy) look,
consistent with the user's desktop and the other tabswitchers.
Related: bug 443757, bug 184874, bug 404802, bug 321324
FIXED-IN: 5.24

M  +4    -0    windowswitchers/CMakeLists.txt
A  +249  -0    windowswitchers/coverswitch/contents/ui/main.qml     [License: GPL(v2.0+)]
A  +16   -0    windowswitchers/coverswitch/metadata.desktop
A  +218  -0    windowswitchers/flipswitch/contents/ui/main.qml     [License: GPL(v2.0+)]
A  +16   -0    windowswitchers/flipswitch/metadata.desktop