Bug 466747 - Wayland: Invert effect causes certain UI elements to stutter
Summary: Wayland: Invert effect causes certain UI elements to stutter
Status: RESOLVED FIXED
Alias: None
Product: kwin
Classification: Plasma
Component: general (other bugs)
Version First Reported In: 5.27.2
Platform: Gentoo Packages Linux
: NOR normal
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords: regression
Depends on:
Blocks:
 
Reported: 2023-03-02 22:31 UTC by Naxdy
Modified: 2023-03-03 20:13 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed/Implemented In: 5.27.3
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Naxdy 2023-03-02 22:31:55 UTC
SUMMARY
While inverted, certain UI elements seem to not update correctly, most notably the hamburger menu in Firefox. As far as I can tell, this bug is new to 5.27.0.

From what I've tested, only Firefox and Thunderbird are affected by this, but I can only *reliably* reproduce this bug in Firefox.

STEPS TO REPRODUCE
0. Log in to Plasma Wayland
1. Open Firefox
2. Enable Invert effect
3. Open Firefox' hamburger menu (ensure the currently opened webpage is NOT actively rendering content, e.g. videos, animations)
4. Interact with the menu.

OBSERVED RESULT
When hovered, menu entries either don't highlight at all, or highlight after a delay. 

When clicked, menu is slow to update. When dismissed, menu sometimes leaves behind an artifact on the webpage (disappears once the page renders something, or the user scrolls).

EXPECTED RESULT
Menu responds normally, as it would without the Invert effect applied.

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: Gentoo
(available in About System)
KDE Plasma Version: 5.27.2
KDE Frameworks Version: 5.103.0
Qt Version: 5.15.8

ADDITIONAL INFORMATION
-
Comment 1 Bug Janitor Service 2023-03-03 13:57:12 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/3742
Comment 2 Zamundaaa 2023-03-03 16:07:24 UTC
Git commit 43a9add5fec388c9f06363b624768dae3b669a02 by Xaver Hugl.
Committed on 03/03/2023 at 14:58.
Pushed by zamundaaa into branch 'master'.

windowitem: properly handle sub-subsurfaces

The damage of the whole subsurface tree needs to be considered, not just the
topmost subsurfaces of a window.

M  +12   -6    src/scene/windowitem.cpp
M  +1    -0    src/scene/windowitem.h

https://invent.kde.org/plasma/kwin/commit/43a9add5fec388c9f06363b624768dae3b669a02
Comment 3 Zamundaaa 2023-03-03 16:50:49 UTC
Git commit 83a5ea3dd37173e29af98c152c7b4d2fe0f48bce by Xaver Hugl.
Committed on 03/03/2023 at 16:09.
Pushed by zamundaaa into branch 'Plasma/5.27'.

windowitem: properly handle sub-subsurfaces

The damage of the whole subsurface tree needs to be considered, not just the
topmost subsurfaces of a window.
(cherry picked from commit 43a9add5fec388c9f06363b624768dae3b669a02)

M  +12   -6    src/scene/windowitem.cpp
M  +1    -0    src/scene/windowitem.h

https://invent.kde.org/plasma/kwin/commit/83a5ea3dd37173e29af98c152c7b4d2fe0f48bce