Take a look at our
ThinkPads.com HOME PAGE
For those who might want to contribute to the blog, start here: Editors Alley Topic
Then contact Bill with a Private Message
ThinkPads.com HOME PAGE
For those who might want to contribute to the blog, start here: Editors Alley Topic
Then contact Bill with a Private Message
two-finger scrolling on T43 under XP?
good job yak, it works, for the most part.
Sometimes it gets confused when I scroll down and then up, and back down really fast and causes the direction to go reverse.
Also- it doesnt work in Microsoft OneNote 2007 at all, or really horribly. It scrolls maybe 1-2 lines after I make around 5 circles. It doesn't do this in any other office 2007 program. Even the side scrolling from the script does not work - I have to re-enable virtual scrolling from the software to scroll smoothly in OneNote.
Is there a line that allows you to change the side that enables the chiral scrolling so I can leave virtual scrolling on and start from the left?
Sometimes it gets confused when I scroll down and then up, and back down really fast and causes the direction to go reverse.
Also- it doesnt work in Microsoft OneNote 2007 at all, or really horribly. It scrolls maybe 1-2 lines after I make around 5 circles. It doesn't do this in any other office 2007 program. Even the side scrolling from the script does not work - I have to re-enable virtual scrolling from the software to scroll smoothly in OneNote.
Is there a line that allows you to change the side that enables the chiral scrolling so I can leave virtual scrolling on and start from the left?
I plan to write a proper application in C++ based on the script prototype. It will allow the user to choose the side (or both) that enables the scroll. Stay tuned.
I'll try to improve the detection of reverse motion but can't promise anything. I noticed that it works better if you do larger circles with your finger.
I'll try to improve the detection of reverse motion but can't promise anything. I noticed that it works better if you do larger circles with your finger.
ThinkPad™ X201 / AFFS-120
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
i watched the chiralmotion video from synaptics and there are two ways to activate it, one is similar to what is being done now and the other is having two fingers start rotating. Is that possible right now with the current drivers?
They said these features are available now, but where are they? Nothing from my manufacturer, nothing on windows updates, nothing new with their drivers.
They said these features are available now, but where are they? Nothing from my manufacturer, nothing on windows updates, nothing new with their drivers.
Looking at their website it looks like they are mainly targeting portable devices with this. It's neither in the driver from Lenovo nor in the generic driver from Synaptics. That's why I think the only way to get it is to do it yourself.
Two fingers you say? Well, that's a bit problematic as we switched in this thread from two finger scrolling to chiral scrolling just because of that - no way to detect two fingers on T60 (and probably others).
Two fingers you say? Well, that's a bit problematic as we switched in this thread from two finger scrolling to chiral scrolling just because of that - no way to detect two fingers on T60 (and probably others).
ThinkPad™ X201 / AFFS-120
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
I googled some more and found this:
http://www.laptopvideo2go.com/forum/ind ... 17890&st=0
Someone is posting a modified driver there that supports ChiralMotion and some other stuff, including two fingers gestures. I installed it and it somewhat works although I couldn't get the ChiralMotion to work in Firefox and I lost the TrackPoint scrolling of course.
Right now I'm looking at the latest drivers from Lenovo. Searching through the files indeed show occurrences of "Chiral" string. Moreover, it seems that all that guy did was to modify one of the .inf files. I'm looking at them right now. Maybe it's not so hard to enable it in Lenovo drivers.
http://www.laptopvideo2go.com/forum/ind ... 17890&st=0
Someone is posting a modified driver there that supports ChiralMotion and some other stuff, including two fingers gestures. I installed it and it somewhat works although I couldn't get the ChiralMotion to work in Firefox and I lost the TrackPoint scrolling of course.
Right now I'm looking at the latest drivers from Lenovo. Searching through the files indeed show occurrences of "Chiral" string. Moreover, it seems that all that guy did was to modify one of the .inf files. I'm looking at them right now. Maybe it's not so hard to enable it in Lenovo drivers.
ThinkPad™ X201 / AFFS-120
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
http://www.youtube.com/watch?v=ShmqUHR7RO0
It does look like it was double finger rotating, but that video is old, so who knows
http://gizmodo.com/5057121/synaptics-ad ... -trackpads
"Tons of computers now feature compatible Synaptics trackpads, including the Voodoo Envy 133. These gestures are available now and can be enabled with a quick update to the OEM-included software."
http://lifehacker.com/5057317/synaptics ... -touchpads
"Synaptics says that more than 100 apps currently support the new motions, with more to come. To get in on the new scrolling, check with your laptop manufacturers' support site (or Windows Update) to see if an updated driver for your model is available. "
So is it a firmware update and not just drivers?
Have you looked into the more recent drivers:
http://www.laptopvideo2go.com/forum/ind ... opic=15103
It does look like it was double finger rotating, but that video is old, so who knows
http://gizmodo.com/5057121/synaptics-ad ... -trackpads
"Tons of computers now feature compatible Synaptics trackpads, including the Voodoo Envy 133. These gestures are available now and can be enabled with a quick update to the OEM-included software."
http://lifehacker.com/5057317/synaptics ... -touchpads
"Synaptics says that more than 100 apps currently support the new motions, with more to come. To get in on the new scrolling, check with your laptop manufacturers' support site (or Windows Update) to see if an updated driver for your model is available. "
So is it a firmware update and not just drivers?
Have you looked into the more recent drivers:
http://www.laptopvideo2go.com/forum/ind ... opic=15103
I tested the latest 11.1.4 drivers and those modded drivers. The 11.1.4 drivers didnt change anything. The modded drivers do work, but like you said, not in firefox... which is weird. It worked great in onenote, whereas the script didnt.yak wrote:I googled some more and found this:
http://www.laptopvideo2go.com/forum/ind ... 17890&st=0
Someone is posting a modified driver there that supports ChiralMotion and some other stuff, including two fingers gestures. I installed it and it somewhat works although I couldn't get the ChiralMotion to work in Firefox and I lost the TrackPoint scrolling of course.
Right now I'm looking at the latest drivers from Lenovo. Searching through the files indeed show occurrences of "Chiral" string. Moreover, it seems that all that guy did was to modify one of the .inf files. I'm looking at them right now. Maybe it's not so hard to enable it in Lenovo drivers.
I got the two and three finger Synaptics gestures working in the Lenovo drivers.
Two values have to be added to the registry following by a reboot.
Go to:
and create a new "CapabilitiesMask" DWORD value there. Set it to 0xFFFFFFFF.
Now go to:
and create a new "DisplayGestures" DWORD value there. Set it to 1.
Reboot (really needed because the CapabilitiesMask is read by the driver upon loading only).
Go to TouchPad settings, you should found the new settings in the list on the left.
These gestures allow you to assign some actions to two/three finger swipes in various directions.
ChiralMotion requires some more fiddling, still haven't figured it out.
Two values have to be added to the registry following by a reboot.
Go to:
Code: Select all
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\SynTP\Parameters
Now go to:
Code: Select all
HKEY_LOCAL_MACHINE\Software\Synaptics\SynTPCpl
Reboot (really needed because the CapabilitiesMask is read by the driver upon loading only).
Go to TouchPad settings, you should found the new settings in the list on the left.
These gestures allow you to assign some actions to two/three finger swipes in various directions.
ChiralMotion requires some more fiddling, still haven't figured it out.
ThinkPad™ X201 / AFFS-120
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
I tested out the hacked asus drivers a little bit more.
the chiral scroll seems to work with everything BUT firefox and chrome (webkit stuff) - it works in Internet Explorer. It is sporadic in google chrome (may scroll one full page sometimes) unless you go very slow. It doesn't even work in firefox. For now, I am using the old chiral script for firefox\chrome and the built in chiral in the hacked asus drivers together. To get the asus chiral to work, I put two fingers down and start to rotate, when I see the chiral icon, I let go of one finger (having two fingers rotating seems to jump a lot) and start scrolling. To get the old script to work, I move a finger to the right side to activate the script and start rotating.
A bit messy and a lot of un-needed stuff, but if we can get it to work with firefox it should be great.
Good luck yak, I hope you can figure it out!
the chiral scroll seems to work with everything BUT firefox and chrome (webkit stuff) - it works in Internet Explorer. It is sporadic in google chrome (may scroll one full page sometimes) unless you go very slow. It doesn't even work in firefox. For now, I am using the old chiral script for firefox\chrome and the built in chiral in the hacked asus drivers together. To get the asus chiral to work, I put two fingers down and start to rotate, when I see the chiral icon, I let go of one finger (having two fingers rotating seems to jump a lot) and start scrolling. To get the old script to work, I move a finger to the right side to activate the script and start rotating.
A bit messy and a lot of un-needed stuff, but if we can get it to work with firefox it should be great.
Good luck yak, I hope you can figure it out!
I did a search on virtual scrolling not working in firefox and most of the results came up that older versions of the synaptics drivers do not work well, or at all, in firefox. The hacked acer drivers are labeled as 6.3, isn't that ancient? or a mislabel?
So I am guessing if you can enable all the features in the latest drivers, it *should* work in all browsers
edit: nm, asus drivers are 10.2.4
So I am guessing if you can enable all the features in the latest drivers, it *should* work in all browsers
edit: nm, asus drivers are 10.2.4
Still nothing. Something must have changed between v10 and v11 in the way the chiralmotion is enabled. Still looking...
OTOH, you may want to have a look at the Program Files\Synaptics\SynTP\TP4table.dat file. It is a text file with various application specific definitions. Firefox could be added there. One of the settings is the way the driver does the scrolling. Maybe one of the non-standard ways would work.
However, I'm not sure if this at all applies to chiralmotion, especially since the normal virtual scrolling works with no problems in Firefox.
If we can't get it to work in Firefox, there's not much in it for me since that's the reason I'm looking for a good scrolling solution in the first place. I could as well go and improve my solution (rewrite in c++, improve the algorithm and support for some apps).
OTOH, you may want to have a look at the Program Files\Synaptics\SynTP\TP4table.dat file. It is a text file with various application specific definitions. Firefox could be added there. One of the settings is the way the driver does the scrolling. Maybe one of the non-standard ways would work.
However, I'm not sure if this at all applies to chiralmotion, especially since the normal virtual scrolling works with no problems in Firefox.
If we can't get it to work in Firefox, there's not much in it for me since that's the reason I'm looking for a good scrolling solution in the first place. I could as well go and improve my solution (rewrite in c++, improve the algorithm and support for some apps).
ThinkPad™ X201 / AFFS-120
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
Yea, I think its much more than registry.
I saved two full registry entries that I found in the .inf:
I installed the latest 11 version, installed the two registry files and rebooted. The registry actually enabled Two and three finger gestures - but I dont think they work. Still no sign of Chiral in the options.
Also I do notice that in v10 there is:
HKLM,SOFTWARE\Synaptics\SynTPCpl\Controls\4Scrolling\Chiral
While in v11 I see
HKLM,SOFTWARE\Synaptics\SynTPCpl\Controls\4Chiral Scrolling
I saved two full registry entries that I found in the .inf:
Code: Select all
; ChiralMotion
HKLM,System\CurrentControlSet\Services\SynTP\Parameters,CapabilitiesMask,0x00010001,0xFFFFFFFF
; Enable Chiral motion in horizontal scroll zone
HKLM,SOFTWARE\Synaptics\SynTPEnh\ZoneConfig\Defaults\Horizontal Scrolling,ScrollingMechanism,0x00010001,2
; Enable Chiral motion in vertical scroll zone
HKLM,SOFTWARE\Synaptics\SynTPEnh\ZoneConfig\Defaults\Vertical Scrolling,ScrollingMechanism,0x00010001,2
HKLM,SOFTWARE\Synaptics\SynTPCpl\Controls\4Scrolling\Chiral,Tab stop index,0x00010001,0x00000006
HKLM,SOFTWARE\Synaptics\SynTPCpl\Controls\4Scrolling\Chiral,Type,0x00010001,0x00000002
HKLM,SOFTWARE\Synaptics\SynTPCpl\Controls\4Scrolling\Chiral,Top,0x00010001,0x00000079
HKLM,SOFTWARE\Synaptics\SynTPCpl\Controls\4Scrolling\Chiral,Left,0x00010001,0x00000155
HKLM,SOFTWARE\Synaptics\SynTPCpl\Controls\4Scrolling\Chiral,Height,0x00010001,0x00000021
HKLM,SOFTWARE\Synaptics\SynTPCpl\Controls\4Scrolling\Chiral,Width,0x00010001,0x000000dc
HKLM,SOFTWARE\Synaptics\SynTPCpl\Controls\4Scrolling\Chiral,CaptionID,0x00010001,0x000006ef
HKLM,SOFTWARE\Synaptics\SynTPCpl\Controls\4Scrolling\Chiral,Ioctl,0x00010001,0x01000bcc
HKLM,SOFTWARE\Synaptics\SynTPCpl\Controls\4Scrolling\Chiral,Tab stop index,0x00010001,0x00000005
HKLM,SOFTWARE\Synaptics\SynTPCpl\Controls\4Scrolling\Chiral,HelpID,0x00010001,0x000000e2
HKLM,SOFTWARE\Synaptics\SynTPCpl\Controls\4Scrolling\Chiral,Dependencies,0x00000000,"OR 16780219 16780220"
I installed the latest 11 version, installed the two registry files and rebooted. The registry actually enabled Two and three finger gestures - but I dont think they work. Still no sign of Chiral in the options.
Also I do notice that in v10 there is:
HKLM,SOFTWARE\Synaptics\SynTPCpl\Controls\4Scrolling\Chiral
While in v11 I see
HKLM,SOFTWARE\Synaptics\SynTPCpl\Controls\4Chiral Scrolling
Yes, I've been through all that already.
The "HKLM\Software\Synaptics\SynTPCpl\Controls" key defines the whole settings tree of the Synaptics TouchPad control panel. The keys defined there are not fixed. The control panel dll (SynTPCpl.dll) parses all keys and values in there and builds the tree we see in the TouchPad settings window. Every control in there has a Ioctl value which is most probably used with conjunction with the DeviceIoControl() WinAPI function to tell the underlaying device driver (SynTP.sys) when a setting in being set. The SynTPCpl.dll also uses this value to hide some functions. Like with the DisplayGestures registry value that shows the two and three finger gestures (if the driver's CapabilityMask is set too).
Notice how the v11 driver has both "SynTPCpl\Controls\4Scrolling" and "SynTPCpl\Controls\4Chiral scrolling" which are very similar. In fact, they both define the "Virtual scrolling" node of the options tree in the control panel, but only the "4Chiral scrolling" includes the ChiralMotion checkbox. They also have different Ioctl values which allow the SynTPCpl.dll to hide one and show the other.
What must exist is a switch, a registry value I presume, that hides the "4Scrolling" and shows the "4Chiral scrolling" node.
There was no such switch in v10 since there was no second scrolling node in the registry. The ChiralMotion was there, it just wasn't added to the registry defining the control panel UI.
What that guy did, was to take this part of v11 registry and put it into v10.
And about that TP4table.dat file, I just saw this file in only in Lenovo drivers so it's not much help, at least at this point.
The "HKLM\Software\Synaptics\SynTPCpl\Controls" key defines the whole settings tree of the Synaptics TouchPad control panel. The keys defined there are not fixed. The control panel dll (SynTPCpl.dll) parses all keys and values in there and builds the tree we see in the TouchPad settings window. Every control in there has a Ioctl value which is most probably used with conjunction with the DeviceIoControl() WinAPI function to tell the underlaying device driver (SynTP.sys) when a setting in being set. The SynTPCpl.dll also uses this value to hide some functions. Like with the DisplayGestures registry value that shows the two and three finger gestures (if the driver's CapabilityMask is set too).
Notice how the v11 driver has both "SynTPCpl\Controls\4Scrolling" and "SynTPCpl\Controls\4Chiral scrolling" which are very similar. In fact, they both define the "Virtual scrolling" node of the options tree in the control panel, but only the "4Chiral scrolling" includes the ChiralMotion checkbox. They also have different Ioctl values which allow the SynTPCpl.dll to hide one and show the other.
What must exist is a switch, a registry value I presume, that hides the "4Scrolling" and shows the "4Chiral scrolling" node.
There was no such switch in v10 since there was no second scrolling node in the registry. The ChiralMotion was there, it just wasn't added to the registry defining the control panel UI.
What that guy did, was to take this part of v11 registry and put it into v10.
And about that TP4table.dat file, I just saw this file in only in Lenovo drivers so it's not much help, at least at this point.
ThinkPad™ X201 / AFFS-120
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
I give up. I don't have enough free time to disassemble whole drivers to find it out.
I guess I'll focus on my own implementation.
Thanks to the modded driver I can observe how the original one works. I'll try to make my own work similarly to the Synaptics one.
I guess I'll focus on my own implementation.
Thanks to the modded driver I can observe how the original one works. I'll try to make my own work similarly to the Synaptics one.
ThinkPad™ X201 / AFFS-120
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
Now that you mentioned it I did some tests.
It turns out that there are a couple of more properties in the Synaptics API then there are documented in the API documentation. One of them, SP_ExtraFingerState, gives access to exactly that - the number of fingers currently on the touchpad! Possible values: 0-3
Still, this works for sure on the modded drivers. Still have to check how this relates to the official v11 drivers from Lenovo.
This means that both two finger scrolling as well as chiralmotion can now be done properly. Cool.
EDIT:
Installed the Lenovo drivers. Works, kind of. The CapabilitiesMask registry value has to be set, otherwise the API reports the TouchPad as uncapable of reporting multiple fingers. This is probably also true for the v10 drivers but the modded ones have it set by default. However, after it is set, max two fingers are reported. Three fingers are reported as one, at least here.
Two are enough for scrolling thou.
It turns out that there are a couple of more properties in the Synaptics API then there are documented in the API documentation. One of them, SP_ExtraFingerState, gives access to exactly that - the number of fingers currently on the touchpad! Possible values: 0-3
Still, this works for sure on the modded drivers. Still have to check how this relates to the official v11 drivers from Lenovo.
This means that both two finger scrolling as well as chiralmotion can now be done properly. Cool.
EDIT:
Installed the Lenovo drivers. Works, kind of. The CapabilitiesMask registry value has to be set, otherwise the API reports the TouchPad as uncapable of reporting multiple fingers. This is probably also true for the v10 drivers but the modded ones have it set by default. However, after it is set, max two fingers are reported. Three fingers are reported as one, at least here.
Two are enough for scrolling thou.
ThinkPad™ X201 / AFFS-120
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
-
- Junior Member
- Posts: 315
- Joined: Sun Mar 18, 2007 8:34 pm
- Location: Prague, Czech Republic
- Contact:
Tried, three fingers get reported on my T60 (in ExtraFingerState), but it's not very reliable, often gets reported as two or even one finger. It works best when the fingers are in a horizontal row.
Edit: A little more testing. Three fingers only work when in a horizontal row, and it's realiable in that form. Two fingers have some slight problems when not put horizontally or vertically, but even then it's enough not to have them very close together.
Finally T60 can get reasonable scrolling
Edit: A little more testing. Three fingers only work when in a horizontal row, and it's realiable in that form. Two fingers have some slight problems when not put horizontally or vertically, but even then it's enough not to have them very close together.
Finally T60 can get reasonable scrolling
T60 14" SXGA+ 9c T5600 3GB X1400 4965AGN MC8780 IR BT FPR DVDRW Alps XPP
Just came back here to post my observations and found Zender's post with exactly what I wanted to say.
Updated two finger scrolling script is on its way.
Updated two finger scrolling script is on its way.
ThinkPad™ X201 / AFFS-120
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
Here's the updated TwoFingerScroll.pyw Python script using the lately found possibility to read the number of fingers on the TouchPad.
TwoFingerScroll.pyw
It was tested on my T60. I wouldn't be surprised if it worked on T4x ThinkPads too. And of course other laptops with compatible TouchPads.
Read the requirements below carefully.
Header:
TwoFingerScroll.pyw
It was tested on my T60. I wouldn't be surprised if it worked on T4x ThinkPads too. And of course other laptops with compatible TouchPads.
Read the requirements below carefully.
Header:
Code: Select all
#
# TwoFingerScroll.pyw
#
# Version 1.4
# Copyright (c) 2008 Arkadiusz Wahlig
#
# Two finger scrolling for Synaptics TouchPad and Windows.
#
# Reference implemetation in Python. Should be rewritten in C# or simmilar language.
#
# Currently supports vertical scrolling only.
#
# Supports tapping to activate the right mouse button.
#
# Requirements:
#
# A compatible Synaptics TouchPad with drivers installed.
#
# Make sure the following value is set in registry (regedit.exe):
# HKLM\System\CurrentControlSet\Services\SynTP\Parameters\CapabilitiesMask =
# (DWORD) FFFFFFFF
# This enables support for multiple fingers.
#
# Python win32 extensions, download from:
# https://sourceforge.net/projects/pywin32/
#
# You will also have to run the
# <Python>\Lib\site-packages\win32com\client\makepy.py
# script and select the
# Synaptics Device Control Widgets, Version 1.0 (1.0)
# entry, to add the TouchPad library to Python.
#
ThinkPad™ X201 / AFFS-120
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
very nice you guys!
Although it still isnt smooth in onenote 2007- i am super confused why that program causes problems with scroll scripts but it works fine with chiralrotate and side virtual scrolling. Also, the scripts aren't active after awaking from sleep.
For now, Ill use both your 2-finger script (for everywhere else) and the hacked driver's chiral-rotate (while in onenote). Now I have three ways of scrolling! (side scroll, chiral, two-finger)
I still can't decide which one is more intuitive - I like chiral rotate since you never have to left your finger but double-finger is nice also.
I'm currently testing it on a dell m1330.
Although it still isnt smooth in onenote 2007- i am super confused why that program causes problems with scroll scripts but it works fine with chiralrotate and side virtual scrolling. Also, the scripts aren't active after awaking from sleep.
For now, Ill use both your 2-finger script (for everywhere else) and the hacked driver's chiral-rotate (while in onenote). Now I have three ways of scrolling! (side scroll, chiral, two-finger)
I still can't decide which one is more intuitive - I like chiral rotate since you never have to left your finger but double-finger is nice also.
I'm currently testing it on a dell m1330.
-
- Junior Member
- Posts: 315
- Joined: Sun Mar 18, 2007 8:34 pm
- Location: Prague, Czech Republic
- Contact:
I'd like to recommend scrolling (dy*dy)/50 instead of dy, the faster you swipe, the faster you scroll
It's a pity though that horizontal scrolling got standardized way too late... it's gonna take some serious work to have it.
It's a pity though that horizontal scrolling got standardized way too late... it's gonna take some serious work to have it.
Last edited by Zender on Sat Oct 11, 2008 6:54 pm, edited 1 time in total.
T60 14" SXGA+ 9c T5600 3GB X1400 4965AGN MC8780 IR BT FPR DVDRW Alps XPP
those of you using two-finger scroll and firefox, have you tried out "Yet another smooth scrolling" addon for firefox?
https://addons.mozilla.org/en-US/firefox/addon/5846
Im trying to find the optimal settings that smooth out the scrolling the best.
So Far I have
Stride size: 10
Smoothness start: 6.74
Smoothness: 41
Acceleration sensitivity: 39
https://addons.mozilla.org/en-US/firefox/addon/5846
Im trying to find the optimal settings that smooth out the scrolling the best.
So Far I have
Stride size: 10
Smoothness start: 6.74
Smoothness: 41
Acceleration sensitivity: 39
-
- Junior Member
- Posts: 315
- Joined: Sun Mar 18, 2007 8:34 pm
- Location: Prague, Czech Republic
- Contact:
Also would like to say that unless you accumulate the scroll and only send multiples of WHEEL_DELTA (120), some applications can't get the scrolling right. Most notably Firefox 1.5 when you hold ctrl and scroll (to change zoom level) and WinAmp5 in playlist (simply ignores requests to scroll lesss than 120).
T60 14" SXGA+ 9c T5600 3GB X1400 4965AGN MC8780 IR BT FPR DVDRW Alps XPP
@ranova
Haven't tried this extension yet. Will do later.
@Zender
Thanks for your input. That's the beauty of doing the prototype in Python, other programmers can easily contribute. If you have any code, feel free to post it.
Haven't tried this extension yet. Will do later.
@Zender
Thanks for your input. That's the beauty of doing the prototype in Python, other programmers can easily contribute. If you have any code, feel free to post it.
ThinkPad™ X201 / AFFS-120
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
Script updated.
TwoFingerScroll.pyw
New:
* Two Zender's ideas implemented:
- scrolling by dy*dy/divisor where divisor is configurable at the top of the script (I find a 100 to be ok)
- sending only multiplies of WHEEL_DELTA while scrolling, should improve scrolling in some apps
* EdgeMotion-alike functionality added - if you move the finger to the edge, the scroll is being continued at the last speed
Additionally, if the outcome of dy*dy/divisor is less than 10 it is set to 10. This ensures that a very slow finger motion (dy < 10) also generates scrolling.
EDIT:
Another small update. There was a bug in the code that causes the cursor to jump back to where it was when the first finger touched the surface. This ensures that even if we don't touch with both fingers at the same time, the cursor won't move away. The bug caused this code to act like it wasn't there.
TwoFingerScroll.pyw
New:
* Two Zender's ideas implemented:
- scrolling by dy*dy/divisor where divisor is configurable at the top of the script (I find a 100 to be ok)
- sending only multiplies of WHEEL_DELTA while scrolling, should improve scrolling in some apps
* EdgeMotion-alike functionality added - if you move the finger to the edge, the scroll is being continued at the last speed
Additionally, if the outcome of dy*dy/divisor is less than 10 it is set to 10. This ensures that a very slow finger motion (dy < 10) also generates scrolling.
EDIT:
Another small update. There was a bug in the code that causes the cursor to jump back to where it was when the first finger touched the surface. This ensures that even if we don't touch with both fingers at the same time, the cursor won't move away. The bug caused this code to act like it wasn't there.
ThinkPad™ X201 / AFFS-120
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
very nice implementations, it seems that scrolling in onenote is much better now - is it possible to implement it into your chiralscroll script - so those who prefer it over two-finger can use it
Also, how would I go about making the script relaunch after waking up from sleep, other than relaunching it manually? Ive tried window's task scheduler but could not find an event for waking up from sleep (ive tried user login, startup, etc)
Also, how would I go about making the script relaunch after waking up from sleep, other than relaunching it manually? Ive tried window's task scheduler but could not find an event for waking up from sleep (ive tried user login, startup, etc)
And another small update. This time I've improved the tapping code. Previous one interfered with three finger swipes.
Yes, I plan to look into the wakeup problem.
Yes, I plan to look into the wakeup problem.
ThinkPad™ X201 / AFFS-120
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
Hmm. It works for me. You just shortly tap with two fingers.ranova wrote:Just noticed in the intro of your script:
How do you do that? Or is it not working at the moment?Supports tapping to activate the right mouse button.
You may want to increase the tap settings at the top of the script. Maybe they're too strict for you.
ThinkPad™ X201 / AFFS-120
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
i5-560M 2.67Ghz, 8GB RAM, Samsung 840 Pro 256GB SSD, Win 8 Pro 64-bit, UltraBase X200, ThinkPad Compact USB Keyboard,
Dell U2713HM (2560x1440, IPS), ExpressCard USB 3.0 (2 ports, flush), Nexus 7+10
-
- Similar Topics
- Replies
- Views
- Last post
-
-
Thinkpad 600 driver problems under Win95.
by ThinkIsaac » Sun Mar 10, 2024 9:09 am » in ThinkPad Legacy Hardware - 1 Replies
- 295 Views
-
Last post by ThinkDan
Thu Mar 21, 2024 7:03 am
-
-
-
Two external displays with T61 and docking station?
by babysheegoth » Thu Jan 25, 2024 10:36 am » in ThinkPad T60/T61 Series - 23 Replies
- 3483 Views
-
Last post by ap63
Wed Mar 13, 2024 5:38 pm
-
-
-
T14 G5 and T16 G3 have two SO-DIMM slots again
by TPFanatic » Sun Feb 25, 2024 7:19 pm » in GENERAL ThinkPad News/Comments & Questions - 2 Replies
- 770 Views
-
Last post by mikemex
Sun Feb 25, 2024 11:19 pm
-
-
- 22 Replies
- 1555 Views
-
Last post by TPFanatic
Tue Apr 09, 2024 4:57 pm
Who is online
Users browsing this forum: No registered users and 3 guests