Make xul popups an abspos containing block
Categories
(Core :: Layout, task)
Tracking
()
People
(Reporter: bgrins, Unassigned)
References
Details
Discussion at:
- https://bugzilla.mozilla.org/show_bug.cgi?id=1492582#c39
- https://bugzilla.mozilla.org/show_bug.cgi?id=1492582#c43
- https://bugzilla.mozilla.org/show_bug.cgi?id=1492582#c48
It turns out there's a workaround for Bug 1492582 (html root node in browser.xhtml) by removing a position: absolute
CSS rule (https://bugzilla.mozilla.org/show_bug.cgi?id=1492582#c49 / https://searchfox.org/mozilla-central/rev/1133b6716d9a8131c09754f3f29288484896b8b6/browser/base/content/browser.css#120). So this might not turn out to be a true blocker for that bug but it'd be nice if we didn't accidentally bump into this problem again if a rule like that got re-added, and it sounds like this makes sense to do anyway:
(In reply to Boris Zbarsky [:bzbarsky, bz on IRC] from comment #48)
Making the popup an abspos containing block would make a lot of sense to me.As far as current behavior in XUL: the root is not an abspos containing block in xul per the first link in comment 43 and neither is the popup (it's explicitly
FCDATA_SKIP_ABSPOS_PUSH
, like most XUL frame construction data).GetGeometricParent
will return the content parent, sure, per the second link in comment 43. But then when we go tonsFrameConstructorState::AddChild
we will presumably get null inoutOfFlowFrameList->containingBlock
and therefore not actually put the thing out of flow at all. There would be no placeholder, and it would just be treated as if it were not abspos in terms of rendering. This does raise the question of why it has abspos styling at all, assuming my analysis is correct...
Updated•5 years ago
|
Updated•2 years ago
|
Description
•