1
commit d5ff9d8b0b186cf39695df84a10984eac559b746
2
Author: Peter Hutterer <peter.hutterer@who-t.net>
3
Date: Tue Jun 12 13:46:34 2012 +1000
7
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
9
commit c1aae820601a911432c64938f03eab62bafaab2f
10
Author: Peter Hutterer <peter.hutterer@who-t.net>
11
Date: Fri May 18 09:38:50 2012 +1000
15
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
17
commit 7ccca8e7d8fbf2ccb5a2dbbfbf06ff4dbd6b7149
18
Author: Peter Hutterer <peter.hutterer@who-t.net>
19
Date: Thu May 17 12:10:04 2012 +1000
21
Don't allow for scroll distances of 0 (#49965)
23
It'll either hang the server or blow up with divisions by 0, whichever one
26
X.Org Bug 49965 <http://bugs.freedesktop.org/show_bug.cgi?id=49965>
28
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
29
Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
30
(cherry picked from commit 6d47d334d8a876e7e094306c313246b87016b78a)
32
commit f8d970e191e6df05a8f2c26afdeea3e27b941a62
33
Author: Peter Hutterer <peter.hutterer@who-t.net>
34
Date: Thu May 17 11:02:02 2012 +1000
36
Reset hw->x/y to INT_MIN and skip HandleState until we have x/y events
38
The driver assumes x/y is always valid but after coming from a resume we may
39
get a few events with either ABS_X or ABS_Y (not both). Thus we process with
40
hw->x == 0 and hw->y == somevalue, causing cursor jumps when calculating
41
deltas whenver the real hw->x comes in.
43
Fix this by resetting hw->x/y to INT_MIN and skip state processing until
44
both axes are available.
46
For clickpads, this means handling of data will be delayed until we get
47
at least one motion on each axis. Button presses won't be recognised either
48
until that happens. It requires some skill to not trigger motion on both
49
axes, even more to press a button without doing so.
51
For non-clickpads, handling of motion events will be delayed likewise. If a
52
physical button is pressed immediately after resume we have to assume deltas
54
- If the next event is a new touch, it will have ABS_X/ABS_Y set anyway
55
- If the finger was already down, a button event is generated, and the
56
finger has generated ABS_X or ABS_Y only before the event, the next event
57
containing the missing data will cause a jump. The fix for this is more
58
invasive and this is quite a corner-case.
60
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
61
Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
62
(cherry picked from commit cd569377cda9b5a4ee00c0137db14f625c76c40f)
64
commit 739175d198372a3226ce061b118d8fe5bbc8f6bf
65
Author: Chase Douglas <chase.douglas@canonical.com>
66
Date: Wed May 16 07:49:25 2012 -0700
68
Reset open slots array on device disable
70
The open slots array is used for clickpad cumulative delta computation.
71
If the array is not reset and becomes corrupted during the device
72
disable/enable cycle, the cumulative deltas may be wrong. This manifests
73
as jumpy cursor behavior on some clickpads after suspend/resume.
75
Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
76
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
77
(cherry picked from commit 0054b144f3daf00e46a35b2f165befb209df94fc)
79
commit 67a02d676c96d5b3d4729290cd96af0201eb76bb
80
Author: Chun Yang <Chuck.Yang@gmail.com>
81
Date: Tue May 15 14:51:42 2012 -0500
83
Fix coasting for negative ScrollDelta
85
Fix the coasting direction for when VertScrollDelta or HorizScrollDelta is
88
Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=49966
90
Regression introduced in 0de4445ff8e75aab208faf6383e76045934c6720
92
Signed-off-by: Chun Yang <Chuck.Yang@gmail.com>
93
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
94
(cherry picked from commit 53557a5cab1e253dc8f4393207954ae0fe76068f)
96
commit 23e87b57bb874326c88a7ad7292bec51959fb876
97
Author: Chase Douglas <chase.douglas@canonical.com>
98
Date: Mon May 14 10:20:01 2012 -0700
100
Ignore pre-existing touches
102
If a touch is physically active when the device is enabled, then all
103
events for that touch must be ignored. In particular, we cannot close
104
the touch or we will decrement touch count counters below zero. If these
105
counters go below zero memory corruption can occur.
107
Note that a device is disabled and enabled every time the user types on
108
the keyboard if synclient is used to disable the trackpad while typing.
109
This is a very common option.
111
Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
112
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
113
(cherry picked from commit 55fc42e7c9b4948cadd4f98ef7b6a3b12e268e3e)
115
commit 23065a974e5dcdf0d6a436a0547bb7887d306a6f
116
Author: Peter Hutterer <peter.hutterer@who-t.net>
117
Date: Fri May 11 12:27:39 2012 +1000
119
Avoid out-of-bounds access by running num_active_touches < 0 (#49439)
121
If a touch is active during driver init, the slot will be set to
122
SLOTSTATE_CLOSE when it finishes. That could decrease num_active_touches to
123
less than 0, causing out-of-bounds access.
125
X.Org Bug 49439 <http://bugs.freedesktop.org/show_bug.cgi?id=49439>
127
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
128
Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
129
(cherry picked from commit 77d766b1d535dff9a27c7db343ede85d9f44850b)
1
131
commit e0f5688994baa85a8c658120681575cdd0ba2a58
2
132
Author: Peter Hutterer <peter.hutterer@who-t.net>
3
133
Date: Fri May 11 10:30:21 2012 +1000