Xi: force dtime to 0 on the first BarrierHit
dtime to the previous event is 0 on the first BarrierHit event. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Jasper St. Pierre <jstpierre@mecheye.net> Signed-off-by: Keith Packard <keithp@keithp.com>
This commit is contained in:
committed by
Keith Packard
parent
604169af8b
commit
dd4ab8b572
@@ -435,6 +435,7 @@ input_constrain_cursor(DeviceIntPtr dev, ScreenPtr screen,
|
||||
dir = barrier_get_direction(current_x, current_y, x, y);
|
||||
|
||||
while (dir != 0) {
|
||||
int new_sequence;
|
||||
struct PointerBarrierDevice *pbd;
|
||||
|
||||
c = barrier_find_nearest(cs, master, dir, current_x, current_y, x, y);
|
||||
@@ -444,6 +445,8 @@ input_constrain_cursor(DeviceIntPtr dev, ScreenPtr screen,
|
||||
nearest = &c->barrier;
|
||||
|
||||
pbd = GetBarrierDevice(c, master->id);
|
||||
new_sequence = !pbd->hit;
|
||||
|
||||
pbd->seen = TRUE;
|
||||
pbd->hit = TRUE;
|
||||
|
||||
@@ -466,7 +469,7 @@ input_constrain_cursor(DeviceIntPtr dev, ScreenPtr screen,
|
||||
ev.event_id = pbd->barrier_event_id;
|
||||
ev.barrierid = c->id;
|
||||
|
||||
ev.dt = ms - pbd->last_timestamp;
|
||||
ev.dt = new_sequence ? 0 : ms - pbd->last_timestamp;
|
||||
ev.window = c->window;
|
||||
pbd->last_timestamp = ms;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user