I've tracked down the source of this issue in hal's hald/linux/device.c.
When a new input device is added, it goes through a series of checks to
determine what kind of device it is (mouse, keyboard, etc).

In input_test_key(), hal will figure out the size of the bitmask of the
devices (num_bits, aka the number of "buttons" this input device has).
If num_bits == 1, hal will treat the device as a "button" (eg.
power/sleep/hibernate button) rather than a keyboard.  Otherwise, it
will run further checks to see what kind of keyboard it is
(input_test_keyboard(), input_test_keypad()).

This explains exactly why having only a single key on the uinput device
(KEY_ENTER) fails to work and adding a second dummy key (KEY_A) fixes
the problem.  Without the dummy key, the uinput device is treated as a
"button" instead of a "keyboard" and does not send the KEY_ENTER event
when using libpam-thinkfinger.

I'll email upstream and figure out if there's a proper fix to allow one-
button keyboards or if hacking around it is the best approach.

-- 
Intrepid regression: carriage-return required after finger scan
https://bugs.launchpad.net/bugs/256429
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to