[PATCH 0/3] xfree86: Configure input devices by properties

Peter Hutterer peter.hutterer at who-t.net
Thu Oct 15 22:42:11 PDT 2009


On Sun, Oct 04, 2009 at 09:01:48AM -0700, Dan Nicholson wrote:
> These patches add support in xorg.conf to apply input configuration to a
> class of devices by property. The idea is to offer similar property
> matching capabilities to the hal fdi system. Moving the configuration
> back into the ddx means that some day we can stop doing it from the
> config backend and asking users to adjust to it.
> 
> The mechanism used here is an InputClass section. Here is a contrived
> example section showing all the current property matchers:
> 
> Section "InputClass"
> 	Identifier    "My Mice"
> 
> 	DevicePattern "/dev/input/event*"
> 	NameContains  "Mouse"
> 	IsPointer     "yes"
> 	IsKeyboard    "no"

Please namespace any matching rules, the above examples could e.g. be:
    MatchDevicePath
    MatchName
    MatchIsPointerDevice
    MatchIsPointerDevice

This way we can easier differentiate between match rules and driver options.

Aside from that, I think we really need the ability to have a split up
configuration file first (the xorg.conf.d you mentioned) before we can merge
this. Stacking multiple match rules into a single file and expecting distro
maintainers to somehow now screw up when editing a user's config file
requires more optimisim than we should expect to encounter.

Cheers,
  Peter
> 
> 	Driver        "evdev"
> 	Option        "InvertX" "on"
> EndSection
> 
> Dan Nicholson (3):
>   xfree86: Support non-Option boolean entries in configuration
>   config: Introduce InputProperties in NewInputDeviceRequest
>   xfree86: Introduce InputClass configuration
> 
>  Xi/stubs.c                           |    3 +-
>  config/dbus.c                        |    2 +-
>  config/hal.c                         |   11 ++-
>  configure.ac                         |    2 +-
>  hw/dmx/dmxinput.c                    |    3 +-
>  hw/kdrive/src/kinput.c               |    3 +-
>  hw/xfree86/common/xf86Option.c       |   25 +----
>  hw/xfree86/common/xf86Xinput.c       |   84 +++++++++++++++-
>  hw/xfree86/doc/man/xorg.conf.man.pre |   88 ++++++++++++++++
>  hw/xfree86/parser/Configint.h        |    4 +
>  hw/xfree86/parser/InputClass.c       |  191 ++++++++++++++++++++++++++++++++++
>  hw/xfree86/parser/Makefile.am        |    1 +
>  hw/xfree86/parser/configProcs.h      |    5 +
>  hw/xfree86/parser/read.c             |    8 ++
>  hw/xfree86/parser/scan.c             |   30 ++++++
>  hw/xfree86/parser/write.c            |    2 +
>  hw/xfree86/parser/xf86Parser.h       |   24 ++++
>  hw/xfree86/parser/xf86tokens.h       |    8 ++-
>  hw/xquartz/darwinXinput.c            |    3 +-
>  include/dix-config.h.in              |    3 +
>  include/input.h                      |    8 ++
>  21 files changed, 476 insertions(+), 32 deletions(-)
>  create mode 100644 hw/xfree86/parser/InputClass.c



More information about the xorg-devel mailing list