-
-
Notifications
You must be signed in to change notification settings - Fork 86
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Tracking issue for MacOS support #36
Comments
Mouse input emulation works, for keyboard emulation the keycodes need to be translated. |
I took a quick look at Input Capture (I'm primarily interested in the ability to release input). It looks like |
The easy way is to just spawn a thread. And as there doesn't seem to be any non-blocking systemcall for input capturing, this is probably the only way. What I've been considering, is giving the producer access to the For now, if you want to work on this, I suggest you just spawn a thread and send the events via a |
@feschber really awesome project, just mac is missing, any plan or date to start work on Mac Input capture ? |
I can't give any estimate date but encryption and MacOS Input capture are next. Be aware the input capture API is a bit specific to this use case in that it locks the cursor and starts when the screen area is exited (this can not be done manually right now). |
Hello,
I'm not sure if I have something misconfiguration or if there is something else going on. |
Be aware that Gnome < v45 won't work. I believe pop os does not ship gnome 45 yet so you're out of luck here unfortunately (until the next popos release) Your log should show an error saying that only the dummy input capture is active. |
Ah, I missed that dependency. Thanks for pointing it out. |
Yeah it might be a good idea to add a hint to the ui as well since this is not entirely obvious. |
Also do you think it would be possible to use lan-mouse as a library for another project ? As I said, I am planning to separate the input emulation and capture into separate crates. There are a few limitations (by design):
So yeah depending on the project it could certainly be used as a library. |
@feschber ohh that would be great, |
Interesting! I did a prototype android app before (only for Android input capture, not emulation) and it worked quite well. If you want something to work with, heres a brief overview: The types are encoded as two bytes - one for the event type (pointer / keyboard, etc.) and one for the event sub-type (e.g. motion / button). You can check out https://github.com/feschber/lan-mouse/blob/main/src/event.rs for the current implementation. Admittedly its a bit ugly at the moment but I plan to rework it anyway so dont spend too much time on it. In the future, I want to include variable length integer encoding for bandwidth savings and remove some redundant data I was not sure is needed when I started out. |
i see, ok i guess it would be better to invest client integration time after refactoring or atleast initial documentation when protocols will be stable, Thanks for the detailed info |
I don't want to make a new issue if this is already known; however, it also may be related to #91 . I'm able to move from the server (Ubuntu 24.04) to the client (mac os); however, I'm unable to double-click the mouse on the client's screen. Everything else seems to be working so far (minus the ability to come back without using the keyboard shortcuts). |
There is a problem when I test with two mac, I found that shift won't work while using another machine's keyboard.
|
@livexia this should now be fixed. Would be nice, if you can confirm! |
using git repo version, install with cargo build --release, run with cargo run --release. I can connect mac to linux, both can control each other. I current only have one mac, so I can not verify two mac connection. With one linux and one mac, using mac keyboard on linux shift + m still only m not M, and scroll direction is still invert. I also find that it's smooth connect macos from linux, with other way around the mouse is a bit inconsistent. |
I've built the latest commit on Fedora and Mac, with linux connecting to a remote mac.
I also see that the mouse scrolling is inverted for the remote to the mac, and things like double-clicking to highlight selection by word does not work on the remote. on the linux side, I see this warning, not sure if it's necessary: but it's functional, I'm going to try to run this for a week |
I have using this for past few days, I play factorio on mac and reading docs or blueprint on linux tablet. Even with problems, I think it's working ok. I also uisng a config file to avoid everytime config fingerprints. |
I think there is a problem with stuck key, sometimes one key will stuck, even after disconnect.
|
I also have seen a stuck key issue once and I have seen 2-3 times where both sides disconnect and reconnect after about 1 second. I'm using the keyboard remotely and it's perhaps more noticeable for me. Other than that, I have not had issues with repeat key events (i.e. holding down one of the arrow keys) which is good. two surprises: 1) I usually can horizontally scroll by holding the left shift key while moving the scroll wheel up/down on my mouse, but that's not working. 2) My linux desktop with K+M will try to lock itself while I'm connected remotely, I don't recall if that's expected behavior that similar software also exhibits. I had one issue where i had to restart both lan-mouse instances after unlocking it to get it working again -- could be a wayland issue that I was having. |
Tracking issue for MacOS support
This issue is for tracking MacOS support and the current development status.
TODOs
The text was updated successfully, but these errors were encountered: