Title: [111342] trunk
Revision
111342
Author
[email protected]
Date
2012-03-19 20:32:29 -0700 (Mon, 19 Mar 2012)

Log Message

add css parsing of flex-line-pack
https://bugs.webkit.org/show_bug.cgi?id=81427

Reviewed by Ojan Vafai.

Source/WebCore:

Spec: http://dev.w3.org/csswg/css3-flexbox/#flex-line-pack

Updated tests in css3/flexbox/css-properties.html

* css/CSSComputedStyleDeclaration.cpp:
(WebCore):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore):
(WebCore::CSSPrimitiveValue::operator EFlexLinePack):
* css/CSSProperty.cpp:
(WebCore::CSSProperty::isInheritedProperty):
* css/CSSPropertyNames.in:
* css/CSSStyleApplyProperty.cpp:
(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::collectMatchingRulesForList):
* css/CSSValueKeywords.in:
* rendering/style/RenderStyle.h:
* rendering/style/RenderStyleConstants.h:
* rendering/style/StyleFlexibleBoxData.cpp:
(WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData):
(WebCore::StyleFlexibleBoxData::operator==):
* rendering/style/StyleFlexibleBoxData.h:
(StyleFlexibleBoxData):

LayoutTests:

* css3/flexbox/css-properties-expected.txt:
* css3/flexbox/script-tests/css-properties.js:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (111341 => 111342)


--- trunk/LayoutTests/ChangeLog	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/LayoutTests/ChangeLog	2012-03-20 03:32:29 UTC (rev 111342)
@@ -1,3 +1,13 @@
+2012-03-19  Tony Chang  <[email protected]>
+
+        add css parsing of flex-line-pack
+        https://bugs.webkit.org/show_bug.cgi?id=81427
+
+        Reviewed by Ojan Vafai.
+
+        * css3/flexbox/css-properties-expected.txt:
+        * css3/flexbox/script-tests/css-properties.js:
+
 2012-03-19  Stephanie Lewis  <[email protected]>
 
 	http://bugs.webkit.org/show_bug.cgi?id=81618

Modified: trunk/LayoutTests/css3/flexbox/css-properties-expected.txt (111341 => 111342)


--- trunk/LayoutTests/css3/flexbox/css-properties-expected.txt	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/LayoutTests/css3/flexbox/css-properties-expected.txt	2012-03-20 03:32:29 UTC (rev 111342)
@@ -189,6 +189,24 @@
 PASS window.getComputedStyle(flexbox, null).webkitFlexFlow is "column wrap"
 PASS flexbox.style.webkitFlexFlow is "row-reverse wrap-reverse"
 PASS window.getComputedStyle(flexbox, null).webkitFlexFlow is "row-reverse wrap-reverse"
+PASS flexbox.style.webkitFlexLinePack is ""
+PASS window.getComputedStyle(flexbox, null).webkitFlexLinePack is "stretch"
+PASS flexbox.style.webkitFlexLinePack is "start"
+PASS window.getComputedStyle(flexbox, null).webkitFlexLinePack is "start"
+PASS flexbox.style.webkitFlexLinePack is "end"
+PASS window.getComputedStyle(flexbox, null).webkitFlexLinePack is "end"
+PASS flexbox.style.webkitFlexLinePack is "center"
+PASS window.getComputedStyle(flexbox, null).webkitFlexLinePack is "center"
+PASS flexbox.style.webkitFlexLinePack is "justify"
+PASS window.getComputedStyle(flexbox, null).webkitFlexLinePack is "justify"
+PASS flexbox.style.webkitFlexLinePack is "distribute"
+PASS window.getComputedStyle(flexbox, null).webkitFlexLinePack is "distribute"
+PASS flexbox.style.webkitFlexLinePack is "stretch"
+PASS window.getComputedStyle(flexbox, null).webkitFlexLinePack is "stretch"
+PASS flexbox.style.webkitFlexLinePack is ""
+PASS window.getComputedStyle(flexbox, null).webkitFlexLinePack is "stretch"
+PASS flexbox.style.webkitFlexLinePack is ""
+PASS window.getComputedStyle(flexbox, null).webkitFlexLinePack is "stretch"
 PASS successfullyParsed is true
 
 TEST COMPLETE

Modified: trunk/LayoutTests/css3/flexbox/script-tests/css-properties.js (111341 => 111342)


--- trunk/LayoutTests/css3/flexbox/script-tests/css-properties.js	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/LayoutTests/css3/flexbox/script-tests/css-properties.js	2012-03-20 03:32:29 UTC (rev 111342)
@@ -248,5 +248,40 @@
 shouldBeEqualToString('flexbox.style.webkitFlexFlow', 'row-reverse wrap-reverse');
 shouldBeEqualToString('window.getComputedStyle(flexbox, null).webkitFlexFlow', 'row-reverse wrap-reverse');
 
+// The initial value is 'stretch'.
+shouldBeEqualToString('flexbox.style.webkitFlexLinePack', '');
+shouldBeEqualToString('window.getComputedStyle(flexbox, null).webkitFlexLinePack', 'stretch');
 
+flexbox.style.webkitFlexLinePack = 'start';
+shouldBeEqualToString('flexbox.style.webkitFlexLinePack', 'start');
+shouldBeEqualToString('window.getComputedStyle(flexbox, null).webkitFlexLinePack', 'start');
+
+flexbox.style.webkitFlexLinePack = 'end';
+shouldBeEqualToString('flexbox.style.webkitFlexLinePack', 'end');
+shouldBeEqualToString('window.getComputedStyle(flexbox, null).webkitFlexLinePack', 'end');
+
+flexbox.style.webkitFlexLinePack = 'center';
+shouldBeEqualToString('flexbox.style.webkitFlexLinePack', 'center');
+shouldBeEqualToString('window.getComputedStyle(flexbox, null).webkitFlexLinePack', 'center');
+
+flexbox.style.webkitFlexLinePack = 'justify';
+shouldBeEqualToString('flexbox.style.webkitFlexLinePack', 'justify');
+shouldBeEqualToString('window.getComputedStyle(flexbox, null).webkitFlexLinePack', 'justify');
+
+flexbox.style.webkitFlexLinePack = 'distribute';
+shouldBeEqualToString('flexbox.style.webkitFlexLinePack', 'distribute');
+shouldBeEqualToString('window.getComputedStyle(flexbox, null).webkitFlexLinePack', 'distribute');
+
+flexbox.style.webkitFlexLinePack = 'stretch';
+shouldBeEqualToString('flexbox.style.webkitFlexLinePack', 'stretch');
+shouldBeEqualToString('window.getComputedStyle(flexbox, null).webkitFlexLinePack', 'stretch');
+
+flexbox.style.webkitFlexLinePack = '';
+shouldBeEqualToString('flexbox.style.webkitFlexLinePack', '');
+shouldBeEqualToString('window.getComputedStyle(flexbox, null).webkitFlexLinePack', 'stretch');
+
+flexbox.style.webkitFlexLinePack = 'foo';
+shouldBeEqualToString('flexbox.style.webkitFlexLinePack', '');
+shouldBeEqualToString('window.getComputedStyle(flexbox, null).webkitFlexLinePack', 'stretch');
+
 successfullyParsed = true;

Modified: trunk/LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt (111341 => 111342)


--- trunk/LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt	2012-03-20 03:32:29 UTC (rev 111342)
@@ -148,6 +148,7 @@
 -webkit-flex-item-align: stretch;
 -webkit-flex-direction: row;
 -webkit-flex-flow: row none;
+-webkit-flex-line-pack: stretch;
 -webkit-flex-wrap: none;
 -webkit-font-kerning: auto;
 -webkit-font-smoothing: auto;

Modified: trunk/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt (111341 => 111342)


--- trunk/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt	2012-03-20 03:32:29 UTC (rev 111342)
@@ -147,6 +147,7 @@
     -webkit-flex-item-align: stretch
     -webkit-flex-direction: row
     -webkit-flex-flow: row none
+    -webkit-flex-line-pack: stretch
     -webkit-flex-wrap: none
     -webkit-font-kerning: auto
     -webkit-font-smoothing: auto

Modified: trunk/LayoutTests/platform/chromium-mac/fast/css/getComputedStyle/computed-style-expected.txt (111341 => 111342)


--- trunk/LayoutTests/platform/chromium-mac/fast/css/getComputedStyle/computed-style-expected.txt	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/LayoutTests/platform/chromium-mac/fast/css/getComputedStyle/computed-style-expected.txt	2012-03-20 03:32:29 UTC (rev 111342)
@@ -148,6 +148,7 @@
 -webkit-flex-item-align: stretch;
 -webkit-flex-direction: row;
 -webkit-flex-flow: row none;
+-webkit-flex-line-pack: stretch;
 -webkit-flex-wrap: none;
 -webkit-font-kerning: auto;
 -webkit-font-smoothing: auto;

Modified: trunk/LayoutTests/platform/chromium-mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt (111341 => 111342)


--- trunk/LayoutTests/platform/chromium-mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/LayoutTests/platform/chromium-mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt	2012-03-20 03:32:29 UTC (rev 111342)
@@ -147,6 +147,7 @@
     -webkit-flex-item-align: stretch
     -webkit-flex-direction: row
     -webkit-flex-flow: row none
+    -webkit-flex-line-pack: stretch
     -webkit-flex-wrap: none
     -webkit-font-kerning: auto
     -webkit-font-smoothing: auto

Modified: trunk/LayoutTests/platform/chromium-mac-snowleopard/svg/css/getComputedStyle-basic-expected.txt (111341 => 111342)


--- trunk/LayoutTests/platform/chromium-mac-snowleopard/svg/css/getComputedStyle-basic-expected.txt	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/LayoutTests/platform/chromium-mac-snowleopard/svg/css/getComputedStyle-basic-expected.txt	2012-03-20 03:32:29 UTC (rev 111342)
@@ -294,6 +294,8 @@
 rect: style.getPropertyCSSValue(-webkit-flex-direction) : [object CSSPrimitiveValue]
 rect: style.getPropertyValue(-webkit-flex-flow) : row none
 rect: style.getPropertyCSSValue(-webkit-flex-flow) : [object CSSValueList]
+rect: style.getPropertyValue(-webkit-flex-line-pack) : stretch
+rect: style.getPropertyCSSValue(-webkit-flex-line-pack) : [object CSSPrimitiveValue]
 rect: style.getPropertyValue(-webkit-flex-wrap) : none
 rect: style.getPropertyCSSValue(-webkit-flex-wrap) : [object CSSPrimitiveValue]
 rect: style.getPropertyValue(-webkit-font-kerning) : auto
@@ -812,6 +814,8 @@
 g: style.getPropertyCSSValue(-webkit-flex-direction) : [object CSSPrimitiveValue]
 g: style.getPropertyValue(-webkit-flex-flow) : row none
 g: style.getPropertyCSSValue(-webkit-flex-flow) : [object CSSValueList]
+g: style.getPropertyValue(-webkit-flex-line-pack) : stretch
+g: style.getPropertyCSSValue(-webkit-flex-line-pack) : [object CSSPrimitiveValue]
 g: style.getPropertyValue(-webkit-flex-wrap) : none
 g: style.getPropertyCSSValue(-webkit-flex-wrap) : [object CSSPrimitiveValue]
 g: style.getPropertyValue(-webkit-font-kerning) : auto

Modified: trunk/LayoutTests/platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt (111341 => 111342)


--- trunk/LayoutTests/platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/LayoutTests/platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt	2012-03-20 03:32:29 UTC (rev 111342)
@@ -148,6 +148,7 @@
 -webkit-flex-item-align: stretch;
 -webkit-flex-direction: row;
 -webkit-flex-flow: row none;
+-webkit-flex-line-pack: stretch;
 -webkit-flex-wrap: none;
 -webkit-font-kerning: auto;
 -webkit-font-smoothing: auto;

Modified: trunk/LayoutTests/platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt (111341 => 111342)


--- trunk/LayoutTests/platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/LayoutTests/platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt	2012-03-20 03:32:29 UTC (rev 111342)
@@ -147,6 +147,7 @@
     -webkit-flex-item-align: stretch
     -webkit-flex-direction: row
     -webkit-flex-flow: row none
+    -webkit-flex-line-pack: stretch
     -webkit-flex-wrap: none
     -webkit-font-kerning: auto
     -webkit-font-smoothing: auto

Modified: trunk/LayoutTests/platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt (111341 => 111342)


--- trunk/LayoutTests/platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/LayoutTests/platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt	2012-03-20 03:32:29 UTC (rev 111342)
@@ -294,6 +294,8 @@
 rect: style.getPropertyCSSValue(-webkit-flex-direction) : [object CSSPrimitiveValue]
 rect: style.getPropertyValue(-webkit-flex-flow) : row none
 rect: style.getPropertyCSSValue(-webkit-flex-flow) : [object CSSValueList]
+rect: style.getPropertyValue(-webkit-flex-line-pack) : stretch
+rect: style.getPropertyCSSValue(-webkit-flex-line-pack) : [object CSSPrimitiveValue]
 rect: style.getPropertyValue(-webkit-flex-wrap) : none
 rect: style.getPropertyCSSValue(-webkit-flex-wrap) : [object CSSPrimitiveValue]
 rect: style.getPropertyValue(-webkit-font-kerning) : auto
@@ -812,6 +814,8 @@
 g: style.getPropertyCSSValue(-webkit-flex-direction) : [object CSSPrimitiveValue]
 g: style.getPropertyValue(-webkit-flex-flow) : row none
 g: style.getPropertyCSSValue(-webkit-flex-flow) : [object CSSValueList]
+g: style.getPropertyValue(-webkit-flex-line-pack) : stretch
+g: style.getPropertyCSSValue(-webkit-flex-line-pack) : [object CSSPrimitiveValue]
 g: style.getPropertyValue(-webkit-flex-wrap) : none
 g: style.getPropertyCSSValue(-webkit-flex-wrap) : [object CSSPrimitiveValue]
 g: style.getPropertyValue(-webkit-font-kerning) : auto

Modified: trunk/LayoutTests/platform/gtk/svg/css/getComputedStyle-basic-expected.txt (111341 => 111342)


--- trunk/LayoutTests/platform/gtk/svg/css/getComputedStyle-basic-expected.txt	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/LayoutTests/platform/gtk/svg/css/getComputedStyle-basic-expected.txt	2012-03-20 03:32:29 UTC (rev 111342)
@@ -294,6 +294,8 @@
 rect: style.getPropertyCSSValue(-webkit-flex-direction) : [object CSSPrimitiveValue]
 rect: style.getPropertyValue(-webkit-flex-flow) : row none
 rect: style.getPropertyCSSValue(-webkit-flex-flow) : [object CSSValueList]
+rect: style.getPropertyValue(-webkit-flex-line-pack) : stretch
+rect: style.getPropertyCSSValue(-webkit-flex-line-pack) : [object CSSPrimitiveValue]
 rect: style.getPropertyValue(-webkit-flex-wrap) : none
 rect: style.getPropertyCSSValue(-webkit-flex-wrap) : [object CSSPrimitiveValue]
 rect: style.getPropertyValue(-webkit-font-kerning) : auto
@@ -810,6 +812,8 @@
 g: style.getPropertyCSSValue(-webkit-flex-direction) : [object CSSPrimitiveValue]
 g: style.getPropertyValue(-webkit-flex-flow) : row none
 g: style.getPropertyCSSValue(-webkit-flex-flow) : [object CSSValueList]
+g: style.getPropertyValue(-webkit-flex-line-pack) : stretch
+g: style.getPropertyCSSValue(-webkit-flex-line-pack) : [object CSSPrimitiveValue]
 g: style.getPropertyValue(-webkit-flex-wrap) : none
 g: style.getPropertyCSSValue(-webkit-flex-wrap) : [object CSSPrimitiveValue]
 g: style.getPropertyValue(-webkit-font-kerning) : auto

Modified: trunk/LayoutTests/platform/mac/fast/css/getComputedStyle/computed-style-expected.txt (111341 => 111342)


--- trunk/LayoutTests/platform/mac/fast/css/getComputedStyle/computed-style-expected.txt	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/LayoutTests/platform/mac/fast/css/getComputedStyle/computed-style-expected.txt	2012-03-20 03:32:29 UTC (rev 111342)
@@ -148,6 +148,7 @@
 -webkit-flex-item-align: stretch;
 -webkit-flex-direction: row;
 -webkit-flex-flow: row none;
+-webkit-flex-line-pack: stretch;
 -webkit-flex-wrap: none;
 -webkit-font-kerning: auto;
 -webkit-font-smoothing: auto;

Modified: trunk/LayoutTests/platform/mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt (111341 => 111342)


--- trunk/LayoutTests/platform/mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/LayoutTests/platform/mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt	2012-03-20 03:32:29 UTC (rev 111342)
@@ -147,6 +147,7 @@
     -webkit-flex-item-align: stretch
     -webkit-flex-direction: row
     -webkit-flex-flow: row none
+    -webkit-flex-line-pack: stretch
     -webkit-flex-wrap: none
     -webkit-font-kerning: auto
     -webkit-font-smoothing: auto

Modified: trunk/LayoutTests/platform/qt/svg/css/getComputedStyle-basic-expected.txt (111341 => 111342)


--- trunk/LayoutTests/platform/qt/svg/css/getComputedStyle-basic-expected.txt	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/LayoutTests/platform/qt/svg/css/getComputedStyle-basic-expected.txt	2012-03-20 03:32:29 UTC (rev 111342)
@@ -294,6 +294,8 @@
 rect: style.getPropertyCSSValue(-webkit-flex-direction) : [object CSSPrimitiveValue]
 rect: style.getPropertyValue(-webkit-flex-flow) : row none
 rect: style.getPropertyCSSValue(-webkit-flex-flow) : [object CSSValueList]
+rect: style.getPropertyValue(-webkit-flex-line-pack) : stretch
+rect: style.getPropertyCSSValue(-webkit-flex-line-pack) : [object CSSPrimitiveValue]
 rect: style.getPropertyValue(-webkit-flex-wrap) : none
 rect: style.getPropertyCSSValue(-webkit-flex-wrap) : [object CSSPrimitiveValue]
 rect: style.getPropertyValue(-webkit-font-kerning) : auto
@@ -810,6 +812,8 @@
 g: style.getPropertyCSSValue(-webkit-flex-direction) : [object CSSPrimitiveValue]
 g: style.getPropertyValue(-webkit-flex-flow) : row none
 g: style.getPropertyCSSValue(-webkit-flex-flow) : [object CSSValueList]
+g: style.getPropertyValue(-webkit-flex-line-pack) : stretch
+g: style.getPropertyCSSValue(-webkit-flex-line-pack) : [object CSSPrimitiveValue]
 g: style.getPropertyValue(-webkit-flex-wrap) : none
 g: style.getPropertyCSSValue(-webkit-flex-wrap) : [object CSSPrimitiveValue]
 g: style.getPropertyValue(-webkit-font-kerning) : auto

Modified: trunk/LayoutTests/svg/css/getComputedStyle-basic-expected.txt (111341 => 111342)


--- trunk/LayoutTests/svg/css/getComputedStyle-basic-expected.txt	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/LayoutTests/svg/css/getComputedStyle-basic-expected.txt	2012-03-20 03:32:29 UTC (rev 111342)
@@ -294,6 +294,8 @@
 rect: style.getPropertyCSSValue(-webkit-flex-direction) : [object CSSPrimitiveValue]
 rect: style.getPropertyValue(-webkit-flex-flow) : row none
 rect: style.getPropertyCSSValue(-webkit-flex-flow) : [object CSSValueList]
+rect: style.getPropertyValue(-webkit-flex-line-pack) : stretch
+rect: style.getPropertyCSSValue(-webkit-flex-line-pack) : [object CSSPrimitiveValue]
 rect: style.getPropertyValue(-webkit-flex-wrap) : none
 rect: style.getPropertyCSSValue(-webkit-flex-wrap) : [object CSSPrimitiveValue]
 rect: style.getPropertyValue(-webkit-font-kerning) : auto
@@ -814,6 +816,8 @@
 g: style.getPropertyCSSValue(-webkit-flex-direction) : [object CSSPrimitiveValue]
 g: style.getPropertyValue(-webkit-flex-flow) : row none
 g: style.getPropertyCSSValue(-webkit-flex-flow) : [object CSSValueList]
+g: style.getPropertyValue(-webkit-flex-line-pack) : stretch
+g: style.getPropertyCSSValue(-webkit-flex-line-pack) : [object CSSPrimitiveValue]
 g: style.getPropertyValue(-webkit-flex-wrap) : none
 g: style.getPropertyCSSValue(-webkit-flex-wrap) : [object CSSPrimitiveValue]
 g: style.getPropertyValue(-webkit-font-kerning) : auto

Modified: trunk/Source/WebCore/ChangeLog (111341 => 111342)


--- trunk/Source/WebCore/ChangeLog	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/Source/WebCore/ChangeLog	2012-03-20 03:32:29 UTC (rev 111342)
@@ -1,3 +1,39 @@
+2012-03-19  Tony Chang  <[email protected]>
+
+        add css parsing of flex-line-pack
+        https://bugs.webkit.org/show_bug.cgi?id=81427
+
+        Reviewed by Ojan Vafai.
+
+        Spec: http://dev.w3.org/csswg/css3-flexbox/#flex-line-pack
+
+        Updated tests in css3/flexbox/css-properties.html
+
+        * css/CSSComputedStyleDeclaration.cpp:
+        (WebCore):
+        (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+        * css/CSSParser.cpp:
+        (WebCore::CSSParser::parseValue):
+        * css/CSSPrimitiveValueMappings.h:
+        (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+        (WebCore):
+        (WebCore::CSSPrimitiveValue::operator EFlexLinePack):
+        * css/CSSProperty.cpp:
+        (WebCore::CSSProperty::isInheritedProperty):
+        * css/CSSPropertyNames.in:
+        * css/CSSStyleApplyProperty.cpp:
+        (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
+        * css/CSSStyleSelector.cpp:
+        (WebCore::CSSStyleSelector::collectMatchingRulesForList):
+        * css/CSSValueKeywords.in:
+        * rendering/style/RenderStyle.h:
+        * rendering/style/RenderStyleConstants.h:
+        * rendering/style/StyleFlexibleBoxData.cpp:
+        (WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData):
+        (WebCore::StyleFlexibleBoxData::operator==):
+        * rendering/style/StyleFlexibleBoxData.h:
+        (StyleFlexibleBoxData):
+
 2012-03-19  Gustavo Noronha Silva  <[email protected]>
 
         [GTK] libWebCore.la has become too big for make

Modified: trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp (111341 => 111342)


--- trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp	2012-03-20 03:32:29 UTC (rev 111342)
@@ -225,6 +225,7 @@
     CSSPropertyWebkitFlexItemAlign,
     CSSPropertyWebkitFlexDirection,
     CSSPropertyWebkitFlexFlow,
+    CSSPropertyWebkitFlexLinePack,
     CSSPropertyWebkitFlexWrap,
     CSSPropertyWebkitFontKerning,
     CSSPropertyWebkitFontSmoothing,
@@ -1639,6 +1640,8 @@
             return cssValuePool->createValue(style->flexDirection());
         case CSSPropertyWebkitFlexWrap:
             return cssValuePool->createValue(style->flexWrap());
+        case CSSPropertyWebkitFlexLinePack:
+            return cssValuePool->createValue(style->flexLinePack());
         case CSSPropertyWebkitFlexFlow: {
             RefPtr<CSSValueList> list = CSSValueList::createSpaceSeparated();
             list->append(cssValuePool->createValue(style->flexDirection()));

Modified: trunk/Source/WebCore/css/CSSParser.cpp (111341 => 111342)


--- trunk/Source/WebCore/css/CSSParser.cpp	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/Source/WebCore/css/CSSParser.cpp	2012-03-20 03:32:29 UTC (rev 111342)
@@ -1724,6 +1724,9 @@
     case CSSPropertyWebkitFlexWrap:
         validPrimitive = id == CSSValueNone || id == CSSValueWrap || id == CSSValueWrapReverse;
         break;
+    case CSSPropertyWebkitFlexLinePack:
+        validPrimitive = id == CSSValueStart || id == CSSValueEnd || id == CSSValueCenter || id == CSSValueJustify || id == CSSValueDistribute || id == CSSValueStretch;
+        break;
     case CSSPropertyWebkitMarquee: {
         const int properties[5] = { CSSPropertyWebkitMarqueeDirection, CSSPropertyWebkitMarqueeIncrement,
                                     CSSPropertyWebkitMarqueeRepetition,

Modified: trunk/Source/WebCore/css/CSSPrimitiveValueMappings.h (111341 => 111342)


--- trunk/Source/WebCore/css/CSSPrimitiveValueMappings.h	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/Source/WebCore/css/CSSPrimitiveValueMappings.h	2012-03-20 03:32:29 UTC (rev 111342)
@@ -1298,6 +1298,53 @@
     }
 }
 
+template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EFlexLinePack e)
+    : CSSValue(PrimitiveClass)
+{
+    m_primitiveUnitType = CSS_IDENT;
+    switch (e) {
+    case LinePackStart:
+        m_value.ident = CSSValueStart;
+        break;
+    case LinePackEnd:
+        m_value.ident = CSSValueEnd;
+        break;
+    case LinePackCenter:
+        m_value.ident = CSSValueCenter;
+        break;
+    case LinePackJustify:
+        m_value.ident = CSSValueJustify;
+        break;
+    case LinePackDistribute:
+        m_value.ident = CSSValueDistribute;
+        break;
+    case LinePackStretch:
+        m_value.ident = CSSValueStretch;
+        break;
+    }
+}
+
+template<> inline CSSPrimitiveValue::operator EFlexLinePack() const
+{
+    switch (m_value.ident) {
+    case CSSValueStart:
+        return LinePackStart;
+    case CSSValueEnd:
+        return LinePackEnd;
+    case CSSValueCenter:
+        return LinePackCenter;
+    case CSSValueJustify:
+        return LinePackJustify;
+    case CSSValueDistribute:
+        return LinePackDistribute;
+    case CSSValueStretch:
+        return LinePackStretch;
+    default:
+        ASSERT_NOT_REACHED();
+        return LinePackStretch;
+    }
+}
+
 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EFlexWrap e)
     : CSSValue(PrimitiveClass)
 {

Modified: trunk/Source/WebCore/css/CSSProperty.cpp (111341 => 111342)


--- trunk/Source/WebCore/css/CSSProperty.cpp	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/Source/WebCore/css/CSSProperty.cpp	2012-03-20 03:32:29 UTC (rev 111342)
@@ -568,6 +568,7 @@
     case CSSPropertyWebkitFlexItemAlign:
     case CSSPropertyWebkitFlexDirection:
     case CSSPropertyWebkitFlexFlow:
+    case CSSPropertyWebkitFlexLinePack:
     case CSSPropertyWebkitFlexWrap:
     case CSSPropertyWebkitFontSizeDelta:
 #if ENABLE(CSS_GRID_LAYOUT)

Modified: trunk/Source/WebCore/css/CSSPropertyNames.in (111341 => 111342)


--- trunk/Source/WebCore/css/CSSPropertyNames.in	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/Source/WebCore/css/CSSPropertyNames.in	2012-03-20 03:32:29 UTC (rev 111342)
@@ -259,6 +259,7 @@
 -webkit-flex-direction
 -webkit-flex-flow
 -webkit-flex-item-align
+-webkit-flex-line-pack
 -webkit-flex-order
 -webkit-flex-pack
 -webkit-flex-wrap

Modified: trunk/Source/WebCore/css/CSSStyleApplyProperty.cpp (111341 => 111342)


--- trunk/Source/WebCore/css/CSSStyleApplyProperty.cpp	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/Source/WebCore/css/CSSStyleApplyProperty.cpp	2012-03-20 03:32:29 UTC (rev 111342)
@@ -1886,6 +1886,7 @@
     setPropertyHandler(CSSPropertyWebkitFlexDirection, ApplyPropertyDefault<EFlexDirection, &RenderStyle::flexDirection, EFlexDirection, &RenderStyle::setFlexDirection, EFlexDirection, &RenderStyle::initialFlexDirection>::createHandler());
     setPropertyHandler(CSSPropertyWebkitFlexFlow, ApplyPropertyExpanding<SuppressValue, CSSPropertyWebkitFlexDirection, CSSPropertyWebkitFlexWrap>::createHandler());
     setPropertyHandler(CSSPropertyWebkitFlexItemAlign, ApplyPropertyDefault<EFlexAlign, &RenderStyle::flexItemAlign, EFlexAlign, &RenderStyle::setFlexItemAlign, EFlexAlign, &RenderStyle::initialFlexItemAlign>::createHandler());
+    setPropertyHandler(CSSPropertyWebkitFlexLinePack, ApplyPropertyDefault<EFlexLinePack, &RenderStyle::flexLinePack, EFlexLinePack, &RenderStyle::setFlexLinePack, EFlexLinePack, &RenderStyle::initialFlexLinePack>::createHandler());
     setPropertyHandler(CSSPropertyWebkitFlexOrder, ApplyPropertyDefault<int, &RenderStyle::flexOrder, int, &RenderStyle::setFlexOrder, int, &RenderStyle::initialFlexOrder>::createHandler());
     setPropertyHandler(CSSPropertyWebkitFlexPack, ApplyPropertyDefault<EFlexPack, &RenderStyle::flexPack, EFlexPack, &RenderStyle::setFlexPack, EFlexPack, &RenderStyle::initialFlexPack>::createHandler());
     setPropertyHandler(CSSPropertyWebkitFlexWrap, ApplyPropertyDefault<EFlexWrap, &RenderStyle::flexWrap, EFlexWrap, &RenderStyle::setFlexWrap, EFlexWrap, &RenderStyle::initialFlexWrap>::createHandler());

Modified: trunk/Source/WebCore/css/CSSStyleSelector.cpp (111341 => 111342)


--- trunk/Source/WebCore/css/CSSStyleSelector.cpp	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/Source/WebCore/css/CSSStyleSelector.cpp	2012-03-20 03:32:29 UTC (rev 111342)
@@ -3960,6 +3960,7 @@
     case CSSPropertyWebkitFlexDirection:
     case CSSPropertyWebkitFlexFlow:
     case CSSPropertyWebkitFlexItemAlign:
+    case CSSPropertyWebkitFlexLinePack:
     case CSSPropertyWebkitFlexOrder:
     case CSSPropertyWebkitFlexPack:
     case CSSPropertyWebkitFlexWrap:

Modified: trunk/Source/WebCore/css/CSSValueKeywords.in (111341 => 111342)


--- trunk/Source/WebCore/css/CSSValueKeywords.in	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/Source/WebCore/css/CSSValueKeywords.in	2012-03-20 03:32:29 UTC (rev 111342)
@@ -505,6 +505,14 @@
 // wrap
 wrap-reverse
 
+// CSS_PROP_FLEX_LINE_PACK
+// start
+// end
+// center
+// justify
+// distribute
+// stretch
+
 // CSS_PROP_MARQUEE_DIRECTION
 forwards
 backwards

Modified: trunk/Source/WebCore/rendering/style/RenderStyle.h (111341 => 111342)


--- trunk/Source/WebCore/rendering/style/RenderStyle.h	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/Source/WebCore/rendering/style/RenderStyle.h	2012-03-20 03:32:29 UTC (rev 111342)
@@ -816,6 +816,7 @@
     bool isColumnFlexDirection() const { return flexDirection() == FlowColumn || flexDirection() == FlowColumnReverse; }
     bool isReverseFlexDirection() const { return flexDirection() == FlowRowReverse || flexDirection() == FlowColumnReverse; }
     EFlexWrap flexWrap() const { return static_cast<EFlexWrap>(rareNonInheritedData->m_flexibleBox->m_flexWrap); }
+    EFlexLinePack flexLinePack() const { return static_cast<EFlexLinePack>(rareNonInheritedData->m_flexibleBox->m_flexLinePack); }
 
 #if ENABLE(CSS_GRID_LAYOUT)
     const Vector<Length>& gridColumns() const { return rareNonInheritedData->m_grid->m_gridColumns; }
@@ -1253,6 +1254,7 @@
     void setFlexItemAlign(EFlexAlign a) { SET_VAR(rareNonInheritedData.access()->m_flexibleBox, m_flexItemAlign, a); }
     void setFlexDirection(EFlexDirection direction) { SET_VAR(rareNonInheritedData.access()->m_flexibleBox, m_flexDirection, direction); }
     void setFlexWrap(EFlexWrap w) { SET_VAR(rareNonInheritedData.access()->m_flexibleBox, m_flexWrap, w); }
+    void setFlexLinePack(EFlexLinePack p) { SET_VAR(rareNonInheritedData.access()->m_flexibleBox, m_flexLinePack, p); }
 #if ENABLE(CSS_GRID_LAYOUT)
     void setGridColumns(const Vector<Length>& lengths) { SET_VAR(rareNonInheritedData.access()->m_grid, m_gridColumns, lengths); }
     void setGridRows(const Vector<Length>& lengths) { SET_VAR(rareNonInheritedData.access()->m_grid, m_gridRows, lengths); }
@@ -1587,6 +1589,7 @@
     static EFlexAlign initialFlexItemAlign() { return AlignAuto; }
     static EFlexDirection initialFlexDirection() { return FlowRow; }
     static EFlexWrap initialFlexWrap() { return FlexWrapNone; }
+    static EFlexLinePack initialFlexLinePack() { return LinePackStretch; }
     static int initialMarqueeLoopCount() { return -1; }
     static int initialMarqueeSpeed() { return 85; }
     static Length initialMarqueeIncrement() { return Length(6, Fixed); }

Modified: trunk/Source/WebCore/rendering/style/RenderStyleConstants.h (111341 => 111342)


--- trunk/Source/WebCore/rendering/style/RenderStyleConstants.h	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/Source/WebCore/rendering/style/RenderStyleConstants.h	2012-03-20 03:32:29 UTC (rev 111342)
@@ -171,6 +171,7 @@
 enum EFlexPack { PackStart, PackEnd, PackCenter, PackJustify, PackDistribute };
 enum EFlexAlign { AlignAuto, AlignStart, AlignEnd, AlignCenter, AlignStretch, AlignBaseline };
 enum EFlexDirection { FlowRow, FlowRowReverse, FlowColumn, FlowColumnReverse };
+enum EFlexLinePack { LinePackStart, LinePackEnd, LinePackCenter, LinePackJustify, LinePackDistribute, LinePackStretch };
 enum EFlexWrap { FlexWrapNone, FlexWrap, FlexWrapReverse };
 
 enum ETextSecurity {

Modified: trunk/Source/WebCore/rendering/style/StyleFlexibleBoxData.cpp (111341 => 111342)


--- trunk/Source/WebCore/rendering/style/StyleFlexibleBoxData.cpp	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/Source/WebCore/rendering/style/StyleFlexibleBoxData.cpp	2012-03-20 03:32:29 UTC (rev 111342)
@@ -41,6 +41,7 @@
     , m_flexItemAlign(RenderStyle::initialFlexItemAlign())
     , m_flexDirection(RenderStyle::initialFlexDirection())
     , m_flexWrap(RenderStyle::initialFlexWrap())
+    , m_flexLinePack(RenderStyle::initialFlexLinePack())
 {
 }
 
@@ -56,6 +57,7 @@
     , m_flexItemAlign(o.m_flexItemAlign)
     , m_flexDirection(o.m_flexDirection)
     , m_flexWrap(o.m_flexWrap)
+    , m_flexLinePack(o.m_flexLinePack)
 {
 }
 
@@ -64,7 +66,8 @@
     return m_widthPositiveFlex == o.m_widthPositiveFlex && m_widthNegativeFlex == o.m_widthNegativeFlex
         && m_heightPositiveFlex == o.m_heightPositiveFlex && m_heightNegativeFlex == o.m_heightNegativeFlex
         && m_flexOrder == o.m_flexOrder && m_flexPack == o.m_flexPack && m_flexAlign == o.m_flexAlign
-        && m_flexItemAlign == o.m_flexItemAlign && m_flexDirection == o.m_flexDirection && m_flexWrap == o.m_flexWrap;
+        && m_flexItemAlign == o.m_flexItemAlign && m_flexDirection == o.m_flexDirection && m_flexWrap == o.m_flexWrap
+        && m_flexLinePack == o.m_flexLinePack;
 }
 
 }

Modified: trunk/Source/WebCore/rendering/style/StyleFlexibleBoxData.h (111341 => 111342)


--- trunk/Source/WebCore/rendering/style/StyleFlexibleBoxData.h	2012-03-20 03:27:27 UTC (rev 111341)
+++ trunk/Source/WebCore/rendering/style/StyleFlexibleBoxData.h	2012-03-20 03:32:29 UTC (rev 111342)
@@ -54,6 +54,7 @@
     unsigned m_flexItemAlign : 3; // EFlexAlign
     unsigned m_flexDirection : 2; // EFlexDirection
     unsigned m_flexWrap : 2; // EFlexWrap
+    unsigned m_flexLinePack : 3; // EFlexLinePack
 
 private:
     StyleFlexibleBoxData();
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to