You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

106 lines
3.3 KiB

# --- SDE-COPYRIGHT-NOTE-BEGIN ---
# This copyright note is auto-generated by ./scripts/Create-CopyPatch.
#
# Filename: package/.../xf86-input-hyperpen/0001-Cope-with-XINPUT-ABI-7.patch
# Copyright (C) 2010 The OpenSDE Project
#
# More information can be found in the files COPYING and README.
#
# This patch file is dual-licensed. It is available under the license the
# patched project is licensed under, as long as it is an OpenSource license
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or 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.
# --- SDE-COPYRIGHT-NOTE-END ---
From 763a61bf5122d176fe9f62693c4a8631570a99aa Mon Sep 17 00:00:00 2001
From: Peter Hutterer <peter.hutterer@who-t.net>
Date: Fri, 17 Jul 2009 14:28:42 +1000
Subject: [PATCH] Cope with XINPUT ABI 7.
---
src/xf86HyperPen.c | 24 ++++++++++++++++++++++--
1 files changed, 22 insertions(+), 2 deletions(-)
diff --git a/src/xf86HyperPen.c b/src/xf86HyperPen.c
index bd630a5..3920a04 100644
--- a/src/xf86HyperPen.c
+++ b/src/xf86HyperPen.c
@@ -719,6 +719,9 @@ xf86HypOpenDevice(DeviceIntPtr pHyp)
{
LocalDevicePtr local = (LocalDevicePtr)pHyp->public.devicePrivate;
HyperPenDevicePtr priv = (HyperPenDevicePtr)PRIVATE(pHyp);
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7
+ Atom axis_labels[3] = { 0 };
+#endif
if (xf86HypOpen(local) != Success) {
if (local->fd >= 0) {
@@ -730,6 +733,9 @@ xf86HypOpenDevice(DeviceIntPtr pHyp)
/* Set the real values */
InitValuatorAxisStruct(pHyp,
0,
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7
+ axis_labels[0],
+#endif
0, /* min val */
priv->hypXSize, /* max val */
LPI2CPM(priv->hypRes), /* resolution */
@@ -737,6 +743,9 @@ xf86HypOpenDevice(DeviceIntPtr pHyp)
LPI2CPM(priv->hypRes)); /* max_res */
InitValuatorAxisStruct(pHyp,
1,
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7
+ axis_labels[1],
+#endif
0, /* min val */
priv->hypYSize, /* max val */
LPI2CPM(priv->hypRes), /* resolution */
@@ -744,6 +753,9 @@ xf86HypOpenDevice(DeviceIntPtr pHyp)
LPI2CPM(priv->hypRes)); /* max_res */
InitValuatorAxisStruct(pHyp,
2,
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7
+ axis_labels[2],
+#endif
0, /* min val */
511, /* max val */
512, /* resolution */
@@ -765,8 +777,10 @@ xf86HypProc(DeviceIntPtr pHyp, int what)
int loop;
LocalDevicePtr local = (LocalDevicePtr)pHyp->public.devicePrivate;
HyperPenDevicePtr priv = (HyperPenDevicePtr)PRIVATE(pHyp);
-
-
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7
+ Atom btn_labels[4] = { 0 };
+ Atom axis_labels[3] = { 0 };
+#endif
switch (what) {
case DEVICE_INIT:
@@ -779,6 +793,9 @@ xf86HypProc(DeviceIntPtr pHyp, int what)
if (InitButtonClassDeviceStruct(pHyp,
nbbuttons,
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7
+ btn_labels,
+#endif
map) == FALSE) {
ErrorF("unable to allocate Button class device\n");
return !Success;
@@ -802,6 +819,9 @@ xf86HypProc(DeviceIntPtr pHyp, int what)
if (InitValuatorClassDeviceStruct(pHyp,
nbaxes,
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7
+ axis_labels,
+#endif
#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 3
xf86GetMotionEvents,
#endif
--
1.6.5.3