<!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>[175123] 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/175123">175123</a></dd>
<dt>Author</dt> <dd>cdumez@apple.com</dd>
<dt>Date</dt> <dd>2014-10-23 09:14:25 -0700 (Thu, 23 Oct 2014)</dd>
</dl>
<h3>Log Message</h3>
<pre>Move Length-type CSS properties from DeprecatedStyleBuilder to the new Style Builder
https://bugs.webkit.org/show_bug.cgi?id=138000
Reviewed by Andreas Kling.
Move most Length-type CSS properties from DeprecatedStyleBuilder to the
new Style Builder so that they are now generated. This patch adds
support for a "Converter" option in CSSPropertyNames.in that can be
used to specify a type converter function in
css/StyleBuilderConverter.h. This patch adds support for Length and
LengthOrAuto converters so that most Length-type properties can now be
generated.
Another converter (likely called "LengthSizing") will be needed to
generate the remaining Length-type properties. This will be taken care
of in a follow-up patch.
This patch is inspired by the following Blink revision by
<timloh@chromium.org>:
https://src.chromium.org/viewvc/blink?view=rev&revision=150500
No new tests, no behavior change.
* WebCore.xcodeproj/project.pbxproj:
* css/CSSPropertyNames.in:
* css/DeprecatedStyleBuilder.cpp:
(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
* css/SVGCSSPropertyNames.in:
* css/StyleBuilder.h:
* css/StyleBuilderConverter.h: Added.
(WebCore::StyleBuilderConverter::convertLength):
(WebCore::StyleBuilderConverter::convertLengthOrAuto):
* 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="#trunkSourceWebCoreWebCorexcodeprojprojectpbxproj">trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj</a></li>
<li><a href="#trunkSourceWebCorecssCSSPropertyNamesin">trunk/Source/WebCore/css/CSSPropertyNames.in</a></li>
<li><a href="#trunkSourceWebCorecssDeprecatedStyleBuildercpp">trunk/Source/WebCore/css/DeprecatedStyleBuilder.cpp</a></li>
<li><a href="#trunkSourceWebCorecssSVGCSSPropertyNamesin">trunk/Source/WebCore/css/SVGCSSPropertyNames.in</a></li>
<li><a href="#trunkSourceWebCorecssStyleBuilderh">trunk/Source/WebCore/css/StyleBuilder.h</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>
<h3>Added Paths</h3>
<ul>
<li><a href="#trunkSourceWebCorecssStyleBuilderConverterh">trunk/Source/WebCore/css/StyleBuilderConverter.h</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (175122 => 175123)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2014-10-23 16:09:46 UTC (rev 175122)
+++ trunk/Source/WebCore/ChangeLog        2014-10-23 16:14:25 UTC (rev 175123)
</span><span class="lines">@@ -1,3 +1,41 @@
</span><ins>+2014-10-23 Chris Dumez <cdumez@apple.com>
+
+ Move Length-type CSS properties from DeprecatedStyleBuilder to the new Style Builder
+ https://bugs.webkit.org/show_bug.cgi?id=138000
+
+ Reviewed by Andreas Kling.
+
+ Move most Length-type CSS properties from DeprecatedStyleBuilder to the
+ new Style Builder so that they are now generated. This patch adds
+ support for a "Converter" option in CSSPropertyNames.in that can be
+ used to specify a type converter function in
+ css/StyleBuilderConverter.h. This patch adds support for Length and
+ LengthOrAuto converters so that most Length-type properties can now be
+ generated.
+
+ Another converter (likely called "LengthSizing") will be needed to
+ generate the remaining Length-type properties. This will be taken care
+ of in a follow-up patch.
+
+ This patch is inspired by the following Blink revision by
+ <timloh@chromium.org>:
+ https://src.chromium.org/viewvc/blink?view=rev&revision=150500
+
+ No new tests, no behavior change.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * css/CSSPropertyNames.in:
+ * css/DeprecatedStyleBuilder.cpp:
+ (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
+ * css/SVGCSSPropertyNames.in:
+ * css/StyleBuilder.h:
+ * css/StyleBuilderConverter.h: Added.
+ (WebCore::StyleBuilderConverter::convertLength):
+ (WebCore::StyleBuilderConverter::convertLengthOrAuto):
+ * css/StyleResolver.cpp:
+ (WebCore::StyleResolver::applyProperty):
+ * css/makeprop.pl:
+
</ins><span class="cx"> 2014-10-23 Zan Dobersek <zdobersek@igalia.com>
</span><span class="cx">
</span><span class="cx"> Const-ify static s_resourceType members in RenderSVGResource* classes
</span></span></pre></div>
<a id="trunkSourceWebCoreWebCorexcodeprojprojectpbxproj"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (175122 => 175123)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj        2014-10-23 16:09:46 UTC (rev 175122)
+++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj        2014-10-23 16:14:25 UTC (rev 175123)
</span><span class="lines">@@ -2503,6 +2503,7 @@
</span><span class="cx">                 836FBCEC178C117F00B21A15 /* SVGAnimatedProperty.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 836FBCEB178C117F00B21A15 /* SVGAnimatedProperty.cpp */; };
</span><span class="cx">                 8386A96D19F61B2E00E1EC4A /* StyleBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 8386A96C19F61B2E00E1EC4A /* StyleBuilder.h */; };
</span><span class="cx">                 8386A97019F61E4F00E1EC4A /* StyleBuilder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8386A96E19F61E4F00E1EC4A /* StyleBuilder.cpp */; };
</span><ins>+                83B9687B19F8AB83004EF7AF /* StyleBuilderConverter.h in Headers */ = {isa = PBXBuildFile; fileRef = 83B9687919F8AB83004EF7AF /* StyleBuilderConverter.h */; };
</ins><span class="cx">                 83C1D425178D5AB400141E68 /* SVGPathSegArcAbs.h in Headers */ = {isa = PBXBuildFile; fileRef = 83C1D413178D5AB400141E68 /* SVGPathSegArcAbs.h */; };
</span><span class="cx">                 83C1D426178D5AB400141E68 /* SVGPathSegArcRel.h in Headers */ = {isa = PBXBuildFile; fileRef = 83C1D414178D5AB400141E68 /* SVGPathSegArcRel.h */; };
</span><span class="cx">                 83C1D427178D5AB400141E68 /* SVGPathSegCurvetoCubicAbs.h in Headers */ = {isa = PBXBuildFile; fileRef = 83C1D415178D5AB400141E68 /* SVGPathSegCurvetoCubicAbs.h */; };
</span><span class="lines">@@ -9683,7 +9684,8 @@
</span><span class="cx">                 836FBCE9178C113200B21A15 /* SVGAnimatedTypeAnimator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SVGAnimatedTypeAnimator.cpp; sourceTree = "<group>"; };
</span><span class="cx">                 836FBCEB178C117F00B21A15 /* SVGAnimatedProperty.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SVGAnimatedProperty.cpp; sourceTree = "<group>"; };
</span><span class="cx">                 8386A96C19F61B2E00E1EC4A /* StyleBuilder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StyleBuilder.h; sourceTree = "<group>"; };
</span><del>-                8386A96E19F61E4F00E1EC4A /* StyleBuilder.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = StyleBuilder.cpp; path = StyleBuilder.cpp; sourceTree = "<group>"; };
</del><ins>+                8386A96E19F61E4F00E1EC4A /* StyleBuilder.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StyleBuilder.cpp; sourceTree = "<group>"; };
+                83B9687919F8AB83004EF7AF /* StyleBuilderConverter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StyleBuilderConverter.h; sourceTree = "<group>"; };
</ins><span class="cx">                 83C1D413178D5AB400141E68 /* SVGPathSegArcAbs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SVGPathSegArcAbs.h; sourceTree = "<group>"; };
</span><span class="cx">                 83C1D414178D5AB400141E68 /* SVGPathSegArcRel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SVGPathSegArcRel.h; sourceTree = "<group>"; };
</span><span class="cx">                 83C1D415178D5AB400141E68 /* SVGPathSegCurvetoCubicAbs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SVGPathSegCurvetoCubicAbs.h; sourceTree = "<group>"; };
</span><span class="lines">@@ -20565,7 +20567,7 @@
</span><span class="cx">                                 A8FA6E5C0E4CFDED00D5CF49 /* Pattern.cpp */,
</span><span class="cx">                                 A8FA6E5B0E4CFDED00D5CF49 /* Pattern.h */,
</span><span class="cx">                                 0562F9601573F88F0031CA16 /* PlatformLayer.h */,
</span><del>- CEEFCD7B19DB33DC003876D7 /* PlatformMediaResourceLoader.h */,
</del><ins>+                                CEEFCD7B19DB33DC003876D7 /* PlatformMediaResourceLoader.h */,
</ins><span class="cx">                                 072847E216EBC5B00043CFA4 /* PlatformTextTrack.h */,
</span><span class="cx">                                 072847E316EBC5B00043CFA4 /* PlatformTextTrackMenu.h */,
</span><span class="cx">                                 074E82B818A69F0E007EF54C /* PlatformTimeRanges.cpp */,
</span><span class="lines">@@ -22218,6 +22220,8 @@
</span><span class="cx">                                 43107BE118CC19DE00CC18E8 /* SelectorPseudoTypeMap.h */,
</span><span class="cx">                                 536D5A24193F40FC00CE4CAB /* SourceSizeList.cpp */,
</span><span class="cx">                                 536D5A26193F410B00CE4CAB /* SourceSizeList.h */,
</span><ins>+                                8386A96C19F61B2E00E1EC4A /* StyleBuilder.h */,
+                                83B9687919F8AB83004EF7AF /* StyleBuilderConverter.h */,
</ins><span class="cx">                                 E47A97CE163059FC005DCD99 /* StyleInvalidationAnalysis.cpp */,
</span><span class="cx">                                 E47A97CF163059FC005DCD99 /* StyleInvalidationAnalysis.h */,
</span><span class="cx">                                 0FF5026E102BA9660066F39A /* StyleMedia.cpp */,
</span><span class="lines">@@ -22272,7 +22276,6 @@
</span><span class="cx">                                 3FFFF9A6159D9A550020BBD5 /* WebKitCSSViewportRule.cpp */,
</span><span class="cx">                                 3FFFF9A7159D9A550020BBD5 /* WebKitCSSViewportRule.h */,
</span><span class="cx">                                 3F2B33E3165ABD3500E3987C /* WebKitCSSViewportRule.idl */,
</span><del>-                                8386A96C19F61B2E00E1EC4A /* StyleBuilder.h */,
</del><span class="cx">                         );
</span><span class="cx">                         path = css;
</span><span class="cx">                         sourceTree = "<group>";
</span><span class="lines">@@ -24444,7 +24447,6 @@
</span><span class="cx">                                 FD3160A112B026F700C1A359 /* HRTFPanner.h in Headers */,
</span><span class="cx">                                 BC97E23A109144950010D361 /* HTMLAllCollection.h in Headers */,
</span><span class="cx">                                 A8CFF7AB0A156978000A4234 /* HTMLAnchorElement.h in Headers */,
</span><del>-                                07BC67F419F8201D00E0E3D9 /* URLRegistry.h in Headers */,
</del><span class="cx">                                 A871D45D0A127CBC00B12A68 /* HTMLAppletElement.h in Headers */,
</span><span class="cx">                                 A8EA7D2E0A19385500A8EF5F /* HTMLAreaElement.h in Headers */,
</span><span class="cx">                                 E44613A20CD6331000FADA75 /* HTMLAudioElement.h in Headers */,
</span><span class="lines">@@ -25589,7 +25591,7 @@
</span><span class="cx">                                 935C476809AC4D4300A6AAB4 /* PlatformKeyboardEvent.h in Headers */,
</span><span class="cx">                                 0562F9611573F88F0031CA16 /* PlatformLayer.h in Headers */,
</span><span class="cx">                                 F544F78915CFB2A800AF33A8 /* PlatformLocale.h in Headers */,
</span><del>- CEEFCD7C19DB33DC003876D7 /* PlatformMediaResourceLoader.h in Headers */,
</del><ins>+                                CEEFCD7C19DB33DC003876D7 /* PlatformMediaResourceLoader.h in Headers */,
</ins><span class="cx">                                 932871C00B20DEB70049035A /* PlatformMenuDescription.h in Headers */,
</span><span class="cx">                                 41BF70100FE86F61005E8DEC /* PlatformMessagePortChannel.h in Headers */,
</span><span class="cx">                                 935C476909AC4D4300A6AAB4 /* PlatformMouseEvent.h in Headers */,
</span><span class="lines">@@ -25930,6 +25932,7 @@
</span><span class="cx">                                 BC8B853E0E7C7F1100AB6984 /* ScrollbarThemeMac.h in Headers */,
</span><span class="cx">                                 0FE71406142170B800DB33BA /* ScrollbarThemeMock.h in Headers */,
</span><span class="cx">                                 5D925B680F64D4DD00B847F0 /* ScrollBehavior.h in Headers */,
</span><ins>+                                83B9687B19F8AB83004EF7AF /* StyleBuilderConverter.h in Headers */,
</ins><span class="cx">                                 1AA84F05143BA7BD0051D153 /* ScrollElasticityController.h in Headers */,
</span><span class="cx">                                 0F605AED15F94848004DF0C0 /* ScrollingConstraints.h in Headers */,
</span><span class="cx">                                 1AF62EE814DA22A70041556C /* ScrollingCoordinator.h in Headers */,
</span></span></pre></div>
<a id="trunkSourceWebCorecssCSSPropertyNamesin"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/CSSPropertyNames.in (175122 => 175123)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/CSSPropertyNames.in        2014-10-23 16:09:46 UTC (rev 175122)
+++ trunk/Source/WebCore/css/CSSPropertyNames.in        2014-10-23 16:14:25 UTC (rev 175123)
</span><span class="lines">@@ -93,7 +93,7 @@
</span><span class="cx"> border-top-style [NewStyleBuilder, TypeName=EBorderStyle, Initial=initialBorderStyle]
</span><span class="cx"> border-top-width
</span><span class="cx"> border-width
</span><del>-bottom
</del><ins>+bottom [NewStyleBuilder, Initial=initialOffset, Converter=LengthOrAuto]
</ins><span class="cx"> box-shadow
</span><span class="cx"> box-sizing [NewStyleBuilder]
</span><span class="cx"> // -webkit-box-sizing worked in Safari 4 and earlier.
</span><span class="lines">@@ -121,17 +121,17 @@
</span><span class="cx"> #if defined(ENABLE_CSS_IMAGE_RESOLUTION) && ENABLE_CSS_IMAGE_RESOLUTION
</span><span class="cx"> image-resolution [Inherited]
</span><span class="cx"> #endif
</span><del>-left
</del><ins>+left [NewStyleBuilder, Initial=initialOffset, Converter=LengthOrAuto]
</ins><span class="cx"> letter-spacing [Inherited]
</span><span class="cx"> list-style [Inherited]
</span><span class="cx"> list-style-image [Inherited]
</span><span class="cx"> list-style-position [Inherited, NewStyleBuilder]
</span><span class="cx"> list-style-type [Inherited, NewStyleBuilder]
</span><span class="cx"> margin
</span><del>-margin-bottom
-margin-left
-margin-right
-margin-top
</del><ins>+margin-bottom [NewStyleBuilder, Initial=initialMargin, Converter=LengthOrAuto]
+margin-left [NewStyleBuilder, Initial=initialMargin, Converter=LengthOrAuto]
+margin-right [NewStyleBuilder, Initial=initialMargin, Converter=LengthOrAuto]
+margin-top [NewStyleBuilder, Initial=initialMargin, Converter=LengthOrAuto]
</ins><span class="cx"> max-height
</span><span class="cx"> max-width
</span><span class="cx"> min-height
</span><span class="lines">@@ -152,10 +152,10 @@
</span><span class="cx"> overflow-x [NewStyleBuilder, TypeName=EOverflow]
</span><span class="cx"> overflow-y [NewStyleBuilder, TypeName=EOverflow]
</span><span class="cx"> padding
</span><del>-padding-bottom
-padding-left
-padding-right
-padding-top
</del><ins>+padding-bottom [NewStyleBuilder, Initial=initialPadding, Converter=Length]
+padding-left [NewStyleBuilder, Initial=initialPadding, Converter=Length]
+padding-right [NewStyleBuilder, Initial=initialPadding, Converter=Length]
+padding-top [NewStyleBuilder, Initial=initialPadding, Converter=Length]
</ins><span class="cx"> page
</span><span class="cx"> page-break-after [NewStyleBuilder, TypeName=EPageBreak, Initial=initialPageBreak]
</span><span class="cx"> page-break-before [NewStyleBuilder, TypeName=EPageBreak, Initial=initialPageBreak]
</span><span class="lines">@@ -165,7 +165,7 @@
</span><span class="cx"> position [NewStyleBuilder]
</span><span class="cx"> quotes [Inherited]
</span><span class="cx"> resize [Inherited]
</span><del>-right
</del><ins>+right [NewStyleBuilder, Initial=initialOffset, Converter=LengthOrAuto]
</ins><span class="cx"> size
</span><span class="cx"> src
</span><span class="cx"> speak [Inherited, NewStyleBuilder]
</span><span class="lines">@@ -193,7 +193,7 @@
</span><span class="cx"> text-underline-mode
</span><span class="cx"> text-underline-style
</span><span class="cx"> text-underline-width
</span><del>-top
</del><ins>+top [NewStyleBuilder, Initial=initialOffset, Converter=LengthOrAuto]
</ins><span class="cx"> transition
</span><span class="cx"> transition-delay
</span><span class="cx"> transition-duration
</span><span class="lines">@@ -301,7 +301,7 @@
</span><span class="cx"> -webkit-align-self = align-self
</span><span class="cx"> flex
</span><span class="cx"> -webkit-flex = flex
</span><del>-flex-basis
</del><ins>+flex-basis [NewStyleBuilder, Converter=LengthOrAuto]
</ins><span class="cx"> -webkit-flex-basis = flex-basis
</span><span class="cx"> flex-direction [NewStyleBuilder]
</span><span class="cx"> -webkit-flex-direction = flex-direction
</span><span class="lines">@@ -396,8 +396,8 @@
</span><span class="cx"> -webkit-padding-start
</span><span class="cx"> -webkit-perspective
</span><span class="cx"> -webkit-perspective-origin
</span><del>--webkit-perspective-origin-x
--webkit-perspective-origin-y
</del><ins>+-webkit-perspective-origin-x [NewStyleBuilder, Converter=Length]
+-webkit-perspective-origin-y [NewStyleBuilder, Converter=Length]
</ins><span class="cx"> -webkit-print-color-adjust [Inherited, NewStyleBuilder, TypeName=PrintColorAdjust]
</span><span class="cx"> -webkit-rtl-ordering [Inherited, NewStyleBuilder, TypeName=Order, Setter=setRTLOrdering, Initial=initialRTLOrdering]
</span><span class="cx"> #if defined(ENABLE_CSS_SCROLL_SNAP)
</span><span class="lines">@@ -438,8 +438,8 @@
</span><span class="cx"> -webkit-text-stroke-width [Inherited]
</span><span class="cx"> -webkit-transform
</span><span class="cx"> -webkit-transform-origin
</span><del>--webkit-transform-origin-x
--webkit-transform-origin-y
</del><ins>+-webkit-transform-origin-x [NewStyleBuilder, Converter=Length]
+-webkit-transform-origin-y [NewStyleBuilder, Converter=Length]
</ins><span class="cx"> -webkit-transform-origin-z
</span><span class="cx"> -webkit-transform-style [NewStyleBuilder, TypeName=ETransformStyle3D, NameForMethods=TransformStyle3D]
</span><span class="cx"> -webkit-transition
</span><span class="lines">@@ -460,7 +460,7 @@
</span><span class="cx"> #endif
</span><span class="cx"> #if defined(ENABLE_CSS_SHAPES) && ENABLE_CSS_SHAPES
</span><span class="cx"> -webkit-shape-outside
</span><del>--webkit-shape-margin
</del><ins>+-webkit-shape-margin [NewStyleBuilder, Converter=Length]
</ins><span class="cx"> -webkit-shape-image-threshold
</span><span class="cx"> #endif
</span><span class="cx"> #if defined(ENABLE_CSS_DEVICE_ADAPTATION) && ENABLE_CSS_DEVICE_ADAPTATION
</span></span></pre></div>
<a id="trunkSourceWebCorecssDeprecatedStyleBuildercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/DeprecatedStyleBuilder.cpp (175122 => 175123)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/DeprecatedStyleBuilder.cpp        2014-10-23 16:09:46 UTC (rev 175122)
+++ trunk/Source/WebCore/css/DeprecatedStyleBuilder.cpp        2014-10-23 16:14:25 UTC (rev 175123)
</span><span class="lines">@@ -2372,7 +2372,6 @@
</span><span class="cx"> setPropertyHandler(CSSPropertyBorderTopLeftRadius, ApplyPropertyBorderRadius<&RenderStyle::borderTopLeftRadius, &RenderStyle::setBorderTopLeftRadius, &RenderStyle::initialBorderRadius>::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyBorderTopRightRadius, ApplyPropertyBorderRadius<&RenderStyle::borderTopRightRadius, &RenderStyle::setBorderTopRightRadius, &RenderStyle::initialBorderRadius>::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyBorderTopWidth, ApplyPropertyComputeLength<float, &RenderStyle::borderTopWidth, &RenderStyle::setBorderTopWidth, &RenderStyle::initialBorderWidth, NormalDisabled, ThicknessEnabled>::createHandler());
</span><del>- setPropertyHandler(CSSPropertyBottom, ApplyPropertyLength<&RenderStyle::bottom, &RenderStyle::setBottom, &RenderStyle::initialOffset, AutoEnabled>::createHandler());
</del><span class="cx"> setPropertyHandler(CSSPropertyClip, ApplyPropertyClip::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyColor, ApplyPropertyColor<InheritFromParent, &RenderStyle::color, &RenderStyle::setColor, &RenderStyle::setVisitedLinkColor, &RenderStyle::invalidColor, RenderStyle::initialColor>::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyCounterIncrement, ApplyPropertyCounter<Increment>::createHandler());
</span><span class="lines">@@ -2389,7 +2388,6 @@
</span><span class="cx"> #if ENABLE(CSS_IMAGE_RESOLUTION)
</span><span class="cx"> setPropertyHandler(CSSPropertyImageResolution, ApplyPropertyImageResolution::createHandler());
</span><span class="cx"> #endif
</span><del>- setPropertyHandler(CSSPropertyLeft, ApplyPropertyLength<&RenderStyle::left, &RenderStyle::setLeft, &RenderStyle::initialOffset, AutoEnabled>::createHandler());
</del><span class="cx"> setPropertyHandler(CSSPropertyLetterSpacing, ApplyPropertyComputeLength<float, &RenderStyle::letterSpacing, &RenderStyle::setLetterSpacing, &RenderStyle::initialLetterSpacing, NormalEnabled, ThicknessDisabled, SVGZoomEnabled>::createHandler());
</span><span class="cx">
</span><span class="cx"> #if ENABLE(IOS_TEXT_AUTOSIZING)
</span><span class="lines">@@ -2398,10 +2396,6 @@
</span><span class="cx"> setPropertyHandler(CSSPropertyLineHeight, ApplyPropertyLineHeight::createHandler());
</span><span class="cx"> #endif
</span><span class="cx"> setPropertyHandler(CSSPropertyListStyleImage, ApplyPropertyStyleImage<&RenderStyle::listStyleImage, &RenderStyle::setListStyleImage, &RenderStyle::initialListStyleImage, CSSPropertyListStyleImage>::createHandler());
</span><del>- setPropertyHandler(CSSPropertyMarginBottom, ApplyPropertyLength<&RenderStyle::marginBottom, &RenderStyle::setMarginBottom, &RenderStyle::initialMargin, AutoEnabled>::createHandler());
- setPropertyHandler(CSSPropertyMarginLeft, ApplyPropertyLength<&RenderStyle::marginLeft, &RenderStyle::setMarginLeft, &RenderStyle::initialMargin, AutoEnabled>::createHandler());
- setPropertyHandler(CSSPropertyMarginRight, ApplyPropertyLength<&RenderStyle::marginRight, &RenderStyle::setMarginRight, &RenderStyle::initialMargin, AutoEnabled>::createHandler());
- setPropertyHandler(CSSPropertyMarginTop, ApplyPropertyLength<&RenderStyle::marginTop, &RenderStyle::setMarginTop, &RenderStyle::initialMargin, AutoEnabled>::createHandler());
</del><span class="cx"> setPropertyHandler(CSSPropertyMaxHeight, ApplyPropertyLength<&RenderStyle::maxHeight, &RenderStyle::setMaxHeight, &RenderStyle::initialMaxSize, AutoEnabled, LegacyIntrinsicEnabled, IntrinsicDisabled, NoneEnabled, UndefinedEnabled>::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyMaxWidth, ApplyPropertyLength<&RenderStyle::maxWidth, &RenderStyle::setMaxWidth, &RenderStyle::initialMaxSize, AutoEnabled, LegacyIntrinsicEnabled, IntrinsicEnabled, NoneEnabled, UndefinedEnabled>::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyMinHeight, ApplyPropertyLength<&RenderStyle::minHeight, &RenderStyle::setMinHeight, &RenderStyle::initialMinSize, AutoEnabled, LegacyIntrinsicEnabled, IntrinsicDisabled>::createHandler());
</span><span class="lines">@@ -2411,12 +2405,7 @@
</span><span class="cx"> setPropertyHandler(CSSPropertyOutlineOffset, ApplyPropertyComputeLength<int, &RenderStyle::outlineOffset, &RenderStyle::setOutlineOffset, &RenderStyle::initialOutlineOffset>::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyOutlineStyle, ApplyPropertyOutlineStyle::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyOutlineWidth, ApplyPropertyComputeLength<unsigned short, &RenderStyle::outlineWidth, &RenderStyle::setOutlineWidth, &RenderStyle::initialOutlineWidth, NormalDisabled, ThicknessEnabled>::createHandler());
</span><del>- setPropertyHandler(CSSPropertyPaddingBottom, ApplyPropertyLength<&RenderStyle::paddingBottom, &RenderStyle::setPaddingBottom, &RenderStyle::initialPadding>::createHandler());
- setPropertyHandler(CSSPropertyPaddingLeft, ApplyPropertyLength<&RenderStyle::paddingLeft, &RenderStyle::setPaddingLeft, &RenderStyle::initialPadding>::createHandler());
- setPropertyHandler(CSSPropertyPaddingRight, ApplyPropertyLength<&RenderStyle::paddingRight, &RenderStyle::setPaddingRight, &RenderStyle::initialPadding>::createHandler());
- setPropertyHandler(CSSPropertyPaddingTop, ApplyPropertyLength<&RenderStyle::paddingTop, &RenderStyle::setPaddingTop, &RenderStyle::initialPadding>::createHandler());
</del><span class="cx"> setPropertyHandler(CSSPropertyResize, ApplyPropertyResize::createHandler());
</span><del>- setPropertyHandler(CSSPropertyRight, ApplyPropertyLength<&RenderStyle::right, &RenderStyle::setRight, &RenderStyle::initialOffset, AutoEnabled>::createHandler());
</del><span class="cx"> setPropertyHandler(CSSPropertySize, ApplyPropertyPageSize::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyTextAlign, ApplyPropertyTextAlign::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyTextDecoration, ApplyPropertyTextDecoration::createHandler());
</span><span class="lines">@@ -2426,7 +2415,6 @@
</span><span class="cx"> setPropertyHandler(CSSPropertyWebkitTextUnderlinePosition, ApplyPropertyTextUnderlinePosition::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyTextIndent, ApplyPropertyTextIndent::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyTextRendering, ApplyPropertyFont<TextRenderingMode, &FontDescription::textRenderingMode, &FontDescription::setTextRenderingMode, AutoTextRendering>::createHandler());
</span><del>- setPropertyHandler(CSSPropertyTop, ApplyPropertyLength<&RenderStyle::top, &RenderStyle::setTop, &RenderStyle::initialOffset, AutoEnabled>::createHandler());
</del><span class="cx"> setPropertyHandler(CSSPropertyVerticalAlign, ApplyPropertyVerticalAlign::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyWebkitAnimationDelay, ApplyPropertyAnimation<double, &Animation::delay, &Animation::setDelay, &Animation::isDelaySet, &Animation::clearDelay, &Animation::initialAnimationDelay, &CSSToStyleMap::mapAnimationDelay, &RenderStyle::accessAnimations, &RenderStyle::animations>::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyWebkitAnimationDirection, ApplyPropertyAnimation<Animation::AnimationDirection, &Animation::direction, &Animation::setDirection, &Animation::isDirectionSet, &Animation::clearDirection, &Animation::initialAnimationDirection, &CSSToStyleMap::mapAnimationDirection, &RenderStyle::accessAnimations, &RenderStyle::animations>::createHandler());
</span><span class="lines">@@ -2449,7 +2437,6 @@
</span><span class="cx"> setPropertyHandler(CSSPropertyWebkitColumnRuleColor, ApplyPropertyColor<NoInheritFromParent, &RenderStyle::columnRuleColor, &RenderStyle::setColumnRuleColor, &RenderStyle::setVisitedLinkColumnRuleColor, &RenderStyle::color>::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyWebkitColumnRuleWidth, ApplyPropertyComputeLength<unsigned short, &RenderStyle::columnRuleWidth, &RenderStyle::setColumnRuleWidth, &RenderStyle::initialColumnRuleWidth, NormalDisabled, ThicknessEnabled>::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyWebkitColumnWidth, ApplyPropertyAuto<float, &RenderStyle::columnWidth, &RenderStyle::setColumnWidth, &RenderStyle::hasAutoColumnWidth, &RenderStyle::setHasAutoColumnWidth, ComputeLength>::createHandler());
</span><del>- setPropertyHandler(CSSPropertyFlexBasis, ApplyPropertyLength<&RenderStyle::flexBasis, &RenderStyle::setFlexBasis, &RenderStyle::initialFlexBasis, AutoEnabled>::createHandler());
</del><span class="cx"> #if ENABLE(CSS_REGIONS)
</span><span class="cx"> setPropertyHandler(CSSPropertyWebkitFlowFrom, ApplyPropertyString<MapNoneToNull, &RenderStyle::regionThread, &RenderStyle::setRegionThread, &RenderStyle::initialRegionThread>::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyWebkitFlowInto, ApplyPropertyString<MapNoneToNull, &RenderStyle::flowThread, &RenderStyle::setFlowThread, &RenderStyle::initialFlowThread>::createHandler());
</span><span class="lines">@@ -2482,15 +2469,11 @@
</span><span class="cx"> setPropertyHandler(CSSPropertyWebkitMaskSize, ApplyPropertyFillLayer<FillSize, CSSPropertyWebkitMaskSize, MaskFillLayer, &RenderStyle::accessMaskLayers, &RenderStyle::maskLayers, &FillLayer::isSizeSet, &FillLayer::size, &FillLayer::setSize, &FillLayer::clearSize, &FillLayer::initialFillSize, &CSSToStyleMap::mapFillSize>::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyWebkitMaskSourceType, ApplyPropertyFillLayer<EMaskSourceType, CSSPropertyWebkitMaskSourceType, MaskFillLayer, &RenderStyle::accessMaskLayers, &RenderStyle::maskLayers, &FillLayer::isMaskSourceTypeSet, &FillLayer::maskSourceType, &FillLayer::setMaskSourceType, &FillLayer::clearMaskSourceType, &FillLayer::initialMaskSourceType, &CSSToStyleMap::mapFillMaskSourceType>::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyWebkitPerspectiveOrigin, ApplyPropertyExpanding<SuppressValue, CSSPropertyWebkitPerspectiveOriginX, CSSPropertyWebkitPerspectiveOriginY>::createHandler());
</span><del>- setPropertyHandler(CSSPropertyWebkitPerspectiveOriginX, ApplyPropertyLength<&RenderStyle::perspectiveOriginX, &RenderStyle::setPerspectiveOriginX, &RenderStyle::initialPerspectiveOriginX>::createHandler());
- setPropertyHandler(CSSPropertyWebkitPerspectiveOriginY, ApplyPropertyLength<&RenderStyle::perspectiveOriginY, &RenderStyle::setPerspectiveOriginY, &RenderStyle::initialPerspectiveOriginY>::createHandler());
</del><span class="cx"> setPropertyHandler(CSSPropertyWebkitTextEmphasisColor, ApplyPropertyColor<NoInheritFromParent, &RenderStyle::textEmphasisColor, &RenderStyle::setTextEmphasisColor, &RenderStyle::setVisitedLinkTextEmphasisColor, &RenderStyle::color>::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyWebkitTextEmphasisPosition, ApplyPropertyTextEmphasisPosition::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyWebkitTextEmphasisStyle, ApplyPropertyTextEmphasisStyle::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyWebkitTextFillColor, ApplyPropertyColor<NoInheritFromParent, &RenderStyle::textFillColor, &RenderStyle::setTextFillColor, &RenderStyle::setVisitedLinkTextFillColor, &RenderStyle::color>::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyWebkitTextStrokeColor, ApplyPropertyColor<NoInheritFromParent, &RenderStyle::textStrokeColor, &RenderStyle::setTextStrokeColor, &RenderStyle::setVisitedLinkTextStrokeColor, &RenderStyle::color>::createHandler());
</span><del>- setPropertyHandler(CSSPropertyWebkitTransformOriginX, ApplyPropertyLength<&RenderStyle::transformOriginX, &RenderStyle::setTransformOriginX, &RenderStyle::initialTransformOriginX>::createHandler());
- setPropertyHandler(CSSPropertyWebkitTransformOriginY, ApplyPropertyLength<&RenderStyle::transformOriginY, &RenderStyle::setTransformOriginY, &RenderStyle::initialTransformOriginY>::createHandler());
</del><span class="cx"> setPropertyHandler(CSSPropertyWebkitTransformOriginZ, ApplyPropertyComputeLength<float, &RenderStyle::transformOriginZ, &RenderStyle::setTransformOriginZ, &RenderStyle::initialTransformOriginZ>::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyWebkitTransitionDelay, ApplyPropertyAnimation<double, &Animation::delay, &Animation::setDelay, &Animation::isDelaySet, &Animation::clearDelay, &Animation::initialAnimationDelay, &CSSToStyleMap::mapAnimationDelay, &RenderStyle::accessTransitions, &RenderStyle::transitions>::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyWebkitTransitionDuration, ApplyPropertyAnimation<double, &Animation::duration, &Animation::setDuration, &Animation::isDurationSet, &Animation::clearDuration, &Animation::initialAnimationDuration, &CSSToStyleMap::mapAnimationDuration, &RenderStyle::accessTransitions, &RenderStyle::transitions>::createHandler());
</span><span class="lines">@@ -2498,22 +2481,12 @@
</span><span class="cx"> setPropertyHandler(CSSPropertyWebkitTransitionTimingFunction, ApplyPropertyAnimation<const PassRefPtr<TimingFunction>, &Animation::timingFunction, &Animation::setTimingFunction, &Animation::isTimingFunctionSet, &Animation::clearTimingFunction, &Animation::initialAnimationTimingFunction, &CSSToStyleMap::mapAnimationTimingFunction, &RenderStyle::accessTransitions, &RenderStyle::transitions>::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyWebkitClipPath, ApplyPropertyClipPath<&RenderStyle::clipPath, &RenderStyle::setClipPath, &RenderStyle::initialClipPath>::createHandler());
</span><span class="cx"> #if ENABLE(CSS_SHAPES)
</span><del>- setPropertyHandler(CSSPropertyWebkitShapeMargin, ApplyPropertyLength<&RenderStyle::shapeMargin, &RenderStyle::setShapeMargin, &RenderStyle::initialShapeMargin>::createHandler());
</del><span class="cx"> setPropertyHandler(CSSPropertyWebkitShapeImageThreshold, ApplyPropertyNumber<float, &RenderStyle::shapeImageThreshold, &RenderStyle::setShapeImageThreshold, &RenderStyle::initialShapeImageThreshold>::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyWebkitShapeOutside, ApplyPropertyShape<&RenderStyle::shapeOutside, &RenderStyle::setShapeOutside, &RenderStyle::initialShapeOutside>::createHandler());
</span><span class="cx"> #endif
</span><span class="cx"> setPropertyHandler(CSSPropertyWidows, ApplyPropertyAuto<short, &RenderStyle::widows, &RenderStyle::setWidows, &RenderStyle::hasAutoWidows, &RenderStyle::setHasAutoWidows>::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyWidth, ApplyPropertyLength<&RenderStyle::width, &RenderStyle::setWidth, &RenderStyle::initialSize, AutoEnabled, LegacyIntrinsicEnabled, IntrinsicEnabled, NoneDisabled, UndefinedDisabled>::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyWordSpacing, ApplyPropertyWordSpacing::createHandler());
</span><del>- setPropertyHandler(CSSPropertyCx, ApplyPropertyLength<&RenderStyle::cx, &RenderStyle::setCx, &RenderStyle::initialZeroLength>::createHandler());
- setPropertyHandler(CSSPropertyCy, ApplyPropertyLength<&RenderStyle::cy, &RenderStyle::setCy, &RenderStyle::initialZeroLength>::createHandler());
- setPropertyHandler(CSSPropertyR, ApplyPropertyLength<&RenderStyle::r, &RenderStyle::setR, &RenderStyle::initialZeroLength>::createHandler());
- setPropertyHandler(CSSPropertyRx, ApplyPropertyLength<&RenderStyle::rx, &RenderStyle::setRx, &RenderStyle::initialZeroLength>::createHandler());
- setPropertyHandler(CSSPropertyRy, ApplyPropertyLength<&RenderStyle::ry, &RenderStyle::setRy, &RenderStyle::initialZeroLength>::createHandler());
- setPropertyHandler(CSSPropertyStrokeWidth, ApplyPropertyLength<&RenderStyle::strokeWidth, &RenderStyle::setStrokeWidth, &RenderStyle::initialOneLength>::createHandler());
- setPropertyHandler(CSSPropertyStrokeDashoffset, ApplyPropertyLength<&RenderStyle::strokeDashOffset, &RenderStyle::setStrokeDashOffset, &RenderStyle::initialZeroLength>::createHandler());
- setPropertyHandler(CSSPropertyX, ApplyPropertyLength<&RenderStyle::x, &RenderStyle::setX, &RenderStyle::initialZeroLength>::createHandler());
- setPropertyHandler(CSSPropertyY, ApplyPropertyLength<&RenderStyle::y, &RenderStyle::setY, &RenderStyle::initialZeroLength>::createHandler());
</del><span class="cx">
</span><span class="cx"> setPropertyHandler(CSSPropertyZIndex, ApplyPropertyAuto<int, &RenderStyle::zIndex, &RenderStyle::setZIndex, &RenderStyle::hasAutoZIndex, &RenderStyle::setHasAutoZIndex>::createHandler());
</span><span class="cx"> setPropertyHandler(CSSPropertyZoom, ApplyPropertyZoom::createHandler());
</span></span></pre></div>
<a id="trunkSourceWebCorecssSVGCSSPropertyNamesin"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/SVGCSSPropertyNames.in (175122 => 175123)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/SVGCSSPropertyNames.in        2014-10-23 16:09:46 UTC (rev 175122)
+++ trunk/Source/WebCore/css/SVGCSSPropertyNames.in        2014-10-23 16:14:25 UTC (rev 175123)
</span><span class="lines">@@ -33,12 +33,12 @@
</span><span class="cx"> shape-rendering [Inherited]
</span><span class="cx"> stroke [Inherited]
</span><span class="cx"> stroke-dasharray [Inherited]
</span><del>-stroke-dashoffset [Inherited]
</del><ins>+stroke-dashoffset [Inherited, NewStyleBuilder, NameForMethods=StrokeDashOffset, Initial=initialZeroLength, Converter=Length]
</ins><span class="cx"> stroke-linecap [Inherited]
</span><span class="cx"> stroke-linejoin [Inherited]
</span><span class="cx"> stroke-miterlimit [Inherited]
</span><span class="cx"> stroke-opacity [Inherited]
</span><del>-stroke-width [Inherited]
</del><ins>+stroke-width [Inherited, NewStyleBuilder, Initial=initialOneLength, Converter=Length]
</ins><span class="cx"> // text-rendering
</span><span class="cx"> alignment-baseline
</span><span class="cx"> baseline-shift
</span><span class="lines">@@ -52,11 +52,11 @@
</span><span class="cx">
</span><span class="cx"> -webkit-svg-shadow
</span><span class="cx">
</span><del>-cx
-cy
-r
-rx
-ry
-x
-y
</del><ins>+cx [NewStyleBuilder, Initial=initialZeroLength, Converter=Length]
+cy [NewStyleBuilder, Initial=initialZeroLength, Converter=Length]
+r [NewStyleBuilder, Initial=initialZeroLength, Converter=Length]
+rx [NewStyleBuilder, Initial=initialZeroLength, Converter=Length]
+ry [NewStyleBuilder, Initial=initialZeroLength, Converter=Length]
+x [NewStyleBuilder, Initial=initialZeroLength, Converter=Length]
+y [NewStyleBuilder, Initial=initialZeroLength, Converter=Length]
</ins><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorecssStyleBuilderh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/StyleBuilder.h (175122 => 175123)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/StyleBuilder.h        2014-10-23 16:09:46 UTC (rev 175122)
+++ trunk/Source/WebCore/css/StyleBuilder.h        2014-10-23 16:14:25 UTC (rev 175123)
</span><span class="lines">@@ -36,7 +36,7 @@
</span><span class="cx">
</span><span class="cx"> class StyleBuilder {
</span><span class="cx"> public:
</span><del>- static bool applyProperty(CSSPropertyID, StyleResolver&, CSSValue*, bool isInitial, bool isInherit);
</del><ins>+ static bool applyProperty(CSSPropertyID, StyleResolver&, CSSValue&, bool isInitial, bool isInherit);
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx"> } // namespace WebCore
</span></span></pre></div>
<a id="trunkSourceWebCorecssStyleBuilderConverterh"></a>
<div class="addfile"><h4>Added: trunk/Source/WebCore/css/StyleBuilderConverter.h (0 => 175123)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/StyleBuilderConverter.h         (rev 0)
+++ trunk/Source/WebCore/css/StyleBuilderConverter.h        2014-10-23 16:14:25 UTC (rev 175123)
</span><span class="lines">@@ -0,0 +1,75 @@
</span><ins>+/*
+ * Copyright (C) 2013 Google Inc. All rights reserved.
+ * Copyright (C) 2014 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef StyleBuilderConverter_h
+#define StyleBuilderConverter_h
+
+#include "CSSCalculationValue.h"
+#include "CSSPrimitiveValue.h"
+#include "Length.h"
+#include "StyleResolver.h"
+
+namespace WebCore {
+
+class StyleBuilderConverter {
+public:
+ static Length convertLength(StyleResolver&, CSSValue&);
+ static Length convertLengthOrAuto(StyleResolver&, CSSValue&);
+};
+
+inline Length StyleBuilderConverter::convertLength(StyleResolver& styleResolver, CSSValue& value)
+{
+ auto& primitiveValue = downcast<CSSPrimitiveValue>(value);
+ CSSToLengthConversionData conversionData = styleResolver.useSVGZoomRulesForLength() ?
+ styleResolver.state().cssToLengthConversionData().copyWithAdjustedZoom(1.0f)
+ : styleResolver.state().cssToLengthConversionData();
+
+ if (primitiveValue.isLength()) {
+ Length length = primitiveValue.computeLength<Length>(conversionData);
+ length.setHasQuirk(primitiveValue.isQuirkValue());
+ return length;
+ }
+
+ if (primitiveValue.isPercentage())
+ return Length(primitiveValue.getDoubleValue(), Percent);
+
+ if (primitiveValue.isCalculatedPercentageWithLength())
+ return Length(primitiveValue.cssCalcValue()->createCalculationValue(conversionData));
+
+ ASSERT_NOT_REACHED();
+ return Length(0, Fixed);
+}
+
+inline Length StyleBuilderConverter::convertLengthOrAuto(StyleResolver& styleResolver, CSSValue& value)
+{
+ if (downcast<CSSPrimitiveValue>(value).getValueID() == CSSValueAuto)
+ return Length(Auto);
+ return convertLength(styleResolver, value);
+}
+
+} // namespace WebCore
+
+#endif // StyleBuilderConverter_h
</ins></span></pre></div>
<a id="trunkSourceWebCorecssStyleResolvercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/StyleResolver.cpp (175122 => 175123)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/StyleResolver.cpp        2014-10-23 16:09:46 UTC (rev 175122)
+++ trunk/Source/WebCore/css/StyleResolver.cpp        2014-10-23 16:14:25 UTC (rev 175123)
</span><span class="lines">@@ -2129,7 +2129,7 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // Use the new StyleBuilder.
</span><del>- if (StyleBuilder::applyProperty(id, *this, value, isInitial, isInherit))
</del><ins>+ if (StyleBuilder::applyProperty(id, *this, *value, isInitial, isInherit))
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> CSSPrimitiveValue* primitiveValue = is<CSSPrimitiveValue>(*value) ? downcast<CSSPrimitiveValue>(value) : nullptr;
</span></span></pre></div>
<a id="trunkSourceWebCorecssmakeproppl"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/makeprop.pl (175122 => 175123)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/makeprop.pl        2014-10-23 16:09:46 UTC (rev 175122)
+++ trunk/Source/WebCore/css/makeprop.pl        2014-10-23 16:14:25 UTC (rev 175123)
</span><span class="lines">@@ -45,6 +45,7 @@
</span><span class="cx"> # variable should go away.
</span><span class="cx"> my %propertiesUsingNewStyleBuilder;
</span><span class="cx"> my %newStyleBuilderOptions = (
</span><ins>+ Converter => 1, # Defined in Source/WebCore/css/StyleBuilderConverter.h
</ins><span class="cx"> Getter => 1,
</span><span class="cx"> Initial => 1,
</span><span class="cx"> NameForMethods => 1,
</span><span class="lines">@@ -361,6 +362,7 @@
</span><span class="cx"> #include "CSSPrimitiveValueMappings.h"
</span><span class="cx"> #include "CSSProperty.h"
</span><span class="cx"> #include "RenderStyle.h"
</span><ins>+#include "StyleBuilderConverter.h"
</ins><span class="cx"> #include "StyleResolver.h"
</span><span class="cx">
</span><span class="cx"> namespace WebCore {
</span><span class="lines">@@ -384,14 +386,20 @@
</span><span class="cx"> print STYLEBUILDER " }\n";
</span><span class="cx"> print STYLEBUILDER " static void applyValue" . $nameToId{$name} . "(StyleResolver& styleResolver, CSSValue& value)\n";
</span><span class="cx"> print STYLEBUILDER " {\n";
</span><del>- print STYLEBUILDER " " . $setValue . "(static_cast<" . $propertiesUsingNewStyleBuilder{$name}{"TypeName"} . ">(static_cast<CSSPrimitiveValue&>(value)));\n";
</del><ins>+ my $convertedValue;
+ if (exists($propertiesUsingNewStyleBuilder{$name}{"Converter"})) {
+ $convertedValue = "StyleBuilderConverter::convert" . $propertiesUsingNewStyleBuilder{$name}{"Converter"} . "(styleResolver, value)";
+ } else {
+ $convertedValue = "static_cast<" . $propertiesUsingNewStyleBuilder{$name}{"TypeName"} . ">(downcast<CSSPrimitiveValue>(value))";
+ }
+ print STYLEBUILDER " " . $setValue . "(" . $convertedValue . ");\n";
</ins><span class="cx"> print STYLEBUILDER " }\n";
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> print STYLEBUILDER << "EOF";
</span><span class="cx"> };
</span><span class="cx">
</span><del>-bool StyleBuilder::applyProperty(CSSPropertyID property, StyleResolver& styleResolver, CSSValue* value, bool isInitial, bool isInherit)
</del><ins>+bool StyleBuilder::applyProperty(CSSPropertyID property, StyleResolver& styleResolver, CSSValue& value, bool isInitial, bool isInherit)
</ins><span class="cx"> {
</span><span class="cx"> switch (property) {
</span><span class="cx"> EOF
</span><span class="lines">@@ -406,7 +414,7 @@
</span><span class="cx"> print STYLEBUILDER " else if (isInherit)\n";
</span><span class="cx"> print STYLEBUILDER " StyleBuilderFunctions::applyInherit" . $nameToId{$name} . "(styleResolver);\n";
</span><span class="cx"> print STYLEBUILDER " else\n";
</span><del>- print STYLEBUILDER " StyleBuilderFunctions::applyValue" . $nameToId{$name} . "(styleResolver, *value);\n";
</del><ins>+ print STYLEBUILDER " StyleBuilderFunctions::applyValue" . $nameToId{$name} . "(styleResolver, value);\n";
</ins><span class="cx"> print STYLEBUILDER " return true;\n";
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre>
</div>
</div>
</body>
</html>