summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpingc <pingc>2007-06-25 21:25:11 +0000
committerpingc <pingc>2007-06-25 21:25:11 +0000
commit61d5330adc39ea26a2c56904bc87dc73ea87d484 (patch)
treeaca32eedb27cade27349eae2bb64e7f96ddd2c5e
parent5c84d506a3602bbddc98eef1a2562ee5979d3dcc (diff)
downloadxf86-input-wacom-61d5330adc39ea26a2c56904bc87dc73ea87d484.tar.gz
Added xsetwacom RawSample option and updated keystroke for absolute wheel and menu strip
-rw-r--r--ChangeLog11
-rwxr-xr-xsrc/include/Xwacom.h27
-rw-r--r--src/wacom.4x17
-rwxr-xr-xsrc/xdrv/Makefile.am6
-rwxr-xr-xsrc/xdrv/wcmCommon.c66
-rwxr-xr-xsrc/xdrv/wcmCompat.c29
-rwxr-xr-xsrc/xdrv/wcmConfig.c31
-rwxr-xr-xsrc/xdrv/wcmFilter.c21
-rwxr-xr-xsrc/xdrv/wcmFilter.h32
-rwxr-xr-xsrc/xdrv/wcmISDV4.c163
-rwxr-xr-xsrc/xdrv/wcmSerial.c33
-rwxr-xr-xsrc/xdrv/wcmSerial.h32
-rwxr-xr-xsrc/xdrv/wcmUSB.c29
-rw-r--r--src/xdrv/wcmXCommand.c31
-rwxr-xr-xsrc/xdrv/xf86Wacom.c42
-rwxr-xr-xsrc/xdrv/xf86Wacom.h29
16 files changed, 321 insertions, 278 deletions
diff --git a/ChangeLog b/ChangeLog
index b2be282..24c8313 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,7 +1,18 @@
+2007-06-25 Ping Cheng <pingc@wacom.com>
+ * Merged patch 1689476 (Gregor Richards)
+ * Merged patch 1674472 (Magnus Vigerlöf)
+ * Updated new xsetwacom commands
+ * Updated wacom man page
+ * Updated webpages to make /PRE scalable
+ * Fixed an older UD pressure calculation error
+ (Pierre-Alain Tercier)
+ * Label 0.7.8
+
2007-06-14 Ping Cheng <pingc@wacom.com>
* Added RawSample option to xsetwacom
* Reset old data after each out-prox event
* Change Bamboo ring from strip to absolute wheel
+ * Label 0.7.7-12
2007-06-05 Ping Cheng <pingc@wacom.com>
* Updated xsetwacom suppress option
diff --git a/src/include/Xwacom.h b/src/include/Xwacom.h
index eb747b6..a479703 100755
--- a/src/include/Xwacom.h
+++ b/src/include/Xwacom.h
@@ -1,23 +1,20 @@
-/*****************************************************************************
- *
+/*
* Copyright 2003 by John Joganic <john@joganic.com>
* Copyright 2003 - 2007 by Ping Cheng <pingc@wacom.com>
*
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation.
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
*
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
*
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * JOHN JOGANIC BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#ifndef __XF86_XWACOM_H
diff --git a/src/wacom.4x b/src/wacom.4x
index 496ebe2..f21f1d8 100644
--- a/src/wacom.4x
+++ b/src/wacom.4x
@@ -37,11 +37,14 @@ supports the following entries:
.RS 8
.TP 4
.B Option \fI"Type"\fP \fI"stylus"|"eraser"|"cursor"|"pad"\fP
-sets the type of tool the device represents. This option is mandatory. The core options, such as "SendCoreEvents" or "AlwaysCore", are
+sets the type of tool the device represents. This option is mandatory.
+The core options, such as "SendCoreEvents" or "AlwaysCore", are
unnecessary in Gimp if you don't need to move system cursor outside
-of Gimp drawing area. "pad" is for Intuos 3, Cintiq 21UX, or
-Graphire 4 ExpressKeys only. It is required for Intuos3, Cintiq 21UX, and Graphire 4 if your application supports ExpressKeys
-features. "pad" is reported as a second tool in the driver.
+of Gimp drawing area. "pad" is for Intuos 3 or Cintiq 21UX tablet
+ExpressKeys/menu strips, and Graphire 4 or Bamboo tablet buttons, wheel,
+and/or ring. It is required for Intuos3, Cintiq 21UX, Graphire 4, and
+Bamboo if you want to use keystroke features. "pad" is reported as a
+second tool in the driver.
.TP 4
.B Option \fI"Device"\fP \fI"path"\fP
sets the path to the special file which represents serial line where
@@ -54,9 +57,9 @@ tells the driver to dialog with the tablet the USB way. This option is
mandatory for USB tablets.
.TP 4
.B Option \fI"ForceDevice"\fP \fI"ISDV4"\fP
-tells the driver to dialog with the tablet the Tablet PC way. Tablet PC is a
-serial tablet using a special Wacom IV protocol, called ISDV4 protocol. This
-option is mandatory for Tablet PC.
+tells the driver to dialog with the tablet the Tablet PC way. Right now
+we only support serial Tablet PC. It is a special Wacom IV protocol,
+called ISDV4 protocol. This option is mandatory for Tablet PC.
.TP 4
.B Option \fI"Suppress"\fP \fI"Inumber"\fP
sets the position increment under which not to transmit coordinates.
diff --git a/src/xdrv/Makefile.am b/src/xdrv/Makefile.am
index bca5f45..4427ec3 100755
--- a/src/xdrv/Makefile.am
+++ b/src/xdrv/Makefile.am
@@ -25,7 +25,7 @@ ARCHITECTURE =@WCM_ARCH@
XSERVER64 =@WCM_XSERVER64@
if WCM_ENV_XORGSDK
-DRIVER_INCLUDES = -I$(XORGSDK_DIR) $(X_CFLAGS)
+DRIVER_INCLUDES = -I$(XORGSDK_DIR) $(X_CFLAGS) -DWCM_XORG
endif
if WCM_ENV_XF86
@@ -38,7 +38,7 @@ DRIVER_INCLUDES = \
-I$(XF86_DIR)/exports/include/X11 \
-I$(XF86_DIR)/include/extensions \
-I$(XF86_DIR) \
- -I$(XF86_DIR)/exports/include
+ -I$(XF86_DIR)/exports/include -DWCM_XFREE86
endif
NO_MERGE_CONSTANTS=@WCM_NO_MERGE_CONSTANTS@
@@ -49,7 +49,7 @@ if WCM_DLLOADER
DLLOADER=-fPIC
endif
-CFLAGS += $(WCM_CFLAGS_STACK_PROTECTOR)
+CFLAGS += $(WCM_CFLAGS_STACK_PROTECTOR) -Wno-variadic-macros
XF86OBJS = xf86Wacom.o wcmSerial.o wcmUSB.o wcmISDV4.o \
wcmXCommand.o wcmCommon.o wcmCompat.o wcmConfig.o \
diff --git a/src/xdrv/wcmCommon.c b/src/xdrv/wcmCommon.c
index 22fc8cd..bc93b2f 100755
--- a/src/xdrv/wcmCommon.c
+++ b/src/xdrv/wcmCommon.c
@@ -2,24 +2,19 @@
* Copyright 1995-2002 by Frederic Lepied, France. <Lepied@XFree86.org>
* Copyright 2002-2007 by Ping Cheng, Wacom Technology. <pingc@wacom.com>
*
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Frederic Lepied not be used in
- * advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Frederic Lepied makes no
- * representations about the suitability of this software for any purpose. It
- * is provided "as is" without express or implied warranty.
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
*
- * FREDERIC LEPIED DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
- * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- * EVENT SHALL FREDERIC LEPIED BE LIABLE FOR ANY SPECIAL, INDIRECT OR
- * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
- * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
- * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- * PERFORMANCE OF THIS SOFTWARE.
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
*
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#include "xf86Wacom.h"
@@ -83,7 +78,11 @@ static void xf86WcmSetScreen(LocalDevicePtr local, int *value0, int *value1)
if (!(priv->flags & ABSOLUTE_FLAG))
{
/* screenToSet lags by one event, but not that important */
+#if defined WCM_XFREE86 || GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0
priv->currentScreen = miPointerCurrentScreen()->myNum;
+#else
+ priv->currentScreen = miPointerGetScreen(local->dev)->myNum;
+#endif
for (i = 0; i < priv->numScreen; i++)
totalWidth += screenInfo.screens[i]->width;
@@ -136,8 +135,13 @@ static void xf86WcmSetScreen(LocalDevicePtr local, int *value0, int *value1)
else
{
/* tool on the tablet when driver starts */
+#if defined WCM_XFREE86 || GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0
if (miPointerCurrentScreen())
priv->currentScreen = miPointerCurrentScreen()->myNum;
+#else
+ if (miPointerGetScreen(local->dev))
+ priv->currentScreen = miPointerGetScreen(local->dev)->myNum;
+#endif
priv->factorX = screenInfo.screens[priv->currentScreen]->width / sizeX;
priv->factorY = screenInfo.screens[priv->currentScreen]->height / sizeY;
}
@@ -418,7 +422,9 @@ static void sendAButton(LocalDevicePtr local, int button, int mask,
WacomDevicePtr priv = (WacomDevicePtr) local->private;
WacomCommonPtr common = priv->common;
int is_absolute = priv->flags & ABSOLUTE_FLAG;
+#if defined WCM_XFREE86 || GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0
int is_core = local->flags & (XI86_ALWAYS_CORE | XI86_CORE_POINTER);
+#endif
int i, button_idx, naxes = priv->naxes;
if (IsPad(priv))
@@ -436,10 +442,11 @@ static void sendAButton(LocalDevicePtr local, int button, int mask,
if (!button)
return;
+#if defined WCM_XFREE86 || GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0
/* Switch the device to core mode, if required */
if (!is_core && (button & AC_CORE))
xf86XInputSetSendCoreEvents (local, TRUE);
-
+#endif
DBG(4, priv->debugLevel, ErrorF(
"sendAButton TPCButton(%s) button=%d state=%d "
"code=%08x, for %s coreEvent=%s \n",
@@ -523,10 +530,12 @@ static void sendAButton(LocalDevicePtr local, int button, int mask,
break;
}
+#if defined WCM_XFREE86 || GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0
/* Switch the device out of the core mode, if required
*/
if (!is_core && (button & AC_CORE))
xf86XInputSetSendCoreEvents (local, FALSE);
+#endif
}
/*****************************************************************************
@@ -540,8 +549,9 @@ static void sendWheelStripEvents(LocalDevicePtr local, const WacomDeviceState* d
int fakeButton = 0, i, value = 0, naxes = priv->naxes;
unsigned *keyP = 0;
int is_absolute = priv->flags & ABSOLUTE_FLAG;
+#if defined WCM_XFREE86 || GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0
int is_core = local->flags & (XI86_ALWAYS_CORE | XI86_CORE_POINTER);
-
+#endif
DBG(10, priv->debugLevel, ErrorF("sendWheelStripEvents for %s \n", local->name));
/* emulate events for relative wheel */
@@ -636,10 +646,11 @@ static void sendWheelStripEvents(LocalDevicePtr local, const WacomDeviceState* d
if (!fakeButton) return;
+#if defined WCM_XFREE86 || GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0
/* Switch the device to core mode, if required */
if (!is_core && (fakeButton & AC_CORE))
xf86XInputSetSendCoreEvents (local, TRUE);
-
+#endif
switch (fakeButton & AC_TYPE)
{
case AC_BUTTON:
@@ -676,10 +687,12 @@ static void sendWheelStripEvents(LocalDevicePtr local, const WacomDeviceState* d
ErrorF ("WARNING: [%s] unsupported event %x \n", local->name, fakeButton);
}
+#if defined WCM_XFREE86 || GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0
/* Switch the device out of the core mode, if required
*/
if (!is_core && (fakeButton & AC_CORE))
xf86XInputSetSendCoreEvents (local, FALSE);
+#endif
}
/*****************************************************************************
@@ -861,6 +874,14 @@ void xf86WcmSendEvents(LocalDevicePtr local, const WacomDeviceState* ds)
y *= param > 20.00 ? 20.00 : param;
}
}
+
+#if defined WCM_XORG && GET_ABI_MAJOR(ABI_XINPUT_VERSION) > 0
+ /* Ugly hack for Xorg 7.3, which doesn't call xf86WcmDevConvert
+ * for coordinate conversion at the moment */
+ x = (int)((double)x * priv->factorX + 0.5);
+ y = (int)((double)y * priv->factorY + 0.5);
+#endif
+
if (type != PAD_ID)
{
/* coordinates are ready we can send events */
@@ -1069,8 +1090,13 @@ void xf86WcmEvent(WacomCommonPtr common, unsigned int channel,
DBG(10, common->debugLevel, ErrorF("xf86WcmEvent at channel = %d\n", channel));
- /* tool on the tablet when driver starts */
+ /* Tool on the tablet when driver starts. This sometime causes
+ * access errors to the device */
+#if defined WCM_XFREE86 || GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0
if (!miPointerCurrentScreen())
+#else
+ if (!miPointerGetScreen(pDev->dev))
+#endif
{
DBG(1, common->debugLevel, ErrorF("xf86WcmEvent: "
"Wacom driver can not get Current Screen ID\n"));
diff --git a/src/xdrv/wcmCompat.c b/src/xdrv/wcmCompat.c
index b588a6a..dc3f1ce 100755
--- a/src/xdrv/wcmCompat.c
+++ b/src/xdrv/wcmCompat.c
@@ -1,24 +1,19 @@
/*
* Copyright 1995-2004 by Frederic Lepied, France. <Lepied@XFree86.org>
*
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Frederic Lepied not be used in
- * advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Frederic Lepied makes no
- * representations about the suitability of this software for any purpose. It
- * is provided "as is" without express or implied warranty.
- *
- * FREDERIC LEPIED DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
- * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- * EVENT SHALL FREDERIC LEPIED BE LIABLE FOR ANY SPECIAL, INDIRECT OR
- * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
- * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
- * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- * PERFORMANCE OF THIS SOFTWARE.
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
*
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#include "xf86Wacom.h"
diff --git a/src/xdrv/wcmConfig.c b/src/xdrv/wcmConfig.c
index fbe15cf..c5726e3 100755
--- a/src/xdrv/wcmConfig.c
+++ b/src/xdrv/wcmConfig.c
@@ -2,24 +2,19 @@
* Copyright 1995-2002 by Frederic Lepied, France. <Lepied@XFree86.org>
* Copyright 2002-2007 by Ping Cheng, Wacom. <pingc@wacom.com>
*
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Frederic Lepied not be used in
- * advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Frederic Lepied makes no
- * representations about the suitability of this software for any purpose. It
- * is provided "as is" without express or implied warranty.
- *
- * FREDERIC LEPIED DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
- * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- * EVENT SHALL FREDERIC LEPIED BE LIABLE FOR ANY SPECIAL, INDIRECT OR
- * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
- * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
- * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- * PERFORMANCE OF THIS SOFTWARE.
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
*
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#include "xf86Wacom.h"
@@ -90,7 +85,9 @@ LocalDevicePtr xf86WcmAllocate(char* name, int flag)
local->dev = NULL;
local->private = priv;
local->private_flags = 0;
+#if defined WCM_XFREE86 || GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0
local->history_size = 0;
+#endif
local->old_x = -1;
local->old_y = -1;
diff --git a/src/xdrv/wcmFilter.c b/src/xdrv/wcmFilter.c
index 131b87f..7e8d4fd 100755
--- a/src/xdrv/wcmFilter.c
+++ b/src/xdrv/wcmFilter.c
@@ -2,14 +2,19 @@
* Copyright 1995-2002 by Frederic Lepied, France. <Lepied@XFree86.org>
* Copyright 2002-2007 by Ping Cheng, Wacom. <pingc@wacom.com>
*
- * Permission to use, copy, modify, distribute, and sell this software and
- * its documentation for any purpose is hereby granted without fee,
- * provided that the above copyright notice appear in all copies and that
- * both that copyright notice and this permission notice appear in
- * supporting documentation, and that the name of Frederic Lepied not be
- * used in advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission. It is provided
- * "as is" without express or implied warranty.
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#include "wcmFilter.h"
diff --git a/src/xdrv/wcmFilter.h b/src/xdrv/wcmFilter.h
index 301bff9..d5995e4 100755
--- a/src/xdrv/wcmFilter.h
+++ b/src/xdrv/wcmFilter.h
@@ -1,24 +1,20 @@
/*
* Copyright 1995-2003 by Frederic Lepied, France. <Lepied@XFree86.org>
- *
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Frederic Lepied not be used in
- * advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Frederic Lepied makes no
- * representations about the suitability of this software for any purpose. It
- * is provided "as is" without express or implied warranty.
- *
- * FREDERIC LEPIED DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
- * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- * EVENT SHALL FREDERIC LEPIED BE LIABLE FOR ANY SPECIAL, INDIRECT OR
- * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
- * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
- * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- * PERFORMANCE OF THIS SOFTWARE.
+ * Copyright 2002-2007 by Ping Cheng, Wacom. <pingc@wacom.com>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
*
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#ifndef __XF86_WCMFILTER_H
diff --git a/src/xdrv/wcmISDV4.c b/src/xdrv/wcmISDV4.c
index 56340b5..c60c108 100755
--- a/src/xdrv/wcmISDV4.c
+++ b/src/xdrv/wcmISDV4.c
@@ -1,25 +1,20 @@
/*
* Copyright 1995-2002 by Frederic Lepied, France. <Lepied@XFree86.org>
* Copyright 2002-2007 by Ping Cheng, Wacom Technology. <pingc@wacom.com>
- *
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Frederic Lepied not be used in
- * advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Frederic Lepied makes no
- * representations about the suitability of this software for any purpose. It
- * is provided "as is" without express or implied warranty.
- *
- * FREDERIC LEPIED DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
- * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- * EVENT SHALL FREDERIC LEPIED BE LIABLE FOR ANY SPECIAL, INDIRECT OR
- * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
- * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
- * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- * PERFORMANCE OF THIS SOFTWARE.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
*
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#include "xf86Wacom.h"
@@ -104,7 +99,9 @@ static void isdv4InitISDV4(WacomCommonPtr common, const char* id, float version)
{
/* set parameters */
common->wcmProtocolLevel = 4;
- common->wcmPktLength = 9; /* length of a packet */
+ common->wcmPktLength = 5; /* length of a packet
+ * device packets are 9 bytes long,
+ * multitouch are only 5 */
common->wcmResolX = 2540; /* tablet X resolution in points/inch */
common->wcmResolY = 2540; /* tablet Y resolution in points/inch */
common->wcmTPCButton = 1; /* Tablet PC buttons on by default */
@@ -209,13 +206,29 @@ static int isdv4Parse(LocalDevicePtr local, const unsigned char* data)
WacomCommonPtr common = priv->common;
WacomDeviceState* last = &common->wcmChannel[0].valid.state;
WacomDeviceState* ds;
- int n, cur_type;
+ int n, cur_type, ismt = 0;
+ static int lastismt = 0;
DBG(10, common->debugLevel, ErrorF("isdv4Parse \n"));
- if ((n = xf86WcmSerialValidate(common,data)) > 0)
+
+ /* determine the type of message */
+ if (data[0] & 0x10)
{
- return n;
+ ismt = 1;
+ common->wcmPktLength = 5;
+ }
+ else
+ {
+ common->wcmPktLength = 9;
+ if (common->buffer + common->bufpos - data < common->wcmPktLength)
+ {
+ /* we can't handle this yet */
+ return 0;
+ }
}
+
+ if ((n = xf86WcmSerialValidate(common,data)) > 0)
+ return n;
else
{
/* Coordinate data bit check */
@@ -226,58 +239,82 @@ static int isdv4Parse(LocalDevicePtr local, const unsigned char* data)
ds = &common->wcmChannel[0].work;
RESET_RELATIVE(*ds);
- ds->proximity = (data[0] & 0x20);
+ if (ismt)
+ {
+ if (!lastismt && last->pressure)
+ {
+ /* pen sends both pen and MultiTouch input,
+ * since pressing it creates pressure.
+ * We only want the pen input though.
+ */
+ return common->wcmPktLength;
+ }
+ lastismt = ismt;
+
+ /* MultiTouch input is comparably simple */
+ ds->proximity = 0;
+ ds->x = (((((int)data[1]) << 7) | ((int)data[2])) - 18) * common->wcmMaxX / 926;
+ ds->y = (((((int)data[3]) << 7) | ((int)data[4])) - 51) * common->wcmMaxY / 934;
+ ds->pressure = (data[0] & 0x01) * common->wcmMaxZ;
+ ds->buttons = 1;
+ ds->device_id = STYLUS_DEVICE_ID;
+ ds->device_type = 0;
+ DBG(8, priv->debugLevel, ErrorF("isdv4Parse MultiTouch\n"));
+ }
+ else
+ {
+ ds->proximity = (data[0] & 0x20);
- /* x and y in "normal" orientetion (wide length is X) */
- ds->x = (((int)data[6] & 0x60) >> 5) | ((int)data[2] << 2) |
- ((int)data[1] << 9);
- ds->y = (((int)data[6] & 0x18) >> 3) | ((int)data[4] << 2) |
- ((int)data[3] << 9);
+ /* x and y in "normal" orientetion (wide length is X) */
+ ds->x = (((int)data[6] & 0x60) >> 5) | ((int)data[2] << 2) |
+ ((int)data[1] << 9);
+ ds->y = (((int)data[6] & 0x18) >> 3) | ((int)data[4] << 2) |
+ ((int)data[3] << 9);
- /* pressure */
- ds->pressure = (((data[6] & 0x07) << 7) | data[5] );
+ /* pressure */
+ ds->pressure = (((data[6] & 0x07) << 7) | data[5] );
- /* buttons */
- ds->buttons = (data[0] & 0x07);
+ /* buttons */
+ ds->buttons = (data[0] & 0x07);
- /* check which device we have */
- cur_type = (ds->buttons & 4) ? ERASER_ID : STYLUS_ID;
+ /* check which device we have */
+ cur_type = (ds->buttons & 4) ? ERASER_ID : STYLUS_ID;
- /* first time into prox */
- if (!last->proximity && ds->proximity)
- ds->device_type = cur_type;
- /* check on previous proximity */
- else if (cur_type == STYLUS_ID && ds->proximity)
- {
- /* we were fooled by tip and second
- * sideswitch when it came into prox */
- if ((ds->device_type != cur_type) &&
- (ds->device_type == ERASER_ID))
- {
- /* send a prox-out for old device */
- WacomDeviceState out = { 0 };
- xf86WcmEvent(common, 0, &out);
+ /* first time into prox */
+ if (!last->proximity && ds->proximity)
ds->device_type = cur_type;
+ /* check on previous proximity */
+ else if (cur_type == STYLUS_ID && ds->proximity)
+ {
+ /* we were fooled by tip and second
+ * sideswitch when it came into prox */
+ if ((ds->device_type != cur_type) &&
+ (ds->device_type == ERASER_ID))
+ {
+ /* send a prox-out for old device */
+ WacomDeviceState out = { 0 };
+ xf86WcmEvent(common, 0, &out);
+ ds->device_type = cur_type;
+ }
}
- }
-
- ds->device_id = (ds->device_type == CURSOR_ID) ? CURSOR_DEVICE_ID : STYLUS_DEVICE_ID;
- /* don't send button 3 event for eraser
- * button 1 event will be sent by testing presure level
- */
- if (ds->device_type == ERASER_ID && ds->buttons&4)
- {
- ds->buttons = 0;
- ds->device_id = ERASER_DEVICE_ID;
- }
+ ds->device_id = (ds->device_type == CURSOR_ID) ?
+ CURSOR_DEVICE_ID : STYLUS_DEVICE_ID;
- DBG(8, common->debugLevel, ErrorF("isdv4Parse %s\n",
- ds->device_type == ERASER_ID ? "ERASER " :
- ds->device_type == STYLUS_ID ? "STYLUS" : "NONE"));
+ /* don't send button 3 event for eraser
+ * button 1 event will be sent by testing presure level
+ */
+ if (ds->device_type == ERASER_ID && ds->buttons&4)
+ {
+ ds->buttons = 0;
+ ds->device_id = ERASER_DEVICE_ID;
+ }
+ DBG(8, priv->debugLevel, ErrorF("isdv4Parse %s\n",
+ ds->device_type == ERASER_ID ? "ERASER " :
+ ds->device_type == STYLUS_ID ? "STYLUS" : "NONE"));
+ }
xf86WcmEvent(common,0,ds);
-
return common->wcmPktLength;
}
diff --git a/src/xdrv/wcmSerial.c b/src/xdrv/wcmSerial.c
index 042c255..c24dc66 100755
--- a/src/xdrv/wcmSerial.c
+++ b/src/xdrv/wcmSerial.c
@@ -1,25 +1,20 @@
/*
* Copyright 1995-2002 by Frederic Lepied, France. <Lepied@XFree86.org>
* Copyright 2002-2007 by Ping Cheng, Wacom Technology. <pingc@wacom.com>
- *
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Frederic Lepied not be used in
- * advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Frederic Lepied makes no
- * representations about the suitability of this software for any purpose. It
- * is provided "as is" without express or implied warranty.
- *
- * FREDERIC LEPIED DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
- * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- * EVENT SHALL FREDERIC LEPIED BE LIABLE FOR ANY SPECIAL, INDIRECT OR
- * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
- * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
- * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- * PERFORMANCE OF THIS SOFTWARE.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
*
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#include "xf86Wacom.h"
@@ -691,7 +686,7 @@ static int serialParseProtocol4(LocalDevicePtr local, const unsigned char* data)
else
ds->pressure = (data[6] & ZAXIS_BITS) |
- (data[6] & ZAXIS_SIGN_BIT) ? 0 : 0x40;
+ ((data[6] & ZAXIS_SIGN_BIT) ? 0 : 0x40);
/* get button state */
ds->buttons = (data[3] & BUTTONS_BITS) >> 3;
diff --git a/src/xdrv/wcmSerial.h b/src/xdrv/wcmSerial.h
index 8ef3572..0d5f614 100755
--- a/src/xdrv/wcmSerial.h
+++ b/src/xdrv/wcmSerial.h
@@ -1,24 +1,20 @@
/*
* Copyright 1995-2003 by Frederic Lepied, France. <Lepied@XFree86.org>
- *
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Frederic Lepied not be used in
- * advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Frederic Lepied makes no
- * representations about the suitability of this software for any purpose. It
- * is provided "as is" without express or implied warranty.
- *
- * FREDERIC LEPIED DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
- * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- * EVENT SHALL FREDERIC LEPIED BE LIABLE FOR ANY SPECIAL, INDIRECT OR
- * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
- * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
- * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- * PERFORMANCE OF THIS SOFTWARE.
+ * Copyright 2002-2007 by Ping Cheng, Wacom Technology. <pingc@wacom.com>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
*
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#ifndef __XF86_WCMSERIAL_H
diff --git a/src/xdrv/wcmUSB.c b/src/xdrv/wcmUSB.c
index 668bdae..af6a6f4 100755
--- a/src/xdrv/wcmUSB.c
+++ b/src/xdrv/wcmUSB.c
@@ -2,24 +2,19 @@
* Copyright 1995-2002 by Frederic Lepied, France. <Lepied@XFree86.org>
* Copyright 2002-2007 by Ping Cheng, Wacom Technology. <pingc@wacom.com>
*
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Frederic Lepied not be used in
- * advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Frederic Lepied makes no
- * representations about the suitability of this software for any purpose. It
- * is provided "as is" without express or implied warranty.
- *
- * FREDERIC LEPIED DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
- * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- * EVENT SHALL FREDERIC LEPIED BE LIABLE FOR ANY SPECIAL, INDIRECT OR
- * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
- * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
- * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- * PERFORMANCE OF THIS SOFTWARE.
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
*
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#include "xf86Wacom.h"
diff --git a/src/xdrv/wcmXCommand.c b/src/xdrv/wcmXCommand.c
index e6e36a9..b7aab8e 100644
--- a/src/xdrv/wcmXCommand.c
+++ b/src/xdrv/wcmXCommand.c
@@ -1,24 +1,19 @@
-/* $XConsortium: wcmXCommon.c /main/20 1996/10/27 11:05:20 kaleb $ */
/*
* Copyright 2007 by Ping Cheng, Wacom Technology. <pingc@wacom.com>
*
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Ping Cheng not be used in
- * advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Ping Cheng makes no
- * representations about the suitability of this software for any purpose.
- * It is provided "as is" without express or implied warranty.
-
- * PING CHENG DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
- * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- * EVENT SHALL FREDERIC LEPIED BE LIABLE FOR ANY SPECIAL, INDIRECT OR
- * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
- * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
- * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- * PERFORMANCE OF THIS SOFTWARE.
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
/*
diff --git a/src/xdrv/xf86Wacom.c b/src/xdrv/xf86Wacom.c
index a15ff18..a5a7a8e 100755
--- a/src/xdrv/xf86Wacom.c
+++ b/src/xdrv/xf86Wacom.c
@@ -1,30 +1,22 @@
-/* $XConsortium: xf86Wacom.c /main/20 1996/10/27 11:05:20 kaleb $ */
/*
* Copyright 1995-2002 by Frederic Lepied, France. <Lepied@XFree86.org>
* Copyright 2002-2007 by Ping Cheng, Wacom Technology. <pingc@wacom.com>
*
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Frederic Lepied not be used in
- * advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Frederic Lepied makes no
- * representations about the suitability of this software for any purpose. It
- * is provided "as is" without express or implied warranty.
- *
- * FREDERIC LEPIED DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
- * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- * EVENT SHALL FREDERIC LEPIED BE LIABLE FOR ANY SPECIAL, INDIRECT OR
- * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
- * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
- * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- * PERFORMANCE OF THIS SOFTWARE.
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
*
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
-/* $XFree86: xc/programs/Xserver/hw/xfree86/input/wacom/xf86Wacom.c,v 1.26 2001/04/01 14:00:13 tsi Exp $ */
-
/*
* This driver is currently able to handle Wacom IV, V, and ISDV4 protocols.
*
@@ -63,9 +55,10 @@
* 2007-05-18 47-pc0.7.7-10 - support new xsetwacom commands
* 2007-06-05 47-pc0.7.7-11 - Test Ron's patches
* 2007-06-15 47-pc0.7.7-12 - enable changing number of raw data
+ * 2007-06-25 47-pc0.7.8 - new release
*/
-static const char identification[] = "$Identification: 47-0.7.7-12 $";
+static const char identification[] = "$Identification: 47-0.7.8 $";
/****************************************************************************/
@@ -463,8 +456,13 @@ static int xf86WcmRegisterX11Devices (LocalDevicePtr local)
nbaxes = priv->naxes = 6;
if (InitValuatorClassDeviceStruct(local->dev, nbaxes,
+#if defined WCM_XFREE86 || GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0
xf86GetMotionEvents,
local->history_size,
+#else
+ GetMotionHistory,
+ GetMotionHistorySize(),
+#endif
((priv->flags & ABSOLUTE_FLAG) ?
Absolute : Relative) |
OutOfProximity ) == FALSE)
@@ -511,8 +509,10 @@ static int xf86WcmRegisterX11Devices (LocalDevicePtr local)
}
}
+#if defined WCM_XFREE86 || GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0
/* allocate motion history buffer if needed */
xf86MotionHistoryAllocate(local);
+#endif
/* initialize screen bounding rect */
if (priv->twinview != TV_NONE)
diff --git a/src/xdrv/xf86Wacom.h b/src/xdrv/xf86Wacom.h
index 001a532..8ab8128 100755
--- a/src/xdrv/xf86Wacom.h
+++ b/src/xdrv/xf86Wacom.h
@@ -2,24 +2,19 @@
* Copyright 1995-2002 by Frederic Lepied, France. <Lepied@XFree86.org>
* Copyright 2002-2007 by Ping Cheng, Wacom Technology. <pingc@wacom.com>
*
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of Frederic Lepied not be used in
- * advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission. Frederic Lepied makes no
- * representations about the suitability of this software for any purpose. It
- * is provided "as is" without express or implied warranty.
- *
- * FREDERIC LEPIED DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
- * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- * EVENT SHALL FREDERIC LEPIED BE LIABLE FOR ANY SPECIAL, INDIRECT OR
- * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
- * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
- * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- * PERFORMANCE OF THIS SOFTWARE.
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
*
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#ifndef __XF86_XF86WACOM_H