[Cc-ing upstream author to discuss that feature request (and quoting the full mail to give him the rationale behind the request :) )]
On Thu, Sep 15, 2005 at 10:38:59PM +0100, Isaac Wilcox wrote: > Package: xfree86-driver-synaptics > Version: 0.14.3-1 > Severity: normal > > Hi there, > > Firstly, thanks for a very handy driver - it's let me use my touchpad in > exactly the way I want for many moons :) > > Unfortunately, version 0.14.3 introduced a change that broke my setup. > My settings are: > > Option "TouchpadOff" "2" > Option "CircularScrolling" "on" > Option "VertScrollDelta" "30" > > Reasoning: My ThinkPad has both a stick mouse and a Synaptics touchpad. > I find the touchpad impossible to use as a mouse (just my personal > preference) and hit it a lot when typing, whereas I can use the ThinkPad > stick mouse very easily. But because there's no physical scroll wheel > built into my ThinkPad, the only way I can scroll is to use the > VertScroll and CircularScrolling of the touchpad. I set up the regions > of my touchpad so that it's very unlikely that an accidental brush will > be interpreted as mouse movement (which has worked flawlessly so far). > To prevent accidental taps from being interpreted as button presses, I > also set TouchpadOff to 2. So, in my setup, the touchpad basically acts > *only* as an intelligent scroll wheel only, and this worked great for > me... > > ...until version 0.14.3 came out, whose changelog states: > - Also disable scrolling when the TouchpadOff parameter is set to 2. > It doesn't make any sense to disable tapping but not scrolling as a > response to keyboard activity. > > This change breaks my setup because I can't use the touchpad to scroll > while disabling tapping. > > Solutions that present themselves are: > > a) revert this change completely (probably annoying someone else who > prefers the opposite behaviour), or > > b) leave scrolling enabled with TouchpadOff=2 - *unless* syndaemon is > involved, in which case disable both scroll and tap when typing, or > > c) invent a "TouchpadOff=4" setting for people who want scrolling to > work but tapping to be ignored? d) option a) + since the above changelog entry seems related to syndaemon usage, change syndaemon to set CircularScrolling=0 and {Vert,Horiz}ScrollDelta=0 as well as TouchpadOff=2 (maybe adding options to choose what to disable and what not) The attached (trivial) patch resumes the old behaviour associated with TouchpadOff=3 (option c) but I wrote it before thinking of option (d) that I actually prefer. Peter, your thoughts about it? Kind regards. -- mattia :wq!
diff -urp -xdebian -xMakefile synaptics-0.14.3/manpages/synaptics.5 synaptics-0.14.3.dirty/manpages/synaptics.5 --- synaptics-0.14.3/manpages/synaptics.5 2005-07-22 00:35:41.000000000 +0200 +++ synaptics-0.14.3.dirty/manpages/synaptics.5 2005-09-16 13:00:31.084323000 +0200 @@ -189,6 +189,7 @@ l l. 0 Touchpad is enabled 1 Touchpad is switched off 2 Only tapping and scrolling is switched off +3 Only tapping is switched off .TE .TP \fBGuestMouseOff\fR (Bool) diff -urp -xdebian -xMakefile synaptics-0.14.3/synaptics.c synaptics-0.14.3.dirty/synaptics.c --- synaptics-0.14.3/synaptics.c 2005-07-10 00:09:40.000000000 +0200 +++ synaptics-0.14.3.dirty/synaptics.c 2005-09-16 12:53:53.695487750 +0200 @@ -936,7 +936,7 @@ SelectTapButton(SynapticsPrivate *priv, { TapEvent tap; - if (priv->synpara->touchpad_off == 2) { + if (priv->synpara->touchpad_off == 2 || priv->synpara->touchpad_off == 3) { priv->tap_button = 0; return; } diff -urp -xdebian -xMakefile synaptics-0.14.3/synclient.c synaptics-0.14.3.dirty/synclient.c --- synaptics-0.14.3/synclient.c 2005-07-10 00:09:40.000000000 +0200 +++ synaptics-0.14.3.dirty/synclient.c 2005-09-16 12:34:30.522794000 +0200 @@ -76,7 +76,7 @@ static struct Parameter params[] = { DEFINE_PAR("UpDownRepeat", updown_button_repeat, PT_BOOL, 0, 1), DEFINE_PAR("LeftRightRepeat", leftright_button_repeat, PT_BOOL, 0, 1), DEFINE_PAR("ScrollButtonRepeat", scroll_button_repeat, PT_INT, SBR_MIN , SBR_MAX), - DEFINE_PAR("TouchpadOff", touchpad_off, PT_INT, 0, 2), + DEFINE_PAR("TouchpadOff", touchpad_off, PT_INT, 0, 3), DEFINE_PAR("GuestMouseOff", guestmouse_off, PT_BOOL, 0, 1), DEFINE_PAR("LockedDrags", locked_drags, PT_BOOL, 0, 1), DEFINE_PAR("RTCornerButton", tap_action[RT_TAP], PT_INT, 0, SYN_MAX_BUTTONS),
signature.asc
Description: Digital signature