New issue
Advanced search Search tips
Starred by 4 users

Issue metadata

Status: Fixed
Owner:
Closed: Sep 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 2
Type: Feature

Blocked on:
issue 412410
issue 575182
issue 668639

Blocking:
issue 234199



Sign in to add a comment
link

Issue 249451: [CSS Grid Layout] Implement row-axis Alignment

Reported by jchaffraix@chromium.org, Jun 13 2013 Project Member

Issue description

This is currently covers 2 properties that we don't implement: 'justify-self' and 'justify-items'.
 

Comment 1 by jchaffraix@chromium.org, Jun 13 2013

Blocking: chromium:79180

Comment 2 by jchaffraix@chromium.org, Jul 17 2013

Blocking: chromium:234199

Comment 3 by jchaffraix@chromium.org, Jul 17 2013

Blocking: -chromium:79180

Comment 4 by bugdroid1@chromium.org, Dec 18 2013

Project Member
The following revision refers to this bug:
    http://src.chromium.org/viewvc/blink?view=rev&rev=164085

------------------------------------------------------------------------
r164085 | steveblock@chromium.org | 2013-12-18T12:38:36.848216Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/animation/KeyframeEffectModelTest.cpp?r1=164085&r2=164084&pathrev=164085

Fix AnimationKeyframeEffectModel.MultipleProperties to not depend on the order of CSS property IDs

No functional change.

BUG= 249451 
R=jchaffraix@chromium.org

Review URL: https://codereview.chromium.org/111683005
------------------------------------------------------------------------

Comment 5 by bugdroid1@chromium.org, Jan 8 2014

Project Member
The following revision refers to this bug:
    http://src.chromium.org/viewvc/blink?view=rev&rev=164685

------------------------------------------------------------------------
r164685 | jchaffraix@chromium.org | 2014-01-08T15:14:40.911093Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/style/RenderStyleConstants.h?r1=164685&r2=164684&pathrev=164685
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/style/RenderStyle.h?r1=164685&r2=164684&pathrev=164685
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSProperty.cpp?r1=164685&r2=164684&pathrev=164685
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/frame/UseCounter.cpp?r1=164685&r2=164684&pathrev=164685
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/style/StyleRareNonInheritedData.cpp?r1=164685&r2=164684&pathrev=164685
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/parser/BisonCSSParser-in.cpp?r1=164685&r2=164684&pathrev=164685
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSValueKeywords.in?r1=164685&r2=164684&pathrev=164685
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/parser/BisonCSSParser.h?r1=164685&r2=164684&pathrev=164685
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/resolver/StyleBuilderCustom.cpp?r1=164685&r2=164684&pathrev=164685
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/style/StyleRareNonInheritedData.h?r1=164685&r2=164684&pathrev=164685
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSPropertyNames.in?r1=164685&r2=164684&pathrev=164685
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/RuntimeCSSEnabled.cpp?r1=164685&r2=164684&pathrev=164685
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/webexposed/css-properties-as-js-properties-expected.txt?r1=164685&r2=164684&pathrev=164685
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment/parse-justify-self.html?r1=164685&r2=164684&pathrev=164685
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment?r1=164685&r2=164684&pathrev=164685
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSComputedStyleDeclaration.cpp?r1=164685&r2=164684&pathrev=164685
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSPrimitiveValueMappings.h?r1=164685&r2=164684&pathrev=164685
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment/parse-justify-self-expected.txt?r1=164685&r2=164684&pathrev=164685

[CSS Grid Layout] Implement 'justify-self' parsing

This change adds the property from CSS 3 Box Alignment
and implements the parsing.

For now, the property is protected by the CSS Grid Layout
runtime flag as it is the only consumer but we may have
to introduce a new flag for the other layouts (block, flex,
...) as defined by the Alignment spec.

This change also fixes a bug uncovered in color parsing code,
where we would consider invalid colors as valid system colors.

BUG= 249451 

Review URL: https://codereview.chromium.org/17090005
------------------------------------------------------------------------

Comment 6 by bugdroid1@chromium.org, Jan 10 2014

Project Member
The following revision refers to this bug:
    http://src.chromium.org/viewvc/blink?view=rev&rev=164817

------------------------------------------------------------------------
r164817 | jchaffraix@chromium.org | 2014-01-09T23:34:37.829231Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/style/RenderStyleConstants.h?r1=164817&r2=164816&pathrev=164817
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/style/RenderStyle.h?r1=164817&r2=164816&pathrev=164817
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSComputedStyleDeclaration.cpp?r1=164817&r2=164816&pathrev=164817
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/parser/BisonCSSParser-in.cpp?r1=164817&r2=164816&pathrev=164817
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/parser/BisonCSSParser.h?r1=164817&r2=164816&pathrev=164817
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSPrimitiveValueMappings.h?r1=164817&r2=164816&pathrev=164817
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/style/StyleRareNonInheritedData.h?r1=164817&r2=164816&pathrev=164817

Broaden justify-self's parsing name

This is in preparation of migrating align-self, align-items
and justify-items to the CSS 3 Alignment syntax.

The current naming was too tied to justify-self and needs to
be broadened. This will reduce the follow-up implementations'
patches.

BUG= 249451 

Review URL: https://codereview.chromium.org/131773002
------------------------------------------------------------------------

Comment 7 by bugdroid1@chromium.org, Jan 17 2014

Project Member
The following revision refers to this bug:
    http://src.chromium.org/viewvc/blink?view=rev&rev=165264

------------------------------------------------------------------------
r165264 | jchaffraix@chromium.org | 2014-01-17T01:01:34.303995Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/RenderFlexibleBox.h?r1=165264&r2=165263&pathrev=165264
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment/parse-align-items.html?r1=165264&r2=165263&pathrev=165264
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/style/StyleRareNonInheritedData.cpp?r1=165264&r2=165263&pathrev=165264
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/parser/BisonCSSParser-in.cpp?r1=165264&r2=165263&pathrev=165264
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/resolver/StyleBuilderCustom.cpp?r1=165264&r2=165263&pathrev=165264
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/style/StyleRareNonInheritedData.h?r1=165264&r2=165263&pathrev=165264
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment/parse-align-self.html?r1=165264&r2=165263&pathrev=165264
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/css3/flexbox/css-properties.html?r1=165264&r2=165263&pathrev=165264
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment/parse-align-items-expected.txt?r1=165264&r2=165263&pathrev=165264
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/RenderBox.cpp?r1=165264&r2=165263&pathrev=165264
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSComputedStyleDeclaration.cpp?r1=165264&r2=165263&pathrev=165264
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment/parse-align-self-expected.txt?r1=165264&r2=165263&pathrev=165264
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/css3/flexbox/css-properties-expected.txt?r1=165264&r2=165263&pathrev=165264
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSPrimitiveValueMappings.h?r1=165264&r2=165263&pathrev=165264
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/svg/css/getComputedStyle-basic-expected.txt?r1=165264&r2=165263&pathrev=165264
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/RenderMenuList.cpp?r1=165264&r2=165263&pathrev=165264
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/RenderFullScreen.cpp?r1=165264&r2=165263&pathrev=165264
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/style/RenderStyleConstants.h?r1=165264&r2=165263&pathrev=165264
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/RenderFlexibleBox.cpp?r1=165264&r2=165263&pathrev=165264
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSProperties.in?r1=165264&r2=165263&pathrev=165264
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/style/RenderStyle.h?r1=165264&r2=165263&pathrev=165264

Upgrade align-self and align-items parsing to CSS 3

This change migrates the 2 properties to the CSS 3 Alignment
parsing. The new parsing is identical to how we parse
'justify-self'. The 2 properties need to be migrated together
as they are used in tandem in CSSComputedStyleDeclaration.

This change also removes EAlignItems as it is now unused.

BUG= 249451 

Review URL: https://codereview.chromium.org/134013002
------------------------------------------------------------------------

Comment 8 by bugdroid1@chromium.org, Jan 29 2014

Project Member
The following revision refers to this bug:
    http://src.chromium.org/viewvc/blink?view=rev&rev=166002

------------------------------------------------------------------------
r166002 | jchaffraix@chromium.org | 2014-01-29T06:14:01.639498Z

Changed paths:
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/justify-self-cell.html?r1=166002&r2=166001&pathrev=166002
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/RenderGrid.cpp?r1=166002&r2=166001&pathrev=166002
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/RenderGrid.h?r1=166002&r2=166001&pathrev=166002
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/justify-self-cell-expected.txt?r1=166002&r2=166001&pathrev=166002

Implement justify-self handling in grid

This is a partial but good enough support for 'justify-self'.
The remaining cases (auto, baseline and stretch) require more
thoughts and/or other patches.

BUG= 249451 

Review URL: https://codereview.chromium.org/144323002
------------------------------------------------------------------------

Comment 9 by bugdroid1@chromium.org, Jul 1 2014

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=177297

------------------------------------------------------------------
r177297 | jfernandez@igalia.com | 2014-07-01T11:42:53.449853Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/style/StyleRareNonInheritedData.h?r1=177297&r2=177296&pathrev=177297
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSPropertyNames.in?r1=177297&r2=177296&pathrev=177297
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/parser/CSSPropertyParser.cpp?r1=177297&r2=177296&pathrev=177297
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/RuntimeCSSEnabled.cpp?r1=177297&r2=177296&pathrev=177297
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/webexposed/css-properties-as-js-properties-expected.txt?r1=177297&r2=177296&pathrev=177297
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/RenderGrid.cpp?r1=177297&r2=177296&pathrev=177297
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/parser/CSSPropertyParser.h?r1=177297&r2=177296&pathrev=177297
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment/parse-justify-items-expected.txt?r1=177297&r2=177296&pathrev=177297
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment/resources/alignment-parsing-utils.js?r1=177297&r2=177296&pathrev=177297
   M http://src.chromium.org/viewvc/blink/trunk/Source/build/scripts/templates/StyleBuilderFunctions.cpp.tmpl?r1=177297&r2=177296&pathrev=177297
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSComputedStyleDeclaration.cpp?r1=177297&r2=177296&pathrev=177297
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSPrimitiveValueMappings.h?r1=177297&r2=177296&pathrev=177297
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment/resources?r1=177297&r2=177296&pathrev=177297
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/style/RenderStyleConstants.h?r1=177297&r2=177296&pathrev=177297
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/RenderFlexibleBox.cpp?r1=177297&r2=177296&pathrev=177297
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSProperties.in?r1=177297&r2=177296&pathrev=177297
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/style/RenderStyle.h?r1=177297&r2=177296&pathrev=177297
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSProperty.cpp?r1=177297&r2=177296&pathrev=177297
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/frame/UseCounter.cpp?r1=177297&r2=177296&pathrev=177297
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/style/StyleRareNonInheritedData.cpp?r1=177297&r2=177296&pathrev=177297
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSValueKeywords.in?r1=177297&r2=177296&pathrev=177297
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment/parse-justify-items.html?r1=177297&r2=177296&pathrev=177297
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/resolver/StyleAdjuster.cpp?r1=177297&r2=177296&pathrev=177297

[CSS Grid Layout] Implement 'justify-items' parsing

This change adds the property from CSS 3 Box Alignment
and implements the parsing.

As the justify-self property,  for now is protected by the CSS Grid Layout
runtime flag.
 
BUG= 249451 

Review URL: https://codereview.chromium.org/333423005
-----------------------------------------------------------------

Comment 10 by bugdroid1@chromium.org, Jul 2 2014

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=177384

------------------------------------------------------------------
r177384 | jfernandez@igalia.com | 2014-07-02T13:30:44.718347Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment/parse-justify-items.html?r1=177384&r2=177383&pathrev=177384
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/resolver/StyleBuilderCustom.cpp?r1=177384&r2=177383&pathrev=177384
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSProperties.in?r1=177384&r2=177383&pathrev=177384
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/style/RenderStyle.h?r1=177384&r2=177383&pathrev=177384
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment/parse-justify-items-expected.txt?r1=177384&r2=177383&pathrev=177384
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment/resources/alignment-parsing-utils.js?r1=177384&r2=177383&pathrev=177384
   M http://src.chromium.org/viewvc/blink/trunk/Source/build/scripts/templates/StyleBuilderFunctions.cpp.tmpl?r1=177384&r2=177383&pathrev=177384

Properly managing overlfow-aligment for inherit and initial.

The CSS3 Alignment properties allow pairs as values; that's the case of
overflow-aligment and "legacy" keyword. The StyleBulder should define
custom "initial" and "inherit" handers to properly managing such values.

BUG= 249451 

Review URL: https://codereview.chromium.org/361113002
-----------------------------------------------------------------

Comment 11 by bugdroid1@chromium.org, Jul 31 2014

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=179307

------------------------------------------------------------------
r179307 | jfernandez@igalia.com | 2014-07-31T12:41:16.283802Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment/parse-justify-self-expected.txt?r1=179307&r2=179306&pathrev=179307
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/svg/css/getComputedStyle-basic-expected.txt?r1=179307&r2=179306&pathrev=179307
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/style/RenderStyle.cpp?r1=179307&r2=179306&pathrev=179307
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt?r1=179307&r2=179306&pathrev=179307
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/RenderFlexibleBox.cpp?r1=179307&r2=179306&pathrev=179307
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/style/RenderStyle.h?r1=179307&r2=179306&pathrev=179307
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment/parse-align-items.html?r1=179307&r2=179306&pathrev=179307
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css/getComputedStyle/resources/property-names.js?r1=179307&r2=179306&pathrev=179307
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment/parse-justify-items.html?r1=179307&r2=179306&pathrev=179307
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/resolver/StyleAdjuster.cpp?r1=179307&r2=179306&pathrev=179307
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment/parse-align-self.html?r1=179307&r2=179306&pathrev=179307
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/css3/flexbox/css-properties.html?r1=179307&r2=179306&pathrev=179307
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/resolver/StyleAdjuster.h?r1=179307&r2=179306&pathrev=179307
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment/parse-align-items-expected.txt?r1=179307&r2=179306&pathrev=179307
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment/parse-justify-self.html?r1=179307&r2=179306&pathrev=179307
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/RenderGrid.cpp?r1=179307&r2=179306&pathrev=179307
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment/parse-justify-items-expected.txt?r1=179307&r2=179306&pathrev=179307
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment/resources/alignment-parsing-utils.js?r1=179307&r2=179306&pathrev=179307
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSComputedStyleDeclaration.cpp?r1=179307&r2=179306&pathrev=179307
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt?r1=179307&r2=179306&pathrev=179307
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment/parse-align-self-expected.txt?r1=179307&r2=179306&pathrev=179307
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/css3/flexbox/css-properties-expected.txt?r1=179307&r2=179306&pathrev=179307

[CSS Grid Layout] Adapting align-self, align-items and justify-self to 
the last CSS 3 spec.

Added support and test cases for the new values, baseline last-baseline,
flex-start, flex-end. Properly set the initial value to 'auto' in all properties. 

Resolving the 'auto' Computed Value in the StyleAdjuster class, so it's
valid for both, CSSComputedStyleDeclaration and the corresponding
RenderObjects.

BUG= 249451 ,  376823 

Review URL: https://codereview.chromium.org/363133003
-----------------------------------------------------------------

Comment 12 by jfernan...@igalia.com, Aug 18 2014

Labels: Cr-Blink-Rendering-Grid

Comment 13 by bugdroid1@chromium.org, Aug 26 2014

Project Member

Comment 14 by ojan@chromium.org, Oct 16 2014

Cc: -ojan@chromium.org

Comment 15 by bugdroid1@chromium.org, Oct 23 2014

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=184309

------------------------------------------------------------------
r184309 | jfernandez@igalia.com | 2014-10-23T23:23:45.598724Z

Changed paths:
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-align-justify-overflow-expected.txt?r1=184309&r2=184308&pathrev=184309
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/RenderGrid.cpp?r1=184309&r2=184308&pathrev=184309
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-align-justify-overflow.html?r1=184309&r2=184308&pathrev=184309

[CSS Grid Layout] overflow-position keyword for align and justify properties.

When the alignment subject is larger than the alignment container, it will
overflow. Some alignment modes, if honored in this situation, may cause data
loss; an overflow alignment mode can be explicitly specified to avoid this.

BUG= 249451 ,  376823 

Review URL: https://codereview.chromium.org/614263005
-----------------------------------------------------------------

Comment 16 by bugdroid1@chromium.org, Oct 30 2014

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=184660

------------------------------------------------------------------
r184660 | jfernandez@igalia.com | 2014-10-30T18:04:03.512060Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/parser/CSSPropertyParser.h?r1=184660&r2=184659&pathrev=184660
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/parser/CSSParserFastPaths.cpp?r1=184660&r2=184659&pathrev=184660
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt?r1=184660&r2=184659&pathrev=184660
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSComputedStyleDeclaration.cpp?r1=184660&r2=184659&pathrev=184660
   A http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSContentDistributionValue.cpp?r1=184660&r2=184659&pathrev=184660
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSPrimitiveValueMappings.h?r1=184660&r2=184659&pathrev=184660
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/svg/css/getComputedStyle-basic-expected.txt?r1=184660&r2=184659&pathrev=184660
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt?r1=184660&r2=184659&pathrev=184660
   A http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSContentDistributionValue.h?r1=184660&r2=184659&pathrev=184660
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSValue.cpp?r1=184660&r2=184659&pathrev=184660
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/core.gypi?r1=184660&r2=184659&pathrev=184660
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/style/RenderStyleConstants.h?r1=184660&r2=184659&pathrev=184660
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/RenderFullScreen.cpp?r1=184660&r2=184659&pathrev=184660
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/RenderFlexibleBox.cpp?r1=184660&r2=184659&pathrev=184660
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSProperties.in?r1=184660&r2=184659&pathrev=184660
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSValue.h?r1=184660&r2=184659&pathrev=184660
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment/parse-justify-content.html?r1=184660&r2=184659&pathrev=184660
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/style/RenderStyle.h?r1=184660&r2=184659&pathrev=184660
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/style/StyleRareNonInheritedData.cpp?r1=184660&r2=184659&pathrev=184660
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/CSSValueKeywords.in?r1=184660&r2=184659&pathrev=184660
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/resolver/StyleAdjuster.cpp?r1=184660&r2=184659&pathrev=184660
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/resolver/StyleBuilderCustom.cpp?r1=184660&r2=184659&pathrev=184660
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/alignment/parse-justify-content-expected.txt?r1=184660&r2=184659&pathrev=184660
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/style/StyleRareNonInheritedData.h?r1=184660&r2=184659&pathrev=184660
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/parser/CSSPropertyParser.cpp?r1=184660&r2=184659&pathrev=184660

[CSS Grid Layout] Upgrade justify-content parsing to CSS3 Box Alignment spec.

Upgrade the justify-content property to the last CSS3 Box Alignment
specification. It defines a different enumeration for Positional
and Distribution alignment, which requires changes in the FexibleBox
impementation.

BUG= 249451 

Review URL: https://codereview.chromium.org/636993002
-----------------------------------------------------------------

Comment 17 by bugdroid1@chromium.org, Nov 3 2014

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=184782

------------------------------------------------------------------
r184782 | jfernandez@igalia.com | 2014-11-03T00:19:10.111602Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/RenderBox.cpp?r1=184782&r2=184781&pathrev=184782
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/RenderGrid.h?r1=184782&r2=184781&pathrev=184782
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-align-justify-stretch-expected.txt?r1=184782&r2=184781&pathrev=184782
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-align.html?r1=184782&r2=184781&pathrev=184782
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/css/resolver/StyleAdjuster.cpp?r1=184782&r2=184781&pathrev=184782
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/style/RenderStyle.cpp?r1=184782&r2=184781&pathrev=184782
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/justify-self-cell.html?r1=184782&r2=184781&pathrev=184782
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-align-justify-stretch.html?r1=184782&r2=184781&pathrev=184782
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/RenderFlexibleBox.cpp?r1=184782&r2=184781&pathrev=184782
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/RenderGrid.cpp?r1=184782&r2=184781&pathrev=184782
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/style/RenderStyle.h?r1=184782&r2=184781&pathrev=184782

[CSS Grid Layout] Stretch value for align and justify properties.

If the ‘width’ or ‘height’ (as appropriate) of the alignment subject
is ‘auto’, its used value is the length necessary to make the alignment
subject’s outer size as close to the size of the alignment container as
possible, while still respecting the constraints imposed by
‘min/max-width/height’. Otherwise, this is equivalent to ‘start’.

BUG= 249451 ,  376823 

Review URL: https://codereview.chromium.org/613273002
-----------------------------------------------------------------

Comment 18 by bugdroid1@chromium.org, Nov 21 2014

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=185747

------------------------------------------------------------------
r185747 | jfernandez@igalia.com | 2014-11-21T03:34:12.171786Z

Changed paths:
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-justify-content-expected.txt?r1=185747&r2=185746&pathrev=185747
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/RenderGrid.cpp?r1=185747&r2=185746&pathrev=185747
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-justify-content.html?r1=185747&r2=185746&pathrev=185747
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/RenderGrid.h?r1=185747&r2=185746&pathrev=185747

[CSS Grid Layout] Partial implementation of justify-content for Grid.

Partial implementation of Content Distribution alignment defined by
the justify-content CSS property. There is no support yet for overflow
and all the content-distribution values use for now the corresponding 
fallback content-position value.

Both content-position and content-distribution values are implemented
in both horizontal and vertical modes.

BUG= 249451 

Review URL: https://codereview.chromium.org/706903003
-----------------------------------------------------------------

Comment 19 by laforge@google.com, Jan 9 2015

Labels: -Cr-Blink-Rendering-Grid Cr-Blink-Layout-Grid
Migrate from Cr-Blink-Rendering-Grid to Cr-Blink-Layout-Grid

Comment 20 by laforge@google.com, Jan 9 2015

Labels: -Cr-Blink-Rendering Cr-Blink-Layout
Migrate from Cr-Blink-Rendering to Cr-Blink-Layout

Comment 21 by jfernan...@igalia.com, Jan 21 2015

Owner: jfernan...@igalia.com

Comment 22 by bugdroid1@chromium.org, Jan 26 2015

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=188985

------------------------------------------------------------------
r188985 | jfernandez@igalia.com | 2015-01-26T18:52:37.083812Z

Changed paths:
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-content-alignment-overflow-expected.txt?r1=188985&r2=188984&pathrev=188985
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/RenderGrid.cpp?r1=188985&r2=188984&pathrev=188985
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-content-alignment-overflow.html?r1=188985&r2=188984&pathrev=188985
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/rendering/RenderGrid.h?r1=188985&r2=188984&pathrev=188985

[CSS Grid Layout] Handling overflow on Content Alignment properties.

The Content Alignment syntax defined in the Box Alignment specification
allows using the Overflow Alignment keyword as part of the align-content
and justify-content values.

This patch implements the logic to handle the cases where the grid tracks
overflow the grid container boundaries.

BUG= 376823   249451 

Review URL: https://codereview.chromium.org/855643005
-----------------------------------------------------------------

Comment 23 by bugdroid1@chromium.org, Apr 20 2015

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=194034

------------------------------------------------------------------
r194034 | jfernandez@igalia.com | 2015-04-20T16:41:42.212361Z

Changed paths:
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-align-content-distribution-vertical-lr-expected.txt?r1=194034&r2=194033&pathrev=194034
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-align-content-distribution-vertical-rl-expected.txt?r1=194034&r2=194033&pathrev=194034
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-align-content-expected.txt?r1=194034&r2=194033&pathrev=194034
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-justify-content-distribution-vertical-lr-expected.txt?r1=194034&r2=194033&pathrev=194034
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-justify-content-distribution-vertical-rl-expected.txt?r1=194034&r2=194033&pathrev=194034
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-justify-content-expected.txt?r1=194034&r2=194033&pathrev=194034
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-align-content-distribution.html?r1=194034&r2=194033&pathrev=194034
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-justify-content-distribution.html?r1=194034&r2=194033&pathrev=194034
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-align-content-vertical-lr.html?r1=194034&r2=194033&pathrev=194034
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-align-content-vertical-rl.html?r1=194034&r2=194033&pathrev=194034
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-content-alignment-overflow.html?r1=194034&r2=194033&pathrev=194034
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-justify-content-vertical-rl.html?r1=194034&r2=194033&pathrev=194034
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-justify-content-vertical-lr.html?r1=194034&r2=194033&pathrev=194034
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-align-content-distribution-expected.txt?r1=194034&r2=194033&pathrev=194034
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-justify-content-distribution-expected.txt?r1=194034&r2=194033&pathrev=194034
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/layout/LayoutGrid.cpp?r1=194034&r2=194033&pathrev=194034
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-align-content-distribution-vertical-rl.html?r1=194034&r2=194033&pathrev=194034
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-align-content-distribution-vertical-lr.html?r1=194034&r2=194033&pathrev=194034
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-align-content.html?r1=194034&r2=194033&pathrev=194034
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-justify-content-distribution-vertical-lr.html?r1=194034&r2=194033&pathrev=194034
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-justify-content-distribution-vertical-rl.html?r1=194034&r2=194033&pathrev=194034
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/layout/LayoutGrid.h?r1=194034&r2=194033&pathrev=194034
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-justify-content.html?r1=194034&r2=194033&pathrev=194034

[CSS Grid Layout] Content Distirbution support for grid.

Content Alignment is performed using the align-content and justify-content
CSS properties, however, the <content-distribution> values were not allowed
for Grid Layout until the last version of the spec.

The <content-distribution> values also consider the grid tracks as the
alignment subject but instead of moving them along the grid container's
free available space, it distribute such space around and/or between the
tracks.  

BUG= 376823 ,  249451 

Review URL: https://codereview.chromium.org/1031853002
-----------------------------------------------------------------

Comment 24 by bugdroid1@chromium.org, May 18 2015

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=195488

------------------------------------------------------------------
r195488 | jfernandez@igalia.com | 2015-05-18T23:19:51.585788Z

Changed paths:
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-content-alignment-with-span.html?r1=195488&r2=195487&pathrev=195488
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-content-alignment-with-span-vertical-lr.html?r1=195488&r2=195487&pathrev=195488
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-content-alignment-with-span-vertical-rl.html?r1=195488&r2=195487&pathrev=195488
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-content-alignment-with-span-expected.txt?r1=195488&r2=195487&pathrev=195488
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-content-alignment-with-span-vertical-lr-expected.txt?r1=195488&r2=195487&pathrev=195488
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-content-alignment-with-span-vertical-rl-expected.txt?r1=195488&r2=195487&pathrev=195488

[CSS Grid Layout] Testing content-distribution with spanning grid items.

The <content-distribution> values are applied on the grid tracks, which
are considered the alignment subject. When a grid item spans more than
one track, we stretch the grid item breadth to fill the space defined by
the <content-distribution> value.

This patch just adds a test to verify this is the current behavior, since
there is no test checking it out now.

BUG= 249451 ,  376823 

Review URL: https://codereview.chromium.org/1142483003
-----------------------------------------------------------------

Comment 25 by bugdroid1@chromium.org, May 21 2015

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=195662

------------------------------------------------------------------
r195662 | jfernandez@igalia.com | 2015-05-21T02:14:29.285117Z

Changed paths:
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/virtual/slimmingpaint/fast/repaint/align-self-change-keeping-geometry-grid-expected.txt?r1=195662&r2=195661&pathrev=195662
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/align-self-overflow-change-expected.txt?r1=195662&r2=195661&pathrev=195662
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/virtual/slimmingpaint/fast/repaint/align-self-overflow-change-expected.txt?r1=195662&r2=195661&pathrev=195662
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/justify-self-overflow-change-expected.txt?r1=195662&r2=195661&pathrev=195662
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/virtual/slimmingpaint/fast/repaint/justify-self-overflow-change-expected.txt?r1=195662&r2=195661&pathrev=195662
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/align-content-position-change-grid-expected.txt?r1=195662&r2=195661&pathrev=195662
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/virtual/slimmingpaint/fast/repaint/align-content-position-change-grid-expected.txt?r1=195662&r2=195661&pathrev=195662
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/justify-content-position-change-grid-expected.txt?r1=195662&r2=195661&pathrev=195662
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/virtual/slimmingpaint/fast/repaint/justify-content-position-change-grid-expected.txt?r1=195662&r2=195661&pathrev=195662
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/justify-self-change-keeping-geometry-expected.txt?r1=195662&r2=195661&pathrev=195662
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/virtual/slimmingpaint/fast/repaint/justify-self-change-keeping-geometry-expected.txt?r1=195662&r2=195661&pathrev=195662
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/align-content-distribution-change-grid-expected.txt?r1=195662&r2=195661&pathrev=195662
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/justify-items-change.html?r1=195662&r2=195661&pathrev=195662
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/virtual/slimmingpaint/fast/repaint/align-content-distribution-change-grid-expected.txt?r1=195662&r2=195661&pathrev=195662
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/justify-items-overflow-change.html?r1=195662&r2=195661&pathrev=195662
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/align-self-change-grid-expected.txt?r1=195662&r2=195661&pathrev=195662
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/justify-content-distribution-change-grid-expected.txt?r1=195662&r2=195661&pathrev=195662
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/virtual/slimmingpaint/fast/repaint/align-self-change-grid-expected.txt?r1=195662&r2=195661&pathrev=195662
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/virtual/slimmingpaint/fast/repaint/justify-content-distribution-change-grid-expected.txt?r1=195662&r2=195661&pathrev=195662
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/TestExpectations?r1=195662&r2=195661&pathrev=195662
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/align-self-overflow-change.html?r1=195662&r2=195661&pathrev=195662
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/align-items-overflow-change-expected.txt?r1=195662&r2=195661&pathrev=195662
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/justify-self-overflow-change.html?r1=195662&r2=195661&pathrev=195662
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/align-self-change-keeping-geometry-grid-expected.txt?r1=195662&r2=195661&pathrev=195662
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/align-content-position-change-grid.html?r1=195662&r2=195661&pathrev=195662
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/virtual/slimmingpaint/fast/repaint/justify-items-overflow-change-expected.txt?r1=195662&r2=195661&pathrev=195662
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/justify-content-position-change-grid.html?r1=195662&r2=195661&pathrev=195662
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/justify-self-change-keeping-geometry.html?r1=195662&r2=195661&pathrev=195662
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/align-content-distribution-change-grid.html?r1=195662&r2=195661&pathrev=195662
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/align-self-change-grid.html?r1=195662&r2=195661&pathrev=195662
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/justify-content-distribution-change-grid.html?r1=195662&r2=195661&pathrev=195662
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/justify-content-change.html?r1=195662&r2=195661&pathrev=195662
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/justify-content-position-change.html?r1=195662&r2=195661&pathrev=195662
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/align-items-overflow-change.html?r1=195662&r2=195661&pathrev=195662
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/align-self-change-keeping-geometry-grid.html?r1=195662&r2=195661&pathrev=195662
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/justify-items-legacy-change.html?r1=195662&r2=195661&pathrev=195662
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/virtual/slimmingpaint/fast/repaint/align-items-overflow-change-expected.txt?r1=195662&r2=195661&pathrev=195662
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/justify-items-change-expected.txt?r1=195662&r2=195661&pathrev=195662
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/repaint/justify-items-overflow-change-expected.txt?r1=195662&r2=195661&pathrev=195662
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/virtual/slimmingpaint/fast/repaint/justify-items-change-expected.txt?r1=195662&r2=195661&pathrev=195662

[CSS Grid Layout] New alignment related repaint layout tests.

This patch adds new repaint tests for checking style changes on the
new Box Alignment properties recently added support for in Grid Layout.

There were also changes on the existing tests to better describing the
style change itself and the expected result when success.

BUG= 249451 ,  376823 

Review URL: https://codereview.chromium.org/1130843004
-----------------------------------------------------------------

Comment 26 by bugdroid1@chromium.org, Jul 8 2015

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=198496

------------------------------------------------------------------
r198496 | jfernandez@igalia.com | 2015-07-08T12:22:53.909555Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/layout/LayoutGrid.h?r1=198496&r2=198495&pathrev=198496
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/layout/LayoutGrid.cpp?r1=198496&r2=198495&pathrev=198496

[CSS Grid Layout] Removing Content Alignment logic from track sizing alg

We had implemented track stretching inside the track sizing algorithm,
which could interfere in some cases with sizing phase. Specs states that
any alignment logic must be run after the track sizing algorithm is
completed.

This patch also adds a validity indicator for the cached tracks positions,
since some content distribution values may have changed tracks sizes,
hence their positions.

BUG= 249451 ,  376823 

Review URL: https://codereview.chromium.org/1220043002
-----------------------------------------------------------------

Comment 27 by bugdroid1@chromium.org, Jul 31 2015

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=199819

------------------------------------------------------------------
r199819 | jfernandez@igalia.com | 2015-07-31T12:08:28.412804Z

Changed paths:
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/relayout-align-self-changed-expected.txt?r1=199819&r2=199818&pathrev=199819
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/layout/LayoutBox.cpp?r1=199819&r2=199818&pathrev=199819
   D http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-items-should-not-be-stretched-when-height-or-margin-change.html?r1=199819&r2=199818&pathrev=199819
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/min-width-height-auto-expected.txt?r1=199819&r2=199818&pathrev=199819
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/relayout-justify-self-changed-expected.txt?r1=199819&r2=199818&pathrev=199819
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/layout/LayoutGrid.h?r1=199819&r2=199818&pathrev=199819
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-items-should-not-be-stretched-when-height-or-width-or-margin-change-expected.txt?r1=199819&r2=199818&pathrev=199819
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-item-auto-margins-and-stretch.html?r1=199819&r2=199818&pathrev=199819
   D http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-items-should-not-be-stretched-when-height-or-margin-change-expected.txt?r1=199819&r2=199818&pathrev=199819
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/relayout-align-items-changed.html?r1=199819&r2=199818&pathrev=199819
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/relayout-justify-items-changed.html?r1=199819&r2=199818&pathrev=199819
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/relayout-align-self-changed.html?r1=199819&r2=199818&pathrev=199819
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/relayout-align-items-changed-expected.txt?r1=199819&r2=199818&pathrev=199819
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/min-width-height-auto.html?r1=199819&r2=199818&pathrev=199819
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/relayout-justify-self-changed.html?r1=199819&r2=199818&pathrev=199819
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/relayout-justify-items-changed-expected.txt?r1=199819&r2=199818&pathrev=199819
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-items-should-not-be-stretched-when-height-or-width-or-margin-change.html?r1=199819&r2=199818&pathrev=199819
   M http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-align-justify-stretch.html?r1=199819&r2=199818&pathrev=199819
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/layout/LayoutGrid.cpp?r1=199819&r2=199818&pathrev=199819

[CSS Grid Layout] Do not stretch always grid items with auto width

We assumed that any grid item with 'auto' width will be stretched to fill
all the available space in its grid area. We assumed this because grid
area acts as item's container.

However, Grid Layout specification states on its Alignment section that
items will be stretched by default, unless either justify-self or align-self
compute to a value other than stretch or margins are auto. In those cases,
grid items will auto-size to fit their contents.

BUG= 249451 

Review URL: https://codereview.chromium.org/1228983003
-----------------------------------------------------------------

Comment 28 by bugdroid1@chromium.org, Aug 14 2015

Project Member
The following revision refers to this bug:
  http://src.chromium.org/viewvc/blink?view=rev&rev=200506

------------------------------------------------------------------
r200506 | jfernandez@igalia.com | 2015-08-14T01:57:40.218076Z

Changed paths:
   M http://src.chromium.org/viewvc/blink/trunk/Source/core/layout/LayoutGrid.cpp?r1=200506&r2=200505&pathrev=200506
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-content-alignment-stretch-only-valid-for-auto-sized-tracks-expected.txt?r1=200506&r2=200505&pathrev=200506
   A http://src.chromium.org/viewvc/blink/trunk/LayoutTests/fast/css-grid-layout/grid-content-alignment-stretch-only-valid-for-auto-sized-tracks.html?r1=200506&r2=200505&pathrev=200506

[CSS Grid Layout] Only stretch tracks with 'auto' max-content sizing.

There was an ambiguity regarding the meaning of the 'auto' sized tracks,
whcih are the ones allowed to be stretched by Content Alignment properties.

this issue has been clarified by the spec editors and now we consider them
as the ones with an 'auto' max-content sizing function.

BUG= 249451 ,  376823 

Review URL: https://codereview.chromium.org/1264733003
-----------------------------------------------------------------

Comment 29 by bugdroid1@chromium.org, Sep 23 2015

Project Member
Labels: merge-merged-2490
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4c683b8d5c8a10b2bc780f7fc6d4b86d45aa0562

commit 4c683b8d5c8a10b2bc780f7fc6d4b86d45aa0562
Author: jfernandez@igalia.com <jfernandez@igalia.com>
Date: Fri Aug 14 01:57:40 2015

[CSS Grid Layout] Only stretch tracks with 'auto' max-content sizing.

There was an ambiguity regarding the meaning of the 'auto' sized tracks,
whcih are the ones allowed to be stretched by Content Alignment properties.

this issue has been clarified by the spec editors and now we consider them
as the ones with an 'auto' max-content sizing function.

BUG= 249451 ,  376823 

Review URL: https://codereview.chromium.org/1264733003

git-svn-id: svn://svn.chromium.org/blink/trunk@200506 bbb929c8-8fbe-4397-9dbb-9b2b20218538

[add] http://crrev.com/4c683b8d5c8a10b2bc780f7fc6d4b86d45aa0562/third_party/WebKit/LayoutTests/fast/css-grid-layout/grid-content-alignment-stretch-only-valid-for-auto-sized-tracks-expected.txt
[add] http://crrev.com/4c683b8d5c8a10b2bc780f7fc6d4b86d45aa0562/third_party/WebKit/LayoutTests/fast/css-grid-layout/grid-content-alignment-stretch-only-valid-for-auto-sized-tracks.html
[modify] http://crrev.com/4c683b8d5c8a10b2bc780f7fc6d4b86d45aa0562/third_party/WebKit/Source/core/layout/LayoutGrid.cpp

Comment 30 by e...@chromium.org, Sep 25 2015

Labels: -Type-Bug Type-Feature
Status: Assigned

Comment 31 by bugdroid1@chromium.org, Oct 1 2015

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/68a823dcd4e9c63a0d324bc96695fd010d734d87

commit 68a823dcd4e9c63a0d324bc96695fd010d734d87
Author: jfernandez <jfernandez@igalia.com>
Date: Thu Oct 01 14:37:28 2015

[CSS Grid Layout] Implement auto-margins alignment of grid items

The Grid Layout spec states that we must center items with auto margins,
so it will absorb any positive free space, both horiontal and vertical.

https://drafts.csswg.org/css-grid/#auto-margins

Besides, auto-margins imply that any alignment property in the same axis
will have no effect

BUG= 79180 ,  249451 ,  376823 

Review URL: https://codereview.chromium.org/1298623002

Cr-Commit-Position: refs/heads/master@{#351796}

[add] http://crrev.com/68a823dcd4e9c63a0d324bc96695fd010d734d87/third_party/WebKit/LayoutTests/fast/css-grid-layout/grid-item-auto-margins-alignment-expected.txt
[add] http://crrev.com/68a823dcd4e9c63a0d324bc96695fd010d734d87/third_party/WebKit/LayoutTests/fast/css-grid-layout/grid-item-auto-margins-alignment-vertical-lr-expected.txt
[add] http://crrev.com/68a823dcd4e9c63a0d324bc96695fd010d734d87/third_party/WebKit/LayoutTests/fast/css-grid-layout/grid-item-auto-margins-alignment-vertical-lr.html
[add] http://crrev.com/68a823dcd4e9c63a0d324bc96695fd010d734d87/third_party/WebKit/LayoutTests/fast/css-grid-layout/grid-item-auto-margins-alignment-vertical-rl-expected.txt
[add] http://crrev.com/68a823dcd4e9c63a0d324bc96695fd010d734d87/third_party/WebKit/LayoutTests/fast/css-grid-layout/grid-item-auto-margins-alignment-vertical-rl.html
[add] http://crrev.com/68a823dcd4e9c63a0d324bc96695fd010d734d87/third_party/WebKit/LayoutTests/fast/css-grid-layout/grid-item-auto-margins-alignment.html
[modify] http://crrev.com/68a823dcd4e9c63a0d324bc96695fd010d734d87/third_party/WebKit/LayoutTests/fast/css-grid-layout/grid-item-auto-margins-and-stretch.html
[modify] http://crrev.com/68a823dcd4e9c63a0d324bc96695fd010d734d87/third_party/WebKit/Source/core/layout/LayoutGrid.cpp
[modify] http://crrev.com/68a823dcd4e9c63a0d324bc96695fd010d734d87/third_party/WebKit/Source/core/layout/LayoutGrid.h

Comment 32 by bugdroid1@chromium.org, Oct 2 2015

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/42162f3d51bc0472475314a04661dfcc57096778

commit 42162f3d51bc0472475314a04661dfcc57096778
Author: jfernandez <jfernandez@igalia.com>
Date: Fri Oct 02 19:03:40 2015

[CSS Grid Layout] Combining Content and Self Alignment with span items

Using the Content Alignment CSS properties we can add offsets to the
grid tracks so they are not adjacent anymore. This requires to handle
Self Alignment of items spanning more than one track in a special way,
because grid item's area breadth is bigger than the tracks base size it
occupies.

In order to properly adjust the Self Alignment values we need to consider
the offset between tracks.

BUG= 249451 ,  376823 

Review URL: https://codereview.chromium.org/1342453004

Cr-Commit-Position: refs/heads/master@{#352096}

[add] http://crrev.com/42162f3d51bc0472475314a04661dfcc57096778/third_party/WebKit/LayoutTests/fast/css-grid-layout/grid-content-alignment-and-self-alignment-expected.txt
[add] http://crrev.com/42162f3d51bc0472475314a04661dfcc57096778/third_party/WebKit/LayoutTests/fast/css-grid-layout/grid-content-alignment-and-self-alignment.html
[modify] http://crrev.com/42162f3d51bc0472475314a04661dfcc57096778/third_party/WebKit/Source/core/layout/LayoutGrid.cpp

Comment 33 by jfernan...@igalia.com, Jan 7 2016

Comment 34 by sheriffbot@chromium.org, Jul 6 2016

Project Member
Labels: Hotlist-OpenBugWithCL
A change has landed for this issue, but it's been open for over 6 months. Please review and close it if applicable. If this issue should remain open, remove the "Hotlist-OpenBugWithCL" label. If no action is taken, it will be archived in 30 days.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot

Comment 35 by jfernan...@igalia.com, Jul 12 2016

Labels: -Hotlist-OpenBugWithCL

Comment 36 by bugdroid1@chromium.org, Jul 20 2016

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/af5c2165bff01ba473fe28d31dd2a15d789ef08e

commit af5c2165bff01ba473fe28d31dd2a15d789ef08e
Author: jfernandez <jfernandez@igalia.com>
Date: Wed Jul 20 15:06:53 2016

[CSS Grid Layout] Handle alignment with orthogonal flows

Now that grid sizing and positioning issues wrt orthogonal flows have
been clarified in the last spec draft, we can adapt now our alignment
logic to work with orthogonal flows.

Even though basic alignment would work with orthogonal flows with
this patch, we still doesn't allow stretching in that case. I'll provide a
patch for that feature since it's a complex logic and better have an
isolated change.

BUG= 556171 ,  445742 ,  376823 ,  249451 

Review-Url: https://codereview.chromium.org/842193004
Cr-Commit-Position: refs/heads/master@{#406557}

[add] https://crrev.com/af5c2165bff01ba473fe28d31dd2a15d789ef08e/third_party/WebKit/LayoutTests/fast/css-grid-layout/grid-item-alignment-with-orthogonal-flows-vertical-lr.html
[add] https://crrev.com/af5c2165bff01ba473fe28d31dd2a15d789ef08e/third_party/WebKit/LayoutTests/fast/css-grid-layout/grid-item-alignment-with-orthogonal-flows-vertical-rl.html
[add] https://crrev.com/af5c2165bff01ba473fe28d31dd2a15d789ef08e/third_party/WebKit/LayoutTests/fast/css-grid-layout/grid-item-alignment-with-orthogonal-flows.html
[modify] https://crrev.com/af5c2165bff01ba473fe28d31dd2a15d789ef08e/third_party/WebKit/LayoutTests/fast/css-grid-layout/resources/grid-alignment.css
[modify] https://crrev.com/af5c2165bff01ba473fe28d31dd2a15d789ef08e/third_party/WebKit/Source/core/layout/LayoutBox.cpp
[modify] https://crrev.com/af5c2165bff01ba473fe28d31dd2a15d789ef08e/third_party/WebKit/Source/core/layout/LayoutBox.h
[modify] https://crrev.com/af5c2165bff01ba473fe28d31dd2a15d789ef08e/third_party/WebKit/Source/core/layout/LayoutGrid.cpp
[modify] https://crrev.com/af5c2165bff01ba473fe28d31dd2a15d789ef08e/third_party/WebKit/Source/core/layout/LayoutGrid.h

Comment 37 by jfernan...@igalia.com, Nov 9 2016

Blockedon: 412410

Comment 38 by jfernan...@igalia.com, Nov 25 2016

Blockedon: 668639

Comment 39 by jfernan...@igalia.com, Sep 12 2017

Blockedon: -536638
Status: Fixed (was: Assigned)
We can consider this issue as FIXED now.

Sign in to add a comment