xserver-multidpi/hw/xfree86
Peter Hutterer d936a4235c xfree86: if AllowEmptyInput is true, enable RAW mode on the console.
Usually, the console is set to RAW in the kbd driver. If we hotplug all input
devices (i.e. the evdev driver for keyboards) and the console is left as-is.
As a result, the evdev driver must put an EVIOCGRAB on the device to avoid
characters leaking onto the console. This again breaks many things, amongst
them lirc, in-kernel mouse button emulation and HAL.

This patch sets the console to RAW if AllowEmptyInput is on.

Use-cases:
1. AEI is off
  1.1. Only kbd driver is used - behaviour as-is.
  1.2. kbd and evdev driver is used: if evdev does not grab the device,
       duplicate events are generated.
2. AEI is on
  2.1. Only evdev driver is used - behaviour as-is, but evdev does not need
       to grab the device anymore.
  2.2. evdev and kbd are used: duplicate key events are generated if evdev
       does not grab the device.

1.2 is a marginal use-case that can be fixed by adding a "grab" option to the
evdev driver (update of xorg.conf is needed).

2.2 is an issue. If we have no ServerLayout section, AEI is on, but devices
specified in the xorg.conf are still added [1], resulting in duplicate events.
This is a common configuration and needs sorting out.

[1] 2eaed4a10f

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2008-10-16 21:35:27 +10:30
..
common XFree86: Simplify DontZap/-retro interaction 2008-10-15 14:11:13 +01:00
ddc EDID: Catch even more cases of encoding aspect as size. 2008-10-14 14:04:01 -04:00
dixmods DGA: Track client state even when using old style DGA. 2008-10-09 22:22:53 +02:00
doc Update docs to reflect new DontZap default 2008-10-08 02:44:08 +03:00
dri dri: don't set the dixPrivate key to NULL, as this is a staticly set variable. 2008-10-10 23:28:30 +02:00
dri2 dri2: Update to latest protocol draft. 2008-10-15 00:00:44 -04:00
dummylib No more "-scanpci" given that we already have it in libpciaccess. 2008-02-25 17:08:07 -03:00
exa Prepare for array-index based devPrivates. 2008-08-28 18:05:40 -04:00
fbdevhw fbdevhw: Remove pixclock check. 2008-09-04 13:08:06 +02:00
i2c Dead code removal 2008-07-17 21:37:50 +03:00
int10 int10: Degrade the checksum warning to X_INFO. 2008-10-14 14:30:19 -04:00
loader Revert "xfree86: xf86{Enable, Disable}InputHandler can be static." 2008-10-12 16:07:24 -07:00
modes Check nextEnabledOutput()'s return in bestModeForAspect() 2008-10-08 13:33:55 +08:00
os-support xfree86: if AllowEmptyInput is true, enable RAW mode on the console. 2008-10-16 21:35:27 +10:30
parser xalloc+memset(0) -> xcalloc 2008-10-06 15:36:51 -04:00
ramdac xalloc+memset(0) -> xcalloc 2008-10-06 15:36:51 -04:00
shadowfb Prepare for array-index based devPrivates. 2008-08-28 18:05:40 -04:00
utils Remove xorgcfg 2008-07-24 03:01:45 +03:00
vbe clean some "unused" warnings 2008-03-01 19:49:24 +02:00
vgahw XFree86: Remove usage of alloca 2007-11-05 14:34:42 +00:00
x86emu Unifdef sgi. 2008-07-23 13:37:42 -04:00
xaa xalloc+bzero -> xcalloc 2008-10-06 14:19:30 -04:00
xf8_16bpp Remove smashing of CFLAGS from server build. 2006-09-18 12:11:18 -07:00
Makefile.am re-enable DRI2 2008-10-15 12:00:16 +01:00
Options
xorgconf.cpp Remove all traces of external RGB database (and Speedo) 2007-11-05 16:28:35 +00:00