Closed Bug 236257 Opened 20 years ago Closed 18 years ago

Horizontal mouse scroll support (left and right) does not work

Categories

(Core :: Widget: Win32, defect)

x86
Windows XP
defect
Not set
normal

Tracking

()

RESOLVED INVALID

People

(Reporter: fredrik, Unassigned)

References

Details

User-Agent:       
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.6) Gecko/20040113

The horizontal wheel scroll function that is available on many new mices isn't
supported in Mozilla. For example all modern Thinkpads and IBM mouses has this
feature. 
There are bugs that mention this feature but they are either closed or is really
about other things. 
bug 143038 - This is really about implementing a modifier key to scroll
horizontally, talks about preferences GUI and similar questions.
bug 169356 - Mentions horizontal scrolling on MacOS X
bug 58589 - This one seems correct but it is marked RESOLVED. (It has an
interresting last comment about the confusion with the different bugs. The
comment also lists many of the related bugs and how they really depend on each
other)



Reproducible: Always
Steps to Reproduce:
1. Hold the general scroller key on a IBM Thinkpad
2. Scroll horizontally using the Trackpoint
3.

Actual Results:  
Scrolling only works vertical, up and down. 
Scrolling doesn't work horizontal, left and right.

Expected Results:  
Scrolling should work horizontally as it does in other Win32-programs.
I have been using Mozilla since 1.3, and I can confirm the lack of this feature.
My preferred pointing device is a touchpad-- I use a Cirque Cruisecat on my
desktop and the built-in Alps touchpad on my notebook. All touchpads support
horizontal scrolling, but Mozilla doesn't support the input. This is
reproducable by following these steps:

1. "Borrow" your sister's notebook computer when she isn't looking (requires
preparation to produce a credibly innocent facial expression when the inevitable
demand reaches your ears at full volume). If it has no touchpad, look elsewhere.

2. Open the Mouse control panel. If you see the standard Microsoft panel for a
two-button mouse, download the touchpad drivers for your OS from your notebook
manufacturer's web page, and install. Find the tab that controls scrolling
("Gestures" for the Alps pad, "Scrolling" for the Cirque, somewhere else if it's
a Synaptics pad) and enable the feature. If the driver supports Office 97/2K
scrolling (Cirque), go ahead and turn it on-- it makes no difference in Mozilla.

3. Install Mozilla, browse to any web page and resize your browser window and/or
zoom the page so as to produce horizontal and vertical scrollbars. Run your
finger tip up and down the touchpad along the far right edge and the page will
scroll vertically; run your finger left and right along the bottom of the pad,
and nothing happens. Now try the same thing in any other natiuve GUI application
that is too big to fit into a window (ie. has vert and horiz scroll bars), and
see what happens. QED.
*** Bug 241962 has been marked as a duplicate of this bug. ***
For full support for horizontal scroll we need to also fix bug 143038, and bug
71464.
Status: UNCONFIRMED → NEW
Ever confirmed: true
I suspect that this bug is really a dupe of bug 231718, but I don't know
anything about Thinkpad specifics. Horizontal scrolling should work but the
hidden prefs mousewheel.horizscroll.* need to be tweaked (via prefs.js oder
about:config) as listed in that bug.
Reporter, if you find that this is true in your case as well, can you please
mark it as duplicate?
*** Bug 275926 has been marked as a duplicate of this bug. ***
Any news on this bug? I'm on a IBM T42, Windows XP, and have the same problem -
that the horizontal scrolling doesn't work at all in Firefox. I haven't tested
the problem with the UltraNav (never use it) yet.

I'm using the newest drivers available; v7.5.17.13-
http://www-307.ibm.com/pc/support/site.wss/document.do?lndocid=MIGR-42487
I debugged the trackpoint case and they are sending WM_HSCROLL messages which we
ignore.


How are other horizontal scrolling mice doing it? WM_MOUSEWHEEL messages?
Assignee: jag → win32
Component: XP Toolkit/Widgets → Widget: Win32
QA Contact: jrgmorrison → ian
Confirmed Dell Latitude (Alps Touch Pad) in Win2k when "Gestures->Use Scroll
Function" in Mouse properties is enabled. Vertical scrolling works fine,
horizontal scrolling does nothing.

Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.8) Gecko/20050511
Firefox/1.0.4
FWIW, the latest Synaptics drivers use left/right arrow keys to scroll windows
of class "MozillaWindowClass", and that seems to work reasonably well. We use
WM_HSCROLL for most apps, though. 

Re: comment 7: There isn't a WM_WHEELMOUSE-like message that causes horizontal
scrolling, at least by default. Of course, applications are free to interpret
these messages as they see fit, and I've seen a couple of apps that use one of
the shift keys to scroll horizontally, and some other apps (like Windows
Explorer) that scroll horizontally iff there is only a horizontal scrollbar. 

However, the scrolling mice that I've seen that do this use a variety of methods
to fake out the app into thinking that the user has either clicked on one of the
bits of the horizontal scrollbar or an arrow key. Our older drivers used to do
this by moving the pointer, grabbing the scroll thumb of the horizontal
scrollbar, and dragging it around, but we found that that was too flaky and
unreliable (it's often quite hard to determine where the scroll bar currently is
to a high enough degree of accuracy to pull this off smoothly). 
So what we really should do here is add WM_HSCROLL support to Mozilla...
I'm marking this to INVALID.
Because now we are supporting the new message for tilt wheel, see bug 347875.
The old Windows (pre Win Vista) doesn't have the message. But the developers of the mouse divers can use the message on old Windows too. They should update.

But for other applications (e.g., scroll capture), we should support WM_VSCROLL and WM_HSCROLL. However, we may not honor the cursor position in the implementation. So, even if they will be supported in our future release, it is not for this bug. Therefore, you cannot scroll child views (e.g., overflowed div).
Status: NEW → RESOLVED
Closed: 18 years ago
Resolution: --- → INVALID
> But for other applications (e.g., scroll capture), we should support WM_VSCROLL
> and WM_HSCROLL.

Oops, sorry. I forgot to write the bug id that is bug 315727.
You need to log in before you can comment on or make changes to this bug.