mirror of
https://github.com/joleuger/vuinputd.git
synced 2026-11-05 01:17:20 +00:00
[GH-ISSUE #7] Absolute devices (touchscreen, mouse absolute) fails with min == max on ABS_X #7
Labels
No labels
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
joleuger/vuinputd#7
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @Markus328 on GitHub (Feb 25, 2026).
Original GitHub issue: https://github.com/joleuger/vuinputd/issues/7
I'm running a nspawn container with a headless session of sway, with sunshine configured. When using android moonlight clients, it's possible to use Pen (S pen per example) and mouse absolute and even passthrough the touchscreen. But all of these, are absolute devices, and won't work only when using
/dev/vuinputas uinput.Sunshine can create the devices, but the devices are invalid, throwing errors on
libinput list-devices, from inside the container:On host, disabling the udev rules I can confirm the errors also occurs, I cannot use absolute mouse if the sunshine was started within the container. Having a sunshine instance outside the container, that exposes my host, with working absolute mouse I confirm the issue very probably is how vuinput handles those devices.
@joleuger commented on GitHub (Feb 26, 2026):
Thank you for your report. I can reproduce the problem.
@joleuger commented on GitHub (Feb 26, 2026):
Trace
github.com/LizardByte/Sunshine@83e8fcf159/src/platform/linux/input/inputtino_common.h (L33)github.com/games-on-whales/inputtino@504f0abc7d/src/uinput/mouse.cpp (L107)github.com/games-on-whales/inputtino@504f0abc7d/src/uinput/mouse.cpp (L117C29-L117C45)github.com/games-on-whales/inputtino@504f0abc7d/src/uinput/mouse.cpp (L66C36-L66C52)https://gitlab.freedesktop.org/libevdev/libevdev/-/blob/master/libevdev/libevdev.c?ref_type=heads#L1581
@joleuger commented on GitHub (Feb 26, 2026):
Okay, I remember. This is actually a pretty old implementation gap. And as far as I can see the only one left for ioctl.
It is actually not implemented at all.
https://github.com/joleuger/vuinputd/blob/0.3.2/vuinputd/src/cuse_device/vuinput_ioctl.rs#L273
The problem back then was that the content of UI_ABS_SETUP is dynamic and I need to extract the size out of the submitted ioctl. I haven't implemented it back then, because my focus was on the gamepad first.
Thanks for the hint. Is it in any way urgent for your use case? I just don't manage to fix it in the next two weeks. Sorry for the inconvenience.
@Markus328 commented on GitHub (Mar 4, 2026):
Hi, I wondered this was just a unimplemented function. Its not that urgent, even if its not fixed my use would continue since I pretend to use bluetooth mouse anyway. Just in such cases that I cannot get them it would be pretty annoying some applications. But not that bad
@Markus328 commented on GitHub (Mar 4, 2026):
Saying again: Great software! thanks to it I can run rootless containers with working and isolated sunshine inside. Thank you for developing this. I havent touched any rust code in my life, else maybe I could help with
@joleuger commented on GitHub (Apr 6, 2026):
Thanks for your compliment. That really motivates me! I have managed to add a small tryfix. At least in my setup, it does not destroy anything. When I have successfully implemented a proper test case, I'll close this issue.