Firefox tears while scrolling on win32

RESOLVED FIXED

Status

()

Core
Layout
RESOLVED FIXED
8 years ago
5 years ago

People

(Reporter: jrmuizel, Unassigned)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

(Reporter)

Description

8 years ago
This page makes it pretty clear: http://people.mozilla.org/~jmuizelaar/p/nwn-tear/builder.php

The image at the bottom makes it pretty easy to see. None of the other browsers have this problem.
This isn't a regression, FF 3.5 and 2.0 (and I'm guessing 3.0) all have the problem.

The problem is that scrolling isn't visually atomic with painting. We blit and then paint. As far as I know the only solution is to have a persistent back-buffer, so scrolling can copy within the backbuffer, then we can paint into the backbuffer, then we can blit the whole backbuffer to the screen.
(Reporter)

Comment 2

7 years ago
I had a look at what some of the other browsers do on this page:
http://people.mozilla.org/~jmuizelaar/p/nwn-tear/test.html

IE seems to draw the entire screen using 150x[window width] bands. Tearing at the band boundaries is visible when I slow down BitBlt but not when it runs at normal speed.

Opera seems to draw the entire screen with an AlphaBlend call?

Safari may do the same with BitBlt.

None of them seem to use ScrollWindow or ScrollWindowEx
Sounds like they're all using some kind of retained backbuffer.
Depends on: 564991
Blocks: 722148
No longer blocks: 722148
Maybe bug 700867.
The underlying issue in this bug was fixed when we made scrolling layer-based.
Status: NEW → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.