Page 1 of 1

Firefox horizontal scroll and trackpoint.

Posted: Fri Mar 14, 2014 9:54 am
by Adda
No this is not about getting it to work, this is about the behavior of horizontal scrolling with a trackpoint in firefox.

The problem is, as I write this, the field I input this text in to, prevents scrolling with the trackpoint from working in firefox.

I can't scroll down the page now, unless I drag the trackpoint downwards PERFECTLY so NO horizontal scrolling is going on, what so ever.
If I scroll by just a little bit in the horizontal direction, the page jumps right back up to this text field.
This is because, when I have a text input field selected, as I do as I write this, horizontal scroll will move the text input line, as if I was using the left and right arrow keys on the keyboard, rather then just scroll the page horizontally.

It is driving me insane, google image search shows the same behavior, horizontal scrolling works like arrow left and right rather then scroll, making it all but impossible to scroll using the trackpoint in certain situations.

I can fix it by using the "smooth" scrolling method in the trackpoint setup menu, but it should not be necessary, this is a firefox problem and the alternate scrolling method is not good.


Does anyone know how to disable this madness?

(ok now I have so much text in this input field that a scrollbar appeared on the left side, still can't scroll up or down, the scrollbar just jumps up and down as the text input line is moved as if I where pressing the arrow keys).

Edit: try it for your self, select the addressbar and scroll horizontally, or select the search field at the bottom of this page, and attempt to scroll up the page using the trackpoint.

See? why does it behave like that?

Re: Firefox horizontal scroll and trackpoint.

Posted: Fri Mar 14, 2014 10:40 pm
by twistero
Looks like in Windows the TrackPoint doesn't actually generate "mouse scroll" events like a real mouse does. Instead, the TrackPoint hardware simply generates middle-click-down, middle-click-up and mouse movement events, and it's up to the TrackPoint driver to translate these into scrolling commands, potentially depending on which program is in focus / under the cursor, etc. (This is why TrackPoint scrolling doesn't work in every program, and why adding appropriate registry keys modding a certain file for some versions of the driver / trackpoint utility / whatever can make some programs work by instructing the driver to use a different translation.)

And it looks like in many situations, horizontal scrolling commands are simply translated to left / right arrow key presses. :roll:

Re: Firefox horizontal scroll and trackpoint.

Posted: Sat Mar 15, 2014 9:54 am
by Adda
It seems Mozilla went with a worst way of implementing it, compared to any other piece of software I use.
Even FL Studio understands the trackpoint no problemo.
If only I could simply disable horizontal scrolling in firefox, it would be so easy, but in spite of the insane amount of configuration options, this option is missing...

Re: Firefox horizontal scroll and trackpoint.

Posted: Sat Mar 15, 2014 3:41 pm
by IbmPad
It seems it's not Firefox's fault but the Ultranav program's. Using Spy++ I noticed SynTpEnh.exe normally sends the WM_MOUSEHWHEEL or WM_HSCROLL messages (to Opera for instance). When using Firefox however it sends WM_KEYDOWN/WM_KEYUP with the left/right keys. By hex-editing the SynTpEnh.exe file I have been able to prevent it from sending those messages to Firefox. If you want you can send me your SynTpEnh.exe file by email (my address is on my website) and I will do the editing for you.

EDIT : It's not even necessary to alter the SynTpEnh.exe file. It seems commenting the line

Code: Select all

*,*,firefox.exe,*,*,MozillaWindowClass,WheelVkey,0,9
in the file TP4table.dat does the job.

Re: Firefox horizontal scroll and trackpoint.

Posted: Sat Mar 15, 2014 5:23 pm
by Adda
Excellent IbmPad, works like a charm, for a trackpoint on a ThinkPad.

It doesn't work for a USB keyboard with trackpoint though, I can't find any .dat files in the install directory.