Bug 10550

Summary: Pages With iframes Flash During Core Image Transitions
Product: WebKit Reporter: Thaddeus Cooper <tcooper>
Component: Layout and RenderingAssignee: Nobody <webkit-unassigned>
Status: NEW    
Severity: Normal CC: mitz, simon.fraser
Priority: P2    
Version: 420+   
Hardware: Mac   
OS: OS X 10.4   

Thaddeus Cooper
Reported 2006-08-24 15:42:53 PDT
Download the following sample code: http://developer.apple.com/samplecode/CarbonCocoaCoreImageTab/index.html. This shows two webviews in two different tabs. In one tab point it at http://www.apple.com/ (any URL will work) in the second tab point to http://www.nomoreboxes.com/wcstore/. Now select the first tab to go back to the Apple site. The transition works correctly. Select the second tab and you'll notice that there is a flash that shows all the visible iframes before the transition starts. This seems to be on the mouse up event. I am able to duplicate this problem in both the shipping version of Webkit and I have had a report (from mitz) it also occurs in the nightly.
Attachments
mitz
Comment 1 2006-08-25 13:41:42 PDT
I think the problem reduces to the fact that WebHTMLView ends up painting its subviews into the window when it's sent a -cacheDisplayInRect:toBitmapImageRep: message. You can see this by creating a trivial browser in Interface Builder and adding a button that does something like NSRect frame = [webView frame]; NSBitmapImageRep *rep = [webView bitmapImageRepForCachingDisplayInRect:frame]; [webView cacheDisplayInRect:frame toBitmapImageRep:rep]; Load http://www.nomoreboxes.com/wcstore/ into the WebView, turn on Quartz Debug flashing and click the button. You'll see the iframes being painted into the window. I'm guessing that this has to do with WebHTMLView overriding private AppKit methods.
mitz
Comment 2 2006-08-25 13:46:38 PDT
(In reply to comment #1) > I'm guessing that this has to do with WebHTMLView overriding private AppKit > methods. I mean specifically private NSView drawing methods.
mitz
Comment 3 2009-01-03 18:04:57 PST
I wonder if <http://trac.webkit.org/changeset/35176> didn't fix this.
Note You need to log in before you can comment on or make changes to this bug.