Summary: | GL_INVALID_VALUE in glTexSubImage2D under fractional scaling, breaking "show keyboard accelerator when alt is pressed" in window menu | ||
---|---|---|---|
Product: | [Plasma] kwin | Reporter: | Georgiy Treyvus <makesourcenotcode> |
Component: | scene-opengl | Assignee: | KWin default assignee <kwin-bugs-null> |
Status: | RESOLVED FIXED | ||
Severity: | minor | CC: | fanzhuyifan, kde, nate |
Priority: | NOR | Keywords: | accessibility |
Version First Reported In: | git master | ||
Target Milestone: | --- | ||
Platform: | Fedora RPMs | ||
OS: | Linux | ||
Latest Commit: | https://invent.kde.org/plasma/kwin/-/commit/865660f55378f8bd5b0b41de398b27b6975bee1c | Version Fixed In: | |
Sentry Crash Report: | |||
Attachments: | working accels |
Description
Georgiy Treyvus
2025-01-09 22:41:33 UTC
The right click on decoration menu? It shows accelerators here. Created attachment 177250 [details]
working accels
So I did some more testing from the Fedora 41 live media. This issue has something to do with the Application Style that's set. By default that's Breeze. But when I change it to Fusion or MS Windows 9x it works. But with the Breeze style it doesn't matter whether I invoke the Window Operations menu by Alt+F3 or right clicking on the title bar or however else. The accelerator keys do not show. They don't show when I press Alt. (They don't show when I hover the mouse over the menu items either. But at that point if I'm already using the mouse instead of keyboard shortcuts I've lost the game.) Can reproduce with either the menu opened via right click, clicking top left corner, or shortcut. Using breeze style. kwin: git master commit b36151e81a456d25b118abadb791b4a12bc624be Operating System: Arch Linux KDE Plasma Version: 6.3.80 KDE Frameworks Version: 6.11.0 Qt Version: 6.9.0 Kernel Version: 6.12.8-arch1-1 (64-bit) Graphics Platform: Wayland Processors: 20 × 13th Gen Intel® Core™ i9-13900H Memory: 15.2 GiB of RAM Graphics Processor 1: Mesa Intel® Graphics Graphics Processor 2: llvmpipe Manufacturer: ASUSTeK COMPUTER INC. Product Name: ROG Zephyrus G16 GU603VV_GU603VV System Version: 1.0 Can reproduce the issue same as Yifan. The issue only appears when the keyboard accelerators visibility option is set to "show when alt key is pressed". If set to always show, the accelerators are correctly shown. For some reason, this *does not* happen when running nested kwin (e.g., with dbus-run-session kwin_wayland --exit-with-session konsole) The underlying issue seems to be rounding errors under fractional scaling. The evidence includes:
- The issue doesn't occur when all displays are set to 100% scaling
- When display is set to fractional scaling (on my end 135%) to trigger the issue, I see lines such as
> kwin_scene_opengl: 0x2: GL_INVALID_VALUE in glTexSubImage2D(xoffset 0 + width 507 > 506)
> kwin_scene_opengl: 0x3: GL_INVALID_VALUE in glTexSubImage2D(yoffset 0 + height 947 > 946)
in the logs when I press/release alt, indicating a off-by-1 error in the size. (only first line appears if no submenus are open, second line appears if a certain submenu is open).
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/7011 Git commit 8073f1380166d328ad24cf2e066260c18c1a1a2e by Vlad Zahorodnii. Committed on 15/01/2025 at 14:59. Pushed by vladz into branch 'master'. plugins/qpa: Clip buffer damage Buffer damage must remain confined to the buffer rect. M +4 -1 src/plugins/qpa/backingstore.cpp https://invent.kde.org/plasma/kwin/-/commit/8073f1380166d328ad24cf2e066260c18c1a1a2e Git commit 865660f55378f8bd5b0b41de398b27b6975bee1c by Vlad Zahorodnii. Committed on 15/01/2025 at 15:54. Pushed by vladz into branch 'Plasma/6.3'. plugins/qpa: Clip buffer damage Buffer damage must remain confined to the buffer rect. (cherry picked from commit 8073f1380166d328ad24cf2e066260c18c1a1a2e) Co-authored-by: Vlad Zahorodnii <vlad.zahorodnii@kde.org> M +4 -1 src/plugins/qpa/backingstore.cpp https://invent.kde.org/plasma/kwin/-/commit/865660f55378f8bd5b0b41de398b27b6975bee1c Can verify the fix. |