Closed Bug 593286 Opened 14 years ago Closed 14 years ago

White rectangle visible for a short time over acid3 test when reloading

Categories

(Core :: Web Painting, defect)

x86
Windows XP
defect
Not set
normal

Tracking

()

RESOLVED FIXED
Tracking Status
blocking2.0 --- final+

People

(Reporter: deleeuw+bugzilla, Assigned: tnikkel)

References

()

Details

(Whiteboard: regression)

Attachments

(2 files, 1 obsolete file)

User-Agent:       Mozilla/5.0 (Windows NT 5.1; rv:2.0b6pre) Gecko/20100902 Firefox/4.0b6pre
Build Identifier: Mozilla/5.0 (Windows NT 5.1; rv:2.0b6pre) Gecko/20100902 Firefox/4.0b6pre

Summary is enough.

Reproducible: Always

Steps to Reproduce:
1. Open http://acid3.acidtests.org/
2. When finished counting up to 97 press the reload button
3. Behold the white rectangle that is visible for a short time and then disappears
Actual Results:  
White rectangle over acid3 test.

Expected Results:  
No white rectangle over acid3 test.
The rectangle also shows when you navigate to another page.
Kai, do you have any regression date for this?
Whiteboard: regression
Probably caused by bug 130078.
Blocks: 130078
Status: UNCONFIRMED → NEW
Ever confirmed: true
Attached file reduced testcase
Assignee: nobody → tnikkel
There is a (transparent) iframe (well actually an object with data attribute that points to an html document) in the acid3 test, which is basically all you need to reproduce this. When we create the content viewer for the new document the mParent pointer on the docshell for the iframe gets nulled out (via the path nsDocShell::CreateContentViewer -> Embed -> SetupNewViewer -> DestroyChildren). But we still draw the old page for a while yet.

When we call nsContentUtils::IsChildOfSameType in PresShell::UpdateCanvasBackground (for an opaque bg color on the root content document) and nsSubDocumentFrame::BuildDisplayList (for a container layer on the root content document) it returns null because the parent pointer is null, not because it is the root content document.

So I think for drawing purposes, we need to look at the frames/views for this purpose, not the docshell.
Attached patch patch (obsolete) — Splinter Review
Attachment #472503 - Flags: review?(roc)
Attachment #472503 - Flags: approval2.0?
Attached patch patch v2Splinter Review
We need to return a correct value even when we don't have a root frame. The only thing different in this patch is the definition of IsRootContentDocument.
Attachment #472503 - Attachment is obsolete: true
Attachment #472786 - Flags: review?(roc)
Attachment #472503 - Flags: approval2.0?
Comment on attachment 472786 [details] [diff] [review]
patch v2

Prefer vm over VM
Attachment #472786 - Flags: review?(roc) → review+
Attachment #472786 - Flags: approval2.0?
Attachment #472786 - Flags: approval2.0?
http://hg.mozilla.org/mozilla-central/rev/588f3801b693
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
Depends on: 602794
Component: Layout: View Rendering → Layout: Web Painting
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: