Re: Key mapping question

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




Quoting Alan Cox <alan@xxxxxxxxxxxxxxxxxxx>:

I'm currently adding the Fujitsu Q550 to the fujitsu-tablet driver
(http://sourceforge.net/projects/fjbtndrv/files/fjbtndrv/)

The Q550 has 3 buttons - a direction flipping button, a keyboard button
and a ctrl-alt-delete button.

It's labelled as such, it acts as such and I'm tempted to map it as such
including modifiers but that does rather violate the usual behaviour we
expect.

So how should it be mapped ?

My Lifebook has 5 buttons - scroll up and down, direction flipping, FN and ALT.
I prefer to use the ALT button as modifier for the other buttons (like FN), so
ALT + scroll up could start a program. Press and hold ALT for 3 seconds could
report SAK. The modifier buttons must be sticky for one-finger use. I think this
needs userspace support to hold the module clean and simple, but I do not know
how to do this right. Currently, I use KEY_LEFTCTRL and KEY_LEFTALT for the FN
and ALT buttons and grab the entire device in userspace (xinput). I'm open to
suggestions and would be happy to implement a real solution.

I'll send Robert Gerlach a patch once I have a good answer on that one.
It would also be nice to get the kernel bits for this driver upstream.
Barring some trivial printk/pr_debug things it looks to me to be in
perfectly good shape to go upstream, and it's kind of handy when the
buttons work on your tablet !

I already improved code cleanness. This version has removed printk's and passed
checkpatch. I will send it to platform-driver-x86 list shortly.

  Robert

--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux