Bug 70086

Summary: When incremental loading is suppressed for composited content, black flashes can occur before the first paint
Product: WebKit Reporter: Andy Estes <aestes>
Component: Layout and RenderingAssignee: Andy Estes <aestes>
Status: RESOLVED INVALID    
Severity: Normal CC: darin, sam, simon.fraser
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 72106, 73641    
Bug Blocks:    
Attachments:
Description Flags
Patch simon.fraser: review-

Description Andy Estes 2011-10-13 20:36:52 PDT
When incremental loading is suppressed for composited content, black flashes can occur before the first paint
Comment 1 Andy Estes 2011-10-13 20:37:42 PDT
<rdar://problem/10242404>
Comment 2 Andy Estes 2011-10-14 14:41:53 PDT
Created attachment 111081 [details]
Patch
Comment 3 Simon Fraser (smfr) 2011-10-14 14:52:15 PDT
Comment on attachment 111081 [details]
Patch

Andy and I are still discussing this.
Comment 4 Andy Estes 2011-11-11 02:12:07 PST
After talking to Simon I agree the better approach here is to freeze the layer tree during loading, similar to what we do in WebKit2 to prevent flashes when navigating away from a composited page. I'm going to do this in three steps:

- Consolidate the two Mac code paths that install run loop observers for layer tree syncing into a single class that has the ability to install and uninstall the observer.
- Add the layer tree freezing logic for Mac WebKit1 and WebKit2 using this new class.
- Add a separate implementation for Apple's Windows port, which uses a different mechanism for layer tree syncing.
Comment 5 Sam Weinig 2012-02-10 15:57:58 PST
Andy fixed this another way.