Closed Bug 1258147 Opened 6 years ago Closed 6 years ago

Orthogonal writing-mode blockification is confused by display:contents

Categories

(Core :: CSS Parsing and Computation, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla48
Tracking Status
firefox48 --- fixed

People

(Reporter: MatsPalmgren_bugz, Assigned: MatsPalmgren_bugz)

Details

Attachments

(2 files)

No description provided.
Attached patch fixSplinter Review
Note: we now need to explicitly exclude text frames, because comparing it
with the *parent frame*'s context it can be different and we don't want to
make text frames inline-blocks.  We didn't need that before when we just
checked the *parent context* because a text frame's context can't possibly
have a different value for this inherited property.

(I wonder if we should actually wrap the text frame in an anonymous
inline-block frame in that case?  Let's do that separately if so.)
Attachment #8732567 - Flags: review?(jfkthame)
(In reply to Mats Palmgren (:mats) from comment #1)
> (I wonder if we should actually wrap the text frame in an anonymous
> inline-block frame in that case?  Let's do that separately if so.)

Or we could simply map display:contents to display:inline-block in that case,
since that's the only case where that can happen, as far as I know.  That
probably needs a CSS spec amendment though.
Comment on attachment 8732567 [details] [diff] [review]
fix

Review of attachment 8732567 [details] [diff] [review]:
-----------------------------------------------------------------

Yes, this seems reasonable.

I wonder if this is the only place we need such a fix? I think there are a few places where we check whether a frame is orthogonal to its parent, and we might need to do something similar.
Attachment #8732567 - Flags: review?(jfkthame) → review+
> I wonder if this is the only place we need such a fix?

I couldn't find anything else in the style system / frame constructor that checks
for the parent writing-mode.  I suspect there are quite a few places in layout
that does, but it seems likely we (correctly) use the parent frame there (I didn't
audit all layout code though).
Flags: in-testsuite+
https://hg.mozilla.org/mozilla-central/rev/3aa328a3a107
https://hg.mozilla.org/mozilla-central/rev/d831bc7749a1
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla48
You need to log in before you can comment on or make changes to this bug.