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

niri msg pick-window #1031

Draft
wants to merge 2 commits into
base: main
Choose a base branch
from
Draft

niri msg pick-window #1031

wants to merge 2 commits into from

Conversation

bbb651
Copy link
Contributor

@bbb651 bbb651 commented Jan 21, 2025

recording.mp4

Originally I tried to indicate picking was occurring by turning the cursor into a crosshair, in the same way as the screenshot UI in the seat handler but that means we're forgetting what the original cursor was, I think doing it here will work but still feels a bit hacky, so I removed it for now.

Fixes #589.

src/input/mod.rs Outdated Show resolved Hide resolved
@bbb651 bbb651 force-pushed the niri-msg-pick-window branch from 2a2fda5 to 2a25a6d Compare January 21, 2025 21:11
WIP: Currently the ipc server gets stuck waiting for niri to return the
picked window, and if the ipc client closes it doesn't realize that until
niri returns the picked window leading to "ghost" window picking.

In general having `self.niri.pick_window.retain(|tx| !tx.is_closed());`
to cleanup closed clients in input events feels like the wrong place,
but should work since having stale senders doesn't effect anything else.

[skip ci]
@bbb651 bbb651 force-pushed the niri-msg-pick-window branch from 2a25a6d to 368d47d Compare January 22, 2025 14:36
@bbb651 bbb651 marked this pull request as draft January 22, 2025 14:37
@bbb651
Copy link
Contributor Author

bbb651 commented Jan 22, 2025

See commit message:

WIP: Currently the ipc server gets stuck waiting for niri to return the
picked window, and if the ipc client closes it doesn't realize that until
niri returns the picked window leading to "ghost" window picking.

In general having self.niri.pick_window.retain(|tx| !tx.is_closed());
to cleanup closed clients in input events feels like the wrong place,
but should work since having stale senders doesn't effect anything else.

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

Successfully merging this pull request may close these issues.

niri msg pick-window
1 participant