Bug 23289 - 2-finger zoom/rotate support from Asus
Summary: 2-finger zoom/rotate support from Asus
Status: RESOLVED WONTFIX
Alias: None
Product: xorg
Classification: Unclassified
Component: Input/synaptics (show other bugs)
Version: unspecified
Hardware: Other All
: medium enhancement
Assignee: Peter Hutterer
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-08-13 12:06 UTC by Andrey Rahmatullin
Modified: 2011-04-11 02:56 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments
Forked "elantech" driver source (171.20 KB, application/x-gzip)
2009-08-13 12:07 UTC, Andrey Rahmatullin
no flags Details
Patched synaptics driver source (179.21 KB, application/x-gzip)
2009-08-13 12:08 UTC, Andrey Rahmatullin
no flags Details
Original synaptics driver source (151.66 KB, application/x-gzip)
2009-08-13 12:08 UTC, Andrey Rahmatullin
no flags Details
Proof of concept (34.30 KB, patch)
2009-08-14 11:30 UTC, Andrey Rahmatullin
no flags Details | Splinter Review

Description Andrey Rahmatullin 2009-08-13 12:06:42 UTC
Asus distribution of Xandros for their Eee PC contains patched synaptics driver and helper program which allow (or at least should allow) two finger zoom and rotate with supported touchpads. It also contains "xfree86-driver-elantech", which is the fork of synaptics driver and seems to provide the same functionality. These source packages are contained in ftp://ftp.asus.com.tw/pub/ASUS/EeePC/SourceCode/asus-1.7-gpl.part13.rar (xfree86-driver-elantech_0.14.7~git20070706-1asus10.tar.gz and xfree86-driver-synaptics_0.14.7~git20070706-2asus6.tar.gz; I can attach these files for ones who doesn't want to download a 0.5Gb file). As current Linux kernel part contains "compatibility with the proprietary X Elantech driver", I think this should work.
Comment 1 Andrey Rahmatullin 2009-08-13 12:07:43 UTC
Created attachment 28599 [details]
Forked "elantech" driver source
Comment 2 Andrey Rahmatullin 2009-08-13 12:08:12 UTC
Created attachment 28600 [details]
Patched synaptics driver source
Comment 3 Andrey Rahmatullin 2009-08-13 12:08:56 UTC
Created attachment 28601 [details]
Original synaptics driver source
Comment 4 Peter Hutterer 2009-08-13 18:47:43 UTC
From a quick look at it, it's GPL so we can't merge this into the upstream driver.

Without the history this will be fun to diff against previous versions to figure out what has changed.
Comment 5 Andrey Rahmatullin 2009-08-13 21:13:03 UTC
(In reply to comment #4)
> From a quick look at it, it's GPL so we can't merge this into the upstream
> driver.
I know, but I hope it can be discussed with the author (tom_lin <tom_lin@elantech.com.tw>). See also http://lists.alioth.debian.org/pipermail/debian-eeepc-devel/2009-January/001771.html for some notes about his attitude.


> Without the history this will be fun to diff against previous versions to
> figure out what has changed.
First of all after downloading I diffed xfree86-driver-synaptics_0.14.7~git20070706.orig.tar.gz to xfree86-driver-synaptics_0.14.7~git20070706-2asus6.tar.gz and it looks promising (some code for zoom detection and a helper program).
Comment 6 Andrey Rahmatullin 2009-08-14 11:30:27 UTC
Created attachment 28638 [details] [review]
Proof of concept

This is a diff of xfree86-driver-synaptics_0.14.7~git20070706-2asus6, slightly modified and adapted to synaptics 1.1.3. Rotate support was commented out by upstream, but zoom works. I think it may serve as a proof of concept.
Comment 7 Peter Hutterer 2009-08-27 00:00:41 UTC
CC'ing henrik, he's been working on multi-touch support in synaptics.

The approach here is a hack. I'd rather have it integrated properly so that we don't need to have a custom shm-app running that then calls another process to send a key event...

[shm is pretty much gone from upstream anyway.]
Comment 8 Peter Hutterer 2011-04-11 02:56:32 UTC
This is a WONTFIX. Gesture support should be integrated on top of the XI 2.1 multitouch support that we're currently working on.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.