Date: Saturday, November 10, 2018 @ 00:50:54 Author: foutrelis Revision: 338889
archrelease: copy trunk to staging-x86_64 Added: xf86-input-elographics/repos/staging-x86_64/ xf86-input-elographics/repos/staging-x86_64/PKGBUILD (from rev 338888, xf86-input-elographics/trunk/PKGBUILD) xf86-input-elographics/repos/staging-x86_64/git-fixes.patch (from rev 338888, xf86-input-elographics/trunk/git-fixes.patch) -----------------+ PKGBUILD | 35 +++++++++++++++++ git-fixes.patch | 107 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 142 insertions(+) Copied: xf86-input-elographics/repos/staging-x86_64/PKGBUILD (from rev 338888, xf86-input-elographics/trunk/PKGBUILD) =================================================================== --- staging-x86_64/PKGBUILD (rev 0) +++ staging-x86_64/PKGBUILD 2018-11-10 00:50:54 UTC (rev 338889) @@ -0,0 +1,35 @@ +#Maintainer: Jan de Groot <j...@archlinux.org> + +pkgname=xf86-input-elographics +pkgver=1.4.1 +pkgrel=8 +pkgdesc="X.org Elographics TouchScreen input driver" +arch=(x86_64) +license=('custom') +url="https://xorg.freedesktop.org/" +depends=('glibc') +makedepends=('xorg-server-devel' 'X-ABI-XINPUT_VERSION=24.1' 'resourceproto' 'scrnsaverproto') +conflicts=('xorg-server<1.19' 'X-ABI-XINPUT_VERSION<24.1' 'X-ABI-XINPUT_VERSION>=25') +source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2 + git-fixes.patch) +sha256sums=('a21af744d57f158e6dff9d60a68aaac46b8d726d602911940cb61f4d6bb2c6a4' + '2fdb0abb60cf966b905802f9aa3af3e858644a9b9723dcdce462047e83872826') + +prepare() { + cd ${pkgname}-${pkgver} + patch -Np1 -i ../git-fixes.patch +} + +build() { + cd ${pkgname}-${pkgver} + ./configure --prefix=/usr + make +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} Copied: xf86-input-elographics/repos/staging-x86_64/git-fixes.patch (from rev 338888, xf86-input-elographics/trunk/git-fixes.patch) =================================================================== --- staging-x86_64/git-fixes.patch (rev 0) +++ staging-x86_64/git-fixes.patch 2018-11-10 00:50:54 UTC (rev 338889) @@ -0,0 +1,107 @@ +From 0d3ec2e97c99431cdbaea8e958a75ff2e748da41 Mon Sep 17 00:00:00 2001 +From: Jaska Kivela <ja...@kivela.net> +Date: Wed, 16 Jan 2013 11:51:04 +0200 +Subject: Added axis inversion functionality. + +The module would previously log a message if min > max, but not do anything +about it. Keep the original min/max around, swap on-the-fly. + +Signed-off-by: Jaska Kivela <ja...@kivela.net> +Reviewed-by: Peter Hutterer <peter.hutte...@who-t.net> +Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +diff --git a/src/xf86Elo.c b/src/xf86Elo.c +index cb1699e..c37cf9a 100644 +--- a/src/xf86Elo.c ++++ b/src/xf86Elo.c +@@ -360,6 +360,22 @@ xf86EloReadInput(InputInfoPtr pInfo) + cur_y = WORD_ASSEMBLY(priv->packet_buf[5], priv->packet_buf[6]); + state = priv->packet_buf[2] & 0x07; + ++ DBG(5, ErrorF("ELO got: x(%d), y(%d), %s\n", ++ cur_x, cur_y, ++ (state == ELO_PRESS) ? "Press" : ++ ((state == ELO_RELEASE) ? "Release" : "Stream"))); ++ ++ if (priv->min_y > priv->max_y) { ++ /* inverted y axis */ ++ cur_y = priv->max_y - cur_y + priv->min_y; ++ } ++ ++ if (priv->min_x > priv->max_x) { ++ /* inverted x axis */ ++ cur_x = priv->max_x - cur_x + priv->min_x; ++ } ++ ++ + /* + * Send events. + * +@@ -676,6 +692,7 @@ xf86EloControl(DeviceIntPtr dev, + unsigned char reply[ELO_PACKET_SIZE]; + Atom btn_label; + Atom axis_labels[2] = { 0, 0 }; ++ int x0, x1, y0, y1; + + switch(mode) { + +@@ -719,17 +736,27 @@ xf86EloControl(DeviceIntPtr dev, + return !Success; + } + else { ++ ++ /* Correct the coordinates for possibly inverted axis. ++ Leave priv->variables untouched so we can check for ++ inversion on incoming events. ++ */ ++ y0 = min(priv->min_y, priv->max_y); ++ y1 = max(priv->min_y, priv->max_y); ++ x0 = min(priv->min_x, priv->max_x); ++ x1 = max(priv->min_x, priv->max_x); ++ + /* I will map coordinates myself */ + InitValuatorAxisStruct(dev, 0, + axis_labels[0], +- priv->min_x, priv->max_x, ++ x0, x1, + 9500, + 0 /* min_res */, + 9500 /* max_res */, + Absolute); + InitValuatorAxisStruct(dev, 1, + axis_labels[1], +- priv->min_y, priv->max_y, ++ y0, y1, + 10500, + 0 /* min_res */, + 10500 /* max_res */, +-- +cgit v0.10.2 +From c666c78c764d0b97fa25bd9f0796a83b77761f7d Mon Sep 17 00:00:00 2001 +From: Peter Hutterer <peter.hutte...@who-t.net> +Date: Wed, 30 Jan 2013 11:47:03 +1000 +Subject: Handle DEVICE_ABORT on input ABI 19.1 + +Don't do anything, but don't print a warning either. + +Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +diff --git a/src/xf86Elo.c b/src/xf86Elo.c +index c37cf9a..ef2186f 100644 +--- a/src/xf86Elo.c ++++ b/src/xf86Elo.c +@@ -875,6 +875,11 @@ xf86EloControl(DeviceIntPtr dev, + DBG(2, ErrorF("Done\n")); + return Success; + ++#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) * 100 + GET_ABI_MINOR(ABI_XINPUT_VERSION) >= 1901 ++ case DEVICE_ABORT: ++ return Success; ++#endif ++ + default: + ErrorF("unsupported mode=%d\n", mode); + return BadValue; +-- +cgit v0.10.2 +