Closed Bug 1699888 Opened 3 years ago Closed 3 years ago

Firefox checkerboards a very large file since Firefox 55

Categories

(Core :: Panning and Zooming, defect)

55 Branch
defect

Tracking

()

RESOLVED DUPLICATE of bug 1251617
Tracking Status
firefox86 --- affected
firefox87 --- affected
firefox88 --- affected

People

(Reporter: jobbautista9, Unassigned)

References

Details

Attachments

(3 files)

Attached video viewportChunking.mkv

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:4.8) Goanna/20170101 PaleMoon/29.2.0a1

Steps to reproduce:

Visit this URL: http://xref.palemoon.org/moonchild-central/source/platform/db/sqlite3/src/sqlite3.c

Wait for the document to complete loading if you want to. (Will OOM those that have less than 1.5 GB of memory!)

Actual results:

Scrolling down and up will make the viewport show white for a few seconds

Expected results:

Scrolling down and up should be smooth.

First reported in https://old.reddit.com/r/firefox/comments/m8dvh9/why_does_firefox_divide_the_viewport_of_a_very/.

This bug also happens in latest nightly and ESR. This bug seems to have been introduced in the 55.0 release.

(Also please ignore the useragent above, I was writing this bug in Pale Moon. :))

Version: Firefox 86 → 55 Branch

Change the status for beta to have the same as nightly and release.
For more information, please visit auto_nag documentation.

Summary: Firefox divide the viewport of a very large file into chunks → Firefox checkerboards a very large file since Firefox 55
Component: Untriaged → Panning and Zooming
Product: Firefox → Core

(In reply to Job Bautista from comment #0)

Scrolling down and up will make the viewport show white for a few seconds

Could you specify what method you are using to scroll (e.g. mouse wheel, keyboard, scroll bar, etc.)?

(In reply to Botond Ballo [:botond] from comment #3)

(In reply to Job Bautista from comment #0)

Scrolling down and up will make the viewport show white for a few seconds

Could you specify what method you are using to scroll (e.g. mouse wheel, keyboard, scroll bar, etc.)?

From the video it looks like scroll thumb dragging.

From the reddit thread is sounds like your machine doesn't get webrender? What happens if you set gfx.webrender.all to true and then check in about:support if you are getting webrender, and then try to reproduce?

Flags: needinfo?(jobbautista9)

I enabled WebRender in my latest Nightly. Checkboarding still happens. I made sure that WebRender is enabled by checking about:support.

Flags: needinfo?(jobbautista9)

Can you upload your about:support?

Can you upload a profile of when the problem is happening using https://profiler.firefox.com/ ?

Flags: needinfo?(jobbautista9)

Here's the about:support info.

And here's the profile with "Firefox Graphics" preset.

Flags: needinfo?(jobbautista9)

(In reply to Job Bautista from comment #9)

Created attachment 9210577 [details]
Firefox 2021-03-21 13.34 profile.json.gz

And here's the profile with "Firefox Graphics" preset.

Convenience link: https://share.firefox.dev/3rf8OCZ

The reason this started in 55 is because we enabled async scrollbar dragging in 55. This means that the scroll thumb can be moved instantaneously but the painted content might not update immediately. When async scrollbar dragging is turned off we never checkerboard but it might take longer for the scrollthumb and the painted content to update to the screen.

(In reply to Timothy Nikkel (:tnikkel) from comment #11)

The reason this started in 55 is because we enabled async scrollbar dragging in 55. This means that the scroll thumb can be moved instantaneously but the painted content might not update immediately. When async scrollbar dragging is turned off we never checkerboard but it might take longer for the scrollthumb and the painted content to update to the screen.

I see. I disabled async scrollbar dragging using about:config, and it's now back to my expected behavior.

I think it would be better if there's an option in about:preferences to disable that pref, because personally I find disabling async scrolling better for viewing very large source code like this. But I guess that's out of the scope for this bug. shrug

So I take it that this bug should be closed as WONTFIX now?

(In reply to Job Bautista from comment #12)

I think it would be better if there's an option in about:preferences to disable that pref, because personally I find disabling async scrolling better for viewing very large source code like this. But I guess that's out of the scope for this bug. shrug

So I take it that this bug should be closed as WONTFIX now?

The bar to promote a preference from about:config to about:preferences is pretty high; we try to keep the latter relatively clean and focused on the most popular / highest-impact customizations.

I do think we should try harder to avoid checkerboarding during async scrollbar drags; we have bug 1251617 on file for this, and a set of potential improvements tracked in bug 1367770 may help as well. I think duping this over to bug 1251617 makes sense as a resolution.

Status: UNCONFIRMED → RESOLVED
Closed: 3 years ago
Resolution: --- → DUPLICATE
See Also: → 1367770
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: