Closed Bug 314856 Opened 19 years ago Closed 19 years ago

Touchpad (two-finger) scrolling way too fast on 1.5rc1/Mac OS X 10.4.3

Categories

(Firefox :: General, defect)

PowerPC
macOS
defect
Not set
normal

Tracking

()

RESOLVED FIXED
Firefox 2

People

(Reporter: thul, Assigned: mark)

Details

(Keywords: fixed1.8.0.1, fixed1.8.1)

Attachments

(1 file)

User-Agent:       Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.8) Gecko/20051025 Firefox/1.5
Build Identifier: Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.8) Gecko/20051025 Firefox/1.5

Since updating Firefox to 1.5rc1 and Max OS X Tiger to 10.4.3, I've noticed that touchpad scrolling on my PowerBook (the two-finger scrolling which simulates a scroll wheel) scrolls WAY too fast.  The scroll bar now can be moved large distances with a small two-finger movement on the touchpad.  Overall, Firefox scrolls WAY faster than other apps (including Camino) and this annoys me to no end.

Reproducible: Always

Steps to Reproduce:
Scroll using two-finger scrolling on a recent PowerBook/iBook with Mac OS X 10.4.3 and Firefox 1.5rc1.
Summary: Touchpad scrolling way too fast on 1.5rc1/Mac OS X 10.4.3 → Touchpad (two-finger) scrolling way too fast on 1.5rc1/Mac OS X 10.4.3
Confirmed using Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.9a1) Gecko/20051028 Firefox/1.6a1.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Could somebody please look at this?
in bug 314999 someone complains that it doesn't work at all
If this is something, it's probably mine.

I've noticed that "something" has changed with the way mousewheels are handled in 10.4.3, but I haven't taken time to put my finger exactly on it yet.  I've experienced "oh, that's new" moments both with the two-finger touchpad and hard mice with hard wheels.

If Apple's changed something here, you should see it in Firefox 1.0 also.  Carbon mousewheel events haven't changed between 1.0 and 1.5 in a way that would make a difference here.  Tim, could you confirm what you're seeing in 1.0?

Whatever's changed, I'm pretty sure I've noticed it in Camino, too, although our Cocoa mousewheel scrolling has always been less prone to huge jumps than the Carbon implementation.  We multiply the number of lines the system tells us to scroll by three in Carbon, and we don't do anything like that in Cocoa.

Tim, what other apps have you compared Firefox to?
Assignee: nobody → mark
Yes, this does happen in Firefox 1.0 - however, Camino and Safari do not experience this (although I do think Camino's scroll speed might have gone from intolerably slow to decent).

I wonder if Apple "fixed" Carbon and Cocoa scrolling by making them work better and more reliably out of the box (thus breaking app workarounds like the multiply-by-3 in Firefox)?  This could be what we are noticing...
Does anyone know of a way to disable Firefox's multiplication of system scroll line settings by 3?  It seems that this is unnecessary on 10.4.3, and is causing this problem.  The scrolling is tolerable (similar in speed to 10.4.2) if I change the system scroll setting to the lowest possible value, but then other apps scroll excrusiatingly slow.  

I've tried specifing sysnumlines/numlines settings, but then it scrolls the same speed no matter how fast/slow I stroke the trackpad.
3 is the "correct" value for OS X apps that don't do "smooth" pixel-level scrolling in response to mouse wheel moves - or, at least, when OS X was new and this behavior was implemented in Mozilla, all OS X applications treated a single non-accelerated mousewheel move the same as they'd treat three clicks of a scroll arrow.

It appears to me that if Apple's done anything, they've changed the acceleration heuristics (although they could have just changed the frequency that the events fire, too.)  I've yet to compare the behavior under 10.4.3 with previous releases scientifically.

As you found, you can't change the multiplier in the configuration without killing acceleration.

Do you have a "scrolling speed" slider in System Preferences:Keyboard & Mouse?  That slider controls acceleration - maybe knock yours down a few notches to if that works well in Firefox without slowing other apps down too much.
Yes, I have a "Scrolling Speed" option in my Keyboard & Mouse control panel.
Lowering this a few notches helps Firefox, but makes the scrolling in other apps very slow.

Honestly, I'm about ready to give 10.4.3 the boot and downgrade to 10.4.2 - as this has me thoroughly annoyed.  I can put up with it, or use another browser, but none of these options seem appealing to me.

If someone at Mozilla has a contact at Apple, could they let them know about this?  This is a big problem for me....
I use the iScroll2 trackpad driver to get two-finger scrolling on my iBook.  This driver has explicit settings for scroll resolution and event rate.  After upgrading to 10.4.3 I found that I needed to crank up the event rate to get decent scrolling behavior out regular Cocoa applications.  I imagine Apple made a similar change to their driver, perhaps to better accommodate the higher scroll resolution of the Mighty Mouse scroll ball and trackpad scrolling. (in relation to traditional 'clicky' scroll wheels)

For the record, here is some empirical data using a 2-finger scrolling trackpad and a traditional Microsoft clicky scroll wheel:

MOUSE WHEEL: MINIMUM INCREMENT
Safari (2.0.2): About 3 pixels
Camino (20051110): About 18 pixels (1 row of 18 pt text)
Firefox (1.5 rc2): About 54 pixels (3 rows of 18 pt text)

TRACKPAD SCROLL: MINIMUM INCREMENT
Safari: 1 pixel
Camino: 18 pixels (same as wheel)
Firefox: 54 pixels (same as wheel)

KEYBOARD TO MOUSE WHEEL SCROLL RATIO
Safari: 1/10
Camino: 1/2
Firefox: 3/1

NUMBER OF WHEEL ROTATIONS TO SCROLL SLASHDOT
Safari: 3 to 4 on average, 1 at best
Camino: 7 to 8  on average, 3 at best
Firefox: 2 to 3 on average, 1 at best

NUMBER OF TRACKPAD SWEEPS TO SCROLL SLASHDOT
Safari: 3 on average, 3 at best
Camino: 2 on average, 2 at best
Firefox: less than 1 on average
I'm convinced that something else changed in the OS since scale-by-3 was initially introduced in 2001 by bug 100799, even before 10.4.3 brought further tweaks to acceleration.  Eliminating the scaling produces an experience that's much more in step with other 2005-vintage applications.  I've tried this with the touchpad on 10.4.3 and a conventional wheel mouse on 10.4.3, 10.3.9, and 10.2.8.  The OS handles acceleration in all cases, pinkerton thinks that acceleration was introduced in Jaguar or Panther.  Since my experience shows it's present in Jaguar and that's our current minimum, there should be no problem removing the scaling.  I'm pretty sure there's an Apple doc that advises not scaling, but I can't find it at the moment.  Our Cocoa widget implementation doesn't scale, this patch makes the Carbon implementation match.  If I use the word "scale" again, please stop me.
Attachment #203536 - Flags: superreview?
Attachment #203536 - Flags: review?(joshmoz)
Attachment #203536 - Flags: superreview? → superreview?(mikepinkerton)
I have an other problem with my firefox, 1.5 rv1.8, when I open more that 5 tabs the 2_finger_scrool doesn't work in any of the tabs, if I open an other windows, that one worg good and the old no.
Piero, if it's another problem, then it belong in another bug report, right?  It sounds to me like you're experiencing bug 309344.
Comment on attachment 203536 [details] [diff] [review]
Don't scale mousewheel deltas

I can confirm the problem on my PowerBook, and mark's patch fixes it. Looks good. We should nominate this for FF 1.5.0.1.
Attachment #203536 - Flags: review?(joshmoz) → review+
Flags: blocking1.8.0.1?
Comment on attachment 203536 [details] [diff] [review]
Don't scale mousewheel deltas

sr=pink
Attachment #203536 - Flags: superreview?(mikepinkerton) → superreview+
Checked in, trunk.
Status: NEW → RESOLVED
Closed: 19 years ago
Resolution: --- → FIXED
This seems relevant: http://developer.apple.com/qa/qa2005/qa1453.html

It discusses a new type of scroll event fired by the trackpads and the mighty mouse that's not used by other scrolling devices.
Thanks!  I knew that these events existed but couldn't find them anywhere in the headers.  I'll open up a follow-up bug to do an implementation.
Followup for smooth scrolling is bug 319078.
Comment on attachment 203536 [details] [diff] [review]
Don't scale mousewheel deltas

a=dveditz
Attachment #203536 - Flags: approval1.8.1+
Attachment #203536 - Flags: approval1.8.0.1+
Checked in to 1_8 and 1_8_0.
Flags: blocking1.8.1+
Flags: blocking1.8.0.1?
Flags: blocking1.8.0.1+
Target Milestone: --- → Firefox 2
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: