mirror of
https://github.com/AuxXxilium/eudev.git
synced 2024-12-28 06:35:34 +07:00
input_id: Cover key devices which only have KEY_* > 255
We previously only tested the "key" capabilities for keys between 0 and 255 to determine ID_INPUT_KEY. If there are none, also check for keys in the upper block (KEY_OK/0x160 to KEY_TOUCHPAD_OFF/0x214).
This commit is contained in:
parent
88149f668e
commit
792479aca5
@ -148,6 +148,17 @@ static void test_key (const unsigned long* bitmask_ev,
|
||||
found |= bitmask_key[i];
|
||||
DBG("test_key: checking bit block %lu for any keys; found=%i\n", i*BITS_PER_LONG, found > 0);
|
||||
}
|
||||
/* If there are no keys in the lower block, check the higher block */
|
||||
if (!found) {
|
||||
for (i = KEY_OK; i < BTN_TRIGGER_HAPPY; ++i) {
|
||||
if (test_bit (i, bitmask_key)) {
|
||||
DBG("test_key: Found key %x in high block\n", i);
|
||||
found = 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (found > 0)
|
||||
puts("ID_INPUT_KEY=1");
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user