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.
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
7 years ago
7 years ago
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: 7 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.