SUMMARY Scrolling with a touchpad doesn't work (at any reasonable speed). Honestly I thought this should have been fixed by BUG:496747 but apparently not. Notably, this hasn't worked correctly in any Plasma version for me. STEPS TO REPRODUCE 1. Use a mouse or touchpad with high resolution ("pixel perfect") scrolling 2. Connect using Krdc 3. Try scrolling normally (and slowly) OBSERVED RESULT My understanding is only scroll events that seem to cover enough "distance" in a single event seem get through, making for very slow scrolling (because most events are ignored) - and no scrolling at all if I don't give it all I've got and go warp speed with my fingers :) EXPECTED RESULT Either: - Correct modern scrolling Scroll the correct distance. Works with krdc connected to a windows host, so this pretty much has to be on krdp. - Legacy accounting for scroll distance: Accumulate wheel delta and send a normal legacy 120px (I think?) scroll event once that threshold has been reached. SOFTWARE/OS VERSIONS krdp computer: Linux/KDE Plasma: KDE Neon 24.04 KDE Plasma Version: 6.5.0 KDE Frameworks Version: 6.19.0 Qt Version: 6.9.2 Client pc: krdc client 25.08.2 Linux/KDE Plasma: Arch Linux KDE Plasma Version: 6.4.5 KDE Frameworks Version: 6.19.0 Qt Version: 6.10.0
Might be Bug 485724?
(In reply to Nate Graham from comment #1) > Might be Bug 485724? My Logitech M710 works correctly when directly connected to either system, just not through KRDP. Also scrolling doesn't work with KRDP at all when doing it slowly, no matter for how long you scroll slowly. Both of those facts lead me to believe that it's not that Bug 485724
A possibly relevant merge request was started @ https://invent.kde.org/plasma/krdp/-/merge_requests/143
A possibly relevant merge request was started @ https://invent.kde.org/plasma/krdp/-/merge_requests/144
Git commit 433babfefcd28bf186e5d184ad8450dcd0f52157 by David Edmundson, on behalf of reali es. Committed on 24/02/2026 at 13:13. Pushed by davidedmundson into branch 'master'. Fix scroll wheel for RDP clients sending high-resolution or zero-position events ## Summary Some RDP clients, notably Microsoft Remote Desktop for Mac, send wheel events with: 1. **(0,0) as the mouse position** — MRD omits cursor coordinates for wheel events 2. **Sub-120 axis rotation values** — macOS smooth scrolling sends high-resolution deltas (1-22 per event) instead of the standard 120 per wheel notch This caused scrolling to be completely non-functional with MRD on both the Portal and Plasma screencast session paths. ### Changes - **InputHandler.cpp**: Track last known mouse position from move events and substitute it when a wheel event arrives with a null position - **PortalSession.cpp**: Switch from `NotifyPointerAxisDiscrete` (integer steps, truncates sub-120 values to 0) to `NotifyPointerAxis` (smooth scroll, preserves sub-notch precision) - **PlasmaScreencastV1Session.cpp**: Fix `wl_fixed_t` conversion using `wl_fixed_from_double()` (was passing raw int, making values ~256x smaller than intended) - Both session paths now convert Qt angleDelta (1/8-degree units) to degrees by dividing by 8, producing 15.0 per standard notch — matching libinput's wheel axis convention ### Test plan - [x] Connect with Microsoft Remote Desktop for Mac — scrolling should work in both directions with natural speed - [x] Connect with xfreerdp/standard RDP client — verify scrolling still works correctly (standard 120-per-notch values) - [ ] Test horizontal scrolling if client supports it - [x] Verify mouse position is correct during scroll (not jumping to top-left corner) M +31 -4 src/InputHandler.cpp M +7 -3 src/PlasmaScreencastV1Session.cpp M +6 -7 src/PortalSession.cpp https://invent.kde.org/plasma/krdp/-/commit/433babfefcd28bf186e5d184ad8450dcd0f52157
Git commit d8c1f28634289806e88d4ff14a53237cced059a8 by Nate Graham. Committed on 24/02/2026 at 14:29. Pushed by ngraham into branch 'Plasma/6.6'. Fix scroll wheel for RDP clients sending high-resolution or zero-position events ## Summary Some RDP clients, notably Microsoft Remote Desktop for Mac, send wheel events with: 1. **(0,0) as the mouse position** — MRD omits cursor coordinates for wheel events 2. **Sub-120 axis rotation values** — macOS smooth scrolling sends high-resolution deltas (1-22 per event) instead of the standard 120 per wheel notch This caused scrolling to be completely non-functional with MRD on both the Portal and Plasma screencast session paths. ### Changes - **InputHandler.cpp**: Track last known mouse position from move events and substitute it when a wheel event arrives with a null position - **PortalSession.cpp**: Switch from `NotifyPointerAxisDiscrete` (integer steps, truncates sub-120 values to 0) to `NotifyPointerAxis` (smooth scroll, preserves sub-notch precision) - **PlasmaScreencastV1Session.cpp**: Fix `wl_fixed_t` conversion using `wl_fixed_from_double()` (was passing raw int, making values ~256x smaller than intended) - Both session paths now convert Qt angleDelta (1/8-degree units) to degrees by dividing by 8, producing 15.0 per standard notch — matching libinput's wheel axis convention ### Test plan - [x] Connect with Microsoft Remote Desktop for Mac — scrolling should work in both directions with natural speed - [x] Connect with xfreerdp/standard RDP client — verify scrolling still works correctly (standard 120-per-notch values) - [ ] Test horizontal scrolling if client supports it - [x] Verify mouse position is correct during scroll (not jumping to top-left corner) (cherry picked from commit 433babfefcd28bf186e5d184ad8450dcd0f52157) 405b694f Fix scroll wheel for RDP clients sending high-resolution or zero-position events Co-authored-by: reali es <kde@reali.es> M +31 -4 src/InputHandler.cpp M +7 -3 src/PlasmaScreencastV1Session.cpp M +6 -7 src/PortalSession.cpp https://invent.kde.org/plasma/krdp/-/commit/d8c1f28634289806e88d4ff14a53237cced059a8