From 3f5e9cb6369326b71b2efb3d149c0794c827c199 Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Wed, 25 Jan 2017 13:48:01 +1000 Subject: [PATCH] switch: prevent switches to send the same event twice Signed-off-by: Peter Hutterer --- src/evdev.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/evdev.c b/src/evdev.c index 2e0402b1..50c8abd7 100644 --- a/src/evdev.c +++ b/src/evdev.c @@ -1317,10 +1317,16 @@ lid_switch_process_switch(struct lid_switch_dispatch *dispatch, struct input_event *e, uint64_t time) { + bool is_closed; + switch (e->code) { case SW_LID: - dispatch->lid_is_closed = !!e->value; + is_closed = !!e->value; + if (dispatch->lid_is_closed == is_closed) + return; + + dispatch->lid_is_closed = is_closed; switch_notify_toggle(&device->base, time, LIBINPUT_SWITCH_LID,