Open Bug 1249090 Opened 8 years ago Updated 2 years ago

Excessive "checkerboarding" in CodeMirror

Categories

(Core :: Panning and Zooming, defect, P3)

48 Branch
Unspecified
All
defect

Tracking

()

Tracking Status
firefox45 --- unaffected
firefox46 --- wontfix
firefox47 --- wontfix
firefox48 --- wontfix
firefox49 --- wontfix
firefox50 --- fix-optional
firefox51 --- fix-optional
firefox52 --- wontfix

People

(Reporter: kats, Unassigned)

References

(Depends on 1 open bug, )

Details

(Keywords: perf, polish, Whiteboard: [gfx-noted])

CodeMirror (including the uses of it in Firefox DevTools) do this thing where they only populate the part of the DOM for the visible portion of the scrollable frame. However, with APZ this doesn't work so well because content can't really know what's visible. The end result is that the user sees a lot of "checkerboarding" which is actually a combination of APZ checkerboarding and CodeMirror checkerboarding. Bug 1232491 should help with this because it provides CodeMirror a way to find out what the displayport is, and they can fill that part in.

See also bug 1243554 and bug 1239615 both of which mentioned this issue. CodeMirror has https://github.com/codemirror/CodeMirror/issues/3564 on file for this problem.
Version: unspecified → 47 Branch
Keywords: perf, polish
Whiteboard: [gfx-noted]
Given bug 1160601 comment 17 onwards, is this a dupe of bug 1160601?
I thought we were using bug 1160601 to specifically track making the gutter more APZ-friendly. If you want to use it as a general-purpose CodeMirror/APZ bug then sure, we can dupe. I think it might be better to leave them separate though since they are relatively independent issues with different fixes. In particular, we need to expose the displayport to content before this one can be tackled, whereas the other one is entirely on the CodeMirror side.
OS: Unspecified → All
Priority: -- → P3
Version: 47 Branch → 48 Branch
Mass wontfix for bugs affecting firefox 52.
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.