Preparing for CSS Writing Modes, I started adding to Servo geometry primitives in logical coordinates, similar to Gecko’s WritingModes.h

http://dxr.mozilla.org/mozilla-central/source/layout/generic/WritingModes.h

LogicalPoint and LogicalRect are documented as being in flow-relative space. Some methods of their take the container’s width as an additional parameter, for cases when the (physically) horizontal axis goes left instead of right. For example, in a X() getter:

    return aWritingMode.IsBidiLTR() ? I() : aContainerWidth - I();

No such thing is done for the (physically) vertical axis, which always goes "down". In the spec however, flow inline-start and inline-end (in flow-relative space) can go up as well as down, depending on the 'direction' and 'text-orientation' properties.

http://dev.w3.org/csswg/css-writing-modes/#logical-to-physical

So Gecko and the spec seem to have a different ideas of what flow-relative means. Is there a reason for this?

--
Simon Sapin
_______________________________________________
dev-servo mailing list
dev-servo@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-servo

Reply via email to