Bug 1673677 Comment 14 Edit History

Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.

(In reply to David Shin[:dshin] from comment #13)
> So... It seems like removing the assert will do?

I think the question here is, does it make sense that we're asking **a row** to synthesize a baseline here (the `nsTableRowFrame::GetRowBaseline` call that you mentioned), with respect to a writing-mode whose baseline-alignment is orthogonal (i.e. not related to) the layout of that row?

This seems analogous to a scenario where e.g. we have an `inline-block` with several lines of text, and we placed the inline-block into an orthogonal flow, and we determined its baseline by asking its first line to synthesize one for us.  That doesn't make sense, since baseline alignment is happening in the wrong axis for a line-of-text in this inline-block to have anything meaningful to tell us.

So: probably we should be bailing out (i.e. falling back to a "synthesize a baseline based on our border-box" behavior) higher up, in one of the nsTableFrame methods.
(In reply to David Shin[:dshin] from comment #13)
> So... It seems like removing the assert will do?

I think the question here is, does it make sense that we're asking **a table-row** to synthesize a baseline here (the `nsTableRowFrame::GetRowBaseline` call that you mentioned), with respect to a writing-mode whose baseline-positioning is actually orthogonal (i.e. not related to) the layout of the table-row?

This seems analogous to a scenario where e.g. we have an `inline-block` with several lines of text, and we placed the inline-block into an orthogonal flow, and we determined its baseline by asking its first line to synthesize one for us.  That doesn't make sense, since baseline alignment is happening in the wrong axis for a line-of-text in this inline-block to have anything meaningful to tell us.

So: probably we should be bailing out (i.e. falling back to a "synthesize a baseline based on our border-box" behavior) higher up, in one of the nsTableFrame methods.
(In reply to David Shin[:dshin] from comment #13)
> So... It seems like removing the assert will do?

I think the question here is, does it make sense that we're asking **a table-row** to synthesize a baseline here (the `nsTableRowFrame::GetRowBaseline` call that you mentioned), with respect to a writing-mode whose baseline-positioning is actually orthogonal (i.e. not related to) the layout of the table-row?

This seems analogous to a scenario where e.g. we have an `inline-block` with several lines of text, and we placed the inline-block into an orthogonal flow, and we (hypothetically) determined its baseline by asking its first line to synthesize one for us.  (We don't actually do this; I'm just presenting it as an analogy.)  This would not make sense, since baseline alignment is happening in the wrong axis for any one line-of-text in this orthogonal-to-its-surroundings inline-block to have anything meaningful to tell us.

So: probably we should be bailing out (i.e. falling back to a "synthesize a baseline based on our border-box" behavior) higher up, in one of the nsTableFrame methods.

Back to Bug 1673677 Comment 14