Input: alps - process_bitmap: fix counting of high point bits
alps_process_bitmap was resetting the point bit-count as soon as it saw 2 0 bits in a row. This means that unless the high point actually is at the end of the bitmap, it would always get its num_bits set to 0. Instead reset num_bits to 0 on a 0->1 transition, so that with > 2 fingers we only count the number of bits occupied by the highest finger. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
This commit is contained in:
parent
036e6c7b54
commit
105affbfd5
|
@ -342,14 +342,13 @@ static void alps_get_bitmap_points(unsigned int map,
|
|||
if (bit) {
|
||||
if (!prev_bit) {
|
||||
point->start_bit = i;
|
||||
point->num_bits = 0;
|
||||
(*fingers)++;
|
||||
}
|
||||
point->num_bits++;
|
||||
} else {
|
||||
if (prev_bit)
|
||||
point = high;
|
||||
else
|
||||
point->num_bits = 0;
|
||||
}
|
||||
prev_bit = bit;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue