summaryrefslogtreecommitdiff
path: root/hw/xfree86/common
diff options
context:
space:
mode:
Diffstat (limited to 'hw/xfree86/common')
-rw-r--r--hw/xfree86/common/xf86Events.c2
-rw-r--r--hw/xfree86/common/xf86Init.c3
-rw-r--r--hw/xfree86/common/xf86Xinput.c51
3 files changed, 10 insertions, 46 deletions
diff --git a/hw/xfree86/common/xf86Events.c b/hw/xfree86/common/xf86Events.c
index acadc485a..5f4371432 100644
--- a/hw/xfree86/common/xf86Events.c
+++ b/hw/xfree86/common/xf86Events.c
@@ -789,8 +789,6 @@ xf86ReleaseKeys(DeviceIntPtr pDev)
xEvent ke;
int i = 0, j = 0, nevents = 0;
- ErrorF("releasekeys: called on device %s (%d)\n", pDev->name, pDev->id);
-
if (!pDev || !pDev->key)
return;
diff --git a/hw/xfree86/common/xf86Init.c b/hw/xfree86/common/xf86Init.c
index 68d69c51c..ff878d59c 100644
--- a/hw/xfree86/common/xf86Init.c
+++ b/hw/xfree86/common/xf86Init.c
@@ -1119,9 +1119,6 @@ ddxGiveUp()
DGAShutdown();
#endif
- while (xf86NumScreens)
- xf86DeleteScreen(xf86NumScreens - 1, 0);
-
xf86CloseConsole();
xf86CloseLog();
diff --git a/hw/xfree86/common/xf86Xinput.c b/hw/xfree86/common/xf86Xinput.c
index 422d43d4d..c262a9561 100644
--- a/hw/xfree86/common/xf86Xinput.c
+++ b/hw/xfree86/common/xf86Xinput.c
@@ -99,16 +99,6 @@
#include "mi.h"
-/******************************************************************************
- * debugging macro
- *****************************************************************************/
-#ifdef DEBUG
-static int debug_level = 0;
-#define DBG(lvl, f) {if ((lvl) <= debug_level) f;}
-#else
-#define DBG(lvl, f)
-#endif
-
xEvent *xf86Events = NULL;
static Bool
@@ -154,33 +144,6 @@ xf86ProcessCommonOptions(LocalDevicePtr local,
}
}
-void
-xf86AlwaysCoreControl(DeviceIntPtr pDev, IntegerCtrl *control)
-{
-}
-
-/***********************************************************************
- *
- * xf86XinputFinalizeInit --
- *
- * Create and initialize an integer feedback to control the always
- * core feature.
- *
- ***********************************************************************
- */
-void
-xf86XinputFinalizeInit(DeviceIntPtr dev)
-{
- LocalDevicePtr local = (LocalDevicePtr)dev->public.devicePrivate;
-
- if (InitIntegerFeedbackClassDeviceStruct(dev, xf86AlwaysCoreControl) == FALSE) {
- ErrorF("Unable to init integer feedback for always core feature\n");
- } else {
- local->always_core_feedback = dev->intfeed;
- dev->intfeed->ctrl.integer_displayed = (local->flags & XI86_ALWAYS_CORE) ? 1 : 0;
- }
-}
-
/***********************************************************************
*
* xf86ActivateDevice --
@@ -207,8 +170,6 @@ xf86ActivateDevice(LocalDevicePtr local)
dev->public.devicePrivate = (pointer) local;
local->dev = dev;
- xf86XinputFinalizeInit(dev);
-
dev->coreEvents = local->flags & XI86_ALWAYS_CORE;
dev->isMPDev = (local->flags & XI86_MP_DEVICE);
InitSprite(dev, dev->isMPDev);
@@ -451,8 +412,10 @@ xf86PostMotionEvent(DeviceIntPtr device,
{
va_list var;
int i = 0, nevents = 0;
+ Bool drag = xf86SendDragEvents(device);
int *valuators = NULL;
int flags = 0;
+ xEvent *xE = NULL;
if (is_absolute)
flags = POINTER_ABSOLUTE;
@@ -475,8 +438,14 @@ xf86PostMotionEvent(DeviceIntPtr device,
flags, first_valuator, num_valuators,
valuators);
- for (i = 0; i < nevents; i++)
- mieqEnqueue(device, xf86Events + i);
+ for (i = 0; i < nevents; i++) {
+ xE = xf86Events + i;
+ /* Don't post core motion events for devices not registered to send
+ * drag events. */
+ if (xE->u.u.type != MotionNotify || drag) {
+ mieqEnqueue(device, xf86Events + i);
+ }
+ }
xfree(valuators);
}