Re: [PATCH] input: map BTN_FORWARD to button 2 in mousedev

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

 




Dmitry Torokhov <[email protected]> wrote:

> On 11/5/06, Németh Márton <[email protected]> wrote:
> > From: Márton Németh <[email protected]>
> >
> > In mousedev the BTN_LEFT and BTN_FORWARD were mapped to
mouse button 0, causing
> > that the user space program cannot distinguish between
them through /dev/input/mice.
> > The BTN_FORWARD is currently used in the synaptics.c,
logips2pp.c and in alps.c. All
> > mice have BTN_LEFT, but not all have BTN_MIDDLE (e.g.
Clevo D410J laptop). Mapping
> > BTN_FORWARD to mouse button 2 makes the BTN_FORWARD
button useful on the mentioned
> > laptop.
> >
> 
> I'd rather not touch mappings in legacy mousedev driver. I
believe
> both synaptics and evdev X drivers will correctly recognize
> BTN_FORWARD, is there any reason you are not using them?

If I have understand the input subsystem correctly, for the
evdev X driver the mousedev.c is not needed, so using an
evdev X driver is a completely other story. This map change
could result that the BTN_FORWARD can be used as BTN_MIDDLE
out of the box, without any additional drivers, so it is
simpler (at least in case of Clevo D410J).

My patch is based on the assumption that every mouse has
BTN_LEFT, so it is not worth having two mouse buttons for
the same function. (For Clevo D410J it is actually an
information loss at this point.)

Next thing is that the BTN_FORWARD and BTN_BACK usually
comes together. The BTN_LEFT and BTN_RIGHT usually comes
together also. For the mapping I see some possible mapping
listed in the following table:

    Button name    |     (a)     |     (b)     |     (c)     |
    ---------------+-------------+-------------+-------------+
    BTN_LEFT       |      0      |      0      |      0      |
    BTN_RIGHT      |      1      |      1      |      1      |
    BTN_FORWARD    |      0      |      2      |      0      |
    BTN_BACK       |      1      |      3      |      3      |

Mapping (a) would map BTN_FORWARD and BTN_BACK to BTN_LEFT
and BTN_RIGHT. Mapping (b) would map all 4 buttons to
different buttons. Mapping (c) is the current mapping where
the BTN_FORWARD is handled differently than BTN_BACK.

        NMarci

___________________________________________________________________________
Karácsonyi sorban állás helyett vásároljon kényelmesen! Garantáltan 1 nap alatt szállítjuk a megrendelt könyveket!
http://www.bookline.hu/control/news?newsid=528&affiliate=frenapkar3171

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux