https://bugs.kde.org/show_bug.cgi?id=525913
Bug ID: 525913
Summary: Support horizontal scrolling in Android remote input
Classification: Applications
Product: kdeconnect
Version First unspecified
Reported In:
Platform: Other
OS: Android 13.x
Status: REPORTED
Severity: wishlist
Priority: NOR
Component: android-application
Assignee: [email protected]
Reporter: [email protected]
CC: [email protected]
Target Milestone: ---
DESCRIPTION
KDE Connect's Android Remote Input currently supports vertical two-finger
scrolling, but horizontal two-finger scrolling is not supported.
Android's GestureDetector already provides both horizontal and vertical
distances for a two-finger scroll gesture. KDE Connect's mousepad protocol also
supports sending both dx and dy scroll values. However, MousePadActivity
currently only uses the vertical distance and always sends 0 for the horizontal
scroll value.
It would be useful to forward the horizontal component as well, allowing the
Android Remote Input to behave more like a regular touchpad. This would also
allow diagonal scrolling in applications that support scrolling on both axes.
STEPS TO REPRODUCE
1. Connect an Android device to a computer using KDE Connect.
2. Open Remote Input on the Android device.
3. Place two fingers on the touchpad area and move them horizontally.
OBSERVED RESULT
Horizontal two-finger movement does not scroll horizontally. Only the vertical
component of a two-finger gesture is sent to the computer.
EXPECTED RESULT
Moving two fingers horizontally should produce horizontal scrolling. Diagonal
two-finger movement should send both horizontal and vertical scroll components,
allowing the receiving application to decide how to handle the two axes.
The existing scroll direction and sensitivity settings should apply to both
axes.
SOFTWARE/OS VERSIONS
Operating System: Arch Linux
KDE Plasma Version: 6.7.5
KDE Frameworks Version: 6.30.0
Qt Version: 6.11.2
Kernel Version: 7.2.4-zen2-1-zen (64-bit)
Graphics Platform: Wayland
Processors: 24 × 12th Gen Intel® Core™ i7-12800HX
Memory: 32 GiB of RAM (31.1 GiB usable)
Graphics Processor 1: Mesa Intel® UHD Graphics
Graphics Processor 2: NVIDIA GeForce RTX 4060 Laptop GPU/PCIe/SSE2
ADDITIONAL INFORMATION
The Android mousepad implementation already receives both `distanceX` and
`distanceY` in `MousePadActivity.onScroll()`, while
`MousePadPlugin.sendScroll(dx, dy)` already supports transmitting both axes.
Currently, the horizontal component is discarded before the scroll packet is
sent.
I have implemented and locally tested a small change that forwards both
components. Horizontal, vertical, and diagonal two-finger scrolling work as
expected with the change. I plan to submit a merge request for it.
--
You are receiving this mail because:
You are watching all bug changes.