[webkit-reviews] review denied: [Bug 69957] display:inline-block elements don't correctly handle orthogonal writing-modes : [Attachment 110788] Patch

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Oct 13 14:23:15 PDT 2011


Dave Hyatt <hyatt at apple.com> has denied Ojan Vafai <ojan at chromium.org>'s
request for review:
Bug 69957: display:inline-block elements don't correctly handle orthogonal
writing-modes
https://bugs.webkit.org/show_bug.cgi?id=69957

Attachment 110788: Patch
https://bugs.webkit.org/attachment.cgi?id=110788&action=review

------- Additional Comments from Dave Hyatt <hyatt at apple.com>
View in context: https://bugs.webkit.org/attachment.cgi?id=110788&action=review


> Source/WebCore/rendering/RenderBlock.cpp:5247
> +	       toRenderBox(child)->computeLogicalHeight();

Yeah this is not quite right. It will use a height from a previous layout for
the auto case, and that's pretty weird. I think you need to set the intrinsic
height to just be borders + padding, then do computeLogicalHeight, and then use
that result. However in addition, this computation needs to not have side
effects, i.e., you need to set the height back to what it was when you're
finished.

Note that I'm approaching the point with region refactoring that I'm probably
going to give you a way to compute the height/width without updating the box's
member variables, since this hack of "compute it but then set it back" is
starting to become really widespread.

So anyway to sum up:

(1) Cache the old height
(2) Set the new height to be borders and padding in the logical height
direction.
(3) Compute the logical height
(4) Cache that as your preferred logical width.
(5) Set it back to the old height.


More information about the webkit-reviews mailing list