https://bugs.kde.org/show_bug.cgi?id=517270
Bug ID: 517270
Summary: Portal consent dialogs (ScreenCast/RemoteDesktop) do
not receive input from virtual input devices (Plasma
6.5.x)
Classification: Plasma
Product: xdg-desktop-portal-kde
Version First 6.5.5
Reported In:
Platform: Debian stable
OS: Linux
Status: REPORTED
Severity: major
Priority: NOR
Component: general
Assignee: [email protected]
Reporter: [email protected]
CC: [email protected]
Target Milestone: ---
SUMMARY
Portal consent dialogs rendered by xdg-desktop-portal-kde (ScreenChooserDialog,
RemoteDesktopDialog) do not respond to any form of virtual input on KDE Plasma
6.5.x. The dialogs render and are visually present on screen, but cannot be
interacted with through any non-physical input method. This blocks all remote
desktop and automation workflows that need to complete the portal consent flow.
This is the default KDE version shipping in Debian 13 (trixie), which makes it
a significant issue for remote desktop use cases on one of the most widely
deployed Linux distributions.
STEPS TO REPRODUCE
1. Run a Wayland session with KDE Plasma 6.5.x (tested on Debian 13 trixie and
Manjaro stable)
2. Start an application that requests ScreenCast or RemoteDesktop portal access
(any xdg-desktop-portal-based screen sharing or remote desktop server)
3. The ScreenCast source selection dialog or RemoteDesktop consent dialog
appears
4. Attempt to interact with the dialog using any of these methods:
- ydotool (mouse move + click, keyboard input)
- VNC mouse and keyboard (QEMU VNC, TigerVNC)
- QEMU QMP sendkey (Tab, Enter)
- Any virtual keyboard/pointer via uinput
OBSERVED RESULT
Dialog does not respond to any input. Buttons cannot be clicked, keyboard
shortcuts (Enter, Escape, Tab) have no effect. The only way to dismiss the
dialog is via physical console access.
EXPECTED RESULT
Dialog should respond to all input sources identically. KWin's input filter
pipeline does not discriminate between physical and virtual input devices — the
problem is in the dialog's window/focus management, not in KWin's input
routing.
ADDITIONAL INFORMATION
Tested on:
- Debian 13 (trixie), KDE Plasma 6.5.4, xdg-desktop-portal-kde 6.5.4 — BROKEN
- Manjaro stable, KDE Plasma 6.5.5, xdg-desktop-portal-kde 6.5.5 — BROKEN
- openSUSE Tumbleweed, KDE Plasma 6.6.0, xdg-desktop-portal-kde 6.6.0 — WORKING
Root cause analysis:
In Plasma 6.5.x, portal dialogs use PWD.SystemDialog from plasma-workspace.
This component uses a QML Loader to delegate window rendering to the active
look-and-feel theme via LookAndFeel.fileUrl("systemdialogscript"). The Breeze
implementation provides the layout, window flags, and present() method through
this delegation chain. This delegation chain appears to result in windows that
render visually but have broken focus/input handling.
In Plasma 6.6, Harald Sitter refactored all portal dialogs from
PWD.SystemDialog to a new PortalDialog component built directly into
xdg-desktop-portal-kde. This eliminates the look-and-feel delegation,
implements window presentation directly, and adds explicit focus management
(e.g., forceActiveFocus() on the new SearchField). Commit 721b940
("appchooserdialog: fix focus handling") specifically notes the issue "broke
some time before 6.5".
The fix exists in 6.6, but was not backported to Plasma/6.5. Since Debian 13
and Manjaro stable both ship Plasma 6.5.x, this affects a large user base.
SOFTWARE/OS VERSIONS
Linux/KDE Plasma:
KDE Plasma Version: 6.5.4 / 6.5.5
KDE Frameworks Version: 6.22.0
Qt Version: 6.10.x
--
You are receiving this mail because:
You are watching all bug changes.