Bug 15890 - Most of www.aol.com still redraws unnecessarily when headline/photo section changes
Summary: Most of www.aol.com still redraws unnecessarily when headline/photo section c...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Layout and Rendering (show other bugs)
Version: 528+ (Nightly build)
Hardware: Macintosh OS X 10.4
: P2 Normal
Assignee: Nobody
URL: http://www.aol.com/
Keywords:
Depends on:
Blocks:
 
Reported: 2007-11-07 18:24 PST by David Kilzer (:ddkilzer)
Modified: 2007-11-12 20:55 PST (History)
2 users (show)

See Also:


Attachments
Don't repaint invisible objects sometimes (8.59 KB, patch)
2007-11-12 13:52 PST, mitz
no flags Details | Formatted Diff | Diff
Don't repaint invisible objects sometimes (9.40 KB, patch)
2007-11-12 13:56 PST, mitz
darin: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description David Kilzer (:ddkilzer) 2007-11-07 18:24:25 PST
Either the reduction in Bug 15015 was bogus, or AOL changed their web site again.

Quartz Debug shows that everything below the top banner is still redrawn with a local debug build of WebKit r27581 on Tiger with Safari 3 Public Beta.
Comment 1 mitz 2007-11-07 18:29:00 PST
I cannot reproduce on Leopard with TOT.
Comment 2 mitz 2007-11-07 18:39:12 PST
(In reply to comment #1)
> I cannot reproduce on Leopard with TOT.
nor with the r27582 nightly build.

I can reproduce on Tiger 10.4.10 with the same nightly build and Safari 2.0.4.
Comment 3 mitz 2007-11-07 18:41:38 PST
(In reply to comment #2)
> (In reply to comment #1)
> > I cannot reproduce on Leopard with TOT.
> nor with the r27582 nightly build.
not even when spoofing as Safari 2.0.4, so I don't think the page is different between Leopard and Tiger.
Comment 4 David Kilzer (:ddkilzer) 2007-11-07 18:48:47 PST
(In reply to comment #2)
> (In reply to comment #1)
> > I cannot reproduce on Leopard with TOT.
> nor with the r27582 nightly build.
> 
> I can reproduce on Tiger 10.4.10 with the same nightly build and Safari 2.0.4.

Could this be a CG issue?
Comment 5 mitz 2007-11-07 18:51:08 PST
(In reply to comment #4)
> Could this be a CG issue?

Could be that or AppKit, but I should probably set up a Tiger dev environment just to make sure that WebKit invalidates the same regions as it does in Leopard.
Comment 6 David Kilzer (:ddkilzer) 2007-11-07 19:04:46 PST
(In reply to comment #1)
> I cannot reproduce on Leopard with TOT.

I still see most of the page flash with Quartz Debug (red identical updates) with r27585 on Leopard 10.5 (9A581).  I'm on a PowerPC Quad G5 with an NVIDIA GeForce 6600 and an Apple 23" Cinema Display , though.

Comment 7 David Kilzer (:ddkilzer) 2007-11-07 19:25:07 PST
(In reply to comment #6)
> (In reply to comment #1)
> > I cannot reproduce on Leopard with TOT.
> I still see most of the page flash with Quartz Debug (red identical updates)
> with r27585 on Leopard 10.5 (9A581).  I'm on a PowerPC Quad G5 with an NVIDIA
> GeForce 6600 and an Apple 23" Cinema Display , though.

Most of the page only flashes when the first 5 news items initially load.  After they're done loading, much less of the page repaints after that.

Not sure if there is anything that can be done when the first 5 news items are displayed; may just close this as WONTFIX.

Comment 8 mitz 2007-11-07 21:18:57 PST
(In reply to comment #7)
> Most of the page only flashes when the first 5 news items initially load. 
> After they're done loading, much less of the page repaints after that.

Looking for things that trigger repainting outside the rotating story box, I found a div (id="itrk") with visibility:hidden; position: absolute; bottom: 0 into which 1x1 images are loaded. Using Drosera I set a breakpoint in at main.js:246 (in imp()), and indeed one such image is created for each story when it is loaded. This is consistent with the excessive repainting only during the first cycle.
It is kind of silly to repaint invisible objects, but we do it because they may have visible descendants. We keep track of whether that is the case only at the layer level.
Comment 9 mitz 2007-11-12 13:52:59 PST
Created attachment 17210 [details]
Don't repaint invisible objects sometimes

This is a ad-hoc patch that happens to solve the problem with AOL. Not sure the extra checks are useful on any other page.
Comment 10 mitz 2007-11-12 13:53:40 PST
Comment on attachment 17210 [details]
Don't repaint invisible objects sometimes

Oops, missing a file.
Comment 11 mitz 2007-11-12 13:56:57 PST
Created attachment 17211 [details]
Don't repaint invisible objects sometimes

This is an ad-hoc patch that happens to solve the problem with AOL. Not sure the extra checks are useful on any other page.
Comment 12 Darin Adler 2007-11-12 18:58:46 PST
Comment on attachment 17211 [details]
Don't repaint invisible objects sometimes

r=me
Comment 13 mitz 2007-11-12 20:55:09 PST
Landed in <http://trac.webkit.org/projects/webkit/changeset/27743>.