Closed Bug 931425 Opened 11 years ago Closed 11 years ago

Firefox scrolling choppy on OS X 10.9 Mavericks

Categories

(Firefox :: Untriaged, defect)

24 Branch
All
macOS
defect
Not set
normal

Tracking

()

RESOLVED INVALID

People

(Reporter: mario_grgic, Unassigned)

References

(Blocks 1 open bug)

Details

Attachments

(2 files)

User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:24.0) Gecko/20100101 Firefox/24.0 (Beta/Release)
Build ID: 20130910160258

Steps to reproduce:

Firefox 24 scrolling was very smooth before upgrade to OS X 10.9 Mavericks. However, after upgrade scrolling speed is faster but also distinctly non-smooth, it appears as if it is done in discreet tiny chunks, and it is starkly opposite to the butter smooth scrolling in Safari 7 on Mavericks. 

Apple has done some scrolling optimization work in Mavericks 

http://arstechnica.com/apple/2013/10/os-x-10-9/19/#responsive-scrolling

and this change could have adversely affected Firefox.
Note that this is more noticeable if there are a lot of images on the page, but scrolling action is different and non-smooth even on pure text sites.
I'm seeing reports of this too on the SUMO (support.mozilla.org) forums:
https://support.mozilla.org/en-US/questions/974137

CC'ing Roc on this. Roc, can you reproduce this?
Flags: needinfo?(roc)
I don't have a Mac, so no.

Markus might be able to help.
Flags: needinfo?(roc)
I reproduced this bug using Google Docs w/in a spreadsheet. It's not only non-smooth, but is buggy and unresponsive. I tried vertical and horizontal scrolls there.
Hardware: x86 → All
When using two fingers scrolling of Trackpad , this problem is noticeable on Firefox 26.
Time lag of scrolling happens.
Sorry for my mistake.
Not Firefox 26 but Firefox 27 has a problem of time lag of scrolling.
And "defaults write -g NSScrollAnimationEnabled -bool false" has no effect.
(In reply to Eiichi from comment #5)
> When using two fingers scrolling of Trackpad , this problem is noticeable on
> Firefox 26.
> Time lag of scrolling happens.

If this only happening on Mavericks? If not, it's not this bug.
Stephen, can you look into this?
Assignee: nobody → spohl.mozilla.bugs
(In reply to Robert O'Callahan (:roc) (Mozilla Corporation) from comment #7)
> If this only happening on Mavericks? If not, it's not this bug.
Yes, this problem only happens on OS X 10.9.
No problem happens on OS X 10.7, though I didn't test on on OS X 10.8.
I see similar behavior but I'm a bit out of bandwidth to look into this anytime soon. Steven, does this sound like something you could take on?
Status: UNCONFIRMED → NEW
Ever confirmed: true
Flags: needinfo?(smichaud)
I need a very specific testcase for this, and a very precise description of exactly what the differences are between Firefox's scrolling behavior on (say) OS X 10.8.5 and OS X 10.9.
Flags: needinfo?(smichaud)
Flags: needinfo?(suishouen)
Flags: needinfo?(mario_grgic)
Assignee: spohl.mozilla.bugs → nobody
Flags: needinfo?(mario_grgic)
Firefox scrolling behaviour is different on Mavcericks only, and I notice it with all sites (not just say Google docs like some reported here). 

The speed of scrolling is the same as before, it is not laggy (it follows two finger motion on trackpad without delay), however, the scrolling not smooth, it is choppy (the scrolling motion speed has a very fine "saw" to it). I don't know if this is useful description, so I have attached screen recording to illustrate this.
(In reply to comment #13)

You say you "notice it with all sites".  But I've never seen it myself, and I've been playing with Mavericks for at least a month now.

Please give me at least one example that shows up the problem you see particularly well.

I may still not see the problem even with *those* examples (in which case we'll need to look for other explanations).  But at least I'll have started on reasonably firm ground.
Flags: needinfo?(mario_grgic)
I notice that your "movie" from comment #12 shows you scrolling this bug.

I find it extremely difficult to tell for sure what the problem is from your movie -- or that there's any problem at all.  But I will play with this bug's page on OS X 10.7.5, 10.8.5 and 10.9, in Firefox (releases and today's trunk nightly) and Safari, to see what I can find.
I've now done some testing as promised.

You need to maximize (zoom up) Firefox and Safari to prevent your test from being skewed by accidentally scrolling from side to side (in addition to vertically).

I find that Firefox (FF 25 and today's mozilla-central nightly) behaves identically on OS X 10.7.5, 10.8.5 and 10.9.  But, especially in momentum scrolling, I *do* notice something that might be called "choppiness".  However it's very subtle.

I notice the same degree of "choppiness" in Safari on OS X 10.7.5, but not on OS X 10.8.5 or 10.9.  So Safari's scrolling does seem to be smoother than Firefox's on OS X 10.8.5 and 10.9.  But the difference is subtle, and it's hard to be really sure.

Safari's relative "smoothness" on OS X 10.8.5 and 10.9 may just indicate that Safari makes better use than we do of additional threads, or even processes.  In which case we'll need to try to catch up to Safari in that regard.

But whatever problems we have with scrolling, they're very subtle, and easy to miss entirely (as I did).  Furthermore there's no evidence the problem is specific to scrolling.

This bug, as it stands, is INVALID.  It's very vague, and gives us nothing specific to act on.
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → INVALID
Flags: needinfo?(suishouen)
Flags: needinfo?(mario_grgic)
> http://arstechnica.com/apple/2013/10/os-x-10-9/19/#responsive-scrolling

This article talks about "responsive scrolling" only in the most general way.  It doesn't really give us anything to go on.

https://developer.apple.com/library/mac/releasenotes/MacOSX/WhatsNewInOSX/Articles/MacOSX10_9.html#//apple_ref/doc/uid/TP40013207-SW10

This is a bit more concrete.  But I strongly suspect that only "native" Cocoa apps (ones that, unlike Firefox, use native UI objects) would benefit.
"Responsive scrolling" on Mavericks is what we call tile based rendering and APZC in Mozilla.
https://developer.apple.com/library/mac/releasenotes/AppKit/RN-AppKit/index.html#//apple_ref/doc/uid/TP30000741-CH2-SW28

Here's a much better Apple doc.  But we no longer use -[NSView drawRect:] to draw directly to the screen (instead that gets handled by our layers subsystem) -- so we're very unlikely to benefit from any of this.

> "Responsive scrolling" on Mavericks is what we call tile based rendering and APZC in Mozilla.

Yes, indeed.  If we want to make our scrolling smoother, we'll have to do it on our own.
Anthony, could you reference the bug (or bugs) where we're working on APZC?  Those who are curious can follow the links.
I'm not sure there's a bug opened for APZC on OS X yet. Kats should know.
I don't believe there are any bugs on file for getting APZC working on OS X yet. Our focus has been Metro and B2G so far.
Huh? Steven, I can clearly see in the video that the page does not move by single pixels, but instead in bigger increments.

Mario, do you use any kind of non-standard mouse driver, like for example SteerMouse? That could mess with the scroll events we get in Firefox.
No I do not. Apple mouse and (built-in, or external) trackpad (depends on the computer).
> I can clearly see in the video that the page does not move by single
> pixels, but instead in bigger increments.

Then your eyes are better than mine are, and I don't really have anything more to say here.
(In reply to Mario Grgic from comment #25)
> No I do not. Apple mouse and (built-in, or external) trackpad (depends on
> the computer).

Do you also see this with a nightly build from http://nightly.mozilla.org/ ? If so, can you install the profiler extension and upload a profile of the choppy scrolling as described on https://developer.mozilla.org/en-US/docs/Performance/Profiling_with_the_Built-in_Profiler#Running_the_profiler ? Install the extension, scroll up and down for a few seconds, press Cmd+Shift+O, wait for the profile to load, press the Share button in the bottom left corner and paste the URL here. You may want to do this in a fresh Firefox profile in order to protect sensitive data.
The nightly build is significantly smoother (perhaps because I have fresh profile?). I have also tried to upload the profiling data about 5 - 6 times, but each time after the upload is completed, and after the "Waiting for server side compression" message I get "Error 0 occurred uploading your profile". So, I have attached the compressed profiling data here as an attachment.
(In reply to Mario Grgic from comment #28)
> The nightly build is significantly smoother (perhaps because I have fresh
> profile?). 

Turn off "Use hardware accelelation when available" and try again.
The problem still remains when I test using a fresh profile.
I have hardware acceleration on all the time (so turning it off to try and demonstrate the problem would not be the same). Also, turning it off does not seem to have any impact on scrolling performance in my case anyway.
Reviving an old bug, but I'm seeing the same issue on 10.9.5 and it's very choppy, especially on pages with lots of images.  Loading up the same page in Safari *and* Chrome is smooth as expected.  

Running Firefox 32.0.2.  I will try to test this in Nightly to see if it's reproducible.
I know that this bug is pretty old, but I encounter this issue on my Mac (OS X 10.11 and the previous version). I tried to launch Firefox from the terminal with a fresh new profile to display some relevant stack trace and I found this message:

Performance warning: Async animation disabled because frame size (13289, 259) is bigger than the viewport (1440, 870) or the visual rectangle (13289, 259) is larger than the max allowable value (17895698) [div]

Hope this helps.
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: