diff options
author | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2010-01-30 00:53:29 -0800 |
---|---|---|
committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2010-01-30 01:47:49 -0800 |
commit | 99b089c3c38a83ebaeb1cc4584ddcde841626467 (patch) | |
tree | 484a9ac4871a055873b6427d2f7c3c37554fd0ce /include | |
parent | ef7995f4e46b1677f3eaaf547316e1a910b38dcb (diff) | |
download | op-kernel-dev-99b089c3c38a83ebaeb1cc4584ddcde841626467.zip op-kernel-dev-99b089c3c38a83ebaeb1cc4584ddcde841626467.tar.gz |
Input: Mac button emulation - implement as an input filter
Current implementation of Mac mouse button emulation plugs into legacy
keyboard driver, converts certain keys into button events on a separate
device, and suppresses the real events from reaching tty. This worked
well enough until user space started using evdev which was completely
unaware of this arrangement and kept sending original key presses to
its users. Change the implementation to use newly added input filter
framework so that original key presses are not transmitted to any
handlers.
As a bonus remove SYSCTL dependencies from the code and use Kconfig
instead; also do not create the emulated mouse device until user
activates emulation.
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/kbd_kern.h | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/include/linux/kbd_kern.h b/include/linux/kbd_kern.h index 8bdb16b..506ad20 100644 --- a/include/linux/kbd_kern.h +++ b/include/linux/kbd_kern.h @@ -161,7 +161,4 @@ static inline void con_schedule_flip(struct tty_struct *t) schedule_delayed_work(&t->buf.work, 0); } -/* mac_hid.c */ -extern int mac_hid_mouse_emulate_buttons(int, unsigned int, int); - #endif |