Closed Bug 321751 Opened 19 years ago Closed 19 years ago

Calling Alert() in header causes background of page not to render

Categories

(Core :: Layout, defect, P1)

defect

Tracking

()

VERIFIED FIXED
mozilla1.9alpha1

People

(Reporter: andrew, Assigned: bzbarsky)

References

()

Details

(Keywords: testcase)

Attachments

(3 files, 1 obsolete file)

User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8) Gecko/20051111 Firefox/1.5 Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8) Gecko/20051111 Firefox/1.5 Background color is not rendered completly when an intial alert dialog comes up. Reproducible: Always Steps to Reproduce: 1.Load http://andrewwooldridge.com/testingstuff/bgbug.html 2.click the alert ok 3.view the resulting page Actual Results: The words "hello" are colored tan. The rest of the page is white. Expected Results: The entire page should be tan. The page will suddenly be the right background color if you resize the window.
Component: General → Layout
Product: Firefox → Core
QA Contact: general → layout
Version: unspecified → 1.8 Branch
Keywords: testcase
Confirming with trunk build 2005-12-28-08 of SeaMonkey on Windows XP.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Note that if you get a context menu anywhere on the page that results, its former popup area will be painted with the correct background color.
So we're somehow managing to not invalidate the canvas area when we insert the new body; I wonder why.
So yeah, this is a regression from bug 253951. But even before that patch, there was a problem -- just try loading the following URI in an about:blank document -- the background should become green, but doesn't... javascript:document.documentElement.removeChild(document.body); var bod = document.createElement("body"); bod.setAttribute("bgcolor", "#00ff00"); void(document.documentElement.appendChild(bod)) I suppose we could do the same things in ContentAppended/Inserted/Removed as we do in RecreateFramesForContent in terms of looking to see whether the background is propagated to the canvas, etc... Is there a better idea, though? roc? David? Mats?
Blocks: 253951
Flags: blocking1.9a1?
OS: Windows XP → All
Hardware: PC → All
Version: 1.8 Branch → Trunk
Attached patch Proposed patch (obsolete) — Splinter Review
Summary of changes: 1) Remove some aPresContext and unused aViewManager params 2) Add a new method to handle invalidation and call it in ContentAppended/Inserted/Removed 3) Remove the invalidate in RecreateFramesForContent (it's handled by the other code now) Note that I had to leave part of the FindBackground stuff, because I wasn't sure how else to find the right frame to invalidate...
Assignee: nobody → bzbarsky
Status: NEW → ASSIGNED
Attachment #208055 - Flags: superreview?(roc)
Attachment #208055 - Flags: review?(roc)
Another testcase (that is not regressed): in a blank document, run: javascript:var s = document.body.style; void(s.cssText = "display:inline; background: green")
Priority: -- → P1
Target Milestone: --- → mozilla1.9alpha
Attachment #208055 - Flags: superreview?(roc)
Attachment #208055 - Flags: superreview+
Attachment #208055 - Flags: review?(roc)
Attachment #208055 - Flags: review+
+ * This method invalidates the canvas when frames are reconstructed for a node I think "removed or added" instead of "reconstructed" + * that might have its background propagated to the canvas. I would add ", i.e., a document root node or an HTML BODY which is a child of the root node".
Attachment #208055 - Attachment is obsolete: true
Fixed on trunk.
Status: ASSIGNED → RESOLVED
Closed: 19 years ago
Flags: blocking1.9a1?
Resolution: --- → FIXED
Verified FIXED using both testcases under SeaMonkey 1.5a;Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a1) Gecko/20060116 Mozilla/1.0.
Status: RESOLVED → VERIFIED
*** Bug 362366 has been marked as a duplicate of this bug. ***
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: