mirror of
https://github.com/feschber/lan-mouse.git
synced 2026-05-15 06:06:07 -06:00
[PR #297] Add raw evdev input emulation #362
Labels
No labels
Xorg
documentation
enhancement
macos
pull-request
question
windows
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: github-starred/lan-mouse#362
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?
📋 Pull Request Information
Original PR: https://github.com/feschber/lan-mouse/pull/297
Author: @samvv
Created: 5/29/2025
Status: 🔄 Open
Base:
main← Head:main📝 Commits (4)
883d162First rough implementation of evdev emulatione9856e2Fix CLI backend overridesab238baFix clippy warnings1f222faFix mouse wheel and use HI_RES📊 Changes
8 files changed (+825 additions, -2 deletions)
View changed files
📝
Cargo.lock(+54 -0)📝
Cargo.toml(+2 -0)📝
input-capture/src/layer_shell.rs(+1 -1)📝
input-emulation/Cargo.toml(+6 -1)📝
input-emulation/src/error.rs(+10 -0)➕
input-emulation/src/evdev.rs(+734 -0)📝
input-emulation/src/lib.rs(+11 -0)📝
src/config.rs(+7 -0)📄 Description
This pull request adds another input emulation backend that uses evdev to create a virtual mouse/keyboard, bypassing Wayland restrictions. It is meant to be a fallback for the other Linux backends.
This backend successfully fixes input emulation issues on COSMIC and potentially other platforms that lack a proper remote desktop portal.
Limitations
Currently this feature requires lan-mouse to be run as root, e.g. with
sudo -E lan-mouse. This is a temporary limitation that I hope to alleviate by creating a separate daemon and authentication mechanism.To Do
A daemon that allows unprivileged execution of lan-mouse, as described above.We are going to use an udev rule.🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.