From 7b16e8633d5a95167aac0c19e43fcfe38bd4a6a4 Mon Sep 17 00:00:00 2001 From: Ville Syrjala Date: Mon, 24 Jan 2011 01:06:40 +0200 Subject: [PATCH] xfree86/input: Restore DGAStealKeyEvent() DGA key event support was lost in commit 8da0ff2d51086666d10ca7330d428e8610a4a0e3. Bring it back. Signed-off-by: Ville Syrjala Signed-off-by: Peter Hutterer Reviewed-by: Peter Hutterer --- hw/xfree86/common/xf86Xinput.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/hw/xfree86/common/xf86Xinput.c b/hw/xfree86/common/xf86Xinput.c index b9006ab07..6fdf1eb06 100644 --- a/hw/xfree86/common/xf86Xinput.c +++ b/hw/xfree86/common/xf86Xinput.c @@ -1240,6 +1240,19 @@ xf86PostKeyEventM(DeviceIntPtr device, { int i = 0, nevents = 0; +#if XFreeXDGA + int index; + DeviceIntPtr pointer; + + /* Some pointers send key events, paired device is wrong then. */ + pointer = IsPointerDevice(device) ? device : GetPairedDevice(device); + if (miPointerGetScreen(pointer)) { + index = miPointerGetScreen(pointer)->myNum; + if (DGAStealKeyEvent(device, index, key_code, is_down)) + return; + } +#endif + if (is_absolute) { nevents = GetKeyboardValuatorEvents(xf86Events, device, is_down ? KeyPress : KeyRelease,