summaryrefslogtreecommitdiff
path: root/driver
diff options
context:
space:
mode:
authorMatthieu Herrb <matthieu@cvs.openbsd.org>2009-11-22 14:29:52 +0000
committerMatthieu Herrb <matthieu@cvs.openbsd.org>2009-11-22 14:29:52 +0000
commit2a6c28b91c0a07593c5bbf2144d3cc99fd0d690a (patch)
tree275828c671aea0ae10ef53dd25f12393afd565ef /driver
parent14ef27173654d9e755419f3e12e8b43e8cdecaf3 (diff)
Update xf86-input-vmmouse to version 12.6.5
Diffstat (limited to 'driver')
-rw-r--r--driver/xf86-input-vmmouse/aclocal.m489
-rw-r--r--driver/xf86-input-vmmouse/config.h.in3
-rw-r--r--driver/xf86-input-vmmouse/configure32
-rw-r--r--driver/xf86-input-vmmouse/configure.ac5
-rw-r--r--driver/xf86-input-vmmouse/src/vmmouse.c152
5 files changed, 158 insertions, 123 deletions
diff --git a/driver/xf86-input-vmmouse/aclocal.m4 b/driver/xf86-input-vmmouse/aclocal.m4
index 3ec9c2c92..f5c20ec3e 100644
--- a/driver/xf86-input-vmmouse/aclocal.m4
+++ b/driver/xf86-input-vmmouse/aclocal.m4
@@ -7631,7 +7631,7 @@ AC_SUBST([am__tar])
AC_SUBST([am__untar])
]) # _AM_PROG_TAR
-dnl xorg-macros.m4. Generated from xorg-macros.m4.in:xorgversion.m4 by configure.
+dnl xorg-macros.m4. Generated from xorg-macros.m4.in xorgversion.m4 by configure.
dnl
dnl Copyright 2005-2006 Sun Microsystems, Inc. All rights reserved.
dnl
@@ -7668,27 +7668,24 @@ dnl of the copyright holder.
# your configure.ac with the minimum required version, such as:
# XORG_MACROS_VERSION(1.1)
#
-# To force at least a version with this macro defined, also add:
-# m4_ifndef([XORG_MACROS_VERSION], [AC_FATAL([must install xorg-macros 1.1 or later before running autoconf/autogen])])
+# To ensure that this macro is defined, also add:
+# m4_ifndef([XORG_MACROS_VERSION],
+# [m4_fatal([must install xorg-macros 1.1 or later before running autoconf/autogen])])
#
#
# See the "minimum version" comment for each macro you use to see what
# version you require.
-AC_DEFUN([XORG_MACROS_VERSION],[
- [XORG_MACROS_needed_version=$1
- XORG_MACROS_needed_major=`echo $XORG_MACROS_needed_version | sed 's/\..*$//'`
- XORG_MACROS_needed_minor=`echo $XORG_MACROS_needed_version | sed -e 's/^[0-9]*\.//' -e 's/\..*$//'`]
- AC_MSG_CHECKING([if xorg-macros used to generate configure is at least ${XORG_MACROS_needed_major}.${XORG_MACROS_needed_minor}])
- [XORG_MACROS_version=1.2.1
- XORG_MACROS_major=`echo $XORG_MACROS_version | sed 's/\..*$//'`
- XORG_MACROS_minor=`echo $XORG_MACROS_version | sed -e 's/^[0-9]*\.//' -e 's/\..*$//'`]
- if test $XORG_MACROS_major -ne $XORG_MACROS_needed_major ; then
- AC_MSG_ERROR([configure built with incompatible version of xorg-macros.m4 - requires version ${XORG_MACROS_major}.x])
- fi
- if test $XORG_MACROS_minor -lt $XORG_MACROS_needed_minor ; then
- AC_MSG_ERROR([configure built with too old of a version of xorg-macros.m4 - requires version ${XORG_MACROS_major}.${XORG_MACROS_minor}.0 or newer])
- fi
- AC_MSG_RESULT([yes, $XORG_MACROS_version])
+m4_defun([XORG_MACROS_VERSION],[
+m4_define([vers_have], [1.3.0])
+m4_define([maj_have], m4_substr(vers_have, 0, m4_index(vers_have, [.])))
+m4_define([maj_needed], m4_substr([$1], 0, m4_index([$1], [.])))
+m4_if(m4_cmp(maj_have, maj_needed), 0,,
+ [m4_fatal([xorg-macros major version ]maj_needed[ is required but ]vers_have[ found])])
+m4_if(m4_version_compare(vers_have, [$1]), -1,
+ [m4_fatal([xorg-macros version $1 or higher is required but ]vers_have[ found])])
+m4_undefine([vers_have])
+m4_undefine([maj_have])
+m4_undefine([maj_needed])
]) # XORG_MACROS_VERSION
# XORG_PROG_RAWCPP()
@@ -7955,7 +7952,7 @@ AC_SUBST(MAKE_HTML)
# their AM_CFLAGS (or other appropriate *_CFLAGS) to use them.
AC_DEFUN([XORG_CHECK_MALLOC_ZERO],[
AC_ARG_ENABLE(malloc0returnsnull,
- AC_HELP_STRING([--enable-malloc0returnsnull],
+ AS_HELP_STRING([--enable-malloc0returnsnull],
[malloc(0) returns NULL (default: auto)]),
[MALLOC_ZERO_RETURNS_NULL=$enableval],
[MALLOC_ZERO_RETURNS_NULL=auto])
@@ -8007,7 +8004,7 @@ AC_SUBST([XTMALLOC_ZERO_CFLAGS])
AC_DEFUN([XORG_WITH_LINT],[
# Allow checking code with lint, sparse, etc.
-AC_ARG_WITH(lint, [AC_HELP_STRING([--with-lint],
+AC_ARG_WITH(lint, [AS_HELP_STRING([--with-lint],
[Use a lint-style source code checker (default: disabled)])],
[use_lint=$withval], [use_lint=no])
if test "x$use_lint" = "xyes" ; then
@@ -8048,7 +8045,7 @@ AM_CONDITIONAL(LINT, [test x$LINT != xno])
AC_DEFUN([XORG_LINT_LIBRARY],[
AC_REQUIRE([XORG_WITH_LINT])
# Build lint "library" for more indepth checks of programs calling this library
-AC_ARG_ENABLE(lint-library, [AC_HELP_STRING([--enable-lint-library],
+AC_ARG_ENABLE(lint-library, [AS_HELP_STRING([--enable-lint-library],
[Create lint library (default: disabled)])],
[make_lint_lib=$enableval], [make_lint_lib=no])
if test "x$make_lint_lib" != "xno" ; then
@@ -8078,9 +8075,9 @@ if test "x$GCC" = xyes ; then
CWARNFLAGS="-Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes \
-Wmissing-declarations -Wnested-externs -fno-strict-aliasing \
-Wbad-function-cast"
- case `gcc -dumpversion` in
+ case `$CC -dumpversion` in
3.4.* | 4.*)
- CWARNFLAGS+=" -Wold-style-definition -Wdeclaration-after-statement"
+ CWARNFLAGS="$CWARNFLAGS -Wold-style-definition -Wdeclaration-after-statement"
;;
esac
else
@@ -8090,7 +8087,51 @@ else
fi
fi
AC_SUBST(CWARNFLAGS)
+m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
]) # XORG_CWARNFLAGS
+
+# XORG_STRICT_OPTION
+# -----------------------
+# Minimum version: 1.3.0
+#
+# Add configure option to enable strict compilation
+AC_DEFUN([XORG_STRICT_OPTION], [
+AC_REQUIRE([AC_PROG_CC])
+AC_REQUIRE([AC_PROG_CC_C99])
+AC_REQUIRE([XORG_CWARNFLAGS])
+
+AC_ARG_ENABLE(strict-compilation,
+ AS_HELP_STRING([--enable-strict-compilation],
+ [Enable all warnings from compiler and make them errors (default: disabled)]),
+ [STRICT_COMPILE=$enableval], [STRICT_COMPILE=no])
+if test "x$STRICT_COMPILE" = "xyes"; then
+ AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"])
+ AC_CHECK_DECL([__INTEL_COMPILER], [INTELCC="yes"], [INTELCC="no"])
+ if test "x$GCC" = xyes ; then
+ STRICT_CFLAGS="-pedantic -Werror"
+ elif test "x$SUNCC" = "xyes"; then
+ STRICT_CFLAGS="-errwarn"
+ elif test "x$INTELCC" = "xyes"; then
+ STRICT_CFLAGS="-Werror"
+ fi
+fi
+CWARNFLAGS="$CWARNFLAGS $STRICT_CFLAGS"
+AC_SUBST([CWARNFLAGS])
+]) # XORG_STRICT_OPTION
+
+# XORG_DEFAULT_OPTIONS
+# --------------------
+# Minimum version: 1.3.0
+#
+# Defines default options for X.Org modules.
+#
+AC_DEFUN([XORG_DEFAULT_OPTIONS], [
+XORG_CWARNFLAGS
+XORG_STRICT_OPTION
+XORG_RELEASE_VERSION
+XORG_CHANGELOG
+XORG_MANPAGE_SECTIONS
+]) # XORG_DEFAULT_OPTIONS
dnl Copyright 2005 Red Hat, Inc
dnl
dnl Permission to use, copy, modify, distribute, and sell this software and its
@@ -8125,7 +8166,7 @@ dnl
AC_DEFUN([XORG_RELEASE_VERSION],[
AC_ARG_WITH(release-version,
- AC_HELP_STRING([--with-release-version=STRING],
+ AS_HELP_STRING([--with-release-version=STRING],
[Use release version string in package name]),
[RELEASE_VERSION="$withval"],
[RELEASE_VERSION=""])
diff --git a/driver/xf86-input-vmmouse/config.h.in b/driver/xf86-input-vmmouse/config.h.in
index 81b2ec3f3..737128410 100644
--- a/driver/xf86-input-vmmouse/config.h.in
+++ b/driver/xf86-input-vmmouse/config.h.in
@@ -41,6 +41,9 @@
/* Has version 1.1.0 or greater of the Xserver */
#undef HAVE_XORG_SERVER_1_1_0
+/* Do not include built-in mouse module fallback */
+#undef NO_MOUSE_MODULE
+
/* Name of package */
#undef PACKAGE
diff --git a/driver/xf86-input-vmmouse/configure b/driver/xf86-input-vmmouse/configure
index 16b1e1327..243d20f74 100644
--- a/driver/xf86-input-vmmouse/configure
+++ b/driver/xf86-input-vmmouse/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.62 for xf86-input-vmmouse 12.6.4.
+# Generated by GNU Autoconf 2.62 for xf86-input-vmmouse 12.6.5.
#
# Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>.
#
@@ -750,8 +750,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
# Identity of this package.
PACKAGE_NAME='xf86-input-vmmouse'
PACKAGE_TARNAME='xf86-input-vmmouse'
-PACKAGE_VERSION='12.6.4'
-PACKAGE_STRING='xf86-input-vmmouse 12.6.4'
+PACKAGE_VERSION='12.6.5'
+PACKAGE_STRING='xf86-input-vmmouse 12.6.5'
PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg'
ac_unique_file="Makefile.am"
@@ -1507,7 +1507,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures xf86-input-vmmouse 12.6.4 to adapt to many kinds of systems.
+\`configure' configures xf86-input-vmmouse 12.6.5 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1578,7 +1578,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of xf86-input-vmmouse 12.6.4:";;
+ short | recursive ) echo "Configuration of xf86-input-vmmouse 12.6.5:";;
esac
cat <<\_ACEOF
@@ -1701,7 +1701,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-xf86-input-vmmouse configure 12.6.4
+xf86-input-vmmouse configure 12.6.5
generated by GNU Autoconf 2.62
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1715,7 +1715,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by xf86-input-vmmouse $as_me 12.6.4, which was
+It was created by xf86-input-vmmouse $as_me 12.6.5, which was
generated by GNU Autoconf 2.62. Invocation command line was
$ $0 $@
@@ -2366,7 +2366,7 @@ fi
# Define the identity of the package.
PACKAGE='xf86-input-vmmouse'
- VERSION='12.6.4'
+ VERSION='12.6.5'
cat >>confdefs.h <<_ACEOF
@@ -21182,6 +21182,18 @@ cat >>confdefs.h <<\_ACEOF
_ACEOF
fi
+if test -n "$PKG_CONFIG" && \
+ { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xorg-server >= 1.6.0\"") >&5
+ ($PKG_CONFIG --exists --print-errors "xorg-server >= 1.6.0") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+
+cat >>confdefs.h <<\_ACEOF
+#define NO_MOUSE_MODULE 1
+_ACEOF
+
+fi
CFLAGS="$CFLAGS $XORG_CFLAGS "' -I$(top_srcdir)/src'
@@ -21935,7 +21947,7 @@ exec 6>&1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by xf86-input-vmmouse $as_me 12.6.4, which was
+This file was extended by xf86-input-vmmouse $as_me 12.6.5, which was
generated by GNU Autoconf 2.62. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -21988,7 +22000,7 @@ Report bugs to <bug-autoconf@gnu.org>."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_version="\\
-xf86-input-vmmouse config.status 12.6.4
+xf86-input-vmmouse config.status 12.6.5
configured by $0, generated by GNU Autoconf 2.62,
with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
diff --git a/driver/xf86-input-vmmouse/configure.ac b/driver/xf86-input-vmmouse/configure.ac
index ab39f6cc5..a7ecda9ed 100644
--- a/driver/xf86-input-vmmouse/configure.ac
+++ b/driver/xf86-input-vmmouse/configure.ac
@@ -22,7 +22,7 @@
AC_PREREQ(2.57)
AC_INIT([xf86-input-vmmouse],
- 12.6.4,
+ 12.6.5,
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
xf86-input-vmmouse)
@@ -115,6 +115,9 @@ PKG_CHECK_EXISTS([xorg-server >= 1.3.99.0 xorg-server <= 1.4.0.90],
PKG_CHECK_EXISTS([xorg-server > 1.4.0.90],
[AC_DEFINE([ABS_VALUATOR_AXES], 1,
[Define absolute valuator axes])])
+PKG_CHECK_EXISTS([xorg-server >= 1.6.0],
+ [AC_DEFINE([NO_MOUSE_MODULE], 1,
+ [Do not include built-in mouse module fallback])])
CFLAGS="$CFLAGS $XORG_CFLAGS "' -I$(top_srcdir)/src'
AC_SUBST([CFLAGS])
diff --git a/driver/xf86-input-vmmouse/src/vmmouse.c b/driver/xf86-input-vmmouse/src/vmmouse.c
index deec8c808..d4f0ca606 100644
--- a/driver/xf86-input-vmmouse/src/vmmouse.c
+++ b/driver/xf86-input-vmmouse/src/vmmouse.c
@@ -68,6 +68,10 @@
#include "xf86OSmouse.h"
#include "compiler.h"
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7
+#include <xserver-properties.h>
+#endif
+
#include "xisb.h"
#include "mipointer.h"
@@ -95,7 +99,7 @@
*/
#define VMMOUSE_MAJOR_VERSION 12
#define VMMOUSE_MINOR_VERSION 6
-#define VMMOUSE_PATCHLEVEL 4
+#define VMMOUSE_PATCHLEVEL 5
#define VMMOUSE_DRIVER_VERSION \
(VMMOUSE_MAJOR_VERSION * 65536 + VMMOUSE_MINOR_VERSION * 256 + VMMOUSE_PATCHLEVEL)
#define VMMOUSE_DRIVER_VERSION_STRING \
@@ -116,9 +120,6 @@ const char vm_mouse_version[] __attribute__((section(".modinfo"),unused)) =
/*****************************************************************************
* static function header
****************************************************************************/
-#ifdef XFree86LOADER
-static const OptionInfoRec *VMMouseAvailableOptions(void *unused);
-#endif
static InputInfoPtr VMMousePreInit(InputDriverPtr drv, IDevPtr dev, int flags);
static void VMMouseUnInit(InputDriverPtr drv, InputInfoPtr pInfo, int flags);
static void MouseCommonOptions(InputInfoPtr pInfo);
@@ -202,68 +203,6 @@ InputDriverRec VMMOUSE = {
0
};
-typedef enum {
- OPTION_ALWAYS_CORE,
- OPTION_SEND_CORE_EVENTS,
- OPTION_CORE_POINTER,
- OPTION_SEND_DRAG_EVENTS,
- OPTION_HISTORY_SIZE,
- OPTION_DEVICE,
- OPTION_PROTOCOL,
- OPTION_BUTTONS,
- OPTION_EMULATE_3_BUTTONS,
- OPTION_EMULATE_3_TIMEOUT,
- OPTION_CHORD_MIDDLE,
- OPTION_FLIP_XY,
- OPTION_INV_X,
- OPTION_INV_Y,
- OPTION_ANGLE_OFFSET,
- OPTION_Z_AXIS_MAPPING,
- OPTION_SAMPLE_RATE,
- OPTION_RESOLUTION,
- OPTION_EMULATE_WHEEL,
- OPTION_EMU_WHEEL_BUTTON,
- OPTION_EMU_WHEEL_INERTIA,
- OPTION_X_AXIS_MAPPING,
- OPTION_Y_AXIS_MAPPING,
- OPTION_AUTO_SOFT,
- OPTION_DRAGLOCKBUTTONS
-} MouseOpts;
-
-/*
- * Define the acceptable mouse options
- * Currently not all of those options are supported
- *
- */
-static const OptionInfoRec mouseOptions[] = {
- { OPTION_ALWAYS_CORE, "AlwaysCore", OPTV_BOOLEAN, {0}, FALSE },
- { OPTION_SEND_CORE_EVENTS, "SendCoreEvents", OPTV_BOOLEAN, {0}, FALSE },
- { OPTION_CORE_POINTER, "CorePointer", OPTV_BOOLEAN, {0}, FALSE },
- { OPTION_SEND_DRAG_EVENTS, "SendDragEvents", OPTV_BOOLEAN, {0}, FALSE },
- { OPTION_HISTORY_SIZE, "HistorySize", OPTV_INTEGER, {0}, FALSE },
- { OPTION_DEVICE, "Device", OPTV_STRING, {0}, FALSE },
- { OPTION_PROTOCOL, "Protocol", OPTV_STRING, {0}, FALSE },
- { OPTION_BUTTONS, "Buttons", OPTV_INTEGER, {0}, FALSE },
- { OPTION_EMULATE_3_BUTTONS, "Emulate3Buttons",OPTV_BOOLEAN, {0}, FALSE },
- { OPTION_EMULATE_3_TIMEOUT, "Emulate3Timeout",OPTV_INTEGER, {0}, FALSE },
- { OPTION_CHORD_MIDDLE, "ChordMiddle", OPTV_BOOLEAN, {0}, FALSE },
- { OPTION_FLIP_XY, "FlipXY", OPTV_BOOLEAN, {0}, FALSE },
- { OPTION_INV_X, "InvX", OPTV_BOOLEAN, {0}, FALSE },
- { OPTION_INV_Y, "InvY", OPTV_BOOLEAN, {0}, FALSE },
- { OPTION_ANGLE_OFFSET, "AngleOffset", OPTV_INTEGER, {0}, FALSE },
- { OPTION_Z_AXIS_MAPPING, "ZAxisMapping", OPTV_STRING, {0}, FALSE },
- { OPTION_SAMPLE_RATE, "SampleRate", OPTV_INTEGER, {0}, FALSE },
- { OPTION_RESOLUTION, "Resolution", OPTV_INTEGER, {0}, FALSE },
- { OPTION_EMULATE_WHEEL, "EmulateWheel", OPTV_BOOLEAN, {0}, FALSE },
- { OPTION_EMU_WHEEL_BUTTON, "EmulateWheelButton", OPTV_INTEGER, {0}, FALSE },
- { OPTION_EMU_WHEEL_INERTIA, "EmulateWheelInertia", OPTV_INTEGER, {0}, FALSE },
- { OPTION_X_AXIS_MAPPING, "XAxisMapping", OPTV_STRING, {0}, FALSE },
- { OPTION_Y_AXIS_MAPPING, "YAxisMapping", OPTV_STRING, {0}, FALSE },
- { OPTION_AUTO_SOFT, "AutoSoft", OPTV_BOOLEAN, {0}, FALSE },
- { OPTION_DRAGLOCKBUTTONS, "DragLockButtons",OPTV_STRING, {0}, FALSE },
- { -1, NULL, OPTV_NONE, {0}, FALSE }
-};
-
static char reverseMap[32] = { 0, 4, 2, 6, 1, 5, 3, 7,
8, 12, 10, 14, 9, 13, 11, 15,
16, 20, 18, 22, 17, 21, 19, 23,
@@ -297,6 +236,9 @@ VMMousePreInit(InputDriverPtr drv, IDevPtr dev, int flags)
InputInfoPtr pInfo;
MouseDevPtr pMse;
VMMousePrivPtr mPriv;
+
+#ifndef NO_MOUSE_MODULE
+{
OSMouseInfoPtr osInfo = NULL;
/*
@@ -305,6 +247,8 @@ VMMousePreInit(InputDriverPtr drv, IDevPtr dev, int flags)
osInfo = xf86OSMouseInit(0);
if (!osInfo)
return FALSE;
+}
+#endif
mPriv = xcalloc (1, sizeof (VMMousePrivRec));
@@ -416,14 +360,6 @@ VMMousePreInit(InputDriverPtr drv, IDevPtr dev, int flags)
return pInfo;
}
-#ifdef XFree86LOADER
-static const OptionInfoRec *
-VMMouseAvailableOptions(void *unused)
-{
- return (mouseOptions);
-}
-#endif
-
/*
*----------------------------------------------------------------------
@@ -776,6 +712,10 @@ VMMouseDeviceControl(DeviceIntPtr device, int mode)
VMMousePrivPtr mPriv;
unsigned char map[MSE_MAXBUTTONS + 1];
int i;
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7
+ Atom btn_labels[MSE_MAXBUTTONS] = {0};
+ Atom axes_labels[2] = { 0, 0 };
+#endif
pInfo = device->public.devicePrivate;
pMse = pInfo->private;
@@ -791,9 +731,30 @@ VMMouseDeviceControl(DeviceIntPtr device, int mode)
*/
for (i = 0; i < MSE_MAXBUTTONS; i++)
map[i + 1] = i + 1;
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7
+ btn_labels[0] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_LEFT);
+ btn_labels[1] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_MIDDLE);
+ btn_labels[2] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_RIGHT);
+ btn_labels[4] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_WHEEL_UP);
+ btn_labels[5] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_WHEEL_DOWN);
+ btn_labels[6] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_HWHEEL_LEFT);
+ btn_labels[7] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_HWHEEL_RIGHT);
+ /* other buttons are unknown */
+
+#ifdef ABS_VALUATOR_AXES
+ axes_labels[0] = XIGetKnownProperty(AXIS_LABEL_PROP_ABS_X);
+ axes_labels[1] = XIGetKnownProperty(AXIS_LABEL_PROP_ABS_Y);
+#else
+ axes_labels[0] = XIGetKnownProperty(AXIS_LABEL_PROP_REL_X);
+ axes_labels[1] = XIGetKnownProperty(AXIS_LABEL_PROP_REL_Y);
+#endif /* ABS_VALUATOR_AXES */
+#endif
InitPointerDeviceStruct((DevicePtr)device, map,
min(pMse->buttons, MSE_MAXBUTTONS),
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7
+ btn_labels,
+#endif
#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0
miPointerGetMotionEvents,
#elif GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 3
@@ -805,20 +766,39 @@ VMMouseDeviceControl(DeviceIntPtr device, int mode)
#else
GetMotionHistorySize(), 2
#endif
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7
+ , axes_labels
+#endif
);
/* X valuator */
#ifdef ABS_VALUATOR_AXES
- xf86InitValuatorAxisStruct(device, 0, 0, 65535, 10000, 0, 10000);
+ xf86InitValuatorAxisStruct(device, 0,
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7
+ axes_labels[0],
+#endif
+ 0, 65535, 10000, 0, 10000);
#else
- xf86InitValuatorAxisStruct(device, 0, 0, -1, 1, 0, 1);
+ xf86InitValuatorAxisStruct(device, 0,
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7
+ axes_labels[0],
+#endif
+ 0, -1, 1, 0, 1);
#endif
xf86InitValuatorDefaults(device, 0);
/* Y valuator */
#ifdef ABS_VALUATOR_AXES
- xf86InitValuatorAxisStruct(device, 1, 0, 65535, 10000, 0, 10000);
+ xf86InitValuatorAxisStruct(device, 1,
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7
+ axes_labels[1],
+#endif
+ 0, 65535, 10000, 0, 10000);
#else
- xf86InitValuatorAxisStruct(device, 1, 0, -1, 1, 0, 1);
+ xf86InitValuatorAxisStruct(device, 1,
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7
+ axes_labels[1],
+#endif
+ 0, -1, 1, 0, 1);
#endif
xf86InitValuatorDefaults(device, 1);
#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0
@@ -1146,14 +1126,6 @@ VMMouseConvertProc(InputInfoPtr pInfo, int first, int num, int v0, int v1, int v
#ifdef XFree86LOADER
-ModuleInfoRec VMMouseInfo = {
- 1,
- "VMMOUSE",
- NULL,
- 0,
- VMMouseAvailableOptions,
-};
-
/*
*----------------------------------------------------------------------
@@ -1202,7 +1174,6 @@ VMMousePlug(pointer module,
int *errmin)
{
static Bool Initialised = FALSE;
- char *name;
xf86LoaderReqSymLists(reqSymbols, NULL);
@@ -1212,6 +1183,9 @@ VMMousePlug(pointer module,
xf86Msg(X_INFO, "VMWARE(0): VMMOUSE module was loaded\n");
xf86AddInputDriver(&VMMOUSE, module, 0);
+#ifndef NO_MOUSE_MODULE
+{
+ char *name;
/*
* Load the normal mouse module as submodule
* If we fail in PreInit later, this allows us to fall back to normal mouse module
@@ -1227,6 +1201,8 @@ VMMousePlug(pointer module,
LoaderErrorMsg(NULL, name, *errmaj, *errmin);
}
xfree(name);
+}
+#endif
return module;
}
@@ -1247,7 +1223,7 @@ static XF86ModuleVersionInfo VMMouseVersionRec = {
/*
* The variable contains the necessary information to load and initialize the module
*/
-XF86ModuleData vmmouseModuleData = {
+_X_EXPORT XF86ModuleData vmmouseModuleData = {
&VMMouseVersionRec,
VMMousePlug,
VMMouseUnplug