abs.pos. child of <legend> is not rendered

RESOLVED FIXED

Status

()

defect
RESOLVED FIXED
13 years ago
12 years ago

People

(Reporter: mats, Assigned: roc)

Tracking

({regression, testcase})

Trunk
x86
Linux
Points:
---
Dependency tree / graph
Bug Flags:
blocking1.9 -
wanted1.9 +
in-testsuite ?

Firefox Tracking Flags

(Not tracked)

Details

()

Attachments

(2 attachments)

Reporter

Comment 1

13 years ago
Posted file Frame dump
This is the frame tree from trunk. I also dumped from 1.8 branch (where the
testcase works) and the frame trees are identical AFAICT.
So this seems to sorta work on reflow branch, I think...  Not sure why.
Flags: blocking1.9a2?
Okay ... the problem here is that the placeholder is inside the <legend> frame, but the abs-pos frame is a child of the fieldset's anonymous block frame, which violates the invariant that the placeholder is a descendant of the out-of-flow frame's parent. We need to do BuildDisplayList on the abs-pos container before we reach the placeholder, because that needs to set up the abs-pos frames to be painted later through the placeholders. In this case we're seeing the placeholder before we've visited the abs-pos container so the abs-pos frame doesn't get painted.
Posted patch fixSplinter Review
fairly straightforward approach ... just process mContentFrame before mLegendFrame, because mContentFrame might have out-of-flow frames whose placeholders are under mLegendFrame, but the other way around is not possible. The patch ensures that we still keep content in the same z-order.

Hmm, actually we might currently have a bug where the legend should be z-ordered according to where it is in the content relative to other children of the fieldset. But at least this patch preserves current z-ordering.
Assignee: nobody → roc
Status: NEW → ASSIGNED
Attachment #229924 - Flags: superreview?(dbaron)
Attachment #229924 - Flags: review?(dbaron)
Flags: blocking1.9a2? → blocking1.9-
Whiteboard: [wanted-1.9]
Reporter

Comment 5

13 years ago
FWIW, the bug still occurs after the reflow branch landing.
The attached patch still fixes it.
Comment on attachment 229924 [details] [diff] [review]
fix

r+sr=dbaron.  Sorry for the delay.
Attachment #229924 - Flags: superreview?(dbaron)
Attachment #229924 - Flags: superreview+
Attachment #229924 - Flags: review?(dbaron)
Attachment #229924 - Flags: review+
checked in
Status: ASSIGNED → RESOLVED
Last Resolved: 13 years ago
Resolution: --- → FIXED
Flags: in-testsuite?
Flags: wanted1.9+
Whiteboard: [wanted-1.9]
You need to log in before you can comment on or make changes to this bug.