Bug 80882 - flex-item-align: stretch should only grow, never shrink
: flex-item-align: stretch should only grow, never shrink
Status: RESOLVED FIXED
Product: WebKit
Classification: Unclassified
Component: Layout and Rendering
: 528+ (Nightly build)
: Unspecified Unspecified
: P2 Normal
Assigned To: Tony Chang
:
Depends on:
Blocks: 62048
  Show dependency treegraph
 
Reported: 2012-03-12 13:51 PDT by Tony Chang
Modified: 2012-03-19 12:23 PDT (History)
2 users (show)

See Also:


Attachments
Patch (12.76 KB, patch)
2012-03-16 15:11 PDT, Tony Chang
no flags Details | Formatted Diff | Diff
Patch for landing (12.78 KB, patch)
2012-03-16 15:35 PDT, Tony Chang
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Tony Chang 2012-03-12 13:51:49 PDT
9.1 of the layout algorithm says:
"If a flexbox item has ‘flex-item-align:stretch' and its preferred cross size is 'auto' and its margin-box cross size is smaller than cross-size of its flexbox line, its final cross size is set so that its margin-box cross size is equal to cross-size of its flexbox line."

http://dev.w3.org/csswg/css3-flexbox/#layout-algorithm
Comment 1 Tony Chang 2012-03-16 15:11:16 PDT
Created attachment 132390 [details]
Patch
Comment 2 Ojan Vafai 2012-03-16 15:31:42 PDT
Comment on attachment 132390 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=132390&action=review

> Source/WebCore/rendering/RenderFlexibleBox.cpp:1014
> +void RenderFlexibleBox::alignChildStretch(RenderBox* child, LayoutUnit lineCrossAxisExtent)

Nit: I find this method name awkward. It reads to me as if it's aligning the stretch itself (which is nonsensical). applyChildStretch perhaps?
Comment 3 Tony Chang 2012-03-16 15:35:40 PDT
Created attachment 132403 [details]
Patch for landing
Comment 4 Tony Chang 2012-03-16 15:36:00 PDT
(In reply to comment #2)
> (From update of attachment 132390 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=132390&action=review
> 
> > Source/WebCore/rendering/RenderFlexibleBox.cpp:1014
> > +void RenderFlexibleBox::alignChildStretch(RenderBox* child, LayoutUnit lineCrossAxisExtent)
> 
> Nit: I find this method name awkward. It reads to me as if it's aligning the stretch itself (which is nonsensical). applyChildStretch perhaps?

Now named applyStretchAlignmentToChild.
Comment 5 WebKit Review Bot 2012-03-16 17:16:55 PDT
Comment on attachment 132403 [details]
Patch for landing

Clearing flags on attachment: 132403

Committed r111094: <http://trac.webkit.org/changeset/111094>
Comment 6 WebKit Review Bot 2012-03-16 17:17:00 PDT
All reviewed patches have been landed.  Closing bug.
Comment 7 Tony Chang 2012-03-16 18:29:47 PDT
Reverted r111094 for reason:

broke

Committed r111103: <http://trac.webkit.org/changeset/111103>
Comment 8 Tony Chang 2012-03-19 12:11:22 PDT
Committed r111214: <http://trac.webkit.org/changeset/111214>
Comment 9 Tony Chang 2012-03-19 12:23:24 PDT
css3/flexbox/child-overflow.html was failing due to https://bugs.webkit.org/show_bug.cgi?id=77368, so I just landed with it marked as failing in test_expectations.txt.