<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[178228] trunk/Source/WebCore</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/178228">178228</a></dd>
<dt>Author</dt> <dd>cdumez@apple.com</dd>
<dt>Date</dt> <dd>2015-01-09 17:48:44 -0800 (Fri, 09 Jan 2015)</dd>
</dl>

<h3>Log Message</h3>
<pre>Get rid of legacy StyleBuilder switch in StyleResolver.cpp
https://bugs.webkit.org/show_bug.cgi?id=140315

Reviewed by Sam Weinig.

Get rid of legacy StyleBuilder switch in StyleResolver.cpp now that most
properties have been ported to the new generated StyleBuilder in previous
patches. The properties that remained in this switch were shorthand
properties or other properties that do not require any handling in the
StyleBuilder.

To achieve this, this patch introduces 2 parameters in
CSSPropertyNames.in:
- SkipBuilder: Indicates that no StyleBuilder code should be generated
  for this property.
- Shorthand: Indicates that this is a shorthand property, which therefore
  does not use the StyleBuilder. makeprop.pl will merely generate
  assertions for such properties, to validate that this is a shorthand
  property and that the StyleBuilder code is never reached.

* css/CSSPropertyNames.in:
* css/SVGCSSStyleSelector.cpp:
(WebCore::StyleResolver::applySVGProperty):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::applyProperty):
* css/makeprop.pl:</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCorecssCSSPropertyNamesin">trunk/Source/WebCore/css/CSSPropertyNames.in</a></li>
<li><a href="#trunkSourceWebCorecssSVGCSSStyleSelectorcpp">trunk/Source/WebCore/css/SVGCSSStyleSelector.cpp</a></li>
<li><a href="#trunkSourceWebCorecssStyleResolvercpp">trunk/Source/WebCore/css/StyleResolver.cpp</a></li>
<li><a href="#trunkSourceWebCorecssmakeproppl">trunk/Source/WebCore/css/makeprop.pl</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (178227 => 178228)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2015-01-10 01:40:24 UTC (rev 178227)
+++ trunk/Source/WebCore/ChangeLog        2015-01-10 01:48:44 UTC (rev 178228)
</span><span class="lines">@@ -1,3 +1,32 @@
</span><ins>+2015-01-09  Chris Dumez  &lt;cdumez@apple.com&gt;
+
+        Get rid of legacy StyleBuilder switch in StyleResolver.cpp
+        https://bugs.webkit.org/show_bug.cgi?id=140315
+
+        Reviewed by Sam Weinig.
+
+        Get rid of legacy StyleBuilder switch in StyleResolver.cpp now that most
+        properties have been ported to the new generated StyleBuilder in previous
+        patches. The properties that remained in this switch were shorthand
+        properties or other properties that do not require any handling in the
+        StyleBuilder.
+
+        To achieve this, this patch introduces 2 parameters in
+        CSSPropertyNames.in:
+        - SkipBuilder: Indicates that no StyleBuilder code should be generated
+          for this property.
+        - Shorthand: Indicates that this is a shorthand property, which therefore
+          does not use the StyleBuilder. makeprop.pl will merely generate
+          assertions for such properties, to validate that this is a shorthand
+          property and that the StyleBuilder code is never reached.
+
+        * css/CSSPropertyNames.in:
+        * css/SVGCSSStyleSelector.cpp:
+        (WebCore::StyleResolver::applySVGProperty):
+        * css/StyleResolver.cpp:
+        (WebCore::StyleResolver::applyProperty):
+        * css/makeprop.pl:
+
</ins><span class="cx"> 2015-01-09  Brent Fulgham  &lt;bfulgham@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         [Win] Build fix after r178219.
</span></span></pre></div>
<a id="trunkSourceWebCorecssCSSPropertyNamesin"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/CSSPropertyNames.in (178227 => 178228)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/CSSPropertyNames.in        2015-01-10 01:40:24 UTC (rev 178227)
+++ trunk/Source/WebCore/css/CSSPropertyNames.in        2015-01-10 01:48:44 UTC (rev 178228)
</span><span class="lines">@@ -92,6 +92,13 @@
</span><span class="cx"> // * FillLayerProperty:
</span><span class="cx"> // Indicates that this CSS property is a FillLayer property. It must have
</span><span class="cx"> // corresponding methods on the FillLayer class.
</span><ins>+//
+// * SkipBuilder:
+// Ignore this property in the StyleBuilder.
+//
+// * Shorthand:
+// This is a shorthand property so it should not use the StyleBuilder. An
+// ASSERT_NOT_REACHED() will be generated for this property in the StyleBuilder.
</ins><span class="cx"> 
</span><span class="cx"> 
</span><span class="cx"> // high-priority property names have to be listed first, to simplify the check
</span><span class="lines">@@ -132,7 +139,7 @@
</span><span class="cx"> 
</span><span class="cx"> // The remaining properties are listed in alphabetical order
</span><span class="cx"> alignment-baseline [SVG]
</span><del>-animation [LegacyStyleBuilder]
</del><ins>+animation [Shorthand]
</ins><span class="cx"> animation-delay [AnimationProperty, TypeName=double, NameForMethods=Delay]
</span><span class="cx"> animation-direction [AnimationProperty, TypeName=Animation::AnimationDirection, NameForMethods=Direction]
</span><span class="cx"> animation-duration [AnimationProperty, TypeName=double, NameForMethods=Duration]
</span><span class="lines">@@ -141,23 +148,23 @@
</span><span class="cx"> animation-name [AnimationProperty, TypeName=String, NameForMethods=Name]
</span><span class="cx"> animation-play-state [AnimationProperty, TypeName=EAnimPlayState, NameForMethods=PlayState]
</span><span class="cx"> animation-timing-function [AnimationProperty, TypeName=PassRefPtr&lt;TimingFunction&gt;, NameForMethods=TimingFunction]
</span><del>-background [LegacyStyleBuilder]
</del><ins>+background [Shorthand]
</ins><span class="cx"> background-attachment [FillLayerProperty, TypeName=EFillAttachment, NameForMethods=Attachment]
</span><span class="cx"> background-blend-mode [FillLayerProperty, TypeName=BlendMode, NameForMethods=BlendMode]
</span><span class="cx"> background-clip [FillLayerProperty, TypeName=EFillBox, NameForMethods=Clip]
</span><span class="cx"> background-color [VisitedLinkColorSupport, Initial=invalidColor, NoDefaultColor]
</span><span class="cx"> background-image [FillLayerProperty, TypeName=StyleImage*, NameForMethods=Image]
</span><span class="cx"> background-origin [FillLayerProperty, TypeName=EFillBox, NameForMethods=Origin]
</span><del>-background-position [LegacyStyleBuilder]
</del><ins>+background-position [Shorthand]
</ins><span class="cx"> background-position-x [FillLayerProperty, TypeName=Length, NameForMethods=XPosition]
</span><span class="cx"> background-position-y [FillLayerProperty, TypeName=Length, NameForMethods=YPosition]
</span><del>-background-repeat [LegacyStyleBuilder]
</del><ins>+background-repeat [Shorthand]
</ins><span class="cx"> background-repeat-x [FillLayerProperty, TypeName=EFillRepeat, NameForMethods=RepeatX]
</span><span class="cx"> background-repeat-y [FillLayerProperty, TypeName=EFillRepeat, NameForMethods=RepeatY]
</span><span class="cx"> background-size [FillLayerProperty, TypeName=EFillSize, NameForMethods=Size]
</span><span class="cx"> baseline-shift [LegacyStyleBuilder, SVG]
</span><del>-border [LegacyStyleBuilder]
-border-bottom [LegacyStyleBuilder]
</del><ins>+border [Shorthand]
+border-bottom [Shorthand]
</ins><span class="cx"> border-bottom-color [VisitedLinkColorSupport, Initial=invalidColor]
</span><span class="cx"> border-bottom-left-radius [Initial=initialBorderRadius, Converter=Radius]
</span><span class="cx"> -webkit-border-bottom-left-radius = border-bottom-left-radius
</span><span class="lines">@@ -166,25 +173,25 @@
</span><span class="cx"> border-bottom-style [TypeName=EBorderStyle, Initial=initialBorderStyle]
</span><span class="cx"> border-bottom-width [Initial=initialBorderWidth, Converter=LineWidth&lt;float&gt;]
</span><span class="cx"> border-collapse [Inherited]
</span><del>-border-color [LegacyStyleBuilder]
-border-image [LegacyStyleBuilder]
</del><ins>+border-color [Shorthand]
+border-image [Shorthand]
</ins><span class="cx"> border-image-outset [Custom=All]
</span><span class="cx"> border-image-repeat [Custom=All]
</span><span class="cx"> border-image-slice [Custom=All]
</span><span class="cx"> border-image-source [Converter=StyleImage&lt;CSSPropertyBorderImageSource&gt;]
</span><span class="cx"> border-image-width [Custom=All]
</span><del>-border-left [LegacyStyleBuilder]
</del><ins>+border-left [Shorthand]
</ins><span class="cx"> border-left-color [VisitedLinkColorSupport, Initial=invalidColor]
</span><span class="cx"> border-left-style [TypeName=EBorderStyle, Initial=initialBorderStyle]
</span><span class="cx"> border-left-width [Initial=initialBorderWidth, Converter=LineWidth&lt;float&gt;]
</span><del>-border-radius [LegacyStyleBuilder]
-border-right [LegacyStyleBuilder]
</del><ins>+border-radius [Shorthand]
+border-right [Shorthand]
</ins><span class="cx"> border-right-color [VisitedLinkColorSupport, Initial=invalidColor]
</span><span class="cx"> border-right-style [TypeName=EBorderStyle, Initial=initialBorderStyle]
</span><span class="cx"> border-right-width [Initial=initialBorderWidth, Converter=LineWidth&lt;float&gt;]
</span><del>-border-spacing [Inherited, LegacyStyleBuilder]
-border-style [LegacyStyleBuilder]
-border-top [LegacyStyleBuilder]
</del><ins>+border-spacing [Inherited, Shorthand]
+border-style [Shorthand]
+border-top [Shorthand]
</ins><span class="cx"> border-top-color [VisitedLinkColorSupport, Initial=invalidColor]
</span><span class="cx"> border-top-left-radius [Initial=initialBorderRadius, Converter=Radius]
</span><span class="cx"> -webkit-border-top-left-radius = border-top-left-radius
</span><span class="lines">@@ -192,7 +199,7 @@
</span><span class="cx"> -webkit-border-top-right-radius = border-top-right-radius
</span><span class="cx"> border-top-style [TypeName=EBorderStyle, Initial=initialBorderStyle]
</span><span class="cx"> border-top-width [Initial=initialBorderWidth, Converter=LineWidth&lt;float&gt;]
</span><del>-border-width [LegacyStyleBuilder]
</del><ins>+border-width [Shorthand]
</ins><span class="cx"> bottom [Initial=initialOffset, Converter=LengthOrAuto]
</span><span class="cx"> box-shadow [Custom=All]
</span><span class="cx"> box-sizing
</span><span class="lines">@@ -208,7 +215,7 @@
</span><span class="cx"> clip-rule [Inherited, SVG, TypeName=WindRule]
</span><span class="cx"> color-interpolation [Inherited, SVG]
</span><span class="cx"> color-interpolation-filters [Inherited, SVG, TypeName=EColorInterpolation]
</span><del>-color-profile [LegacyStyleBuilder, SVG]
</del><ins>+color-profile [SkipBuilder]
</ins><span class="cx"> color-rendering [Inherited, SVG]
</span><span class="cx"> content [Custom=All]
</span><span class="cx"> counter-increment [Custom=All]
</span><span class="lines">@@ -221,7 +228,7 @@
</span><span class="cx"> cy [Initial=initialZeroLength, Converter=Length]
</span><span class="cx"> dominant-baseline [SVG]
</span><span class="cx"> empty-cells [Inherited, TypeName=EEmptyCell]
</span><del>-enable-background [LegacyStyleBuilder, SVG]
</del><ins>+enable-background [SkipBuilder]
</ins><span class="cx"> fill [Inherited, LegacyStyleBuilder, SVG]
</span><span class="cx"> fill-opacity [Inherited, LegacyStyleBuilder, SVG]
</span><span class="cx"> fill-rule [Inherited, SVG, TypeName=WindRule]
</span><span class="lines">@@ -229,7 +236,7 @@
</span><span class="cx"> float [TypeName=EFloat, NameForMethods=Floating]
</span><span class="cx"> flood-color [LegacyStyleBuilder, SVG]
</span><span class="cx"> flood-opacity [LegacyStyleBuilder, SVG]
</span><del>-font-stretch [LegacyStyleBuilder]
</del><ins>+font-stretch [SkipBuilder]
</ins><span class="cx"> glyph-orientation-horizontal [Inherited, LegacyStyleBuilder, SVG]
</span><span class="cx"> glyph-orientation-vertical [Inherited, LegacyStyleBuilder, SVG]
</span><span class="cx"> height [Initial=initialSize, Converter=LengthSizing]
</span><span class="lines">@@ -244,11 +251,11 @@
</span><span class="cx"> left [Initial=initialOffset, Converter=LengthOrAuto]
</span><span class="cx"> letter-spacing [Inherited, Converter=Spacing]
</span><span class="cx"> lighting-color [LegacyStyleBuilder, SVG]
</span><del>-list-style [Inherited, LegacyStyleBuilder]
</del><ins>+list-style [Inherited, Shorthand]
</ins><span class="cx"> list-style-image [Inherited, Converter=StyleImage&lt;CSSPropertyListStyleImage&gt;]
</span><span class="cx"> list-style-position [Inherited]
</span><span class="cx"> list-style-type [Inherited]
</span><del>-margin [LegacyStyleBuilder]
</del><ins>+margin [Shorthand]
</ins><span class="cx"> margin-bottom [Initial=initialMargin, Converter=LengthOrAuto]
</span><span class="cx"> margin-left [Initial=initialMargin, Converter=LengthOrAuto]
</span><span class="cx"> margin-right [Initial=initialMargin, Converter=LengthOrAuto]
</span><span class="lines">@@ -269,25 +276,25 @@
</span><span class="cx"> // and may be in use on some websites and widgets.
</span><span class="cx"> -webkit-opacity = opacity
</span><span class="cx"> orphans [Inherited, TypeName=short, AutoFunctions]
</span><del>-outline [LegacyStyleBuilder]
</del><ins>+outline [Shorthand]
</ins><span class="cx"> outline-color [VisitedLinkColorSupport, Initial=invalidColor]
</span><span class="cx"> outline-offset [Converter=ComputedLength&lt;int&gt;]
</span><span class="cx"> outline-style [Custom=All]
</span><span class="cx"> outline-width [Converter=LineWidth&lt;unsigned short&gt;]
</span><del>-overflow [LegacyStyleBuilder]
</del><ins>+overflow [Shorthand]
</ins><span class="cx"> overflow-wrap
</span><span class="cx"> overflow-x [TypeName=EOverflow]
</span><span class="cx"> overflow-y [TypeName=EOverflow]
</span><del>-padding [LegacyStyleBuilder]
</del><ins>+padding [Shorthand]
</ins><span class="cx"> padding-bottom [Initial=initialPadding, Converter=Length]
</span><span class="cx"> padding-left [Initial=initialPadding, Converter=Length]
</span><span class="cx"> padding-right [Initial=initialPadding, Converter=Length]
</span><span class="cx"> padding-top [Initial=initialPadding, Converter=Length]
</span><del>-page [LegacyStyleBuilder]
</del><ins>+page [SkipBuilder]
</ins><span class="cx"> page-break-after [TypeName=EPageBreak, Initial=initialPageBreak]
</span><span class="cx"> page-break-before [TypeName=EPageBreak, Initial=initialPageBreak]
</span><span class="cx"> page-break-inside [TypeName=EPageBreak, Initial=initialPageBreak]
</span><del>-paint-order [LegacyStyleBuilder]
</del><ins>+paint-order [LegacyStyleBuilder, SVG]
</ins><span class="cx"> pointer-events [Inherited]
</span><span class="cx"> position
</span><span class="cx"> quotes [Inherited, Converter=Quotes]
</span><span class="lines">@@ -298,7 +305,7 @@
</span><span class="cx"> ry [Initial=initialZeroLength, Converter=Length]
</span><span class="cx"> shape-rendering [Inherited, SVG]
</span><span class="cx"> size [Custom=All]
</span><del>-src [LegacyStyleBuilder]
</del><ins>+src [SkipBuilder]
</ins><span class="cx"> stop-color [LegacyStyleBuilder, SVG]
</span><span class="cx"> stop-opacity [LegacyStyleBuilder, SVG]
</span><span class="cx"> stroke [Inherited, LegacyStyleBuilder, SVG]
</span><span class="lines">@@ -316,34 +323,34 @@
</span><span class="cx"> text-anchor [Inherited, SVG]
</span><span class="cx"> text-decoration [Converter=TextDecoration]
</span><span class="cx"> text-indent [Inherited, Custom=All]
</span><del>-text-line-through [LegacyStyleBuilder]
-text-line-through-color [LegacyStyleBuilder]
-text-line-through-mode [LegacyStyleBuilder]
-text-line-through-style [LegacyStyleBuilder]
-text-line-through-width [LegacyStyleBuilder]
</del><ins>+text-line-through [SkipBuilder]
+text-line-through-color [SkipBuilder]
+text-line-through-mode [SkipBuilder]
+text-line-through-style [SkipBuilder]
+text-line-through-width [SkipBuilder]
</ins><span class="cx"> text-overflow [TypeName=TextOverflow]
</span><del>-text-overline [LegacyStyleBuilder]
-text-overline-color [LegacyStyleBuilder]
-text-overline-mode [LegacyStyleBuilder]
-text-overline-style [LegacyStyleBuilder]
-text-overline-width [LegacyStyleBuilder]
</del><ins>+text-overline [SkipBuilder]
+text-overline-color [SkipBuilder]
+text-overline-mode [SkipBuilder]
+text-overline-style [SkipBuilder]
+text-overline-width [SkipBuilder]
</ins><span class="cx"> text-shadow [Inherited, Custom=All]
</span><span class="cx"> text-transform [Inherited]
</span><span class="cx"> -epub-text-transform = text-transform
</span><del>-text-underline [LegacyStyleBuilder]
-text-underline-color [LegacyStyleBuilder]
-text-underline-mode [LegacyStyleBuilder]
-text-underline-style [LegacyStyleBuilder]
-text-underline-width [LegacyStyleBuilder]
</del><ins>+text-underline [SkipBuilder]
+text-underline-color [SkipBuilder]
+text-underline-mode [SkipBuilder]
+text-underline-style [SkipBuilder]
+text-underline-width [SkipBuilder]
</ins><span class="cx"> top [Initial=initialOffset, Converter=LengthOrAuto]
</span><del>-transition [LegacyStyleBuilder]
-transition-delay [LegacyStyleBuilder]
-transition-duration [LegacyStyleBuilder]
-transition-property [LegacyStyleBuilder]
-transition-timing-function [LegacyStyleBuilder]
</del><ins>+transition [Shorthand]
+transition-delay [SkipBuilder]
+transition-duration [SkipBuilder]
+transition-property [SkipBuilder]
+transition-timing-function [SkipBuilder]
</ins><span class="cx"> 
</span><span class="cx"> unicode-bidi
</span><del>-unicode-range [LegacyStyleBuilder]
</del><ins>+unicode-range [SkipBuilder]
</ins><span class="cx"> vector-effect [SVG]
</span><span class="cx"> vertical-align [Custom=Value]
</span><span class="cx"> visibility [Inherited]
</span><span class="lines">@@ -360,7 +367,7 @@
</span><span class="cx"> z-index [TypeName=int, AutoFunctions]
</span><span class="cx"> alt [NameForMethods=ContentAltText, Custom=Value]
</span><span class="cx"> -webkit-alt = alt
</span><del>--webkit-animation [LegacyStyleBuilder]
</del><ins>+-webkit-animation [Shorthand]
</ins><span class="cx"> -webkit-animation-delay [AnimationProperty, TypeName=double, NameForMethods=Delay]
</span><span class="cx"> -webkit-animation-direction [AnimationProperty, TypeName=Animation::AnimationDirection, NameForMethods=Direction]
</span><span class="cx"> -webkit-animation-duration [AnimationProperty, TypeName=double, NameForMethods=Duration]
</span><span class="lines">@@ -379,29 +386,29 @@
</span><span class="cx"> // a single value: -webkit-background-size: l; is equivalent to background-size: l l;
</span><span class="cx"> // whereas background-size: l; is equivalent to background-size: l auto;
</span><span class="cx"> -webkit-background-size [FillLayerProperty, TypeName=EFillSize, NameForMethods=Size]
</span><del>--webkit-border-after [LegacyStyleBuilder]
--webkit-border-after-color [LegacyStyleBuilder]
--webkit-border-after-style [LegacyStyleBuilder]
--webkit-border-after-width [LegacyStyleBuilder]
--webkit-border-before [LegacyStyleBuilder]
--webkit-border-before-color [LegacyStyleBuilder]
--webkit-border-before-style [LegacyStyleBuilder]
--webkit-border-before-width [LegacyStyleBuilder]
--webkit-border-end [LegacyStyleBuilder]
--webkit-border-end-color [LegacyStyleBuilder]
--webkit-border-end-style [LegacyStyleBuilder]
--webkit-border-end-width [LegacyStyleBuilder]
</del><ins>+-webkit-border-after [Shorthand]
+-webkit-border-after-color [SkipBuilder]
+-webkit-border-after-style [SkipBuilder]
+-webkit-border-after-width [SkipBuilder]
+-webkit-border-before [Shorthand]
+-webkit-border-before-color [SkipBuilder]
+-webkit-border-before-style [SkipBuilder]
+-webkit-border-before-width [SkipBuilder]
+-webkit-border-end [Shorthand]
+-webkit-border-end-color [SkipBuilder]
+-webkit-border-end-style [SkipBuilder]
+-webkit-border-end-width [SkipBuilder]
</ins><span class="cx"> -webkit-border-fit
</span><span class="cx"> -webkit-border-horizontal-spacing [Inherited, NameForMethods=HorizontalBorderSpacing, Converter=ComputedLength&lt;short&gt;]
</span><span class="cx"> -webkit-border-image [Initial=initialNinePieceImage, Converter=BorderImage&lt;CSSPropertyWebkitBorderImage&gt;]
</span><span class="cx"> // -webkit-border-radius differs from border-radius only in the interpretation of
</span><span class="cx"> // a value consisting of two lengths: &quot;-webkit-border-radius: l1 l2;&quot; is equivalent
</span><span class="cx"> // to &quot;border-radius: l1 / l2;&quot;
</span><del>--webkit-border-radius [LegacyStyleBuilder]
--webkit-border-start [LegacyStyleBuilder]
--webkit-border-start-color [LegacyStyleBuilder]
--webkit-border-start-style [LegacyStyleBuilder]
--webkit-border-start-width [LegacyStyleBuilder]
</del><ins>+-webkit-border-radius [Shorthand]
+-webkit-border-start [Shorthand]
+-webkit-border-start-color [SkipBuilder]
+-webkit-border-start-style [SkipBuilder]
+-webkit-border-start-width [SkipBuilder]
</ins><span class="cx"> -webkit-border-vertical-spacing [Inherited, NameForMethods=VerticalBorderSpacing, Converter=ComputedLength&lt;short&gt;]
</span><span class="cx"> -webkit-box-align [TypeName=EBoxAlignment]
</span><span class="cx"> -webkit-box-direction [Inherited]
</span><span class="lines">@@ -429,7 +436,7 @@
</span><span class="cx"> -webkit-column-gap = column-gap
</span><span class="cx"> column-progression [TypeName=ColumnProgression]
</span><span class="cx"> -webkit-column-progression = column-progression
</span><del>-column-rule [LegacyStyleBuilder]
</del><ins>+column-rule [Shorthand]
</ins><span class="cx"> -webkit-column-rule = column-rule
</span><span class="cx"> column-rule-color [VisitedLinkColorSupport, Initial=invalidColor]
</span><span class="cx"> -webkit-column-rule-color = column-rule-color
</span><span class="lines">@@ -441,7 +448,7 @@
</span><span class="cx"> -webkit-column-span = column-span
</span><span class="cx"> column-width [TypeName=float, AutoFunctions, Converter=ComputedLength&lt;float&gt;]
</span><span class="cx"> -webkit-column-width = column-width
</span><del>-columns [LegacyStyleBuilder]
</del><ins>+columns [Shorthand]
</ins><span class="cx"> -webkit-columns = columns
</span><span class="cx"> #if defined(ENABLE_CSS_BOX_DECORATION_BREAK) &amp;&amp; ENABLE_CSS_BOX_DECORATION_BREAK
</span><span class="cx"> -webkit-box-decoration-break
</span><span class="lines">@@ -457,13 +464,13 @@
</span><span class="cx"> -webkit-align-items = align-items
</span><span class="cx"> align-self [TypeName=EAlignItems]
</span><span class="cx"> -webkit-align-self = align-self
</span><del>-flex [LegacyStyleBuilder]
</del><ins>+flex [Shorthand]
</ins><span class="cx"> -webkit-flex = flex
</span><span class="cx"> flex-basis [Converter=LengthOrAuto]
</span><span class="cx"> -webkit-flex-basis = flex-basis
</span><span class="cx"> flex-direction
</span><span class="cx"> -webkit-flex-direction = flex-direction
</span><del>-flex-flow [LegacyStyleBuilder]
</del><ins>+flex-flow [Shorthand]
</ins><span class="cx"> -webkit-flex-flow = flex-flow
</span><span class="cx"> flex-grow [TypeName=float]
</span><span class="cx"> -webkit-flex-grow = flex-grow
</span><span class="lines">@@ -477,21 +484,21 @@
</span><span class="cx"> -webkit-backdrop-filter [ConditionalConverter=FilterOperations, TypeName=FilterOperations]
</span><span class="cx"> #endif
</span><span class="cx"> -webkit-justify-self [Custom=Value]
</span><del>--webkit-font-size-delta [LegacyStyleBuilder]
</del><ins>+-webkit-font-size-delta [SkipBuilder]
</ins><span class="cx"> #if defined(ENABLE_CSS_GRID_LAYOUT) &amp;&amp; ENABLE_CSS_GRID_LAYOUT
</span><del>--webkit-grid [LegacyStyleBuilder]
--webkit-grid-area [LegacyStyleBuilder]
</del><ins>+-webkit-grid [Shorthand]
+-webkit-grid-area [Shorthand]
</ins><span class="cx"> -webkit-grid-auto-columns [ConditionalConverter=GridTrackSize, TypeName=GridTrackSize]
</span><span class="cx"> -webkit-grid-auto-rows [ConditionalConverter=GridTrackSize, TypeName=GridTrackSize]
</span><span class="cx"> -webkit-grid-column-end [ConditionalConverter=GridPosition, TypeName=GridPosition, NameForMethods=GridItemColumnEnd]
</span><span class="cx"> -webkit-grid-column-start [ConditionalConverter=GridPosition, TypeName=GridPosition, NameForMethods=GridItemColumnStart]
</span><del>--webkit-grid-template [LegacyStyleBuilder]
</del><ins>+-webkit-grid-template [Shorthand]
</ins><span class="cx"> -webkit-grid-template-columns [Custom=All]
</span><span class="cx"> -webkit-grid-template-rows [Custom=All]
</span><span class="cx"> -webkit-grid-row-end [ConditionalConverter=GridPosition, TypeName=GridPosition, NameForMethods=GridItemRowEnd]
</span><span class="cx"> -webkit-grid-row-start [ConditionalConverter=GridPosition, TypeName=GridPosition, NameForMethods=GridItemRowStart]
</span><del>--webkit-grid-column [LegacyStyleBuilder]
--webkit-grid-row [LegacyStyleBuilder]
</del><ins>+-webkit-grid-column [Shorthand]
+-webkit-grid-row [Shorthand]
</ins><span class="cx"> -webkit-grid-template-areas [Custom=All]
</span><span class="cx"> -webkit-grid-auto-flow [Converter=GridAutoFlow]
</span><span class="cx"> #endif
</span><span class="lines">@@ -508,24 +515,24 @@
</span><span class="cx"> -webkit-line-clamp [TypeName=LineClampValue]
</span><span class="cx"> -webkit-line-grid [Inherited, Converter=StringOrNone]
</span><span class="cx"> -webkit-line-snap [Inherited, TypeName=LineSnap]
</span><del>--webkit-logical-width [LegacyStyleBuilder]
--webkit-logical-height [LegacyStyleBuilder]
</del><ins>+-webkit-logical-width [SkipBuilder]
+-webkit-logical-height [SkipBuilder]
</ins><span class="cx"> -webkit-margin-after-collapse [TypeName=EMarginCollapse]
</span><span class="cx"> -webkit-margin-before-collapse [TypeName=EMarginCollapse]
</span><span class="cx"> -webkit-margin-bottom-collapse [TypeName=EMarginCollapse, NameForMethods=MarginAfterCollapse]
</span><span class="cx"> -webkit-margin-top-collapse [TypeName=EMarginCollapse, NameForMethods=MarginBeforeCollapse]
</span><del>--webkit-margin-collapse [LegacyStyleBuilder]
--webkit-margin-after [LegacyStyleBuilder]
--webkit-margin-before [LegacyStyleBuilder]
--webkit-margin-end [LegacyStyleBuilder]
--webkit-margin-start [LegacyStyleBuilder]
--webkit-marquee [LegacyStyleBuilder]
</del><ins>+-webkit-margin-collapse [Shorthand]
+-webkit-margin-after [SkipBuilder]
+-webkit-margin-before [SkipBuilder]
+-webkit-margin-end [SkipBuilder]
+-webkit-margin-start [SkipBuilder]
+-webkit-marquee [Shorthand]
</ins><span class="cx"> -webkit-marquee-direction
</span><span class="cx"> -webkit-marquee-increment [ConditionalConverter=MarqueeIncrement, TypeName=Length]
</span><span class="cx"> -webkit-marquee-repetition [NameForMethods=MarqueeLoopCount, Converter=MarqueeRepetition]
</span><span class="cx"> -webkit-marquee-speed [Converter=MarqueeSpeed]
</span><span class="cx"> -webkit-marquee-style [TypeName=EMarqueeBehavior, NameForMethods=MarqueeBehavior]
</span><del>--webkit-mask [LegacyStyleBuilder]
</del><ins>+-webkit-mask [Shorthand]
</ins><span class="cx"> -webkit-mask-box-image [Initial=initialNinePieceImage, Converter=BorderMask&lt;CSSPropertyWebkitMaskBoxImage&gt;]
</span><span class="cx"> -webkit-mask-box-image-outset [Custom=All]
</span><span class="cx"> -webkit-mask-box-image-repeat [Custom=All]
</span><span class="lines">@@ -536,27 +543,27 @@
</span><span class="cx"> -webkit-mask-composite [FillLayerProperty, TypeName=CompositeOperator, NameForMethods=Composite]
</span><span class="cx"> -webkit-mask-image [Custom=Initial|Inherit, ConditionalConverter=MaskImageOperations, TypeName=Vector&lt;RefPtr&lt;MaskImageOperation&gt;&gt;]
</span><span class="cx"> -webkit-mask-origin [FillLayerProperty, TypeName=EFillBox, NameForMethods=Origin]
</span><del>--webkit-mask-position [LegacyStyleBuilder]
</del><ins>+-webkit-mask-position [Shorthand]
</ins><span class="cx"> -webkit-mask-position-x [FillLayerProperty, TypeName=Length, NameForMethods=XPosition]
</span><span class="cx"> -webkit-mask-position-y [FillLayerProperty, TypeName=Length, NameForMethods=YPosition]
</span><del>--webkit-mask-repeat [LegacyStyleBuilder]
</del><ins>+-webkit-mask-repeat [Shorthand]
</ins><span class="cx"> -webkit-mask-repeat-x [FillLayerProperty, TypeName=EFillRepeat, NameForMethods=RepeatX]
</span><span class="cx"> -webkit-mask-repeat-y [FillLayerProperty, TypeName=EFillRepeat, NameForMethods=RepeatY]
</span><span class="cx"> -webkit-mask-size [FillLayerProperty, TypeName=FillSize, NameForMethods=Size]
</span><span class="cx"> -webkit-mask-source-type [FillLayerProperty, TypeName=EMaskSourceType, NameForMethods=MaskSourceType]
</span><del>--webkit-max-logical-width [LegacyStyleBuilder]
--webkit-max-logical-height [LegacyStyleBuilder]
--webkit-min-logical-width [LegacyStyleBuilder]
--webkit-min-logical-height [LegacyStyleBuilder]
</del><ins>+-webkit-max-logical-width [SkipBuilder]
+-webkit-max-logical-height [SkipBuilder]
+-webkit-min-logical-width [SkipBuilder]
+-webkit-min-logical-height [SkipBuilder]
</ins><span class="cx"> -webkit-nbsp-mode [Inherited, TypeName=ENBSPMode, Setter=setNBSPMode, Initial=initialNBSPMode]
</span><span class="cx"> order [TypeName=int]
</span><span class="cx"> -webkit-order = order
</span><del>--webkit-padding-after [LegacyStyleBuilder]
--webkit-padding-before [LegacyStyleBuilder]
--webkit-padding-end [LegacyStyleBuilder]
--webkit-padding-start [LegacyStyleBuilder]
</del><ins>+-webkit-padding-after [SkipBuilder]
+-webkit-padding-before [SkipBuilder]
+-webkit-padding-end [SkipBuilder]
+-webkit-padding-start [SkipBuilder]
</ins><span class="cx"> -webkit-perspective [ConditionalConverter=Perspective, TypeName=float]
</span><del>--webkit-perspective-origin [LegacyStyleBuilder]
</del><ins>+-webkit-perspective-origin [Shorthand]
</ins><span class="cx"> -webkit-perspective-origin-x [Converter=Length]
</span><span class="cx"> -webkit-perspective-origin-y [Converter=Length]
</span><span class="cx"> -webkit-print-color-adjust [Inherited, TypeName=PrintColorAdjust]
</span><span class="lines">@@ -575,14 +582,14 @@
</span><span class="cx"> -webkit-text-align-last [Inherited, TypeName=TextAlignLast]
</span><span class="cx"> -webkit-text-justify [Inherited, TypeName=TextJustify]
</span><span class="cx"> #endif
</span><del>--webkit-text-decoration [LegacyStyleBuilder]
</del><ins>+-webkit-text-decoration [SkipBuilder]
</ins><span class="cx"> -webkit-text-decoration-line [NameForMethods=TextDecoration, Converter=TextDecoration]
</span><span class="cx"> -webkit-text-decoration-style [TypeName=TextDecorationStyle]
</span><span class="cx"> -webkit-text-decoration-color [VisitedLinkColorSupport, Initial=invalidColor]
</span><span class="cx"> -webkit-text-decoration-skip [Inherited, Converter=TextDecorationSkip]
</span><span class="cx"> -webkit-text-underline-position [Inherited, Converter=TextUnderlinePosition]
</span><del>--webkit-text-decorations-in-effect [Inherited, LegacyStyleBuilder]
--webkit-text-emphasis [Inherited, LegacyStyleBuilder]
</del><ins>+-webkit-text-decorations-in-effect [Inherited, SkipBuilder]
+-webkit-text-emphasis [Inherited, Shorthand]
</ins><span class="cx"> -epub-text-emphasis = -webkit-text-emphasis
</span><span class="cx"> text-emphasis = -webkit-text-emphasis
</span><span class="cx"> -webkit-text-emphasis-color [Inherited, VisitedLinkColorSupport, Initial=invalidColor]
</span><span class="lines">@@ -595,16 +602,16 @@
</span><span class="cx"> text-emphasis-style = -webkit-text-emphasis-style
</span><span class="cx"> -webkit-text-fill-color [Inherited, VisitedLinkColorSupport, Initial=invalidColor]
</span><span class="cx"> -webkit-text-security [Inherited]
</span><del>--webkit-text-stroke [Inherited, LegacyStyleBuilder]
</del><ins>+-webkit-text-stroke [Inherited, Shorthand]
</ins><span class="cx"> -webkit-text-stroke-color [Inherited, VisitedLinkColorSupport, Initial=invalidColor]
</span><span class="cx"> -webkit-text-stroke-width [Inherited, Converter=TextStrokeWidth]
</span><span class="cx"> -webkit-transform [Converter=Transform]
</span><del>--webkit-transform-origin [LegacyStyleBuilder]
</del><ins>+-webkit-transform-origin [Shorthand]
</ins><span class="cx"> -webkit-transform-origin-x [Converter=Length]
</span><span class="cx"> -webkit-transform-origin-y [Converter=Length]
</span><span class="cx"> -webkit-transform-origin-z [Converter=ComputedLength&lt;float&gt;]
</span><span class="cx"> -webkit-transform-style [TypeName=ETransformStyle3D, NameForMethods=TransformStyle3D]
</span><del>--webkit-transition [LegacyStyleBuilder]
</del><ins>+-webkit-transition [Shorthand]
</ins><span class="cx"> -webkit-transition-delay [AnimationProperty, TypeName=double, NameForMethods=Delay]
</span><span class="cx"> -webkit-transition-duration [AnimationProperty, TypeName=double, NameForMethods=Duration]
</span><span class="cx"> -webkit-transition-property [AnimationProperty, TypeName=CSSPropertyID, NameForMethods=Property]
</span><span class="lines">@@ -626,10 +633,10 @@
</span><span class="cx"> -webkit-shape-image-threshold [Converter=Number&lt;float&gt;]
</span><span class="cx"> #endif
</span><span class="cx"> #if defined(ENABLE_CSS_DEVICE_ADAPTATION) &amp;&amp; ENABLE_CSS_DEVICE_ADAPTATION
</span><del>-max-zoom [LegacyStyleBuilder]
-min-zoom [LegacyStyleBuilder]
-orientation [LegacyStyleBuilder]
-user-zoom [LegacyStyleBuilder]
</del><ins>+max-zoom [SkipBuilder]
+min-zoom [SkipBuilder]
+orientation [SkipBuilder]
+user-zoom [SkipBuilder]
</ins><span class="cx"> #endif
</span><span class="cx"> #if defined(ENABLE_TOUCH_EVENTS) &amp;&amp; ENABLE_TOUCH_EVENTS
</span><span class="cx"> -webkit-tap-highlight-color [Inherited, Converter=TapHighlightColor]
</span></span></pre></div>
<a id="trunkSourceWebCorecssSVGCSSStyleSelectorcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/SVGCSSStyleSelector.cpp (178227 => 178228)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/SVGCSSStyleSelector.cpp        2015-01-10 01:40:24 UTC (rev 178227)
+++ trunk/Source/WebCore/css/SVGCSSStyleSelector.cpp        2015-01-10 01:48:44 UTC (rev 178228)
</span><span class="lines">@@ -156,11 +156,6 @@
</span><span class="cx">                 svgStyle.setKerning(SVGLength::fromCSSPrimitiveValue(primitiveValue));
</span><span class="cx">             break;
</span><span class="cx">         }
</span><del>-        case CSSPropertyColorProfile:
-        {
-            // Not implemented.
-            break;
-        }
</del><span class="cx">         case CSSPropertyPaintOrder: {
</span><span class="cx">             HANDLE_INHERIT_AND_INITIAL(paintOrder, PaintOrder)
</span><span class="cx">             // 'normal' is the only primitiveValue
</span><span class="lines">@@ -474,13 +469,6 @@
</span><span class="cx"> 
</span><span class="cx">             break;
</span><span class="cx">         }
</span><del>-        case CSSPropertyEnableBackground:
-            // Silently ignoring this property for now
-            // http://bugs.webkit.org/show_bug.cgi?id=6022
-            break;
-        case CSSPropertyWebkitInitialLetter:
-            // Not Implemented
-            break;
</del><span class="cx">         case CSSPropertyWebkitSvgShadow: {
</span><span class="cx">             if (isInherit)
</span><span class="cx">                 return svgStyle.setShadow(state.parentStyle()-&gt;svgStyle().shadow() ? std::make_unique&lt;ShadowData&gt;(*state.parentStyle()-&gt;svgStyle().shadow()) : nullptr);
</span></span></pre></div>
<a id="trunkSourceWebCorecssStyleResolvercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/StyleResolver.cpp (178227 => 178228)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/StyleResolver.cpp        2015-01-10 01:40:24 UTC (rev 178227)
+++ trunk/Source/WebCore/css/StyleResolver.cpp        2015-01-10 01:48:44 UTC (rev 178228)
</span><span class="lines">@@ -1986,429 +1986,12 @@
</span><span class="cx">     if (isInherit &amp;&amp; !state.parentStyle()-&gt;hasExplicitlyInheritedProperties() &amp;&amp; !CSSProperty::isInheritedProperty(id))
</span><span class="cx">         state.parentStyle()-&gt;setHasExplicitlyInheritedProperties();
</span><span class="cx"> 
</span><del>-    // Use the StyleBuilder.
</del><ins>+    // Use the generated StyleBuilder.
</ins><span class="cx">     if (StyleBuilder::applyProperty(id, *this, *value, isInitial, isInherit))
</span><span class="cx">         return;
</span><span class="cx"> 
</span><del>-    // What follows is a list that maps the CSS properties into their corresponding front-end
-    // RenderStyle values.
-    switch (id) {
-    // Shorthand properties.
-    case CSSPropertyAnimation:
-    case CSSPropertyBackground:
-    case CSSPropertyBackgroundPosition:
-    case CSSPropertyBackgroundRepeat:
-    case CSSPropertyBorder:
-    case CSSPropertyBorderBottom:
-    case CSSPropertyBorderColor:
-    case CSSPropertyBorderImage:
-    case CSSPropertyBorderLeft:
-    case CSSPropertyBorderRadius:
-    case CSSPropertyBorderRight:
-    case CSSPropertyBorderSpacing:
-    case CSSPropertyBorderStyle:
-    case CSSPropertyBorderTop:
-    case CSSPropertyBorderWidth:
-    case CSSPropertyListStyle:
-    case CSSPropertyMargin:
-    case CSSPropertyOutline:
-    case CSSPropertyOverflow:
-    case CSSPropertyPadding:
-    case CSSPropertyTransition:
-    case CSSPropertyWebkitAnimation:
-    case CSSPropertyWebkitBorderAfter:
-    case CSSPropertyWebkitBorderBefore:
-    case CSSPropertyWebkitBorderEnd:
-    case CSSPropertyWebkitBorderStart:
-    case CSSPropertyWebkitBorderRadius:
-    case CSSPropertyColumns:
-    case CSSPropertyColumnRule:
-    case CSSPropertyFlex:
-    case CSSPropertyFlexFlow:
-#if ENABLE(CSS_GRID_LAYOUT)
-    case CSSPropertyWebkitGridTemplate:
-    case CSSPropertyWebkitGridArea:
-    case CSSPropertyWebkitGridColumn:
-    case CSSPropertyWebkitGridRow:
-#endif
-    case CSSPropertyWebkitMarginCollapse:
-    case CSSPropertyWebkitMarquee:
-    case CSSPropertyWebkitMask:
-    case CSSPropertyWebkitMaskPosition:
-    case CSSPropertyWebkitMaskRepeat:
-    case CSSPropertyWebkitPerspectiveOrigin:
-    case CSSPropertyWebkitTextEmphasis:
-    case CSSPropertyWebkitTextStroke:
-    case CSSPropertyWebkitTransition:
-    case CSSPropertyWebkitTransformOrigin:
-        ASSERT(isExpandedShorthand(id));
-        ASSERT_NOT_REACHED();
-        break;
-
-    // CSS3 Properties
-    case CSSPropertySrc: // Only used in @font-face rules.
-        return;
-    case CSSPropertyUnicodeRange: // Only used in @font-face rules.
-        return;
-    case CSSPropertyInvalid:
-        return;
-    case CSSPropertyFontStretch:
-    case CSSPropertyPage:
-    case CSSPropertyTextLineThrough:
-    case CSSPropertyTextLineThroughColor:
-    case CSSPropertyTextLineThroughMode:
-    case CSSPropertyTextLineThroughStyle:
-    case CSSPropertyTextLineThroughWidth:
-    case CSSPropertyTextOverline:
-    case CSSPropertyTextOverlineColor:
-    case CSSPropertyTextOverlineMode:
-    case CSSPropertyTextOverlineStyle:
-    case CSSPropertyTextOverlineWidth:
-    case CSSPropertyTextUnderline:
-    case CSSPropertyTextUnderlineColor:
-    case CSSPropertyTextUnderlineMode:
-    case CSSPropertyTextUnderlineStyle:
-    case CSSPropertyTextUnderlineWidth:
-    case CSSPropertyWebkitFontSizeDelta:
-    case CSSPropertyWebkitTextDecorationsInEffect:
-        return;
-    
-    // These properties are aliased and StyleBuilder already applied the property on the prefixed version.
-    case CSSPropertyWebkitMaskImage:
-    case CSSPropertyAnimationDelay:
-    case CSSPropertyAnimationDirection:
-    case CSSPropertyAnimationDuration:
-    case CSSPropertyAnimationFillMode:
-    case CSSPropertyAnimationName:
-    case CSSPropertyAnimationPlayState:
-    case CSSPropertyAnimationIterationCount:
-    case CSSPropertyAnimationTimingFunction:
-    case CSSPropertyTransitionDelay:
-    case CSSPropertyTransitionDuration:
-    case CSSPropertyTransitionProperty:
-    case CSSPropertyTransitionTimingFunction:
-        return;
-    // These properties are implemented in the StyleBuilder lookup table or in the new StyleBuilder.
-    case CSSPropertyBackgroundAttachment:
-    case CSSPropertyBackgroundClip:
-    case CSSPropertyBackgroundColor:
-    case CSSPropertyBackgroundImage:
-    case CSSPropertyBackgroundOrigin:
-    case CSSPropertyBackgroundPositionX:
-    case CSSPropertyBackgroundPositionY:
-    case CSSPropertyBackgroundRepeatX:
-    case CSSPropertyBackgroundRepeatY:
-    case CSSPropertyBackgroundSize:
-    case CSSPropertyBorderBottomColor:
-    case CSSPropertyBorderBottomLeftRadius:
-    case CSSPropertyBorderBottomRightRadius:
-    case CSSPropertyBorderBottomStyle:
-    case CSSPropertyBorderBottomWidth:
-    case CSSPropertyBorderCollapse:
-    case CSSPropertyBorderImageOutset:
-    case CSSPropertyBorderImageRepeat:
-    case CSSPropertyBorderImageSlice:
-    case CSSPropertyBorderImageSource:
-    case CSSPropertyBorderImageWidth:
-    case CSSPropertyBorderLeftColor:
-    case CSSPropertyBorderLeftStyle:
-    case CSSPropertyBorderLeftWidth:
-    case CSSPropertyBorderRightColor:
-    case CSSPropertyBorderRightStyle:
-    case CSSPropertyBorderRightWidth:
-    case CSSPropertyBorderTopColor:
-    case CSSPropertyBorderTopLeftRadius:
-    case CSSPropertyBorderTopRightRadius:
-    case CSSPropertyBorderTopStyle:
-    case CSSPropertyBorderTopWidth:
-    case CSSPropertyBottom:
-    case CSSPropertyBoxShadow:
-    case CSSPropertyBoxSizing:
-    case CSSPropertyCaptionSide:
-    case CSSPropertyClear:
-    case CSSPropertyClip:
-    case CSSPropertyColor:
-    case CSSPropertyContent:
-    case CSSPropertyCounterIncrement:
-    case CSSPropertyCounterReset:
-    case CSSPropertyCursor:
-    case CSSPropertyDirection:
-    case CSSPropertyDisplay:
-    case CSSPropertyEmptyCells:
-    case CSSPropertyFloat:
-    case CSSPropertyFont:
-    case CSSPropertyFontSize:
-    case CSSPropertyFontStyle:
-    case CSSPropertyFontVariant:
-    case CSSPropertyFontWeight:
-    case CSSPropertyWebkitFontFeatureSettings:
-    case CSSPropertyHeight:
-#if ENABLE(CSS_IMAGE_ORIENTATION)
-    case CSSPropertyImageOrientation:
-#endif
-    case CSSPropertyImageRendering:
-#if ENABLE(CSS_IMAGE_RESOLUTION)
-    case CSSPropertyImageResolution:
-#endif
-#if ENABLE(IOS_TEXT_AUTOSIZING)
-    case CSSPropertyWebkitTextSizeAdjust:
-#endif
-#if ENABLE(DASHBOARD_SUPPORT)
-    case CSSPropertyWebkitDashboardRegion:
-#endif
-    case CSSPropertyLeft:
-    case CSSPropertyLetterSpacing:
-    case CSSPropertyLineHeight:
-    case CSSPropertyListStyleImage:
-    case CSSPropertyListStylePosition:
-    case CSSPropertyListStyleType:
-    case CSSPropertyMarginBottom:
-    case CSSPropertyMarginLeft:
-    case CSSPropertyMarginRight:
-    case CSSPropertyMarginTop:
-    case CSSPropertyMaxHeight:
-    case CSSPropertyMaxWidth:
-    case CSSPropertyMinHeight:
-    case CSSPropertyMinWidth:
-    case CSSPropertyObjectFit:
-    case CSSPropertyOpacity:
-    case CSSPropertyOrphans:
-    case CSSPropertyOutlineColor:
-    case CSSPropertyOutlineOffset:
-    case CSSPropertyOutlineStyle:
-    case CSSPropertyOutlineWidth:
-    case CSSPropertyOverflowWrap:
-    case CSSPropertyOverflowX:
-    case CSSPropertyOverflowY:
-    case CSSPropertyPaddingBottom:
-    case CSSPropertyPaddingLeft:
-    case CSSPropertyPaddingRight:
-    case CSSPropertyPaddingTop:
-    case CSSPropertyPageBreakAfter:
-    case CSSPropertyPageBreakBefore:
-    case CSSPropertyPageBreakInside:
-    case CSSPropertyPointerEvents:
-    case CSSPropertyPosition:
-    case CSSPropertyQuotes:
-    case CSSPropertyResize:
-    case CSSPropertyRight:
-    case CSSPropertySize:
-    case CSSPropertySpeak:
-    case CSSPropertyTabSize:
-    case CSSPropertyTableLayout:
-    case CSSPropertyTextAlign:
-    case CSSPropertyTextDecoration:
-    case CSSPropertyTextIndent:
-    case CSSPropertyTextOverflow:
-    case CSSPropertyTextRendering:
-    case CSSPropertyTextShadow:
-    case CSSPropertyTextTransform:
-    case CSSPropertyTop:
-    case CSSPropertyUnicodeBidi:
-    case CSSPropertyVerticalAlign:
-    case CSSPropertyVisibility:
-    case CSSPropertyWebkitAnimationDelay:
-    case CSSPropertyWebkitAnimationDirection:
-    case CSSPropertyWebkitAnimationDuration:
-    case CSSPropertyWebkitAnimationFillMode:
-    case CSSPropertyWebkitAnimationIterationCount:
-    case CSSPropertyWebkitAnimationName:
-    case CSSPropertyWebkitAnimationPlayState:
-    case CSSPropertyWebkitAnimationTimingFunction:
-    case CSSPropertyWebkitAppearance:
-    case CSSPropertyWebkitAspectRatio:
-    case CSSPropertyWebkitBackfaceVisibility:
-    case CSSPropertyWebkitBackgroundClip:
-    case CSSPropertyWebkitBackgroundComposite:
-    case CSSPropertyWebkitBackgroundOrigin:
-    case CSSPropertyWebkitBackgroundSize:
-    case CSSPropertyWebkitBorderFit:
-    case CSSPropertyWebkitBorderHorizontalSpacing:
-    case CSSPropertyWebkitBorderImage:
-    case CSSPropertyWebkitBorderVerticalSpacing:
-    case CSSPropertyWebkitBoxAlign:
-#if ENABLE(CSS_BOX_DECORATION_BREAK)
-    case CSSPropertyWebkitBoxDecorationBreak:
-#endif
-    case CSSPropertyWebkitBoxDirection:
-    case CSSPropertyWebkitBoxFlex:
-    case CSSPropertyWebkitBoxFlexGroup:
-    case CSSPropertyWebkitBoxLines:
-    case CSSPropertyWebkitBoxOrdinalGroup:
-    case CSSPropertyWebkitBoxOrient:
-    case CSSPropertyWebkitBoxPack:
-    case CSSPropertyWebkitBoxShadow:
-    case CSSPropertyWebkitBoxReflect:
-    case CSSPropertyWebkitColorCorrection:
-    case CSSPropertyWebkitColumnAxis:
-    case CSSPropertyWebkitColumnBreakAfter:
-    case CSSPropertyWebkitColumnBreakBefore:
-    case CSSPropertyWebkitColumnBreakInside:
-    case CSSPropertyWebkitJustifySelf:
-    case CSSPropertyWebkitLocale:
-    case CSSPropertyWebkitTextOrientation:
-    case CSSPropertyWebkitWritingMode:
-    case CSSPropertyColumnCount:
-    case CSSPropertyColumnGap:
-    case CSSPropertyColumnProgression:
-    case CSSPropertyColumnRuleColor:
-    case CSSPropertyColumnRuleStyle:
-    case CSSPropertyColumnRuleWidth:
-    case CSSPropertyColumnSpan:
-    case CSSPropertyColumnWidth:
-#if ENABLE(CURSOR_VISIBILITY)
-    case CSSPropertyWebkitCursorVisibility:
-#endif
-#if PLATFORM(IOS)
-    case CSSPropertyWebkitTouchCallout:
-#endif
-#if ENABLE(TOUCH_EVENTS)
-    case CSSPropertyWebkitTapHighlightColor:
-#endif
-#if ENABLE(ACCELERATED_OVERFLOW_SCROLLING)
-    case CSSPropertyWebkitOverflowScrolling:
-#endif
-    case CSSPropertyAlignContent:
-    case CSSPropertyAlignItems:
-    case CSSPropertyAlignSelf:
-    case CSSPropertyFlexBasis:
-    case CSSPropertyFlexDirection:
-    case CSSPropertyFlexGrow:
-    case CSSPropertyFlexShrink:
-    case CSSPropertyFlexWrap:
-    case CSSPropertyJustifyContent:
-    case CSSPropertyOrder:
-#if ENABLE(CSS_REGIONS)
-    case CSSPropertyWebkitFlowFrom:
-    case CSSPropertyWebkitFlowInto:
-#endif
-    case CSSPropertyWebkitFontKerning:
-    case CSSPropertyWebkitFontSmoothing:
-    case CSSPropertyWebkitFontVariantLigatures:
-    case CSSPropertyWebkitHyphenateCharacter:
-    case CSSPropertyWebkitHyphenateLimitAfter:
-    case CSSPropertyWebkitHyphenateLimitBefore:
-    case CSSPropertyWebkitHyphenateLimitLines:
-    case CSSPropertyWebkitHyphens:
-    case CSSPropertyWebkitInitialLetter:
-    case CSSPropertyWebkitLineAlign:
-    case CSSPropertyWebkitLineBoxContain:
-    case CSSPropertyWebkitLineBreak:
-    case CSSPropertyWebkitLineClamp:
-    case CSSPropertyWebkitLineGrid:
-    case CSSPropertyWebkitLineSnap:
-    case CSSPropertyWebkitMarqueeDirection:
-    case CSSPropertyWebkitMarqueeIncrement:
-    case CSSPropertyWebkitMarqueeRepetition:
-    case CSSPropertyWebkitMarqueeSpeed:
-    case CSSPropertyWebkitMarqueeStyle:
-    case CSSPropertyWebkitMaskBoxImage:
-    case CSSPropertyWebkitMaskBoxImageOutset:
-    case CSSPropertyWebkitMaskBoxImageRepeat:
-    case CSSPropertyWebkitMaskBoxImageSlice:
-    case CSSPropertyWebkitMaskBoxImageSource:
-    case CSSPropertyWebkitMaskBoxImageWidth:
-    case CSSPropertyWebkitMaskClip:
-    case CSSPropertyWebkitMaskComposite:
-    case CSSPropertyWebkitMaskOrigin:
-    case CSSPropertyWebkitMaskPositionX:
-    case CSSPropertyWebkitMaskPositionY:
-    case CSSPropertyWebkitMaskRepeatX:
-    case CSSPropertyWebkitMaskRepeatY:
-    case CSSPropertyWebkitMaskSize:
-    case CSSPropertyWebkitMaskSourceType:
-    case CSSPropertyWebkitNbspMode:
-    case CSSPropertyWebkitPerspective:
-    case CSSPropertyWebkitPerspectiveOriginX:
-    case CSSPropertyWebkitPerspectiveOriginY:
-    case CSSPropertyWebkitPrintColorAdjust:
-#if ENABLE(CSS_REGIONS)
-    case CSSPropertyWebkitRegionBreakAfter:
-    case CSSPropertyWebkitRegionBreakBefore:
-    case CSSPropertyWebkitRegionBreakInside:
-    case CSSPropertyWebkitRegionFragment:
-#endif
-    case CSSPropertyWebkitRtlOrdering:
-    case CSSPropertyWebkitRubyPosition:
-    case CSSPropertyWebkitTextCombine:
-#if ENABLE(CSS3_TEXT)
-    case CSSPropertyWebkitTextAlignLast:
-    case CSSPropertyWebkitTextJustify:
-#endif // CSS3_TEXT
-#if ENABLE(CSS_SCROLL_SNAP)
-    case CSSPropertyWebkitScrollSnapType:
-    case CSSPropertyWebkitScrollSnapPointsX:
-    case CSSPropertyWebkitScrollSnapPointsY:
-    case CSSPropertyWebkitScrollSnapDestination:
-    case CSSPropertyWebkitScrollSnapCoordinate:
-#endif
-    case CSSPropertyWebkitTextDecorationLine:
-    case CSSPropertyWebkitTextDecorationStyle:
-    case CSSPropertyWebkitTextDecorationColor:
-    case CSSPropertyWebkitTextDecorationSkip:
-    case CSSPropertyWebkitTextUnderlinePosition:
-    case CSSPropertyWebkitTextEmphasisColor:
-    case CSSPropertyWebkitTextEmphasisPosition:
-    case CSSPropertyWebkitTextEmphasisStyle:
-    case CSSPropertyWebkitTextFillColor:
-    case CSSPropertyWebkitTextSecurity:
-    case CSSPropertyWebkitTextStrokeColor:
-    case CSSPropertyWebkitTextStrokeWidth:
-    case CSSPropertyWebkitTransformOriginX:
-    case CSSPropertyWebkitTransformOriginY:
-    case CSSPropertyWebkitTransformOriginZ:
-    case CSSPropertyWebkitTransformStyle:
-    case CSSPropertyWebkitTransitionDelay:
-    case CSSPropertyWebkitTransitionDuration:
-    case CSSPropertyWebkitTransitionProperty:
-    case CSSPropertyWebkitTransitionTimingFunction:
-    case CSSPropertyWebkitUserDrag:
-    case CSSPropertyWebkitUserModify:
-    case CSSPropertyWebkitUserSelect:
-    case CSSPropertyWebkitClipPath:
-#if ENABLE(CSS_SHAPES)
-    case CSSPropertyWebkitShapeMargin:
-    case CSSPropertyWebkitShapeImageThreshold:
-    case CSSPropertyWebkitShapeOutside:
-#endif
-    case CSSPropertyWhiteSpace:
-    case CSSPropertyWidows:
-    case CSSPropertyWidth:
-    case CSSPropertyWordBreak:
-    case CSSPropertyWordSpacing:
-    case CSSPropertyWordWrap:
-    case CSSPropertyZIndex:
-    case CSSPropertyZoom:
-#if ENABLE(CSS_DEVICE_ADAPTATION)
-    case CSSPropertyMaxZoom:
-    case CSSPropertyMinZoom:
-    case CSSPropertyOrientation:
-    case CSSPropertyUserZoom:
-#endif
-#if ENABLE(CSS_GRID_LAYOUT)
-    case CSSPropertyWebkitGridAutoColumns:
-    case CSSPropertyWebkitGridAutoRows:
-    case CSSPropertyWebkitGridTemplateColumns:
-    case CSSPropertyWebkitGridTemplateRows:
-    case CSSPropertyWebkitGridColumnStart:
-    case CSSPropertyWebkitGridColumnEnd:
-    case CSSPropertyWebkitGridRowStart:
-    case CSSPropertyWebkitGridRowEnd:
-    case CSSPropertyWebkitGridTemplateAreas:
-    case CSSPropertyWebkitGridAutoFlow:
-#endif // ENABLE(CSS_GRID_LAYOUT)
-    case CSSPropertyWebkitFilter:
-#if ENABLE(FILTERS_LEVEL_2)
-    case CSSPropertyWebkitBackdropFilter:
-#endif
-    case CSSPropertyAlt:
-        ASSERT_NOT_REACHED();
-        return;
-    default:
-        // Try the SVG properties
-        applySVGProperty(id, value);
-        return;
-    }
</del><ins>+    // Try the SVG properties that haven't been ported to the new StyleBuilder yet.
+    applySVGProperty(id, value);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> PassRefPtr&lt;StyleImage&gt; StyleResolver::styleImage(CSSPropertyID property, CSSValue&amp; value)
</span></span></pre></div>
<a id="trunkSourceWebCorecssmakeproppl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/makeprop.pl (178227 => 178228)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/makeprop.pl        2015-01-10 01:40:24 UTC (rev 178227)
+++ trunk/Source/WebCore/css/makeprop.pl        2015-01-10 01:48:44 UTC (rev 178228)
</span><span class="lines">@@ -55,6 +55,8 @@
</span><span class="cx">   NameForMethods =&gt; 1,
</span><span class="cx">   NoDefaultColor =&gt; 1,
</span><span class="cx">   SVG =&gt; 1,
</span><ins>+  Shorthand =&gt; 1,
+  SkipBuilder =&gt; 1,
</ins><span class="cx">   Setter =&gt; 1,
</span><span class="cx">   TypeName =&gt; 1,
</span><span class="cx">   VisitedLinkColorSupport =&gt; 1,
</span><span class="lines">@@ -846,6 +848,7 @@
</span><span class="cx"> #include &quot;RenderStyle.h&quot;
</span><span class="cx"> #include &quot;StyleBuilderConverter.h&quot;
</span><span class="cx"> #include &quot;StyleBuilderCustom.h&quot;
</span><ins>+#include &quot;StylePropertyShorthand.h&quot;
</ins><span class="cx"> #include &quot;StyleResolver.h&quot;
</span><span class="cx"> 
</span><span class="cx"> namespace WebCore {
</span><span class="lines">@@ -858,6 +861,10 @@
</span><span class="cx">   # Skip properties still using the legacy style builder.
</span><span class="cx">   next unless exists($propertiesWithStyleBuilderOptions{$name});
</span><span class="cx"> 
</span><ins>+  # Skip Shorthand properties and properties that do not use the StyleBuilder.
+  next if (exists $propertiesWithStyleBuilderOptions{$name}{&quot;Shorthand&quot;});
+  next if (exists $propertiesWithStyleBuilderOptions{$name}{&quot;SkipBuilder&quot;});
+
</ins><span class="cx">   my $indent = &quot;    &quot;;
</span><span class="cx">   if (!$propertiesWithStyleBuilderOptions{$name}{&quot;Custom&quot;}{&quot;Initial&quot;}) {
</span><span class="cx">     print STYLEBUILDER generateInitialValueSetter($name, $indent);
</span><span class="lines">@@ -876,6 +883,8 @@
</span><span class="cx"> bool StyleBuilder::applyProperty(CSSPropertyID property, StyleResolver&amp; styleResolver, CSSValue&amp; value, bool isInitial, bool isInherit)
</span><span class="cx"> {
</span><span class="cx">     switch (property) {
</span><ins>+    case CSSPropertyInvalid:
+        return true;
</ins><span class="cx"> EOF
</span><span class="cx"> 
</span><span class="cx"> foreach my $name (@names) {
</span><span class="lines">@@ -883,12 +892,17 @@
</span><span class="cx">   next unless exists($propertiesWithStyleBuilderOptions{$name});
</span><span class="cx"> 
</span><span class="cx">   print STYLEBUILDER &quot;    case CSSProperty&quot; . $nameToId{$name} . &quot;:\n&quot;;
</span><del>-  print STYLEBUILDER &quot;        if (isInitial)\n&quot;;
-  print STYLEBUILDER &quot;            &quot; . getScopeForFunction($name, &quot;Initial&quot;) . &quot;::applyInitial&quot; . $nameToId{$name} . &quot;(styleResolver);\n&quot;;
-  print STYLEBUILDER &quot;        else if (isInherit)\n&quot;;
-  print STYLEBUILDER &quot;            &quot; . getScopeForFunction($name, &quot;Inherit&quot;) . &quot;::applyInherit&quot; . $nameToId{$name} . &quot;(styleResolver);\n&quot;;
-  print STYLEBUILDER &quot;        else\n&quot;;
-  print STYLEBUILDER &quot;            &quot; . getScopeForFunction($name, &quot;Value&quot;) . &quot;::applyValue&quot; . $nameToId{$name} . &quot;(styleResolver, value);\n&quot;;
</del><ins>+  if (exists $propertiesWithStyleBuilderOptions{$name}{&quot;Shorthand&quot;}) {
+    print STYLEBUILDER &quot;        ASSERT(isExpandedShorthand(property));\n&quot;;
+    print STYLEBUILDER &quot;        ASSERT_NOT_REACHED();\n&quot;;
+  } elsif (!exists $propertiesWithStyleBuilderOptions{$name}{&quot;SkipBuilder&quot;}) {
+    print STYLEBUILDER &quot;        if (isInitial)\n&quot;;
+    print STYLEBUILDER &quot;            &quot; . getScopeForFunction($name, &quot;Initial&quot;) . &quot;::applyInitial&quot; . $nameToId{$name} . &quot;(styleResolver);\n&quot;;
+    print STYLEBUILDER &quot;        else if (isInherit)\n&quot;;
+    print STYLEBUILDER &quot;            &quot; . getScopeForFunction($name, &quot;Inherit&quot;) . &quot;::applyInherit&quot; . $nameToId{$name} . &quot;(styleResolver);\n&quot;;
+    print STYLEBUILDER &quot;        else\n&quot;;
+    print STYLEBUILDER &quot;            &quot; . getScopeForFunction($name, &quot;Value&quot;) . &quot;::applyValue&quot; . $nameToId{$name} . &quot;(styleResolver, value);\n&quot;;
+  }
</ins><span class="cx">   print STYLEBUILDER &quot;        return true;\n&quot;;
</span><span class="cx"> }
</span><span class="cx"> 
</span></span></pre>
</div>
</div>

</body>
</html>