update to xf86-input-vmmouse 12.6.4
This commit is contained in:
parent
224dd37703
commit
29dfc1a9fe
26
driver/xf86-input-vmmouse/configure
vendored
26
driver/xf86-input-vmmouse/configure
vendored
@ -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.3.
|
||||
# Generated by GNU Autoconf 2.62 for xf86-input-vmmouse 12.6.4.
|
||||
#
|
||||
# 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.3'
|
||||
PACKAGE_STRING='xf86-input-vmmouse 12.6.3'
|
||||
PACKAGE_VERSION='12.6.4'
|
||||
PACKAGE_STRING='xf86-input-vmmouse 12.6.4'
|
||||
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.3 to adapt to many kinds of systems.
|
||||
\`configure' configures xf86-input-vmmouse 12.6.4 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.3:";;
|
||||
short | recursive ) echo "Configuration of xf86-input-vmmouse 12.6.4:";;
|
||||
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.3
|
||||
xf86-input-vmmouse configure 12.6.4
|
||||
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.3, which was
|
||||
It was created by xf86-input-vmmouse $as_me 12.6.4, 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.3'
|
||||
VERSION='12.6.4'
|
||||
|
||||
|
||||
cat >>confdefs.h <<_ACEOF
|
||||
@ -20759,7 +20759,7 @@ inputdir=${moduledir}/input
|
||||
|
||||
|
||||
|
||||
# Check whether --with-hal_bin_dir was given.
|
||||
# Check whether --with-hal-bin-dir was given.
|
||||
if test "${with_hal_bin_dir+set}" = set; then
|
||||
withval=$with_hal_bin_dir; halbindir="$withval"
|
||||
else
|
||||
@ -20770,7 +20770,7 @@ HAL_BIN_DIR=${halbindir}
|
||||
|
||||
|
||||
|
||||
# Check whether --with-hal_callouts_dir was given.
|
||||
# Check whether --with-hal-callouts-dir was given.
|
||||
if test "${with_hal_callouts_dir+set}" = set; then
|
||||
withval=$with_hal_callouts_dir; halcalloutsdir="$withval"
|
||||
else
|
||||
@ -20781,7 +20781,7 @@ HAL_CALLOUTS_DIR=${halcalloutsdir}
|
||||
|
||||
|
||||
|
||||
# Check whether --with-hal_fdi_dir was given.
|
||||
# Check whether --with-hal-fdi-dir was given.
|
||||
if test "${with_hal_fdi_dir+set}" = set; then
|
||||
withval=$with_hal_fdi_dir; halfdidir="$withval"
|
||||
else
|
||||
@ -21935,7 +21935,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.3, which was
|
||||
This file was extended by xf86-input-vmmouse $as_me 12.6.4, which was
|
||||
generated by GNU Autoconf 2.62. Invocation command line was
|
||||
|
||||
CONFIG_FILES = $CONFIG_FILES
|
||||
@ -21988,7 +21988,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.3
|
||||
xf86-input-vmmouse config.status 12.6.4
|
||||
configured by $0, generated by GNU Autoconf 2.62,
|
||||
with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
|
||||
|
||||
|
@ -22,7 +22,7 @@
|
||||
|
||||
AC_PREREQ(2.57)
|
||||
AC_INIT([xf86-input-vmmouse],
|
||||
12.6.3,
|
||||
12.6.4,
|
||||
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
|
||||
xf86-input-vmmouse)
|
||||
|
||||
@ -70,7 +70,7 @@ AC_ARG_WITH(xorg-module-dir,
|
||||
inputdir=${moduledir}/input
|
||||
AC_SUBST(inputdir)
|
||||
|
||||
AC_ARG_WITH(hal_bin_dir,
|
||||
AC_ARG_WITH(hal-bin-dir,
|
||||
AC_HELP_STRING([--with-hal-bin-dir=DIR],
|
||||
[Directory where HAL binaries where installed [[default=$bindir]]]),
|
||||
[halbindir="$withval"],
|
||||
@ -78,7 +78,7 @@ AC_ARG_WITH(hal_bin_dir,
|
||||
HAL_BIN_DIR=${halbindir}
|
||||
AC_SUBST(HAL_BIN_DIR)
|
||||
|
||||
AC_ARG_WITH(hal_callouts_dir,
|
||||
AC_ARG_WITH(hal-callouts-dir,
|
||||
AC_HELP_STRING([--with-hal-callouts-dir=DIR],
|
||||
[Directory where HAL expects its callout scripts to be located
|
||||
[[default=$libdir/hal]]]),
|
||||
@ -87,7 +87,7 @@ AC_ARG_WITH(hal_callouts_dir,
|
||||
HAL_CALLOUTS_DIR=${halcalloutsdir}
|
||||
AC_SUBST(HAL_CALLOUTS_DIR)
|
||||
|
||||
AC_ARG_WITH(hal_fdi_dir,
|
||||
AC_ARG_WITH(hal-fdi-dir,
|
||||
AC_HELP_STRING([--with-hal-fdi-dir=DIR],
|
||||
[Directory where HAL expects its fdi files to be located
|
||||
[[default=$datadir/hal/fdi/policy/20thirdparty]]]),
|
||||
|
@ -41,7 +41,7 @@ See the
|
||||
.B mouse(__drivermansuffix__)
|
||||
man page for details on these options.
|
||||
.SH "SEE ALSO"
|
||||
__xservername__(1), __xconfigfile__(__filemansuffix__), xorgconfig(1), Xserver(1), X(__miscmansuffix__),
|
||||
__xservername__(1), __xconfigfile__(__filemansuffix__), Xserver(1), X(__miscmansuffix__),
|
||||
mouse(__drivermansuffix__)
|
||||
.SH AUTHORS
|
||||
Copyright (c) 1999-2007 VMware, Inc.
|
||||
|
@ -56,6 +56,12 @@
|
||||
*/
|
||||
#define VMMOUSE_ERROR 0xffff0000
|
||||
|
||||
/*
|
||||
* VMMouse Input packet flags
|
||||
*/
|
||||
#define VMMOUSE_MOVE_RELATIVE 1
|
||||
#define VMMOUSE_MOVE_ABSOLUTE 0
|
||||
|
||||
/*
|
||||
* VMMouse Input button flags
|
||||
*/
|
||||
|
@ -49,6 +49,15 @@
|
||||
#include "xf86_libc.h"
|
||||
#endif
|
||||
|
||||
/* Map Solaris/Sun compiler #defines to gcc equivalents */
|
||||
#if !defined __i386__ && defined __i386
|
||||
# define __i386__
|
||||
#endif
|
||||
|
||||
#if !defined __x86_64__ && defined __amd64
|
||||
# define __x86_64__
|
||||
#endif
|
||||
|
||||
#if !defined __i386__ && !defined __x86_64__
|
||||
#error The vmmouse protocol is only supported on x86 architectures.
|
||||
#endif
|
||||
|
@ -95,7 +95,7 @@
|
||||
*/
|
||||
#define VMMOUSE_MAJOR_VERSION 12
|
||||
#define VMMOUSE_MINOR_VERSION 6
|
||||
#define VMMOUSE_PATCHLEVEL 2
|
||||
#define VMMOUSE_PATCHLEVEL 4
|
||||
#define VMMOUSE_DRIVER_VERSION \
|
||||
(VMMOUSE_MAJOR_VERSION * 65536 + VMMOUSE_MINOR_VERSION * 256 + VMMOUSE_PATCHLEVEL)
|
||||
#define VMMOUSE_DRIVER_VERSION_STRING \
|
||||
@ -138,9 +138,11 @@ static void MouseCtrl(DeviceIntPtr device, PtrCtrl *ctrl);
|
||||
* Definitions
|
||||
*****************************************************************************/
|
||||
typedef struct {
|
||||
int screenNum;
|
||||
Bool vmmouseAvailable;
|
||||
Bool relative;
|
||||
int screenNum;
|
||||
Bool vmmouseAvailable;
|
||||
VMMOUSE_INPUT_DATA vmmousePrevInput;
|
||||
Bool isCurrRelative;
|
||||
Bool absoluteRequested;
|
||||
} VMMousePrivRec, *VMMousePrivPtr;
|
||||
|
||||
static const char *reqSymbols[] = {
|
||||
@ -311,7 +313,7 @@ VMMousePreInit(InputDriverPtr drv, IDevPtr dev, int flags)
|
||||
return NULL;
|
||||
}
|
||||
|
||||
mPriv->relative = TRUE;
|
||||
mPriv->absoluteRequested = FALSE;
|
||||
|
||||
/*
|
||||
* try to enable vmmouse here
|
||||
@ -479,6 +481,7 @@ VMMouseDoPostEvent(InputInfoPtr pInfo, int buttons, int dx, int dy)
|
||||
VMMousePrivPtr mPriv;
|
||||
int truebuttons;
|
||||
int id, change;
|
||||
Bool mouseMoved = FALSE;
|
||||
|
||||
pMse = pInfo->private;
|
||||
mPriv = (VMMousePrivPtr)pMse->mousePriv;
|
||||
@ -492,7 +495,14 @@ VMMouseDoPostEvent(InputInfoPtr pInfo, int buttons, int dx, int dy)
|
||||
|
||||
buttons = reverseBits(reverseMap, buttons);
|
||||
|
||||
if (dx || dy) {
|
||||
if (mPriv->isCurrRelative) {
|
||||
mouseMoved = dx || dy;
|
||||
} else {
|
||||
mouseMoved = (dx != mPriv->vmmousePrevInput.X) ||
|
||||
(dy != mPriv->vmmousePrevInput.Y) ||
|
||||
(mPriv->vmmousePrevInput.Flags & VMMOUSE_MOVE_RELATIVE);
|
||||
}
|
||||
if (mouseMoved) {
|
||||
|
||||
#ifdef CALL_CONVERSION_PROC
|
||||
/*
|
||||
@ -501,7 +511,7 @@ VMMouseDoPostEvent(InputInfoPtr pInfo, int buttons, int dx, int dy)
|
||||
*/
|
||||
VMMouseConvertProc(pInfo, 0, 2, dx, dy, 0, 0, 0, 0, &dx, &dy);
|
||||
#endif
|
||||
xf86PostMotionEvent(pInfo->dev, !mPriv->relative, 0, 2, dx, dy);
|
||||
xf86PostMotionEvent(pInfo->dev, !mPriv->isCurrRelative, 0, 2, dx, dy);
|
||||
}
|
||||
|
||||
if (truebuttons != pMse->lastButtons) {
|
||||
@ -549,7 +559,7 @@ VMMousePostEvent(InputInfoPtr pInfo, int buttons, int dx, int dy, int dz, int dw
|
||||
break;
|
||||
case MSE_MAPTOX:
|
||||
if (dz != 0) {
|
||||
if(mPriv->relative)
|
||||
if(mPriv->isCurrRelative)
|
||||
dx = dz;
|
||||
else
|
||||
dx += dz;
|
||||
@ -558,7 +568,7 @@ VMMousePostEvent(InputInfoPtr pInfo, int buttons, int dx, int dy, int dz, int dw
|
||||
break;
|
||||
case MSE_MAPTOY:
|
||||
if (dz != 0) {
|
||||
if(mPriv->relative)
|
||||
if(mPriv->isCurrRelative)
|
||||
dy = dz;
|
||||
else
|
||||
dy += dz;
|
||||
@ -593,7 +603,7 @@ VMMousePostEvent(InputInfoPtr pInfo, int buttons, int dx, int dy, int dz, int dw
|
||||
*/
|
||||
if (zbutton) {
|
||||
buttons &= ~zbutton;
|
||||
if(mPriv->relative)
|
||||
if(mPriv->isCurrRelative)
|
||||
VMMouseDoPostEvent(pInfo, buttons, 0, 0);
|
||||
else
|
||||
VMMouseDoPostEvent(pInfo, buttons, dx, dy);
|
||||
@ -621,7 +631,6 @@ static void
|
||||
FlushButtons(MouseDevPtr pMse)
|
||||
{
|
||||
pMse->lastButtons = 0;
|
||||
pMse->lastMappedButtons = 0;
|
||||
}
|
||||
|
||||
|
||||
@ -865,8 +874,8 @@ VMMouseDeviceControl(DeviceIntPtr device, int mode)
|
||||
VMMousePrivPtr mPriv = (VMMousePrivPtr)pMse->mousePriv;
|
||||
if( mPriv->vmmouseAvailable ) {
|
||||
VMMouseClient_Disable();
|
||||
mPriv->vmmouseAvailable = FALSE;
|
||||
mPriv->relative = TRUE;
|
||||
mPriv->vmmouseAvailable = FALSE;
|
||||
mPriv->absoluteRequested = FALSE;
|
||||
}
|
||||
|
||||
xf86RemoveEnabledDevice(pInfo);
|
||||
@ -916,9 +925,14 @@ VMMouseReadInput(InputInfoPtr pInfo)
|
||||
pMse = pInfo->private;
|
||||
mPriv = pMse->mousePriv;
|
||||
|
||||
if (mPriv->relative) {
|
||||
if (!mPriv->absoluteRequested) {
|
||||
/*
|
||||
* We can request for absolute mode, but it depends on
|
||||
* host whether it will send us absolute or relative
|
||||
* position.
|
||||
*/
|
||||
VMMouseClient_RequestAbsolute();
|
||||
mPriv->relative = FALSE;
|
||||
mPriv->absoluteRequested = TRUE;
|
||||
xf86Msg(X_INFO, "VMWARE(0): vmmouse enable absolute mode\n");
|
||||
}
|
||||
|
||||
@ -973,12 +987,14 @@ VMMouseReadInput(InputInfoPtr pInfo)
|
||||
static void
|
||||
GetVMMouseMotionEvent(InputInfoPtr pInfo){
|
||||
MouseDevPtr pMse;
|
||||
VMMousePrivPtr mPriv;
|
||||
int buttons, dx, dy, dz, dw;
|
||||
VMMOUSE_INPUT_DATA vmmouseInput;
|
||||
int ps2Buttons = 0;
|
||||
int numPackets;
|
||||
|
||||
pMse = pInfo->private;
|
||||
mPriv = (VMMousePrivPtr)pMse->mousePriv;
|
||||
while((numPackets = VMMouseClient_GetInput(&vmmouseInput))){
|
||||
if (numPackets == VMMOUSE_ERROR) {
|
||||
VMMouseClient_Disable();
|
||||
@ -1003,8 +1019,13 @@ GetVMMouseMotionEvent(InputInfoPtr pInfo){
|
||||
dy = vmmouseInput.Y;
|
||||
dz = (char)vmmouseInput.Z;
|
||||
dw = 0;
|
||||
/*
|
||||
* Get the per package relative or absolute information.
|
||||
*/
|
||||
mPriv->isCurrRelative = vmmouseInput.Flags & VMMOUSE_MOVE_RELATIVE;
|
||||
/* post an event */
|
||||
pMse->PostEvent(pInfo, buttons, dx, dy, dz, dw);
|
||||
mPriv->vmmousePrevInput = vmmouseInput;
|
||||
}
|
||||
}
|
||||
|
||||
@ -1106,7 +1127,7 @@ VMMouseConvertProc(InputInfoPtr pInfo, int first, int num, int v0, int v1, int v
|
||||
if (first != 0 || num != 2)
|
||||
return FALSE;
|
||||
|
||||
if(mPriv->relative) {
|
||||
if(mPriv->isCurrRelative) {
|
||||
*x = v0;
|
||||
*y = v1;
|
||||
} else {
|
||||
|
@ -30,10 +30,16 @@
|
||||
#include <signal.h>
|
||||
#include "vmmouse_client.h"
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
void
|
||||
segvCB(int sig)
|
||||
{
|
||||
#if defined HAVE_XORG_SERVER_1_1_0
|
||||
exit(1);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user