diff options
Diffstat (limited to 'src/hwdata.c')
-rw-r--r-- | src/hwdata.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/hwdata.c b/src/hwdata.c index d39211f..cd93fe0 100644 --- a/src/hwdata.c +++ b/src/hwdata.c @@ -39,16 +39,20 @@ bool read_hwdata(struct HWData *hw, const struct input_event* ev) CLEARBIT(hw->button, MT_BUTTON_RIGHT); break; case BTN_MT_REPORT_PACKET: + hw->in_packet = ev->value; if (ev->value) hw->nfinger = 0; break; case BTN_MT_REPORT_FINGER: + hw->in_finger = ev->value; if (!ev->value && hw->nfinger < DIM_FINGER) hw->nfinger++; break; } break; case EV_ABS: + if (!hw->in_packet || !hw->in_finger) + break; if (hw->nfinger == DIM_FINGER) break; switch (ev->code) { |