Bug 463542 - WindowHeap-based effects show windows with "Skip Pager" or "Skip Switcher" flags
Summary: WindowHeap-based effects show windows with "Skip Pager" or "Skip Switcher" flags
Status: RESOLVED FIXED
Alias: None
Product: kwin
Classification: Plasma
Component: effects-window-management (show other bugs)
Version: 5.26.4
Platform: Arch Linux Linux
: NOR normal
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords: regression
: 477625 478645 478747 (view as bug list)
Depends on:
Blocks:
 
Reported: 2022-12-28 05:25 UTC by D. Debnath
Modified: 2024-04-23 11:26 UTC (History)
7 users (show)

See Also:
Latest Commit:
Version Fixed In: 6.0
Sentry Crash Report:


Attachments
Konsole window (pinned to all desktops) shown in the Desktop Grid effect (528.22 KB, image/png)
2023-01-27 06:44 UTC, D. Debnath
Details
Window rules applied to Konsole window (168.64 KB, image/png)
2023-01-27 06:45 UTC, D. Debnath
Details

Note You need to log in before you can comment on or make changes to this bug.
Description D. Debnath 2022-12-28 05:25:01 UTC
SUMMARY

The earlier implementation of the "Present Windows"/"Desktop Grid" effects used to respect either the "Skip Pager" or "Skip Switcher" (don't remember which) window rules, but the new QML based effects don't.

As a solution, a new window rule may be introduced, possibly called "Skip Present Windows/Desktop Grid/Overview" which will cause that window to not be shown in these effects.

SOFTWARE/OS VERSIONS

Operating System: Arch Linux
KDE Plasma Version: 5.26.4
KDE Frameworks Version: 5.101.0
Qt Version: 5.15.7
Kernel Version: 6.0.12-arch1-1 (64-bit)
Graphics Platform: X11
Memory: 7.5 GiB of RAM
Graphics Processor: Mesa Intel® UHD Graphics 630
Comment 1 Nate Graham 2023-01-02 22:04:24 UTC
Yeah, the new ones should do this too.
Comment 2 David Edmundson 2023-01-23 21:14:35 UTC
I cannot reproduce any issue with any known windows using these flags. 
Please confirm if it is still an issue and the application window was incorrectly displayed
Comment 3 D. Debnath 2023-01-27 06:44:56 UTC
Created attachment 155694 [details]
Konsole window (pinned to all desktops) shown in the Desktop Grid effect

(In reply to David Edmundson from comment #2)
> Please confirm if it is still an issue and the application window was
> incorrectly displayed

Yes, I can confirm that this is still an issue.
Comment 4 D. Debnath 2023-01-27 06:45:50 UTC
Created attachment 155695 [details]
Window rules applied to Konsole window
Comment 5 Nicolas Fella 2023-02-05 16:00:18 UTC
(In reply to David Edmundson from comment #2)
> I cannot reproduce any issue with any known windows using these flags. 
> Please confirm if it is still an issue and the application window was
> incorrectly displayed

I guess most of our windows with these flags also have a special type that results in them being filtered out, like NET:Dock.

https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/2583 uses NET::Normal + SkipSwitcher and there the window still shows up in the effects
Comment 6 Nicolas Fella 2023-02-05 16:05:03 UTC
Apparently ClientModel v3 only allows filtering by window type, not by Skip* flags. ClientModel v2 does allow that
Comment 7 D. Debnath 2023-02-06 20:03:15 UTC
I want to clarify that the new implementations of the effects *do* respect the "Skip Pager" and "Skip Switcher" window rules.

However, the previous implementations of the "Present Windows" and "Desktop Grid" effects additionally used to skip showing the windows based on one of these window rules (skip pager/switcher), but the new effects *don't*.

As a solution, I hope a new window rule can be introduced, namely: "Skip Present Windows/Desktop Grid/Overview"
Comment 8 D. Debnath 2023-02-06 20:11:12 UTC
Actually I don't remember correctly what caused the windows to be skipped in the Present Windows / Desktop Grid effects.

* Either there used to be window rules named "Skip Desktop Grid" / "Skip Present Windows" which were removed when the window rules were refactored.

* Or the earlier implementations of "Desktop Grid" / "Present Windows" used to pick up the currently available "Skip Switcher" / "Skip Pager" window rules, but the new implementations no longer do.
Comment 9 D. Debnath 2023-12-17 13:41:06 UTC

*** This bug has been marked as a duplicate of bug 478645 ***
Comment 10 Bug Janitor Service 2023-12-21 16:09:22 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/4826
Comment 11 Nate Graham 2023-12-21 16:48:43 UTC
Git commit b43052af83d9c6f14f8f88b99f6186e3e66b4df5 by Nate Graham, on behalf of Akseli Lahtinen.
Committed on 21/12/2023 at 17:48.
Pushed by ngraham into branch 'master'.

WindowHeapDelegate: If window is set to "skip switcher", skip it from window heap

Without this, windows like xwaylandvideobridge would show up.
FIXED-IN: 6.0

M  +3    -1    src/plugins/private/qml/WindowHeapDelegate.qml

https://invent.kde.org/plasma/kwin/-/commit/b43052af83d9c6f14f8f88b99f6186e3e66b4df5
Comment 12 D. Debnath 2023-12-22 19:07:04 UTC
*** Bug 478645 has been marked as a duplicate of this bug. ***
Comment 13 Nate Graham 2024-01-23 19:57:23 UTC
*** Bug 477625 has been marked as a duplicate of this bug. ***
Comment 14 postix 2024-04-23 11:26:14 UTC
*** Bug 478747 has been marked as a duplicate of this bug. ***