Skip to content
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

Sway: output (display) rotation causes cursor to get stuck on remote #267

Open
ja-cop opened this issue Feb 20, 2025 · 6 comments
Open

Sway: output (display) rotation causes cursor to get stuck on remote #267

ja-cop opened this issue Feb 20, 2025 · 6 comments

Comments

@ja-cop
Copy link

ja-cop commented Feb 20, 2025

I'm connecting one system with KDE Plasma Wayland (right side) and one system with Sway (left side). The Sway system is on a laptop that can be folded into a tablet, so I have a keybinding to rotate Sway's output (in Sway, displays/screens are called "outputs").

To reproduce the issue I can do the following:

  • I start lan-mouse on both systems, then move the mouse on the KDE system to the left edge, onto the Sway system
  • Then I rotate Sway's output 90 degrees - lan-mouse still works as expected, I can move the cursor/focus back and forth
  • Then I rotate the Sway output back to the original orientation - now the mouse/keyboard focus is locked on the Sway system. There's no messages in the lan-mouse log when I move the mouse to any edge of the display
  • After restarting lan-mouse on the Sway system, it works again

Anyway, thanks for this awesome piece of software! I'm also looking forward to clipboard docs/support! I want to create a proper Guix package for this since the Sway system above runs GuixSD, but I need to get better at Guix packaging first 🙂

@feschber
Copy link
Owner

what version are you on? This should be fixed very recently.

@ja-cop
Copy link
Author

ja-cop commented Feb 21, 2025

Oh right, I was using the release from November, I should have tried git main before filing the issue. But I've now reproduced it on the latest git main:

$ lan-mouse --version
lan-mouse 0.10.0
tag:latest
commit_hash:89684e14
build_time:2025-02-21 15:05:53 +01:00
build_env:rustc 1.83.0 (90b35a623 2024-11-26),stable-x86_64-unknown-linux-gnu

Also, different from the issue you linked, lan-mouse does not crash in my case, it keeps working - moving the local mouse moves it on the remote - I just can't get back to the other screen.

@ja-cop
Copy link
Author

ja-cop commented Feb 21, 2025

For the record, this is how I'm rotating the display output while Sway is running:

swaymsg "output eDP-1 transform 0" # output is natively portrait mode, so this sets it to portrait/tablet mode

And back again:

swaymsg "output eDP-1 transform 90" # output is natively portrait mode, so this sets it to landscape/laptop mode

@feschber
Copy link
Owner

Could you send a log from the device where the mouse can not exit?

@ja-cop
Copy link
Author

ja-cop commented Feb 21, 2025

Here's a log:
lan-mouse.log

Every time I rotate the screen I see it printing those "active outputs: ..." messages. When it sees "eDP-1 1280x800", that's landscape mode, and "eDP-1 800x1280" is portrait mode.

At the end of the log, lan-mouse exits because I send it Ctrl+C on the terminal. Between the last screen rotation and the exit, there's no log messages, as I can't get the mouse to leave that screen (without either stopping lan-mouse or using the release keybind).

edit:

Also, for completeness, I'm using SwayFX and not vanilla Sway, but it's a fairly minimal fork and I doubt it's relevant:

$ sway --version
swayfx version 0.4 (based on sway 1.9.0)

@feschber
Copy link
Owner

so it does not stop working every time, am I understanding that correctly?

Also: Could you export LM_DEBUG_LAYER_SHELL=1 before starting lan-mouse? That should show you a green line of pixels, where the capture barriers are.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants