Bug 1119475 - pt 0 - Ensure logical properties are enabled in UA sheets. r=heycam
authorJonathan Kew <jkew@mozilla.com>
Mon, 16 Feb 2015 11:59:31 +0000
changeset 229343 2f8bf120bfa0782723ffec5d1f2831116fe3391c
parent 229342 5e50387c02f1974aac04ec7f7896530057645cd7
child 229344 189f01bd536149fbdfcdfe32456feee369234abe
push id11352
push userryanvm@gmail.com
push dateTue, 17 Feb 2015 19:29:37 +0000
treeherderfx-team@b6c56fab513d [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersheycam
bugs1119475
milestone38.0a1
Bug 1119475 - pt 0 - Ensure logical properties are enabled in UA sheets. r=heycam
layout/style/nsCSSPropList.h
--- a/layout/style/nsCSSPropList.h
+++ b/layout/style/nsCSSPropList.h
@@ -674,16 +674,17 @@ CSS_PROP_DISPLAY(
 CSS_PROP_LOGICAL(
     block-size,
     block_size,
     BlockSize,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_VALUE_NONNEGATIVE |
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS |
         CSS_PROPERTY_LOGICAL |
         CSS_PROPERTY_LOGICAL_AXIS |
         CSS_PROPERTY_LOGICAL_BLOCK_AXIS,
     "layout.css.vertical-text.enabled",
     VARIANT_AHKLP | VARIANT_CALC,
     kWidthKTable,
     Size,
     Position,
@@ -694,46 +695,50 @@ CSS_PROP_SHORTHAND(
     border,
     Border,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_SHORTHAND(
     border-block-end,
     border_block_end,
     BorderBlockEnd,
-    CSS_PROPERTY_PARSE_FUNCTION,
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS,
     "layout.css.vertical-text.enabled")
 CSS_PROP_SHORTHAND(
     border-block-start,
     border_block_start,
     BorderBlockStart,
-    CSS_PROPERTY_PARSE_FUNCTION,
+    CSS_PROPERTY_PARSE_FUNCTION |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS,
     "layout.css.vertical-text.enabled")
 CSS_PROP_LOGICAL(
     border-block-end-color,
     border_block_end_color,
     BorderBlockEndColor,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS |
         CSS_PROPERTY_LOGICAL |
         CSS_PROPERTY_LOGICAL_BLOCK_AXIS |
         CSS_PROPERTY_LOGICAL_END_EDGE,
     "layout.css.vertical-text.enabled",
     VARIANT_HCK,
     kBorderColorKTable,
     BorderColor,
     Border,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
 CSS_PROP_LOGICAL(
     border-block-end-style,
     border_block_end_style,
     BorderBlockEndStyle,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS |
         CSS_PROPERTY_LOGICAL |
         CSS_PROPERTY_LOGICAL_BLOCK_AXIS |
         CSS_PROPERTY_LOGICAL_END_EDGE,
     "layout.css.vertical-text.enabled",
     VARIANT_HK,
     kBorderStyleKTable,
     BorderStyle,
     Border,
@@ -742,47 +747,50 @@ CSS_PROP_LOGICAL(
 CSS_PROP_LOGICAL(
     border-block-end-width,
     border_block_end_width,
     BorderBlockEndWidth,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_VALUE_NONNEGATIVE |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS |
         CSS_PROPERTY_LOGICAL |
         CSS_PROPERTY_LOGICAL_BLOCK_AXIS |
         CSS_PROPERTY_LOGICAL_END_EDGE,
     "layout.css.vertical-text.enabled",
     VARIANT_HKL | VARIANT_CALC,
     kBorderWidthKTable,
     BorderWidth,
     Border,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
 CSS_PROP_LOGICAL(
     border-block-start-color,
     border_block_start_color,
     BorderBlockStartColor,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS |
         CSS_PROPERTY_LOGICAL |
         CSS_PROPERTY_LOGICAL_BLOCK_AXIS,
     "layout.css.vertical-text.enabled",
     VARIANT_HCK,
     kBorderColorKTable,
     BorderColor,
     Border,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
 CSS_PROP_LOGICAL(
     border-block-start-style,
     border_block_start_style,
     BorderBlockStartStyle,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS |
         CSS_PROPERTY_LOGICAL |
         CSS_PROPERTY_LOGICAL_BLOCK_AXIS,
     "layout.css.vertical-text.enabled",
     VARIANT_HK,
     kBorderStyleKTable,
     BorderStyle,
     Border,
     CSS_PROP_NO_OFFSET,
@@ -790,16 +798,17 @@ CSS_PROP_LOGICAL(
 CSS_PROP_LOGICAL(
     border-block-start-width,
     border_block_start_width,
     BorderBlockStartWidth,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_VALUE_NONNEGATIVE |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS |
         CSS_PROPERTY_LOGICAL |
         CSS_PROPERTY_LOGICAL_BLOCK_AXIS,
     "layout.css.vertical-text.enabled",
     VARIANT_HKL | VARIANT_CALC,
     kBorderWidthKTable,
     BorderWidth,
     Border,
     CSS_PROP_NO_OFFSET,
@@ -2141,16 +2150,17 @@ CSS_PROP_UIRESET(
 CSS_PROP_LOGICAL(
     inline-size,
     inline_size,
     InlineSize,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_VALUE_NONNEGATIVE |
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS |
         CSS_PROPERTY_LOGICAL |
         CSS_PROPERTY_LOGICAL_AXIS,
     "layout.css.vertical-text.enabled",
     VARIANT_AHKLP | VARIANT_CALC,
     kWidthKTable,
     Size,
     Position,
     CSS_PROP_NO_OFFSET,
@@ -2245,16 +2255,17 @@ CSS_PROP_LOGICAL(
     margin-block-end,
     margin_block_end,
     MarginBlockEnd,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_APPLIES_TO_PAGE_RULE |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS |
         CSS_PROPERTY_LOGICAL |
         CSS_PROPERTY_LOGICAL_BLOCK_AXIS |
         CSS_PROPERTY_LOGICAL_END_EDGE,
     "layout.css.vertical-text.enabled",
     VARIANT_AHLP | VARIANT_CALC,
     nullptr,
     Margin,
     Margin,
@@ -2264,16 +2275,17 @@ CSS_PROP_LOGICAL(
     margin-block-start,
     margin_block_start,
     MarginBlockStart,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_APPLIES_TO_PAGE_RULE |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS |
         CSS_PROPERTY_LOGICAL |
         CSS_PROPERTY_LOGICAL_BLOCK_AXIS,
     "layout.css.vertical-text.enabled",
     VARIANT_AHLP | VARIANT_CALC,
     nullptr,
     Margin,
     Margin,
     CSS_PROP_NO_OFFSET,
@@ -2393,16 +2405,17 @@ CSS_PROP_BACKENDONLY(
 CSS_PROP_LOGICAL(
     max-block-size,
     max_block_size,
     MaxBlockSize,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_VALUE_NONNEGATIVE |
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS |
         CSS_PROPERTY_LOGICAL |
         CSS_PROPERTY_LOGICAL_AXIS |
         CSS_PROPERTY_LOGICAL_BLOCK_AXIS,
     "layout.css.vertical-text.enabled",
     VARIANT_HKLPO | VARIANT_CALC,
     kWidthKTable,
     MaxSize,
     Position,
@@ -2425,16 +2438,17 @@ CSS_PROP_POSITION(
 CSS_PROP_LOGICAL(
     max-inline-size,
     max_inline_size,
     MaxInlineSize,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_VALUE_NONNEGATIVE |
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS |
         CSS_PROPERTY_LOGICAL |
         CSS_PROPERTY_LOGICAL_AXIS,
     "layout.css.vertical-text.enabled",
     VARIANT_HKLPO | VARIANT_CALC,
     kWidthKTable,
     MaxSize,
     Position,
     CSS_PROP_NO_OFFSET,
@@ -2470,16 +2484,17 @@ CSS_PROP_POSITION(
 CSS_PROP_LOGICAL(
     min-block-size,
     min_block_size,
     MinBlockSize,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_VALUE_NONNEGATIVE |
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS |
         CSS_PROPERTY_LOGICAL |
         CSS_PROPERTY_LOGICAL_AXIS |
         CSS_PROPERTY_LOGICAL_BLOCK_AXIS,
     "layout.css.vertical-text.enabled",
     VARIANT_AHKLP | VARIANT_CALC,
     kWidthKTable,
     MinSize,
     Position,
@@ -2488,16 +2503,17 @@ CSS_PROP_LOGICAL(
 CSS_PROP_LOGICAL(
     min-inline-size,
     min_inline_size,
     MinInlineSize,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_VALUE_NONNEGATIVE |
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS |
         CSS_PROPERTY_LOGICAL |
         CSS_PROPERTY_LOGICAL_AXIS,
     "layout.css.vertical-text.enabled",
     VARIANT_AHKLP | VARIANT_CALC,
     kWidthKTable,
     MinSize,
     Position,
     CSS_PROP_NO_OFFSET,
@@ -2563,16 +2579,17 @@ CSS_PROP_POSITION(
     eStyleAnimType_Custom)
 CSS_PROP_LOGICAL(
     offset-block-end,
     offset_block_end,
     OffsetBlockEnd,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS |
         CSS_PROPERTY_LOGICAL |
         CSS_PROPERTY_LOGICAL_BLOCK_AXIS |
         CSS_PROPERTY_LOGICAL_END_EDGE,
     "layout.css.vertical-text.enabled",
     VARIANT_AHLP | VARIANT_CALC,
     nullptr,
     Offset,
     Position,
@@ -2580,48 +2597,51 @@ CSS_PROP_LOGICAL(
     eStyleAnimType_None)
 CSS_PROP_LOGICAL(
     offset-block-start,
     offset_block_start,
     OffsetBlockStart,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS |
         CSS_PROPERTY_LOGICAL |
         CSS_PROPERTY_LOGICAL_BLOCK_AXIS,
     "layout.css.vertical-text.enabled",
     VARIANT_AHLP | VARIANT_CALC,
     nullptr,
     Offset,
     Position,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
 CSS_PROP_LOGICAL(
     offset-inline-end,
     offset_inline_end,
     OffsetInlineEnd,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS |
         CSS_PROPERTY_LOGICAL |
         CSS_PROPERTY_LOGICAL_END_EDGE,
     "layout.css.vertical-text.enabled",
     VARIANT_AHLP | VARIANT_CALC,
     nullptr,
     Offset,
     Position,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
 CSS_PROP_LOGICAL(
     offset-inline-start,
     offset_inline_start,
     OffsetInlineStart,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS |
         CSS_PROPERTY_LOGICAL,
     "layout.css.vertical-text.enabled",
     VARIANT_AHLP | VARIANT_CALC,
     nullptr,
     Offset,
     Position,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
@@ -2758,16 +2778,17 @@ CSS_PROP_LOGICAL(
     PaddingBlockEnd,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_VALUE_NONNEGATIVE |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
         // This is required by the UA stylesheet and can't be overridden.
         CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS |
         CSS_PROPERTY_LOGICAL |
         CSS_PROPERTY_LOGICAL_BLOCK_AXIS |
         CSS_PROPERTY_LOGICAL_END_EDGE,
     "layout.css.vertical-text.enabled",
     VARIANT_HLP | VARIANT_CALC,
     nullptr,
     Padding,
     Padding,
@@ -2779,16 +2800,17 @@ CSS_PROP_LOGICAL(
     PaddingBlockStart,
     CSS_PROPERTY_PARSE_VALUE |
         CSS_PROPERTY_VALUE_NONNEGATIVE |
         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
         // This is required by the UA stylesheet and can't be overridden.
         CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
         CSS_PROPERTY_STORES_CALC |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS |
         CSS_PROPERTY_LOGICAL |
         CSS_PROPERTY_LOGICAL_BLOCK_AXIS,
     "layout.css.vertical-text.enabled",
     VARIANT_HLP | VARIANT_CALC,
     nullptr,
     Padding,
     Padding,
     CSS_PROP_NO_OFFSET,
@@ -3075,17 +3097,18 @@ CSS_PROP_SHORTHAND(
     TextDecoration,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_TEXT(
     text-combine-upright,
     text_combine_upright,
     TextCombineUpright,
     CSS_PROPERTY_PARSE_VALUE |
-        CSS_PROPERTY_VALUE_PARSER_FUNCTION,
+        CSS_PROPERTY_VALUE_PARSER_FUNCTION |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS,
     "layout.css.vertical-text.enabled",
     0,
     kTextCombineUprightKTable,
     offsetof(nsStyleText, mTextCombineUpright),
     eStyleAnimType_EnumU8)
 CSS_PROP_TEXTRESET(
     text-decoration-color,
     text_decoration_color,
@@ -3136,17 +3159,18 @@ CSS_PROP_TEXT(
     VARIANT_HLP | VARIANT_CALC,
     nullptr,
     offsetof(nsStyleText, mTextIndent),
     eStyleAnimType_Coord)
 CSS_PROP_VISIBILITY(
     text-orientation,
     text_orientation,
     TextOrientation,
-    CSS_PROPERTY_PARSE_VALUE,
+    CSS_PROPERTY_PARSE_VALUE |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS,
     "layout.css.vertical-text.enabled",
     VARIANT_HK,
     kTextOrientationKTable,
     offsetof(nsStyleVisibility, mTextOrientation),
     eStyleAnimType_EnumU8)
 CSS_PROP_TEXTRESET(
     text-overflow,
     text_overflow,
@@ -3515,17 +3539,18 @@ CSS_PROP_TEXT(
     VARIANT_HK,
     kHyphensKTable,
     CSS_PROP_NO_OFFSET,
     eStyleAnimType_None)
 CSS_PROP_VISIBILITY(
     writing-mode,
     writing_mode,
     WritingMode,
-    CSS_PROPERTY_PARSE_VALUE,
+    CSS_PROPERTY_PARSE_VALUE |
+        CSS_PROPERTY_ALWAYS_ENABLED_IN_UA_SHEETS,
     "layout.css.vertical-text.enabled",
     VARIANT_HK,
     kWritingModeKTable,
     offsetof(nsStyleVisibility, mWritingMode),
     eStyleAnimType_EnumU8)
 CSS_PROP_POSITION(
     z-index,
     z_index,