From 83aec41df31100df0b0ab553ac9220d03bd01bba Mon Sep 17 00:00:00 2001 From: Ivan Molodetskikh Date: Tue, 2 Apr 2024 08:44:29 +0400 Subject: Hide pointer on touch interaction --- src/input.rs | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/input.rs') diff --git a/src/input.rs b/src/input.rs index f8b753b8..2fd03a64 100644 --- a/src/input.rs +++ b/src/input.rs @@ -822,6 +822,7 @@ impl State { let mut new_pos = pos + event.delta(); // We received an event for the regular pointer, so show it now. + self.niri.pointer_hidden = false; self.niri.tablet_cursor_location = None; // Check if we have an active pointer constraint. @@ -1035,6 +1036,9 @@ impl State { pointer.frame(self); + // We moved the pointer, show it. + self.niri.pointer_hidden = false; + // We moved the regular pointer, so show it now. self.niri.tablet_cursor_location = None; @@ -1333,6 +1337,7 @@ impl State { event.time_msec(), ); + self.niri.pointer_hidden = false; self.niri.tablet_cursor_location = Some(pos); } @@ -1398,6 +1403,7 @@ impl State { event.time_msec(), ); } + self.niri.pointer_hidden = false; self.niri.tablet_cursor_location = Some(pos); } ProximityState::Out => { @@ -1735,6 +1741,9 @@ impl State { time: evt.time_msec(), }, ); + + // We're using touch, hide the pointer. + self.niri.pointer_hidden = true; } fn on_touch_up(&mut self, evt: I::TouchUpEvent) { let Some(handle) = self.niri.seat.get_touch() else { -- cgit