1
0
Fork 0
forked from wry/wry

Reset scroll accumulator on stop and pointer enter surface

This commit is contained in:
khyperia 2025-12-30 09:45:10 +01:00
parent edf19aae9a
commit 57cdc162bf
2 changed files with 8 additions and 2 deletions

View file

@ -1476,8 +1476,11 @@ impl WlSeatGlobal {
}
p.send_axis(time, axis, delta);
}
if p.seat.version >= AXIS_STOP_SINCE_VERSION && event.stop[i].get() {
p.send_axis_stop(time, axis);
if event.stop[i].get() {
if p.seat.version >= AXIS_STOP_SINCE_VERSION {
p.send_axis_stop(time, axis);
}
p.v120_accumulator[i].set(0);
}
}
if p.seat.version >= POINTER_FRAME_SINCE_VERSION {

View file

@ -90,6 +90,9 @@ impl WlPointer {
pub fn send_enter(&self, serial: u64, surface: WlSurfaceId, mut x: Fixed, mut y: Fixed) {
self.last_motion.set((x, y));
for accumulator in &self.v120_accumulator {
accumulator.set(0);
}
logical_to_client_wire_scale!(self.seat.client, x, y);
self.seat.client.event(Enter {
self_id: self.id,