https://bugs.kde.org/show_bug.cgi?id=517703

            Bug ID: 517703
           Summary: InputCapture portal lacks session persistence, dialog
                    shown on every CreateSession
    Classification: Plasma
           Product: xdg-desktop-portal-kde
      Version First 6.6.2
       Reported In:
          Platform: Other
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: general
          Assignee: [email protected]
          Reporter: [email protected]
                CC: [email protected]
  Target Milestone: ---

Created attachment 190735
  --> https://bugs.kde.org/attachment.cgi?id=190735&action=edit
The popup for accepting / canceling the request

SUMMARY
InputCapture portal lacks session persistence, "Input Capture Requested" dialog
shown on every CreateSession with no option to remember

STEPS TO REPRODUCE
1. Install an application that uses the InputCapture portal (e.g., Deskflow, a
KVM/mouse-keyboard sharing tool)
2. Launch the application. The "Input Capture Requested" dialog appears, click
"Allow"
3. Close and relaunch the application (or reboot with the application set to
autostart)

OBSERVED RESULT
The "Input Capture Requested" dialog appears again every single time the
application launches. There is no "Remember this choice" or "Allow restoring on
future sessions" checkbox. Users must manually click "Allow" on every
launch/boot.

EXPECTED RESULT
The InputCapture dialog should offer a persistence option (like the
RemoteDesktop portal already does with its "Allow restoring on future sessions"
checkbox), allowing the user to grant permission once and have it remembered
via the XDG permission store.

The RemoteDesktop portal already implements this pattern: it uses the
permission store with PersistUntilRevoked and provides the allowRestore
checkbox. The InputCapture portal (InputCaptureDialog.qml and inputcapture.cpp)
has no such mechanism: no permission store lookup before showing the dialog, no
persistence checkbox, and no permission stored after clicking Allow.

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: EndeavourOS (Arch-based)
KDE Plasma Version: 6.6.2
KDE Frameworks Version: 6.23.0
Qt Version: 6.10.2
Kernel: 6.18.18-1-lts (Wayland)
xdg-desktop-portal-kde: 6.6.2-1
xdg-desktop-portal: 1.20.3-2

ADDITIONAL INFORMATION
The InputCapture portal is used by KVM software like Deskflow, Input Leap, and
Barrier to capture mouse/keyboard at screen edges for seamless multi-computer
control. These applications typically autostart on boot, making the repeated
dialog especially disruptive: users must click "Allow" on every single login.

The RemoteDesktop portal's persistence implementation (in remotedesktop.cpp and
the RemoteDesktop QML dialog) could serve as a direct reference for adding the
same capability to InputCapture. The pattern is already proven and working for
RemoteDesktop sessions.

DISCLAIMER
I am not a KDE developer or C++/Qt expert. I am an end user who was affected by
this issue and investigated it with the help of AI tooling (Claude Code). The
technical analysis (source code references, comparison with RemoteDesktop
implementation) was done with AI assistance. I have verified the observed
behavior myself, but the code-level details should be reviewed by someone
familiar with the xdg-desktop-portal-kde codebase. Happy to be corrected on any
inaccuracies.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to