xserver-xorg-input-mouse: Changes to 'upstream-unstable'
README | 6 +++---
configure.ac | 2 +-
src/mouse.c | 45 ++++++++++++++++++++++++++++++++++++---------
xorg-mouse.pc.in | 4 ++++
4 files changed, 44 insertions(+), 13 deletions(-)
New commits:
commit 9d6c38eae40a435b4057a33d55759810ea7b91c1
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date: Thu Nov 17 14:35:47 2016 +1000
mouse 1.9.2
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
diff --git a/configure.ac b/configure.ac
index 15d9047..3d58f7c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -23,7 +23,7 @@
# Initialize Autoconf
AC_PREREQ([2.60])
AC_INIT([xf86-input-mouse],
- [1.9.1],
+ [1.9.2],
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
[xf86-input-mouse])
AC_CONFIG_SRCDIR([Makefile.am])
commit 2dda9b90b9c632d2f27a7b2f46bc4e4af1e9d82d
Author: Keith Packard <keithp@keithp.com>
Date: Mon May 30 22:45:13 2016 -0700
Support ABI_XINPUT_VERSION 24 (remove LastSelectMask from block/wakeup)
The block and wakeup handler API is changing so that the FD_SET type
isn't visible outside the OS layer anymore. The mouse driver didn't
need that argument anyways, so the change is just to adjust the APIs
to avoid compiler warnings.
Signed-off-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
diff --git a/src/mouse.c b/src/mouse.c
index d5f918e..dae98aa 100644
--- a/src/mouse.c
+++ b/src/mouse.c
@@ -133,6 +133,14 @@ typedef struct _DragLockRec {
#define HAVE_THREADED_INPUT 1
#endif
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 24
+#define BLOCK_HANDLER_ARGS void *data, void *waitTime
+#define WAKEUP_HANDLER_ARGS void *data, int i
+#else
+#define BLOCK_HANDLER_ARGS pointer data, struct timeval **waitTime, pointer LastSelectMask
+#define WAKEUP_HANDLER_ARGS void *data, int i, pointer LastSelectMask
+#endif
+
#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 12
static InputInfoPtr MousePreInit(InputDriverPtr drv, IDevPtr dev, int flags);
#else
@@ -144,9 +152,8 @@ static void MouseCtrl(DeviceIntPtr device, PtrCtrl *ctrl);
static void MousePostEvent(InputInfoPtr pInfo, int buttons,
int dx, int dy, int dz, int dw);
static void MouseReadInput(InputInfoPtr pInfo);
-static void MouseBlockHandler(pointer data, struct timeval **waitTime,
- pointer LastSelectMask);
-static void MouseWakeupHandler(pointer data, int i, pointer LastSelectMask);
+static void MouseBlockHandler(BLOCK_HANDLER_ARGS);
+static void MouseWakeupHandler(WAKEUP_HANDLER_ARGS);
static void FlushButtons(MouseDevPtr pMse);
static Bool SetupMouse(InputInfoPtr pInfo);
@@ -2112,9 +2119,7 @@ Emulate3ButtonsSoft(InputInfoPtr pInfo)
#endif
}
-static void MouseBlockHandler(pointer data,
- struct timeval **waitTime,
- pointer LastSelectMask)
+static void MouseBlockHandler(BLOCK_HANDLER_ARGS)
{
InputInfoPtr pInfo = (InputInfoPtr) data;
MouseDevPtr pMse = (MouseDevPtr) pInfo->private;
@@ -2129,9 +2134,7 @@ static void MouseBlockHandler(pointer data,
}
}
-static void MouseWakeupHandler(pointer data,
- int i,
- pointer LastSelectMask)
+static void MouseWakeupHandler(WAKEUP_HANDLER_ARGS)
{
InputInfoPtr pInfo = (InputInfoPtr) data;
MouseDevPtr pMse = (MouseDevPtr) pInfo->private;
commit 80952e5a5fcb4158249451f2339de618c4e63b82
Author: Keith Packard <keithp@keithp.com>
Date: Mon May 30 22:45:12 2016 -0700
Support ABI_XINPUT_VERSION 23 (use input_lock/input_unlock)
This makes using input_lock/input_unlock conditional on the ABI
version so that we don't get compiler warnings when compiling with the
newer server bits.
Signed-off-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
diff --git a/src/mouse.c b/src/mouse.c
index f9f874b..d5f918e 100644
--- a/src/mouse.c
+++ b/src/mouse.c
@@ -129,6 +129,10 @@ typedef struct _DragLockRec {
} DragLockRec, *DragLockPtr;
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 23
+#define HAVE_THREADED_INPUT 1
+#endif
+
#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 12
static InputInfoPtr MousePreInit(InputDriverPtr drv, IDevPtr dev, int flags);
#else
@@ -2025,12 +2029,18 @@ static CARD32
buttonTimer(InputInfoPtr pInfo)
{
MouseDevPtr pMse;
+#if !HAVE_THREADED_INPUT
int sigstate;
+#endif
int id;
pMse = pInfo->private;
+#if HAVE_THREADED_INPUT
+ input_lock();
+#else
sigstate = xf86BlockSIGIO ();
+#endif
pMse->emulate3Pending = FALSE;
if ((id = stateTab[pMse->emulateState][4][0]) != 0) {
@@ -2041,7 +2051,11 @@ buttonTimer(InputInfoPtr pInfo)
"Got unexpected buttonTimer in state %d\n", pMse->emulateState);
}
+#if HAVE_THREADED_INPUT
+ input_unlock();
+#else
xf86UnblockSIGIO (sigstate);
+#endif
return 0;
}
@@ -3276,14 +3290,20 @@ createProtoList(MouseDevPtr pMse, MouseProtocolID *protoList)
unsigned char *para;
mousePrivPtr mPriv = (mousePrivPtr)pMse->mousePriv;
MouseProtocolID *tmplist = NULL;
+#if !HAVE_THREADED_INPUT
int blocked;
+#endif
AP_DBGC(("Autoprobe: "));
for (i = 0; i < mPriv->count; i++)
AP_DBGC(("%2.2x ", (unsigned char) mPriv->data[i]));
AP_DBGC(("\n"));
+#if HAVE_THREADED_INPUT
+ input_lock();
+#else
blocked = xf86BlockSIGIO ();
+#endif
/* create a private copy first so we can write in the old list */
if ((tmplist = malloc(sizeof(MouseProtocolID) * NUM_AUTOPROBE_PROTOS))){
@@ -3392,7 +3412,11 @@ createProtoList(MouseDevPtr pMse, MouseProtocolID *protoList)
}
}
+#if HAVE_THREADED_INPUT
+ input_unlock();
+#else
xf86UnblockSIGIO(blocked);
+#endif
mPriv->protoList[k] = PROT_UNKNOWN;
commit c22d3073dc1b82fe6c466e5ea71b6da755bb9a8e
Author: Thomas Klausner <wiz@NetBSD.org>
Date: Mon Jul 27 00:06:06 2015 +0200
Add some standard defines to pkg-config file.
Not strictly needed in the xorg build, but helps the NetBSD reachover
build, and follows implicit conventions about pkg-config files more
closely.
See also http://gnats.netbsd.org/48991
Signed-off-by: Thomas Klausner <wiz@NetBSD.org>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
diff --git a/xorg-mouse.pc.in b/xorg-mouse.pc.in
index 2a77e7c..57df596 100644
--- a/xorg-mouse.pc.in
+++ b/xorg-mouse.pc.in
@@ -1,3 +1,7 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
sdkdir=@sdkdir@
Name: xorg-mouse
commit 85ee769d769e87b1e4a21b8c48944238c8ebe5f7
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Feb 28 09:38:38 2015 -0800
README: Drop ancient, no longer supported versions of Solaris
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
diff --git a/README b/README
index c022705..3c1c175 100644
--- a/README
+++ b/README
@@ -158,7 +158,7 @@
NetBSD/pc98 Ok ? Ok NA NA NA
OpenBSD Ok Ok Ok Ok*1 Ok*1 Ok*1
SCO Ok ? SP*1 SP*1 NA ?
- Solaris 2.x Ok NA*1 ?*1 Ok Ok SP*1
+ Solaris Ok NA*1 ?*1 Ok Ok SP*1
SVR4 Ok NA*1 SP*1 SP*1 NA ?
PANIX Ok ? SP*1 SP*1 NA ?
@@ -302,7 +302,7 @@
3.14. Solaris
- Testing has been done with Solaris 2.5.1, 2.6, 7, 8, 9, 10, and 11.
+ Testing has been done with Solaris 10 and 11.
On Solaris 10 1/06 and later versions with "virtual mouse" support,
all PS/2 and USB mice connected to the system can be accessed via the
commit 9d404d41b6edbee9b96ee8bad705f7e5fdd3e7c1
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Feb 28 09:36:29 2015 -0800
README: Add "or xf86-input-libinput" to -evdev note for Linux
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
diff --git a/README b/README
index 8daf558..c022705 100644
--- a/README
+++ b/README
@@ -59,7 +59,7 @@
This document describes mouse support in the xf86-input-mouse driver
for the Xorg X server. This driver is mainly used on non-Linux
operating systems such as BSD & Solaris, as modern Linux systems use
- the xf86-input-evdev driver instead.
+ the xf86-input-evdev or xf86-input-libinput drivers instead.
Mouse configuration has often been mysterious task for novice users.
However, once you learn several basics, it is straightforward to write
Reply to: