<div dir="ltr"><span style="color: rgb(80, 0, 80); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); ">Hi all,</span><div style="color: rgb(80, 0, 80); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); ">
<br>I'm currently studying layout code in RenderBox very carefully as I work on this:<div><a style="color: rgb(17, 85, 204); ">https://bugs.webkit.org/show_bug.cgi?id=47738</a></div><div><a style="color: rgb(17, 85, 204); "><br>
</a>I'm a bit confused about something fairly subtle. In the overconstrained case where logical left, logical width, and logical right are all specified, we should ignore right (in ltr and left in rtl), correct?</div>
<div><br>First a clarification please: is the logical left actually the right side of the box in rtl mode?</div><div>Secondly, I'm confused about the availableSpace calculation (at line 2706 in my local branch):</div>
<div><br><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
const LayoutUnit availableSpace = containerLogicalWidth - (logicalLeftValue + logicalWidthValue + logicalRight.calcValue(containerLogicalWidth) + bordersPlusPadding);</blockquote></div><div><br>Why is logicalRight.calcValue(containerLogicalWidth) in that computation at all? It seems to me that the available space for left/right margin (in ltr) is where the box is positioned relative to the left edge of the container box plus its content width + bordersPlusPadding. I can't figure out how logicalRight plays a role here. Could someone please clarify?<br>
In fact, a couple of lines above I see the following comment:</div><div><br><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
// NOTE: It is not necessary to solve for 'right' in the over constrained<br>// case because the value is not used for any further calculations.</blockquote><div> </div></div><div>This seems to contradict the availableSpace line. Is this a stale comment or is this a bug, or am I just misunderstanding something?</div>
<div><br>Thanks,<br>Fady</div></div></div>