<!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>[181832] trunk</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/181832">181832</a></dd>
<dt>Author</dt> <dd>dino@apple.com</dd>
<dt>Date</dt> <dd>2015-03-21 21:55:33 -0700 (Sat, 21 Mar 2015)</dd>
</dl>

<h3>Log Message</h3>
<pre>Remove the prefix for CSS Transforms
https://bugs.webkit.org/show_bug.cgi?id=142927
&lt;rdar://problem/11568151&gt;

Reviewed by Simon Fraser.

Source/WebCore:

Support the bare form of:
- transform
- transform-style
- transform-origin
- perspective
- perspective-origin

For transform-style, we also still differentiate the prefixed property
because we may want to use that as an indicator of legacy content.

This is mostly a find and replace, but with some related naming
changes. The DOM interface for WebKitCSSTransformValue remains
unchanged.

Tests: transforms/2d/transform-2d-prefixed.html
       transforms/3d/general/prefixed-3dtransform-values.html

* bindings/js/JSCSSStyleDeclarationCustom.cpp:
(WebCore::propertyChangeMayRepaintNonDescendants):
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::isLayoutDependent):
(WebCore::ComputedStyleExtractor::propertyValue):
* css/CSSParser.cpp:
(WebCore::isValidKeywordPropertyAndValue):
(WebCore::isKeywordPropertyID):
(WebCore::parseTranslateTransformValue):
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseTransformOrigin):
(WebCore::CSSParser::parsePerspectiveOrigin):
* css/CSSPropertyNames.in:
* css/StyleProperties.cpp:
(WebCore::StyleProperties::getPropertyValue):
(WebCore::StyleProperties::asText):
* css/WebKitCSSMatrix.cpp:
(WebCore::WebKitCSSMatrix::setMatrixValue):
* html/track/VTTCue.cpp:
(WebCore::VTTCueBox::applyCSSProperties):
* page/animation/AnimationController.cpp:
(WebCore::AnimationControllerPrivate::computeExtentOfAnimation):
* page/animation/CSSPropertyAnimation.cpp:
(WebCore::PropertyWrapperAcceleratedTransform::PropertyWrapperAcceleratedTransform):
(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
* page/animation/CompositeAnimation.cpp:
(WebCore::CompositeAnimation::computeExtentOfTransformAnimation):
* page/animation/ImplicitAnimation.cpp:
(WebCore::ImplicitAnimation::computeExtentOfTransformAnimation):
* page/animation/KeyframeAnimation.cpp:
(WebCore::KeyframeAnimation::computeExtentOfTransformAnimation):
(WebCore::KeyframeAnimation::validateTransformFunctionList):
* platform/graphics/GraphicsLayer.cpp:
(WebCore::GraphicsLayer::validateTransformOperations):
* platform/graphics/GraphicsLayerClient.h:
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::propertyIdToString):
(WebCore::GraphicsLayerCA::moveOrCopyAnimations):
(WebCore::GraphicsLayerCA::addAnimation):
(WebCore::GraphicsLayerCA::isRunningTransformAnimation):
(WebCore::GraphicsLayerCA::createAnimationFromKeyframes):
(WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes):
* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
(WebCore::GraphicsLayerTextureMapper::addAnimation):
* platform/graphics/texmap/TextureMapperAnimation.cpp:
(WebCore::TextureMapperAnimation::applyInternal):
* platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::syncAnimations):
* platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::selfOrAncestorHasActiveTransformAnimation):
(WebCore::CoordinatedGraphicsLayer::selfOrAncestorHaveNonAffineTransforms):
(WebCore::CoordinatedGraphicsLayer::addAnimation):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateGeometry):
(WebCore::RenderLayerBacking::startAnimation):
(WebCore::RenderLayerBacking::startTransition):
(WebCore::RenderLayerBacking::graphicsLayerToCSSProperty):
(WebCore::RenderLayerBacking::cssToGraphicsLayerProperty):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::requiresCompositingForAnimation):
(WebCore::RenderLayerCompositor::isRunningTransformAnimation):
* svg/SVGElement.cpp:
(WebCore::populateAttributeNameToCSSPropertyIDMap):

Source/WebKit2:

Rename AnimatedPropertyWebkitTransform to AnimatedPropertyTransform.

* Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
(IPC::ArgumentCoder&lt;TextureMapperAnimation&gt;::encode):

LayoutTests:

Convert the helper functions for transforms to use the unprefixed
form, and copy some tests to make sure the prefixed form still works.

* fast/css/getComputedStyle/computed-style-expected.txt:
* fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* fast/css/getComputedStyle/resources/property-names.js:
* svg/css/getComputedStyle-basic-expected.txt:
* transforms/2d/computed-style-origin-expected.txt:
* transforms/2d/computed-style-origin.html:
* transforms/2d/resources/prefixed-transform-test-utils.js: Copied from LayoutTests/transforms/2d/resources/transform-test-utils.js.
(floatingPointEqual):
(compareMatrices):
(testTransforms):
* transforms/2d/resources/transform-test-utils.js:
(testTransforms):
* transforms/2d/transform-2d-prefixed-expected.txt: Added.
* transforms/2d/transform-2d-prefixed.html: Added.
* transforms/3d/general/prefixed-3dtransform-values-expected.txt: Added.
* transforms/3d/general/prefixed-3dtransform-values.html: Added.
* transitions/transition-end-event-multiple-04-expected.txt:
* transitions/transition-end-event-multiple-04.html:
* transitions/transition-end-event-transform-expected.txt:
* transitions/transition-end-event-transform.html:</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsChangeLog">trunk/LayoutTests/ChangeLog</a></li>
<li><a href="#trunkLayoutTestsfastcssgetComputedStylecomputedstyleexpectedtxt">trunk/LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastcssgetComputedStylecomputedstylewithoutrendererexpectedtxt">trunk/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastcssgetComputedStyleresourcespropertynamesjs">trunk/LayoutTests/fast/css/getComputedStyle/resources/property-names.js</a></li>
<li><a href="#trunkLayoutTestssvgcssgetComputedStylebasicexpectedtxt">trunk/LayoutTests/svg/css/getComputedStyle-basic-expected.txt</a></li>
<li><a href="#trunkLayoutTeststransforms2dcomputedstyleoriginexpectedtxt">trunk/LayoutTests/transforms/2d/computed-style-origin-expected.txt</a></li>
<li><a href="#trunkLayoutTeststransforms2dcomputedstyleoriginhtml">trunk/LayoutTests/transforms/2d/computed-style-origin.html</a></li>
<li><a href="#trunkLayoutTeststransforms2dresourcestransformtestutilsjs">trunk/LayoutTests/transforms/2d/resources/transform-test-utils.js</a></li>
<li><a href="#trunkLayoutTeststransitionstransitionendeventmultiple04expectedtxt">trunk/LayoutTests/transitions/transition-end-event-multiple-04-expected.txt</a></li>
<li><a href="#trunkLayoutTeststransitionstransitionendeventmultiple04html">trunk/LayoutTests/transitions/transition-end-event-multiple-04.html</a></li>
<li><a href="#trunkLayoutTeststransitionstransitionendeventtransformexpectedtxt">trunk/LayoutTests/transitions/transition-end-event-transform-expected.txt</a></li>
<li><a href="#trunkLayoutTeststransitionstransitionendeventtransformhtml">trunk/LayoutTests/transitions/transition-end-event-transform.html</a></li>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCorebindingsjsJSCSSStyleDeclarationCustomcpp">trunk/Source/WebCore/bindings/js/JSCSSStyleDeclarationCustom.cpp</a></li>
<li><a href="#trunkSourceWebCorecssCSSComputedStyleDeclarationcpp">trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp</a></li>
<li><a href="#trunkSourceWebCorecssCSSParsercpp">trunk/Source/WebCore/css/CSSParser.cpp</a></li>
<li><a href="#trunkSourceWebCorecssCSSPropertyNamesin">trunk/Source/WebCore/css/CSSPropertyNames.in</a></li>
<li><a href="#trunkSourceWebCorecssStylePropertiescpp">trunk/Source/WebCore/css/StyleProperties.cpp</a></li>
<li><a href="#trunkSourceWebCorecssWebKitCSSMatrixcpp">trunk/Source/WebCore/css/WebKitCSSMatrix.cpp</a></li>
<li><a href="#trunkSourceWebCorehtmltrackVTTCuecpp">trunk/Source/WebCore/html/track/VTTCue.cpp</a></li>
<li><a href="#trunkSourceWebCorepageanimationAnimationControllercpp">trunk/Source/WebCore/page/animation/AnimationController.cpp</a></li>
<li><a href="#trunkSourceWebCorepageanimationCSSPropertyAnimationcpp">trunk/Source/WebCore/page/animation/CSSPropertyAnimation.cpp</a></li>
<li><a href="#trunkSourceWebCorepageanimationCompositeAnimationcpp">trunk/Source/WebCore/page/animation/CompositeAnimation.cpp</a></li>
<li><a href="#trunkSourceWebCorepageanimationImplicitAnimationcpp">trunk/Source/WebCore/page/animation/ImplicitAnimation.cpp</a></li>
<li><a href="#trunkSourceWebCorepageanimationKeyframeAnimationcpp">trunk/Source/WebCore/page/animation/KeyframeAnimation.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsGraphicsLayercpp">trunk/Source/WebCore/platform/graphics/GraphicsLayer.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsGraphicsLayerClienth">trunk/Source/WebCore/platform/graphics/GraphicsLayerClient.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicscaGraphicsLayerCAcpp">trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicstexmapGraphicsLayerTextureMappercpp">trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicstexmapTextureMapperAnimationcpp">trunk/Source/WebCore/platform/graphics/texmap/TextureMapperAnimation.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicstexmapTextureMapperLayercpp">trunk/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicstexmapcoordinatedCoordinatedGraphicsLayercpp">trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderLayerBackingcpp">trunk/Source/WebCore/rendering/RenderLayerBacking.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderLayerCompositorcpp">trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp</a></li>
<li><a href="#trunkSourceWebCoresvgSVGElementcpp">trunk/Source/WebCore/svg/SVGElement.cpp</a></li>
<li><a href="#trunkSourceWebKit2ChangeLog">trunk/Source/WebKit2/ChangeLog</a></li>
<li><a href="#trunkSourceWebKit2SharedCoordinatedGraphicsCoordinatedGraphicsArgumentCoderscpp">trunk/Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li><a href="#trunkLayoutTeststransforms2dresourcesprefixedtransformtestutilsjs">trunk/LayoutTests/transforms/2d/resources/prefixed-transform-test-utils.js</a></li>
<li><a href="#trunkLayoutTeststransforms2dtransform2dprefixedexpectedtxt">trunk/LayoutTests/transforms/2d/transform-2d-prefixed-expected.txt</a></li>
<li><a href="#trunkLayoutTeststransforms2dtransform2dprefixedhtml">trunk/LayoutTests/transforms/2d/transform-2d-prefixed.html</a></li>
<li><a href="#trunkLayoutTeststransforms3dgeneralprefixed3dtransformvaluesexpectedtxt">trunk/LayoutTests/transforms/3d/general/prefixed-3dtransform-values-expected.txt</a></li>
<li><a href="#trunkLayoutTeststransforms3dgeneralprefixed3dtransformvalueshtml">trunk/LayoutTests/transforms/3d/general/prefixed-3dtransform-values.html</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkLayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/ChangeLog (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/ChangeLog        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/LayoutTests/ChangeLog        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -1,3 +1,35 @@
</span><ins>+2015-03-21  Dean Jackson  &lt;dino@apple.com&gt;
+
+        Remove the prefix for CSS Transforms
+        https://bugs.webkit.org/show_bug.cgi?id=142927
+        &lt;rdar://problem/11568151&gt;
+
+        Reviewed by Simon Fraser.
+
+        Convert the helper functions for transforms to use the unprefixed
+        form, and copy some tests to make sure the prefixed form still works.
+
+        * fast/css/getComputedStyle/computed-style-expected.txt:
+        * fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
+        * fast/css/getComputedStyle/resources/property-names.js:
+        * svg/css/getComputedStyle-basic-expected.txt:
+        * transforms/2d/computed-style-origin-expected.txt:
+        * transforms/2d/computed-style-origin.html:
+        * transforms/2d/resources/prefixed-transform-test-utils.js: Copied from LayoutTests/transforms/2d/resources/transform-test-utils.js.
+        (floatingPointEqual):
+        (compareMatrices):
+        (testTransforms):
+        * transforms/2d/resources/transform-test-utils.js:
+        (testTransforms):
+        * transforms/2d/transform-2d-prefixed-expected.txt: Added.
+        * transforms/2d/transform-2d-prefixed.html: Added.
+        * transforms/3d/general/prefixed-3dtransform-values-expected.txt: Added.
+        * transforms/3d/general/prefixed-3dtransform-values.html: Added.
+        * transitions/transition-end-event-multiple-04-expected.txt:
+        * transitions/transition-end-event-multiple-04.html:
+        * transitions/transition-end-event-transform-expected.txt:
+        * transitions/transition-end-event-transform.html:
+
</ins><span class="cx"> 2015-03-21  Joseph Pecoraro  &lt;pecoraro@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Fix a typo in Parser error message
</span></span></pre></div>
<a id="trunkLayoutTestsfastcssgetComputedStylecomputedstyleexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -91,6 +91,9 @@
</span><span class="cx"> text-overflow: clip;
</span><span class="cx"> text-transform: none;
</span><span class="cx"> top: auto;
</span><ins>+transform: none;
+transform-origin: 392px 288px;
+transform-style: flat;
</ins><span class="cx"> unicode-bidi: normal;
</span><span class="cx"> vertical-align: baseline;
</span><span class="cx"> visibility: visible;
</span><span class="lines">@@ -194,8 +197,8 @@
</span><span class="cx"> -webkit-mask-size: auto;
</span><span class="cx"> -webkit-nbsp-mode: normal;
</span><span class="cx"> order: 0;
</span><del>--webkit-perspective: none;
--webkit-perspective-origin: 392px 288px;
</del><ins>+perspective: none;
+perspective-origin: 392px 288px;
</ins><span class="cx"> -webkit-print-color-adjust: economy;
</span><span class="cx"> -webkit-rtl-ordering: logical;
</span><span class="cx"> -webkit-text-combine: none;
</span><span class="lines">@@ -208,8 +211,6 @@
</span><span class="cx"> -webkit-text-security: none;
</span><span class="cx"> -webkit-text-stroke-color: rgb(0, 0, 0);
</span><span class="cx"> -webkit-text-stroke-width: 0px;
</span><del>--webkit-transform: none;
--webkit-transform-origin: 392px 288px;
</del><span class="cx"> -webkit-transform-style: flat;
</span><span class="cx"> -webkit-transition-delay: 0s;
</span><span class="cx"> -webkit-transition-duration: 0s;
</span></span></pre></div>
<a id="trunkLayoutTestsfastcssgetComputedStylecomputedstylewithoutrendererexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -90,6 +90,9 @@
</span><span class="cx"> text-overflow: clip
</span><span class="cx"> text-transform: none
</span><span class="cx"> top: auto
</span><ins>+transform: none
+transform-origin: 50% 50%
+transform-style: flat
</ins><span class="cx"> unicode-bidi: normal
</span><span class="cx"> vertical-align: baseline
</span><span class="cx"> visibility: visible
</span><span class="lines">@@ -193,8 +196,8 @@
</span><span class="cx"> -webkit-mask-size: auto
</span><span class="cx"> -webkit-nbsp-mode: normal
</span><span class="cx"> order: 0
</span><del>--webkit-perspective: none
--webkit-perspective-origin: 50% 50%
</del><ins>+perspective: none
+perspective-origin: 50% 50%
</ins><span class="cx"> -webkit-print-color-adjust: economy
</span><span class="cx"> -webkit-rtl-ordering: logical
</span><span class="cx"> -webkit-text-combine: none
</span><span class="lines">@@ -207,8 +210,6 @@
</span><span class="cx"> -webkit-text-security: none
</span><span class="cx"> -webkit-text-stroke-color: rgb(0, 0, 0)
</span><span class="cx"> -webkit-text-stroke-width: 0px
</span><del>--webkit-transform: none
--webkit-transform-origin: 50% 50%
</del><span class="cx"> -webkit-transform-style: flat
</span><span class="cx"> -webkit-transition-delay: 0s
</span><span class="cx"> -webkit-transition-duration: 0s
</span></span></pre></div>
<a id="trunkLayoutTestsfastcssgetComputedStyleresourcespropertynamesjs"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/css/getComputedStyle/resources/property-names.js (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/css/getComputedStyle/resources/property-names.js        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/LayoutTests/fast/css/getComputedStyle/resources/property-names.js        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -94,8 +94,8 @@
</span><span class="cx">     &quot;-webkit-mask-size&quot;: true,
</span><span class="cx">     &quot;-webkit-nbsp-mode&quot;: true,
</span><span class="cx">     &quot;order&quot;: true,
</span><del>-    &quot;-webkit-perspective&quot;: true,
-    &quot;-webkit-perspective-origin&quot;: true,
</del><ins>+    &quot;perspective&quot;: true,
+    &quot;perspective-origin&quot;: true,
</ins><span class="cx">     &quot;-webkit-print-color-adjust&quot;: true,
</span><span class="cx">     &quot;-webkit-rtl-ordering&quot;: true,
</span><span class="cx">     &quot;-webkit-svg-shadow&quot;: true,
</span><span class="lines">@@ -109,8 +109,9 @@
</span><span class="cx">     &quot;-webkit-text-security&quot;: true,
</span><span class="cx">     &quot;-webkit-text-stroke-color&quot;: true,
</span><span class="cx">     &quot;-webkit-text-stroke-width&quot;: true,
</span><del>-    &quot;-webkit-transform&quot;: true,
-    &quot;-webkit-transform-origin&quot;: true,
</del><ins>+    &quot;transform&quot;: true,
+    &quot;transform-origin&quot;: true,
+    &quot;transform-style&quot;: true,
</ins><span class="cx">     &quot;-webkit-transform-style&quot;: true,
</span><span class="cx">     &quot;-webkit-transition-delay&quot;: true,
</span><span class="cx">     &quot;-webkit-transition-duration&quot;: true,
</span></span></pre></div>
<a id="trunkLayoutTestssvgcssgetComputedStylebasicexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/svg/css/getComputedStyle-basic-expected.txt (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/svg/css/getComputedStyle-basic-expected.txt        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/LayoutTests/svg/css/getComputedStyle-basic-expected.txt        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -180,6 +180,12 @@
</span><span class="cx"> rect: style.getPropertyCSSValue(text-transform) : [object CSSPrimitiveValue]
</span><span class="cx"> rect: style.getPropertyValue(top) : auto
</span><span class="cx"> rect: style.getPropertyCSSValue(top) : [object CSSPrimitiveValue]
</span><ins>+rect: style.getPropertyValue(transform) : none
+rect: style.getPropertyCSSValue(transform) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(transform-origin) : 0px 0px
+rect: style.getPropertyCSSValue(transform-origin) : [object CSSValueList]
+rect: style.getPropertyValue(transform-style) : flat
+rect: style.getPropertyCSSValue(transform-style) : [object CSSPrimitiveValue]
</ins><span class="cx"> rect: style.getPropertyValue(unicode-bidi) : normal
</span><span class="cx"> rect: style.getPropertyCSSValue(unicode-bidi) : [object CSSPrimitiveValue]
</span><span class="cx"> rect: style.getPropertyValue(vertical-align) : baseline
</span><span class="lines">@@ -386,10 +392,10 @@
</span><span class="cx"> rect: style.getPropertyCSSValue(-webkit-nbsp-mode) : [object CSSPrimitiveValue]
</span><span class="cx"> rect: style.getPropertyValue(order) : 0
</span><span class="cx"> rect: style.getPropertyCSSValue(order) : [object CSSPrimitiveValue]
</span><del>-rect: style.getPropertyValue(-webkit-perspective) : none
-rect: style.getPropertyCSSValue(-webkit-perspective) : [object CSSPrimitiveValue]
-rect: style.getPropertyValue(-webkit-perspective-origin) : 0px 0px
-rect: style.getPropertyCSSValue(-webkit-perspective-origin) : [object CSSValueList]
</del><ins>+rect: style.getPropertyValue(perspective) : none
+rect: style.getPropertyCSSValue(perspective) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(perspective-origin) : 0px 0px
+rect: style.getPropertyCSSValue(perspective-origin) : [object CSSValueList]
</ins><span class="cx"> rect: style.getPropertyValue(-webkit-print-color-adjust) : economy
</span><span class="cx"> rect: style.getPropertyCSSValue(-webkit-print-color-adjust) : [object CSSPrimitiveValue]
</span><span class="cx"> rect: style.getPropertyValue(-webkit-rtl-ordering) : logical
</span><span class="lines">@@ -414,10 +420,6 @@
</span><span class="cx"> rect: style.getPropertyCSSValue(-webkit-text-stroke-color) : [object CSSPrimitiveValue]
</span><span class="cx"> rect: style.getPropertyValue(-webkit-text-stroke-width) : 0px
</span><span class="cx"> rect: style.getPropertyCSSValue(-webkit-text-stroke-width) : [object CSSPrimitiveValue]
</span><del>-rect: style.getPropertyValue(-webkit-transform) : none
-rect: style.getPropertyCSSValue(-webkit-transform) : [object CSSPrimitiveValue]
-rect: style.getPropertyValue(-webkit-transform-origin) : 0px 0px
-rect: style.getPropertyCSSValue(-webkit-transform-origin) : [object CSSValueList]
</del><span class="cx"> rect: style.getPropertyValue(-webkit-transform-style) : flat
</span><span class="cx"> rect: style.getPropertyCSSValue(-webkit-transform-style) : [object CSSPrimitiveValue]
</span><span class="cx"> rect: style.getPropertyValue(-webkit-transition-delay) : 0s
</span><span class="lines">@@ -692,6 +694,12 @@
</span><span class="cx"> g: style.getPropertyCSSValue(text-transform) : [object CSSPrimitiveValue]
</span><span class="cx"> g: style.getPropertyValue(top) : auto
</span><span class="cx"> g: style.getPropertyCSSValue(top) : [object CSSPrimitiveValue]
</span><ins>+g: style.getPropertyValue(transform) : none
+g: style.getPropertyCSSValue(transform) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(transform-origin) : 0px 0px
+g: style.getPropertyCSSValue(transform-origin) : [object CSSValueList]
+g: style.getPropertyValue(transform-style) : flat
+g: style.getPropertyCSSValue(transform-style) : [object CSSPrimitiveValue]
</ins><span class="cx"> g: style.getPropertyValue(unicode-bidi) : normal
</span><span class="cx"> g: style.getPropertyCSSValue(unicode-bidi) : [object CSSPrimitiveValue]
</span><span class="cx"> g: style.getPropertyValue(vertical-align) : baseline
</span><span class="lines">@@ -898,10 +906,10 @@
</span><span class="cx"> g: style.getPropertyCSSValue(-webkit-nbsp-mode) : [object CSSPrimitiveValue]
</span><span class="cx"> g: style.getPropertyValue(order) : 0
</span><span class="cx"> g: style.getPropertyCSSValue(order) : [object CSSPrimitiveValue]
</span><del>-g: style.getPropertyValue(-webkit-perspective) : none
-g: style.getPropertyCSSValue(-webkit-perspective) : [object CSSPrimitiveValue]
-g: style.getPropertyValue(-webkit-perspective-origin) : 0px 0px
-g: style.getPropertyCSSValue(-webkit-perspective-origin) : [object CSSValueList]
</del><ins>+g: style.getPropertyValue(perspective) : none
+g: style.getPropertyCSSValue(perspective) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(perspective-origin) : 0px 0px
+g: style.getPropertyCSSValue(perspective-origin) : [object CSSValueList]
</ins><span class="cx"> g: style.getPropertyValue(-webkit-print-color-adjust) : economy
</span><span class="cx"> g: style.getPropertyCSSValue(-webkit-print-color-adjust) : [object CSSPrimitiveValue]
</span><span class="cx"> g: style.getPropertyValue(-webkit-rtl-ordering) : logical
</span><span class="lines">@@ -926,10 +934,6 @@
</span><span class="cx"> g: style.getPropertyCSSValue(-webkit-text-stroke-color) : [object CSSPrimitiveValue]
</span><span class="cx"> g: style.getPropertyValue(-webkit-text-stroke-width) : 0px
</span><span class="cx"> g: style.getPropertyCSSValue(-webkit-text-stroke-width) : [object CSSPrimitiveValue]
</span><del>-g: style.getPropertyValue(-webkit-transform) : none
-g: style.getPropertyCSSValue(-webkit-transform) : [object CSSPrimitiveValue]
-g: style.getPropertyValue(-webkit-transform-origin) : 0px 0px
-g: style.getPropertyCSSValue(-webkit-transform-origin) : [object CSSValueList]
</del><span class="cx"> g: style.getPropertyValue(-webkit-transform-style) : flat
</span><span class="cx"> g: style.getPropertyCSSValue(-webkit-transform-style) : [object CSSPrimitiveValue]
</span><span class="cx"> g: style.getPropertyValue(-webkit-transition-delay) : 0s
</span></span></pre></div>
<a id="trunkLayoutTeststransforms2dcomputedstyleoriginexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/transforms/2d/computed-style-origin-expected.txt (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/transforms/2d/computed-style-origin-expected.txt        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/LayoutTests/transforms/2d/computed-style-origin-expected.txt        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -3,17 +3,17 @@
</span><span class="cx"> On success, you will see a series of &quot;PASS&quot; messages, followed by &quot;TEST COMPLETE&quot;.
</span><span class="cx"> 
</span><span class="cx"> 
</span><del>-PASS test1Style.webkitTransformOrigin is '10px 10px'
-PASS test2Style.webkitTransformOrigin is '10px 10px'
-PASS test3Style.webkitTransformOrigin is '0px 20px'
-PASS test4Style.webkitTransformOrigin is '5px 7px'
-PASS test5Style.webkitTransformOrigin is '15px 15px'
-PASS test1Style.webkitPerspectiveOrigin is '10px 10px'
-PASS test2Style.webkitPerspectiveOrigin is '10px 10px'
-PASS test3Style.webkitPerspectiveOrigin is '0px 20px'
-PASS test4Style.webkitPerspectiveOrigin is '5px 7px'
-PASS test5Style.webkitPerspectiveOrigin is '15px 15px'
-PASS test6Style.webkitPerspectiveOrigin is '50px 50px'
</del><ins>+PASS test1Style.transformOrigin is '10px 10px'
+PASS test2Style.transformOrigin is '10px 10px'
+PASS test3Style.transformOrigin is '0px 20px'
+PASS test4Style.transformOrigin is '5px 7px'
+PASS test5Style.transformOrigin is '15px 15px'
+PASS test1Style.perspectiveOrigin is '10px 10px'
+PASS test2Style.perspectiveOrigin is '10px 10px'
+PASS test3Style.perspectiveOrigin is '0px 20px'
+PASS test4Style.perspectiveOrigin is '5px 7px'
+PASS test5Style.perspectiveOrigin is '15px 15px'
+PASS test6Style.perspectiveOrigin is '50px 50px'
</ins><span class="cx"> 
</span><span class="cx"> PASS successfullyParsed is true
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTeststransforms2dcomputedstyleoriginhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/transforms/2d/computed-style-origin.html (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/transforms/2d/computed-style-origin.html        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/LayoutTests/transforms/2d/computed-style-origin.html        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -6,7 +6,7 @@
</span><span class="cx">         height: 20px;
</span><span class="cx">         background-color: blue;
</span><span class="cx">         position: relative;
</span><del>-        -webkit-transform: translate(0);
</del><ins>+        transform: translate(0);
</ins><span class="cx">         // default transform and perspective origin
</span><span class="cx">     }
</span><span class="cx">     #test2 {
</span><span class="lines">@@ -14,27 +14,27 @@
</span><span class="cx">         height: 20px;
</span><span class="cx">         background-color: blue;
</span><span class="cx">         position: relative;
</span><del>-        -webkit-transform: translate(0);
-        -webkit-transform-origin: 50% 50%;
-        -webkit-perspective-origin: 50% 50%;
</del><ins>+        transform: translate(0);
+        transform-origin: 50% 50%;
+        perspective-origin: 50% 50%;
</ins><span class="cx">     }
</span><span class="cx">     #test3 {
</span><span class="cx">         width: 20px;
</span><span class="cx">         height: 20px;
</span><span class="cx">         background-color: blue;
</span><span class="cx">         position: relative;
</span><del>-        -webkit-transform: translate(0);
-        -webkit-transform-origin: 0% 100%;
-        -webkit-perspective-origin: 0% 100%;
</del><ins>+        transform: translate(0);
+        transform-origin: 0% 100%;
+        perspective-origin: 0% 100%;
</ins><span class="cx">     }
</span><span class="cx">     #test4 {
</span><span class="cx">         width: 20px;
</span><span class="cx">         height: 20px;
</span><span class="cx">         background-color: blue;
</span><span class="cx">         position: relative;
</span><del>-        -webkit-transform: translate(0);
-        -webkit-transform-origin: 5px 7px;
-        -webkit-perspective-origin: 5px 7px;
</del><ins>+        transform: translate(0);
+        transform-origin: 5px 7px;
+        perspective-origin: 5px 7px;
</ins><span class="cx">     }
</span><span class="cx">     #test5 {
</span><span class="cx">         width: 10px;
</span><span class="lines">@@ -44,17 +44,17 @@
</span><span class="cx">         border: 5px solid green;
</span><span class="cx">         background-color: blue;
</span><span class="cx">         position: relative;
</span><del>-        -webkit-transform: translate(0);
-        -webkit-transform-origin: 50% 50%;
-        -webkit-perspective-origin: 50% 50%;
</del><ins>+        transform: translate(0);
+        transform-origin: 50% 50%;
+        perspective-origin: 50% 50%;
</ins><span class="cx">     }
</span><span class="cx">     #test6 {
</span><span class="cx">         width: 100px;
</span><span class="cx">         height: 100px;
</span><span class="cx">         background-color: blue;
</span><span class="cx">         position: relative;
</span><del>-        -webkit-transform: translate(0);
-        -webkit-perspective-origin: 10% 20% 30%;
</del><ins>+        transform: translate(0);
+        perspective-origin: 10% 20% 30%;
</ins><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> &lt;/style&gt;
</span><span class="lines">@@ -87,18 +87,18 @@
</span><span class="cx"> var test5Style = window.getComputedStyle(test5);
</span><span class="cx"> var test6Style = window.getComputedStyle(test6);
</span><span class="cx"> 
</span><del>-shouldBe(&quot;test1Style.webkitTransformOrigin&quot;, &quot;'10px 10px'&quot;);
-shouldBe(&quot;test2Style.webkitTransformOrigin&quot;, &quot;'10px 10px'&quot;);
-shouldBe(&quot;test3Style.webkitTransformOrigin&quot;, &quot;'0px 20px'&quot;);
-shouldBe(&quot;test4Style.webkitTransformOrigin&quot;, &quot;'5px 7px'&quot;);
-shouldBe(&quot;test5Style.webkitTransformOrigin&quot;, &quot;'15px 15px'&quot;);
</del><ins>+shouldBe(&quot;test1Style.transformOrigin&quot;, &quot;'10px 10px'&quot;);
+shouldBe(&quot;test2Style.transformOrigin&quot;, &quot;'10px 10px'&quot;);
+shouldBe(&quot;test3Style.transformOrigin&quot;, &quot;'0px 20px'&quot;);
+shouldBe(&quot;test4Style.transformOrigin&quot;, &quot;'5px 7px'&quot;);
+shouldBe(&quot;test5Style.transformOrigin&quot;, &quot;'15px 15px'&quot;);
</ins><span class="cx"> 
</span><del>-shouldBe(&quot;test1Style.webkitPerspectiveOrigin&quot;, &quot;'10px 10px'&quot;);
-shouldBe(&quot;test2Style.webkitPerspectiveOrigin&quot;, &quot;'10px 10px'&quot;);
-shouldBe(&quot;test3Style.webkitPerspectiveOrigin&quot;, &quot;'0px 20px'&quot;);
-shouldBe(&quot;test4Style.webkitPerspectiveOrigin&quot;, &quot;'5px 7px'&quot;);
-shouldBe(&quot;test5Style.webkitPerspectiveOrigin&quot;, &quot;'15px 15px'&quot;);
-shouldBe(&quot;test6Style.webkitPerspectiveOrigin&quot;, &quot;'50px 50px'&quot;);
</del><ins>+shouldBe(&quot;test1Style.perspectiveOrigin&quot;, &quot;'10px 10px'&quot;);
+shouldBe(&quot;test2Style.perspectiveOrigin&quot;, &quot;'10px 10px'&quot;);
+shouldBe(&quot;test3Style.perspectiveOrigin&quot;, &quot;'0px 20px'&quot;);
+shouldBe(&quot;test4Style.perspectiveOrigin&quot;, &quot;'5px 7px'&quot;);
+shouldBe(&quot;test5Style.perspectiveOrigin&quot;, &quot;'15px 15px'&quot;);
+shouldBe(&quot;test6Style.perspectiveOrigin&quot;, &quot;'50px 50px'&quot;);
</ins><span class="cx"> 
</span><span class="cx"> debug(&quot;&quot;);
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTeststransforms2dresourcesprefixedtransformtestutilsjsfromrev181831trunkLayoutTeststransforms2dresourcestransformtestutilsjs"></a>
<div class="copfile"><h4>Copied: trunk/LayoutTests/transforms/2d/resources/prefixed-transform-test-utils.js (from rev 181831, trunk/LayoutTests/transforms/2d/resources/transform-test-utils.js) (0 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/transforms/2d/resources/prefixed-transform-test-utils.js                                (rev 0)
+++ trunk/LayoutTests/transforms/2d/resources/prefixed-transform-test-utils.js        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -0,0 +1,58 @@
</span><ins>+
+// compare matrix() strings with some slop on really small values
+
+function floatingPointEqual(a, b)
+{
+  const kEpsilon = 1e-4;
+  return (Math.abs(a - b) &lt; kEpsilon);
+}
+
+function compareMatrices(a, b)
+{
+  if (a == &quot;none&quot; &amp;&amp; b == &quot;none&quot;)
+    return true;
+
+  var matrixRegex = /matrix(?:3d)?\((.+)\)/;
+
+  var resultA = matrixRegex.exec(a);
+  var resultB = matrixRegex.exec(b);
+  if (!resultA || !resultB)
+    return false;
+
+  var aValues = resultA[1];
+  var bValues = resultB[1];
+
+  var aComps = aValues.split(',');
+  var bComps = bValues.split(',');
+
+  if (aComps.length != bComps.length)
+    return false;
+
+  for (var i = 0; i &lt; aComps.length; ++i)
+  {
+    if (!floatingPointEqual(aComps[i], bComps[i]))
+      return false;
+  }
+
+  return true;
+}
+
+function testTransforms()
+{
+  var testBox = document.getElementById('test-box');
+  var resultsBox = document.getElementById('results');
+
+  gTests.forEach(function(curTest) {
+    testBox.style.webkitTransform = 'none'; // reset the transform just in case the next step fails
+    testBox.style.webkitTransform = curTest.transform;
+    var computedTransform = window.getComputedStyle(testBox).webkitTransform;
+
+    var success = compareMatrices(computedTransform, curTest.result);
+    var result;
+    if (success)
+      result = 'transform &quot;&lt;code&gt;' + curTest.transform + '&lt;/code&gt;&quot; expected &quot;&lt;code&gt;' + curTest.result + '&lt;/code&gt;&quot; : PASS';
+    else
+      result = 'transform &quot;&lt;code&gt;' + curTest.transform + '&lt;/code&gt;&quot; expected &quot;&lt;code&gt;' + curTest.result + '&lt;/code&gt;&quot;, got &quot;&lt;code&gt;' + computedTransform + '&lt;/code&gt;&quot; : FAIL';
+    resultsBox.innerHTML += result + '&lt;br&gt;';
+  });
+}
</ins></span></pre></div>
<a id="trunkLayoutTeststransforms2dresourcestransformtestutilsjs"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/transforms/2d/resources/transform-test-utils.js (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/transforms/2d/resources/transform-test-utils.js        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/LayoutTests/transforms/2d/resources/transform-test-utils.js        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -41,11 +41,11 @@
</span><span class="cx"> {
</span><span class="cx">   var testBox = document.getElementById('test-box');
</span><span class="cx">   var resultsBox = document.getElementById('results');
</span><del>-  
</del><ins>+
</ins><span class="cx">   gTests.forEach(function(curTest) {
</span><del>-    testBox.style.webkitTransform = 'none'; // reset the transform just in case the next step fails
-    testBox.style.webkitTransform = curTest.transform;
-    var computedTransform = window.getComputedStyle(testBox).webkitTransform;
</del><ins>+    testBox.style.transform = 'none'; // reset the transform just in case the next step fails
+    testBox.style.transform = curTest.transform;
+    var computedTransform = window.getComputedStyle(testBox).transform;
</ins><span class="cx"> 
</span><span class="cx">     var success = compareMatrices(computedTransform, curTest.result);
</span><span class="cx">     var result;
</span></span></pre></div>
<a id="trunkLayoutTeststransforms2dtransform2dprefixedexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/transforms/2d/transform-2d-prefixed-expected.txt (0 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/transforms/2d/transform-2d-prefixed-expected.txt                                (rev 0)
+++ trunk/LayoutTests/transforms/2d/transform-2d-prefixed-expected.txt        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -0,0 +1,84 @@
</span><ins>+transform &quot;none&quot; expected &quot;none&quot; : PASS
+transform &quot;&quot; expected &quot;matrix(5.96046e-08, 1, -1, 5.96046e-08, 0, 0)&quot; : PASS
+transform &quot;inherit&quot; expected &quot;none&quot; : PASS
+transform &quot;translate(80px, 90px)&quot; expected &quot;matrix(1, 0, 0, 1, 80, 90)&quot; : PASS
+transform &quot;translate(100%, 3em)&quot; expected &quot;matrix(1, 0, 0, 1, 200, 48)&quot; : PASS
+transform &quot;translate(50px)&quot; expected &quot;matrix(1, 0, 0, 1, 50, 0)&quot; : PASS
+transform &quot;translatex(-20px)&quot; expected &quot;matrix(1, 0, 0, 1, -20, 0)&quot; : PASS
+transform &quot;translateX(-20px)&quot; expected &quot;matrix(1, 0, 0, 1, -20, 0)&quot; : PASS
+transform &quot;translatey(23px)&quot; expected &quot;matrix(1, 0, 0, 1, 0, 23)&quot; : PASS
+transform &quot;translateY(-3em)&quot; expected &quot;matrix(1, 0, 0, 1, 0, -48)&quot; : PASS
+transform &quot;scale(1.2)&quot; expected &quot;matrix(1.2, 0, 0, 1.2, 0, 0)&quot; : PASS
+transform &quot;scalex(1.5)&quot; expected &quot;matrix(1.5, 0, 0, 1, 0, 0)&quot; : PASS
+transform &quot;scaleX(1.5)&quot; expected &quot;matrix(1.5, 0, 0, 1, 0, 0)&quot; : PASS
+transform &quot;scaley(1.5)&quot; expected &quot;matrix(1, 0, 0, 1.5, 0, 0)&quot; : PASS
+transform &quot;scaleY(1.5)&quot; expected &quot;matrix(1, 0, 0, 1.5, 0, 0)&quot; : PASS
+transform &quot;scale(1.2, 0.8)&quot; expected &quot;matrix(1.2, 0, 0, 0.8, 0, 0)&quot; : PASS
+transform &quot;scale(-1.2, -0.8)&quot; expected &quot;matrix(-1.2, -0, -0, -0.8, 0, 0)&quot; : PASS
+transform &quot;skew(-0.7rad, 20deg)&quot; expected &quot;matrix(1, 0.36397, -0.842288, 1, 0, 0)&quot; : PASS
+transform &quot;skew(12grad)&quot; expected &quot;matrix(1, 0, 0.19076, 1, 0, 0)&quot; : PASS
+transform &quot;skewx(12grad)&quot; expected &quot;matrix(1, 0, 0.19076, 1, 0, 0)&quot; : PASS
+transform &quot;skewX(12grad)&quot; expected &quot;matrix(1, 0, 0.19076, 1, 0, 0)&quot; : PASS
+transform &quot;skewy(-12grad)&quot; expected &quot;matrix(1, -0.19076, 0, 1, 0, 0)&quot; : PASS
+transform &quot;skewY(-12grad)&quot; expected &quot;matrix(1, -0.19076, 0, 1, 0, 0)&quot; : PASS
+transform &quot;skewx(0.1turn)&quot; expected &quot;matrix(1, 0, 0.726543, 1, 0, 0)&quot; : PASS
+transform &quot;rotate(45deg)&quot; expected &quot;matrix(0.707107, 0.707107, -0.707107, 0.707107, 0, 0)&quot; : PASS
+transform &quot;rotate(90deg)&quot; expected &quot;matrix(-4.37114e-08, 1, -1, -4.37114e-08, 0, 0)&quot; : PASS
+transform &quot;rotate(-90deg)&quot; expected &quot;matrix(-4.37114e-08, -1, 1, -4.37114e-08, 0, 0)&quot; : PASS
+transform &quot;rotate(180deg)&quot; expected &quot;matrix(-1, -8.74228e-08, 8.74228e-08, -1, 0, 0)&quot; : PASS
+transform &quot;rotate(1.2rad)&quot; expected &quot;matrix(0.362358, 0.932039, -0.932039, 0.362358, 0, 0)&quot; : PASS
+transform &quot;rotate(0.25turn)&quot; expected &quot;matrix(-4.37114e-08, 1, -1, -4.37114e-08, 0, 0)&quot; : PASS
+transform &quot;rotate(0.5turn)&quot; expected &quot;matrix(-1, -8.74228e-08, 8.74228e-08, -1, 0, 0)&quot; : PASS
+transform &quot;rotate(1.5turn)&quot; expected &quot;matrix(-1, -8.74228e-08, 8.74228e-08, -1, 0, 0)&quot; : PASS
+transform &quot;matrix(1, 0, 0, 1, 0, 0)&quot; expected &quot;matrix(1, 0, 0, 1, 0, 0)&quot; : PASS
+transform &quot;matrix(1, -0.19076, 0, 1, 0, 0)&quot; expected &quot;matrix(1, -0.19076, 0, 1, 0, 0)&quot; : PASS
+transform &quot;matrix(0.2, 0.3, 0.4, 1.1, 1.2, 1.3)&quot; expected &quot;matrix(0.2, 0.3, 0.4, 1.1, 1.2, 1.3)&quot; : PASS
+transform &quot;,rotate(12deg)&quot; expected &quot;none&quot; : PASS
+transform &quot;rotate(12deg),&quot; expected &quot;none&quot; : PASS
+transform &quot;rotate(12deg) +&quot; expected &quot;none&quot; : PASS
+transform &quot;(translate(50, 20))&quot; expected &quot;none&quot; : PASS
+transform &quot;eggs(10)&quot; expected &quot;none&quot; : PASS
+transform &quot;translate(50, 20)&quot; expected &quot;none&quot; : PASS
+transform &quot;translate()&quot; expected &quot;none&quot; : PASS
+transform &quot;translate(10px, 20px, 30px)&quot; expected &quot;none&quot; : PASS
+transform &quot;translate(10px, 20px, 30px, 40px)&quot; expected &quot;none&quot; : PASS
+transform &quot;translate(10smidgens)&quot; expected &quot;none&quot; : PASS
+transform &quot;translate(10px, 10smidgens)&quot; expected &quot;none&quot; : PASS
+transform &quot;translateX(10px, 20px)&quot; expected &quot;none&quot; : PASS
+transform &quot;translateX(10px, 20px, 30px)&quot; expected &quot;none&quot; : PASS
+transform &quot;translateX(10smidgens)&quot; expected &quot;none&quot; : PASS
+transform &quot;translateX(10px, 10smidgens)&quot; expected &quot;none&quot; : PASS
+transform &quot;translateY(10px, 20px)&quot; expected &quot;none&quot; : PASS
+transform &quot;translateY(10px, 20px, 30px)&quot; expected &quot;none&quot; : PASS
+transform &quot;translateY(10smidgens)&quot; expected &quot;none&quot; : PASS
+transform &quot;translateY(10px, 10smidgens)&quot; expected &quot;none&quot; : PASS
+transform &quot;scale(2px, 2px)&quot; expected &quot;none&quot; : PASS
+transform &quot;scale(2, 2px)&quot; expected &quot;none&quot; : PASS
+transform &quot;scale()&quot; expected &quot;none&quot; : PASS
+transform &quot;scale(1, 2, 3)&quot; expected &quot;none&quot; : PASS
+transform &quot;scale(2smidgens)&quot; expected &quot;none&quot; : PASS
+transform &quot;scale(2, 2smidgens)&quot; expected &quot;none&quot; : PASS
+transform &quot;rotate(10)&quot; expected &quot;none&quot; : PASS
+transform &quot;rotate()&quot; expected &quot;none&quot; : PASS
+transform &quot;rotate(10deg, 20deg)&quot; expected &quot;none&quot; : PASS
+transform &quot;rotate(2turns)&quot; expected &quot;none&quot; : PASS
+transform &quot;rotate(2spins)&quot; expected &quot;none&quot; : PASS
+transform &quot;rotate(2, 2spins)&quot; expected &quot;none&quot; : PASS
+transform &quot;skew(10)&quot; expected &quot;none&quot; : PASS
+transform &quot;skew()&quot; expected &quot;none&quot; : PASS
+transform &quot;skew(10deg, 20deg, 30deg)&quot; expected &quot;none&quot; : PASS
+transform &quot;skew(2bits)&quot; expected &quot;none&quot; : PASS
+transform &quot;skew(2, 2bits)&quot; expected &quot;none&quot; : PASS
+transform &quot;skewX(10)&quot; expected &quot;none&quot; : PASS
+transform &quot;skewX()&quot; expected &quot;none&quot; : PASS
+transform &quot;skewX(10deg, 20deg)&quot; expected &quot;none&quot; : PASS
+transform &quot;skewX(2bits)&quot; expected &quot;none&quot; : PASS
+transform &quot;skewY(10)&quot; expected &quot;none&quot; : PASS
+transform &quot;skewY()&quot; expected &quot;none&quot; : PASS
+transform &quot;skewY(10deg, 20deg)&quot; expected &quot;none&quot; : PASS
+transform &quot;skewY(2bits)&quot; expected &quot;none&quot; : PASS
+transform &quot;matrix()&quot; expected &quot;none&quot; : PASS
+transform &quot;matrix(2, 0, 0, 2)&quot; expected &quot;none&quot; : PASS
+transform &quot;matrix(0.978148, 0.207912, -0.207912, 0.978148, 50, 20, 666)&quot; expected &quot;none&quot; : PASS
+transform &quot;matrix(1, 0, 0, 1, 20px, 50px)&quot; expected &quot;none&quot; : PASS
+
</ins><span class="cx">Property changes on: trunk/LayoutTests/transforms/2d/transform-2d-prefixed-expected.txt
</span><span class="cx">___________________________________________________________________
</span></span></pre></div>
<a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="svnkeywords"></a>
<div class="addfile"><h4>Added: svn:keywords</h4></div>
<a id="svneolstyle"></a>
<div class="addfile"><h4>Added: svn:eol-style</h4></div>
<a id="trunkLayoutTeststransforms2dtransform2dprefixedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/transforms/2d/transform-2d-prefixed.html (0 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/transforms/2d/transform-2d-prefixed.html                                (rev 0)
+++ trunk/LayoutTests/transforms/2d/transform-2d-prefixed.html        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -0,0 +1,157 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+  &lt;title&gt;2D Transform Tests&lt;/title&gt;
+  &lt;style type=&quot;text/css&quot; media=&quot;screen&quot;&gt;
+    .container {
+      height: 100px;
+      width: 200px;
+      margin: 30px;
+      outline: 1px solid black;
+    }
+    .box {
+      height: 100%;
+      width: 100%;
+      background-color: green;
+      -webkit-transform: rotate(90deg);
+    }
+    #results {
+      margin-top: 100px;
+    }
+  &lt;/style&gt;
+  &lt;script src=&quot;resources/prefixed-transform-test-utils.js&quot; type=&quot;text/javascript&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;
+  &lt;script type=&quot;text/javascript&quot; charset=&quot;utf-8&quot;&gt;
+    if (window.testRunner) {
+      testRunner.dumpAsText();
+      testRunner.waitUntilDone();
+    }
+
+    var gTests = [
+      // nothing
+      { 'transform' : 'none', 'result' : 'none' },
+      { 'transform' : '', 'result' : 'matrix(5.96046e-08, 1, -1, 5.96046e-08, 0, 0)' }, // this cancels the style - revert back to box
+      { 'transform' : 'inherit', 'result' : 'none' }, // parent element doesn't have transform
+
+      // translate
+      { 'transform' : 'translate(80px, 90px)',  'result' : 'matrix(1, 0, 0, 1, 80, 90)' },
+      { 'transform' : 'translate(100%, 3em)',   'result' : 'matrix(1, 0, 0, 1, 200, 48)' },  // depends on font size
+      { 'transform' : 'translate(50px)',        'result' : 'matrix(1, 0, 0, 1, 50, 0)' },
+      { 'transform' : 'translatex(-20px)',      'result' : 'matrix(1, 0, 0, 1, -20, 0)' },
+      { 'transform' : 'translateX(-20px)',      'result' : 'matrix(1, 0, 0, 1, -20, 0)' },
+      { 'transform' : 'translatey(23px)',       'result' : 'matrix(1, 0, 0, 1, 0, 23)' },
+      { 'transform' : 'translateY(-3em)',       'result' : 'matrix(1, 0, 0, 1, 0, -48)' },  // depends on font size
+
+      // scale
+      { 'transform' : 'scale(1.2)',             'result' : 'matrix(1.2, 0, 0, 1.2, 0, 0)' },
+      { 'transform' : 'scalex(1.5)',            'result' : 'matrix(1.5, 0, 0, 1, 0, 0)' },
+      { 'transform' : 'scaleX(1.5)',            'result' : 'matrix(1.5, 0, 0, 1, 0, 0)' },
+      { 'transform' : 'scaley(1.5)',            'result' : 'matrix(1, 0, 0, 1.5, 0, 0)' },
+      { 'transform' : 'scaleY(1.5)',            'result' : 'matrix(1, 0, 0, 1.5, 0, 0)' },
+      { 'transform' : 'scale(1.2, 0.8)',        'result' : 'matrix(1.2, 0, 0, 0.8, 0, 0)' },
+      { 'transform' : 'scale(-1.2, -0.8)',      'result' : 'matrix(-1.2, -0, -0, -0.8, 0, 0)' },
+
+      // skew
+      { 'transform' : 'skew(-0.7rad, 20deg)',   'result' : 'matrix(1, 0.36397, -0.842288, 1, 0, 0)' },
+      { 'transform' : 'skew(12grad)',           'result' : 'matrix(1, 0, 0.19076, 1, 0, 0)' },
+      { 'transform' : 'skewx(12grad)',          'result' : 'matrix(1, 0, 0.19076, 1, 0, 0)' },
+      { 'transform' : 'skewX(12grad)',          'result' : 'matrix(1, 0, 0.19076, 1, 0, 0)' },
+      { 'transform' : 'skewy(-12grad)',         'result' : 'matrix(1, -0.19076, 0, 1, 0, 0)' },
+      { 'transform' : 'skewY(-12grad)',         'result' : 'matrix(1, -0.19076, 0, 1, 0, 0)' },
+      { 'transform' : 'skewx(0.1turn)',         'result' : 'matrix(1, 0, 0.726543, 1, 0, 0)' },
+
+      // rotate
+      { 'transform' : 'rotate(45deg)',          'result' : 'matrix(0.707107, 0.707107, -0.707107, 0.707107, 0, 0)' },
+      { 'transform' : 'rotate(90deg)',          'result' : 'matrix(-4.37114e-08, 1, -1, -4.37114e-08, 0, 0)' },
+      { 'transform' : 'rotate(-90deg)',         'result' : 'matrix(-4.37114e-08, -1, 1, -4.37114e-08, 0, 0)' },
+      { 'transform' : 'rotate(180deg)',         'result' : 'matrix(-1, -8.74228e-08, 8.74228e-08, -1, 0, 0)' },
+      { 'transform' : 'rotate(1.2rad)',         'result' : 'matrix(0.362358, 0.932039, -0.932039, 0.362358, 0, 0)' },
+      { 'transform' : 'rotate(0.25turn)',       'result' : 'matrix(-4.37114e-08, 1, -1, -4.37114e-08, 0, 0)' },
+      { 'transform' : 'rotate(0.5turn)',        'result' : 'matrix(-1, -8.74228e-08, 8.74228e-08, -1, 0, 0)' },
+      { 'transform' : 'rotate(1.5turn)',        'result' : 'matrix(-1, -8.74228e-08, 8.74228e-08, -1, 0, 0)' },
+
+      // matrix
+      { 'transform' : 'matrix(1, 0, 0, 1, 0, 0)', 'result' : 'matrix(1, 0, 0, 1, 0, 0)' },
+      { 'transform' : 'matrix(1, -0.19076, 0, 1, 0, 0)', 'result' : 'matrix(1, -0.19076, 0, 1, 0, 0)' },
+      { 'transform' : 'matrix(0.2, 0.3, 0.4, 1.1, 1.2, 1.3)', 'result' : 'matrix(0.2, 0.3, 0.4, 1.1, 1.2, 1.3)' },
+
+      // invalid syntax
+      { 'transform' : ',rotate(12deg)', 'result' : 'none' }, // has comma
+      { 'transform' : 'rotate(12deg),', 'result' : 'none' }, // has comma
+      { 'transform' : 'rotate(12deg) +', 'result' : 'none' }, // has plus
+      { 'transform' : '(translate(50, 20))', 'result' : 'none' }, // bad syntax
+      { 'transform' : 'eggs(10)', 'result' : 'none' }, // invalid function
+
+      // invalid translate
+      { 'transform' : 'translate(50, 20)', 'result' : 'none' }, // missing units
+      { 'transform' : 'translate()', 'result' : 'none' }, // no arguments
+      { 'transform' : 'translate(10px, 20px, 30px)', 'result' : 'none' }, // too many arguments
+      { 'transform' : 'translate(10px, 20px, 30px, 40px)', 'result' : 'none' }, // too many arguments
+      { 'transform' : 'translate(10smidgens)', 'result' : 'none' }, // invalid units
+      { 'transform' : 'translate(10px, 10smidgens)', 'result' : 'none' }, // invalid units
+      { 'transform' : 'translateX(10px, 20px)', 'result' : 'none' }, // too many arguments
+      { 'transform' : 'translateX(10px, 20px, 30px)', 'result' : 'none' }, // too many arguments
+      { 'transform' : 'translateX(10smidgens)', 'result' : 'none' }, // invalid units
+      { 'transform' : 'translateX(10px, 10smidgens)', 'result' : 'none' }, // invalid units
+      { 'transform' : 'translateY(10px, 20px)', 'result' : 'none' }, // too many arguments
+      { 'transform' : 'translateY(10px, 20px, 30px)', 'result' : 'none' }, // too many arguments
+      { 'transform' : 'translateY(10smidgens)', 'result' : 'none' }, // invalid units
+      { 'transform' : 'translateY(10px, 10smidgens)', 'result' : 'none' }, // invalid units
+
+      // invalid scale
+      { 'transform' : 'scale(2px, 2px)', 'result' : 'none' }, // has units
+      { 'transform' : 'scale(2, 2px)', 'result' : 'none' }, // has units
+      { 'transform' : 'scale()', 'result' : 'none' }, // no arguments
+      { 'transform' : 'scale(1, 2, 3)', 'result' : 'none' }, // too many arguments
+      { 'transform' : 'scale(2smidgens)', 'result' : 'none' }, // invalid units
+      { 'transform' : 'scale(2, 2smidgens)', 'result' : 'none' }, // invalid units
+
+      // invalid rotate
+      { 'transform' : 'rotate(10)', 'result' : 'none' }, // no units
+      { 'transform' : 'rotate()', 'result' : 'none' }, // no arguments
+      { 'transform' : 'rotate(10deg, 20deg)', 'result' : 'none' }, // too many arguments
+      { 'transform' : 'rotate(2turns)', 'result' : 'none' }, // invalid units -- 'turn' not 'turns'
+      { 'transform' : 'rotate(2spins)', 'result' : 'none' }, // invalid units
+      { 'transform' : 'rotate(2, 2spins)', 'result' : 'none' }, // invalid units
+
+      // invalid skew
+      { 'transform' : 'skew(10)', 'result' : 'none' }, // no units
+      { 'transform' : 'skew()', 'result' : 'none' }, // no arguments
+      { 'transform' : 'skew(10deg, 20deg, 30deg)', 'result' : 'none' }, // too many arguments
+      { 'transform' : 'skew(2bits)', 'result' : 'none' }, // invalid units
+      { 'transform' : 'skew(2, 2bits)', 'result' : 'none' }, // invalid units
+      { 'transform' : 'skewX(10)', 'result' : 'none' }, // no units
+      { 'transform' : 'skewX()', 'result' : 'none' }, // no arguments
+      { 'transform' : 'skewX(10deg, 20deg)', 'result' : 'none' }, // too many arguments
+      { 'transform' : 'skewX(2bits)', 'result' : 'none' }, // invalid units
+      { 'transform' : 'skewY(10)', 'result' : 'none' }, // no units
+      { 'transform' : 'skewY()', 'result' : 'none' }, // no arguments
+      { 'transform' : 'skewY(10deg, 20deg)', 'result' : 'none' }, // too many arguments
+      { 'transform' : 'skewY(2bits)', 'result' : 'none' }, // invalid units
+
+      // invalid matrix
+      { 'transform' : 'matrix()', 'result' : 'none' }, // no arguments
+      { 'transform' : 'matrix(2, 0, 0, 2)', 'result' : 'none' }, // not enough arguments
+      { 'transform' : 'matrix(0.978148, 0.207912, -0.207912, 0.978148, 50, 20, 666)', 'result' : 'none' }, // too many arguments
+      { 'transform' : 'matrix(1, 0, 0, 1, 20px, 50px)', 'result' : 'none' } // has units
+      
+    ];
+    
+    function runTests()
+    {
+      testTransforms();
+
+      if (window.testRunner)
+        testRunner.notifyDone();
+    }
+  &lt;/script&gt;
+&lt;/head&gt;
+&lt;body onload=&quot;runTests()&quot;&gt;
+
+  &lt;div class=&quot;container&quot;&gt;
+    &lt;div id=&quot;test-box&quot; class=&quot;box&quot;&gt;&lt;/div&gt;
+  &lt;/div&gt;
+
+  &lt;div id=&quot;results&quot;&gt;
+  &lt;/div&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins><span class="cx">Property changes on: trunk/LayoutTests/transforms/2d/transform-2d-prefixed.html
</span><span class="cx">___________________________________________________________________
</span></span></pre></div>
<a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="svnkeywords"></a>
<div class="addfile"><h4>Added: svn:keywords</h4></div>
<a id="svneolstyle"></a>
<div class="addfile"><h4>Added: svn:eol-style</h4></div>
<a id="trunkLayoutTeststransforms3dgeneralprefixed3dtransformvaluesexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/transforms/3d/general/prefixed-3dtransform-values-expected.txt (0 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/transforms/3d/general/prefixed-3dtransform-values-expected.txt                                (rev 0)
+++ trunk/LayoutTests/transforms/3d/general/prefixed-3dtransform-values-expected.txt        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -0,0 +1,21 @@
</span><ins>+transform &quot;translate3d(0, 0, 10px)&quot; expected &quot;matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 10, 1)&quot; : PASS
+transform &quot;translateZ(10px)&quot; expected &quot;matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 10, 1)&quot; : PASS
+transform &quot;rotate3d(0, 1, 0, 180deg)&quot; expected &quot;matrix3d(-1, 0, 0, 0, 0, 1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1)&quot; : PASS
+transform &quot;rotate3d(0, 0, 0, 180deg)&quot; expected &quot;matrix3d(1, 0, 0, 1, 0, 0)&quot; : PASS
+transform &quot;translate3d(0, 0, 10px)&quot; expected &quot;matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 10, 1)&quot; : PASS
+transform &quot;translate3d(0, 0, 10%)&quot; expected &quot;none&quot; : PASS
+transform &quot;translate3d(0, 0, 10)&quot; expected &quot;none&quot; : PASS
+transform &quot;translateZ(10%)&quot; expected &quot;none&quot; : PASS
+transform &quot;translateZ(10)&quot; expected &quot;none&quot; : PASS
+transform &quot;rotate3d(0, 1, 0, 180)&quot; expected &quot;none&quot; : PASS
+transform &quot;rotate3d(0, 1, 0, 180px)&quot; expected &quot;none&quot; : PASS
+transform &quot;rotate3d(0, 1, 0, 180px)&quot; expected &quot;none&quot; : PASS
+transform &quot;perspective(400)&quot; expected &quot;matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, -0.0025, 0, 0, 0, 1)&quot; : PASS
+transform &quot;perspective(400px)&quot; expected &quot;matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, -0.0025, 0, 0, 0, 1)&quot; : PASS
+transform &quot;perspective(400em)&quot; expected &quot;matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, -0.00015625, 0, 0, 0, 1)&quot; : PASS
+transform &quot;perspective(50%)&quot; expected &quot;none&quot; : PASS
+transform &quot;perspective(-400)&quot; expected &quot;none&quot; : PASS
+transform &quot;perspective(0)&quot; expected &quot;matrix(1, 0, 0, 1, 0, 0)&quot; : PASS
+transform &quot;perspective(400deg)&quot; expected &quot;none&quot; : PASS
+transform &quot;perspective(banana)&quot; expected &quot;none&quot; : PASS
+
</ins><span class="cx">Property changes on: trunk/LayoutTests/transforms/3d/general/prefixed-3dtransform-values-expected.txt
</span><span class="cx">___________________________________________________________________
</span></span></pre></div>
<a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="svnkeywords"></a>
<div class="addfile"><h4>Added: svn:keywords</h4></div>
<a id="svneolstyle"></a>
<div class="addfile"><h4>Added: svn:eol-style</h4></div>
<a id="trunkLayoutTeststransforms3dgeneralprefixed3dtransformvalueshtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/transforms/3d/general/prefixed-3dtransform-values.html (0 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/transforms/3d/general/prefixed-3dtransform-values.html                                (rev 0)
+++ trunk/LayoutTests/transforms/3d/general/prefixed-3dtransform-values.html        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -0,0 +1,69 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+
+&lt;html&gt;
+&lt;head&gt;
+  &lt;style type=&quot;text/css&quot; media=&quot;screen&quot;&gt;
+    .container {
+      height: 100px;
+      width: 100px;
+      margin: 30px;
+      outline: 1px solid black;
+    }
+    .box {
+      height: 100%;
+      width: 100%;
+      background-color: green;
+    }
+    #results {
+      margin-top: 100px;
+    }
+  &lt;/style&gt;
+  &lt;script src=&quot;../../2d/resources/prefixed-transform-test-utils.js&quot; type=&quot;text/javascript&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;
+  &lt;script type=&quot;text/javascript&quot;&gt;
+    if (window.testRunner) {
+      testRunner.dumpAsText();
+      testRunner.waitUntilDone();
+    }
+
+    var gTests = [
+      { 'transform' : 'translate3d(0, 0, 10px)', 'result' : 'matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 10, 1)' },
+      { 'transform' : 'translateZ(10px)', 'result' : 'matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 10, 1)' },
+      { 'transform' : 'rotate3d(0, 1, 0, 180deg)', 'result' : 'matrix3d(-1, 0, 0, 0, 0, 1, 0, 0, 0, 0, -1, 0, 0, 0, 0, 1)' },
+      { 'transform' : 'rotate3d(0, 0, 0, 180deg)', 'result' : 'matrix3d(1, 0, 0, 1, 0, 0)' },
+      { 'transform' : 'translate3d(0, 0, 10px)', 'result' : 'matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 10, 1)' },
+      { 'transform' : 'translate3d(0, 0, 10%)', 'result' : 'none' }, // percentage values not allowed in the z param
+      { 'transform' : 'translate3d(0, 0, 10)', 'result' : 'none' }, // must have units for the z param
+      { 'transform' : 'translateZ(10%)', 'result' : 'none' }, // percentage values not allowed in the z param
+      { 'transform' : 'translateZ(10)', 'result' : 'none' }, // must have units
+      { 'transform' : 'rotate3d(0, 1, 0, 180)', 'result' : 'none' }, // last value must be an angle
+      { 'transform' : 'rotate3d(0, 1, 0, 180px)', 'result' : 'none' }, // last value must be an angle
+      { 'transform' : 'rotate3d(0, 1, 0, 180px)', 'result' : 'none' }, // last value must be an angle
+      { 'transform' : 'perspective(400)', 'result' : 'matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, -0.0025, 0, 0, 0, 1)' }, // legacy
+      { 'transform' : 'perspective(400px)', 'result' : 'matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, -0.0025, 0, 0, 0, 1)' },
+      { 'transform' : 'perspective(400em)', 'result' : 'matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, -0.00015625, 0, 0, 0, 1)' },
+      { 'transform' : 'perspective(50%)', 'result' : 'none' },
+      { 'transform' : 'perspective(-400)', 'result' : 'none' },
+      { 'transform' : 'perspective(0)', 'result' : 'matrix(1, 0, 0, 1, 0, 0)' },
+      { 'transform' : 'perspective(400deg)', 'result' : 'none' }, // unit must be length
+      { 'transform' : 'perspective(banana)', 'result' : 'none' }, // unit must be length
+    ];
+
+    function runTests()
+    {
+      testTransforms();
+
+      if (window.testRunner)
+        testRunner.notifyDone();
+    }
+  &lt;/script&gt;
+&lt;/head&gt;
+&lt;body onload=&quot;runTests()&quot;&gt;
+
+  &lt;div class=&quot;container&quot;&gt;
+    &lt;div id=&quot;test-box&quot; class=&quot;box&quot;&gt;&lt;/div&gt;
+  &lt;/div&gt;
+
+  &lt;div id=&quot;results&quot;&gt;
+  &lt;/div&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins><span class="cx">Property changes on: trunk/LayoutTests/transforms/3d/general/prefixed-3dtransform-values.html
</span><span class="cx">___________________________________________________________________
</span></span></pre></div>
<a id="svnmimetype"></a>
<div class="addfile"><h4>Added: svn:mime-type</h4></div>
<a id="svnkeywords"></a>
<div class="addfile"><h4>Added: svn:keywords</h4></div>
<a id="svneolstyle"></a>
<div class="addfile"><h4>Added: svn:eol-style</h4></div>
<a id="trunkLayoutTeststransitionstransitionendeventmultiple04expectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/transitions/transition-end-event-multiple-04-expected.txt (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/transitions/transition-end-event-multiple-04-expected.txt        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/LayoutTests/transitions/transition-end-event-multiple-04-expected.txt        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -1,6 +1,6 @@
</span><span class="cx"> Initiating transitions on transform properties of all boxes, starting at different times and with different durations and values.
</span><span class="cx"> 
</span><del>-PASS --- [Expected] Property: -webkit-transform Target: box1 Elapsed Time: 0.5
-PASS --- [Expected] Property: -webkit-transform Target: box2 Elapsed Time: 0.55
-PASS --- [Expected] Property: -webkit-transform Target: box4 Elapsed Time: 0.4
</del><ins>+PASS --- [Expected] Property: transform Target: box1 Elapsed Time: 0.5
+PASS --- [Expected] Property: transform Target: box2 Elapsed Time: 0.55
+PASS --- [Expected] Property: transform Target: box4 Elapsed Time: 0.4
</ins><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTeststransitionstransitionendeventmultiple04html"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/transitions/transition-end-event-multiple-04.html (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/transitions/transition-end-event-multiple-04.html        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/LayoutTests/transitions/transition-end-event-multiple-04.html        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -8,28 +8,28 @@
</span><span class="cx">       width: 100px;
</span><span class="cx">       margin: 10px;
</span><span class="cx">       background-color: blue;
</span><del>-      -webkit-transform: translate(0);
-      -webkit-transition-property: -webkit-transform;
-      -webkit-transition-duration: 0.5s;
</del><ins>+      transform: translate(0);
+      transition-property: transform;
+      transition-duration: 0.5s;
</ins><span class="cx">     }
</span><span class="cx">     
</span><span class="cx">     .box1 {
</span><del>-      -webkit-transform: translate(50px);
</del><ins>+      transform: translate(50px);
</ins><span class="cx">     }
</span><span class="cx">     
</span><span class="cx">     .box2 {
</span><del>-      -webkit-transform: translate(50px) scale(1.05);
-      -webkit-transition-duration: 0.55s;
</del><ins>+      transform: translate(50px) scale(1.05);
+      transition-duration: 0.55s;
</ins><span class="cx">     }
</span><span class="cx">     
</span><span class="cx">     .box3 {
</span><del>-      -webkit-transform: translate(0); /* same as default */
-      -webkit-transition-duration: 0.3s;
</del><ins>+      transform: translate(0); /* same as default */
+      transition-duration: 0.3s;
</ins><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     .box4 {
</span><del>-      -webkit-transform: translate(100px);
-      -webkit-transition-duration: 0.4s;
</del><ins>+      transform: translate(100px);
+      transition-duration: 0.4s;
</ins><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     .box5 {
</span><span class="lines">@@ -42,9 +42,9 @@
</span><span class="cx">     
</span><span class="cx">     var expectedEndEvents = [
</span><span class="cx">       // [property-name, element-id, elapsed-time, listen]
</span><del>-      [&quot;-webkit-transform&quot;, &quot;box1&quot;, 0.5, false],
-      [&quot;-webkit-transform&quot;, &quot;box2&quot;, 0.55, false],
-      [&quot;-webkit-transform&quot;, &quot;box4&quot;, 0.4, false]
</del><ins>+      [&quot;transform&quot;, &quot;box1&quot;, 0.5, false],
+      [&quot;transform&quot;, &quot;box2&quot;, 0.55, false],
+      [&quot;transform&quot;, &quot;box4&quot;, 0.4, false]
</ins><span class="cx">     ];
</span><span class="cx">   
</span><span class="cx">     function transitionElement(index)
</span></span></pre></div>
<a id="trunkLayoutTeststransitionstransitionendeventtransformexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/transitions/transition-end-event-transform-expected.txt (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/transitions/transition-end-event-transform-expected.txt        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/LayoutTests/transitions/transition-end-event-transform-expected.txt        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><span class="cx"> Initiating a 500ms transition on the transform property of box1.
</span><span class="cx"> 
</span><del>-PASS --- [Expected] Property: -webkit-transform Target: box1 Elapsed Time: 0.5
</del><ins>+PASS --- [Expected] Property: transform Target: box1 Elapsed Time: 0.5
</ins><span class="cx"> 
</span></span></pre></div>
<a id="trunkLayoutTeststransitionstransitionendeventtransformhtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/transitions/transition-end-event-transform.html (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/transitions/transition-end-event-transform.html        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/LayoutTests/transitions/transition-end-event-transform.html        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -8,9 +8,9 @@
</span><span class="cx">       width: 100px;
</span><span class="cx">       margin: 10px;
</span><span class="cx">       background-color: blue;
</span><del>-      -webkit-transition-property: -webkit-transform;
-      -webkit-transition-duration: 0.5s;
-      -webkit-transform: translate(100px);
</del><ins>+      transition-property: ransform;
+      transition-duration: 0.5s;
+      transform: translate(100px);
</ins><span class="cx">     }
</span><span class="cx">   &lt;/style&gt;
</span><span class="cx">   &lt;script src=&quot;transition-end-event-helpers.js&quot;&gt;&lt;/script&gt;
</span><span class="lines">@@ -18,13 +18,13 @@
</span><span class="cx">     
</span><span class="cx">     var expectedEndEvents = [
</span><span class="cx">       // [property-name, element-id, elapsed-time, listen]
</span><del>-      [&quot;-webkit-transform&quot;, &quot;box1&quot;, 0.5, true]
</del><ins>+      [&quot;transform&quot;, &quot;box1&quot;, 0.5, true]
</ins><span class="cx">     ];
</span><span class="cx">     
</span><span class="cx">     function setupTest()
</span><span class="cx">     {
</span><span class="cx">       var box = document.getElementById('box1');
</span><del>-      box.style.webkitTransform = 'translate(200px)';
</del><ins>+      box.style.transform = 'translate(200px)';
</ins><span class="cx">     }
</span><span class="cx">     
</span><span class="cx">     runTransitionTest(expectedEndEvents, setupTest);
</span></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebCore/ChangeLog        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -1,3 +1,92 @@
</span><ins>+2015-03-21  Dean Jackson  &lt;dino@apple.com&gt;
+
+        Remove the prefix for CSS Transforms
+        https://bugs.webkit.org/show_bug.cgi?id=142927
+        &lt;rdar://problem/11568151&gt;
+
+        Reviewed by Simon Fraser.
+
+        Support the bare form of:
+        - transform
+        - transform-style
+        - transform-origin
+        - perspective
+        - perspective-origin
+
+        For transform-style, we also still differentiate the prefixed property
+        because we may want to use that as an indicator of legacy content.
+
+        This is mostly a find and replace, but with some related naming
+        changes. The DOM interface for WebKitCSSTransformValue remains
+        unchanged.
+
+        Tests: transforms/2d/transform-2d-prefixed.html
+               transforms/3d/general/prefixed-3dtransform-values.html
+
+        * bindings/js/JSCSSStyleDeclarationCustom.cpp:
+        (WebCore::propertyChangeMayRepaintNonDescendants):
+        * css/CSSComputedStyleDeclaration.cpp:
+        (WebCore::isLayoutDependent):
+        (WebCore::ComputedStyleExtractor::propertyValue):
+        * css/CSSParser.cpp:
+        (WebCore::isValidKeywordPropertyAndValue):
+        (WebCore::isKeywordPropertyID):
+        (WebCore::parseTranslateTransformValue):
+        (WebCore::CSSParser::parseValue):
+        (WebCore::CSSParser::parseTransformOrigin):
+        (WebCore::CSSParser::parsePerspectiveOrigin):
+        * css/CSSPropertyNames.in:
+        * css/StyleProperties.cpp:
+        (WebCore::StyleProperties::getPropertyValue):
+        (WebCore::StyleProperties::asText):
+        * css/WebKitCSSMatrix.cpp:
+        (WebCore::WebKitCSSMatrix::setMatrixValue):
+        * html/track/VTTCue.cpp:
+        (WebCore::VTTCueBox::applyCSSProperties):
+        * page/animation/AnimationController.cpp:
+        (WebCore::AnimationControllerPrivate::computeExtentOfAnimation):
+        * page/animation/CSSPropertyAnimation.cpp:
+        (WebCore::PropertyWrapperAcceleratedTransform::PropertyWrapperAcceleratedTransform):
+        (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
+        * page/animation/CompositeAnimation.cpp:
+        (WebCore::CompositeAnimation::computeExtentOfTransformAnimation):
+        * page/animation/ImplicitAnimation.cpp:
+        (WebCore::ImplicitAnimation::computeExtentOfTransformAnimation):
+        * page/animation/KeyframeAnimation.cpp:
+        (WebCore::KeyframeAnimation::computeExtentOfTransformAnimation):
+        (WebCore::KeyframeAnimation::validateTransformFunctionList):
+        * platform/graphics/GraphicsLayer.cpp:
+        (WebCore::GraphicsLayer::validateTransformOperations):
+        * platform/graphics/GraphicsLayerClient.h:
+        * platform/graphics/ca/GraphicsLayerCA.cpp:
+        (WebCore::propertyIdToString):
+        (WebCore::GraphicsLayerCA::moveOrCopyAnimations):
+        (WebCore::GraphicsLayerCA::addAnimation):
+        (WebCore::GraphicsLayerCA::isRunningTransformAnimation):
+        (WebCore::GraphicsLayerCA::createAnimationFromKeyframes):
+        (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes):
+        * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
+        (WebCore::GraphicsLayerTextureMapper::addAnimation):
+        * platform/graphics/texmap/TextureMapperAnimation.cpp:
+        (WebCore::TextureMapperAnimation::applyInternal):
+        * platform/graphics/texmap/TextureMapperLayer.cpp:
+        (WebCore::TextureMapperLayer::syncAnimations):
+        * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
+        (WebCore::CoordinatedGraphicsLayer::selfOrAncestorHasActiveTransformAnimation):
+        (WebCore::CoordinatedGraphicsLayer::selfOrAncestorHaveNonAffineTransforms):
+        (WebCore::CoordinatedGraphicsLayer::addAnimation):
+        * rendering/RenderLayerBacking.cpp:
+        (WebCore::RenderLayerBacking::updateGeometry):
+        (WebCore::RenderLayerBacking::startAnimation):
+        (WebCore::RenderLayerBacking::startTransition):
+        (WebCore::RenderLayerBacking::graphicsLayerToCSSProperty):
+        (WebCore::RenderLayerBacking::cssToGraphicsLayerProperty):
+        * rendering/RenderLayerCompositor.cpp:
+        (WebCore::RenderLayerCompositor::requiresCompositingForAnimation):
+        (WebCore::RenderLayerCompositor::isRunningTransformAnimation):
+        * svg/SVGElement.cpp:
+        (WebCore::populateAttributeNameToCSSPropertyIDMap):
+
</ins><span class="cx"> 2015-03-21  Commit Queue  &lt;commit-queue@webkit.org&gt;
</span><span class="cx"> 
</span><span class="cx">         Unreviewed, rolling out r181824.
</span></span></pre></div>
<a id="trunkSourceWebCorebindingsjsJSCSSStyleDeclarationCustomcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/bindings/js/JSCSSStyleDeclarationCustom.cpp (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/bindings/js/JSCSSStyleDeclarationCustom.cpp        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebCore/bindings/js/JSCSSStyleDeclarationCustom.cpp        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -330,7 +330,7 @@
</span><span class="cx">     case CSSPropertyOpacity:
</span><span class="cx">     case CSSPropertyRight:
</span><span class="cx">     case CSSPropertyTop:
</span><del>-    case CSSPropertyWebkitTransform:
</del><ins>+    case CSSPropertyTransform:
</ins><span class="cx">         return false;
</span><span class="cx">     default:
</span><span class="cx">         return true;
</span></span></pre></div>
<a id="trunkSourceWebCorecssCSSComputedStyleDeclarationcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -215,6 +215,9 @@
</span><span class="cx">     CSSPropertyTextOverflow,
</span><span class="cx">     CSSPropertyTextTransform,
</span><span class="cx">     CSSPropertyTop,
</span><ins>+    CSSPropertyTransform,
+    CSSPropertyTransformOrigin,
+    CSSPropertyTransformStyle,
</ins><span class="cx">     CSSPropertyTransitionDelay,
</span><span class="cx">     CSSPropertyTransitionDuration,
</span><span class="cx">     CSSPropertyTransitionProperty,
</span><span class="lines">@@ -362,8 +365,8 @@
</span><span class="cx"> #if ENABLE(ACCELERATED_OVERFLOW_SCROLLING)
</span><span class="cx">     CSSPropertyWebkitOverflowScrolling,
</span><span class="cx"> #endif
</span><del>-    CSSPropertyWebkitPerspective,
-    CSSPropertyWebkitPerspectiveOrigin,
</del><ins>+    CSSPropertyPerspective,
+    CSSPropertyPerspectiveOrigin,
</ins><span class="cx">     CSSPropertyWebkitPrintColorAdjust,
</span><span class="cx">     CSSPropertyWebkitRtlOrdering,
</span><span class="cx"> #if PLATFORM(IOS)
</span><span class="lines">@@ -388,8 +391,6 @@
</span><span class="cx"> #endif
</span><span class="cx">     CSSPropertyWebkitTextStrokeColor,
</span><span class="cx">     CSSPropertyWebkitTextStrokeWidth,
</span><del>-    CSSPropertyWebkitTransform,
-    CSSPropertyWebkitTransformOrigin,
</del><span class="cx">     CSSPropertyWebkitTransformStyle,
</span><span class="cx">     CSSPropertyWebkitTransitionDelay,
</span><span class="cx">     CSSPropertyWebkitTransitionDuration,
</span><span class="lines">@@ -1637,9 +1638,9 @@
</span><span class="cx">     case CSSPropertyWebkitGridTemplateColumns:
</span><span class="cx">     case CSSPropertyWebkitGridTemplateRows:
</span><span class="cx"> #endif
</span><del>-    case CSSPropertyWebkitPerspectiveOrigin:
-    case CSSPropertyWebkitTransformOrigin:
-    case CSSPropertyWebkitTransform:
</del><ins>+    case CSSPropertyPerspectiveOrigin:
+    case CSSPropertyTransformOrigin:
+    case CSSPropertyTransform:
</ins><span class="cx">     case CSSPropertyWebkitFilter:
</span><span class="cx"> #if ENABLE(FILTERS_LEVEL_2)
</span><span class="cx">     case CSSPropertyWebkitBackdropFilter:
</span><span class="lines">@@ -2818,11 +2819,11 @@
</span><span class="cx">                 return cssValuePool().createIdentifierValue(CSSValueAuto);
</span><span class="cx">             return cssValuePool().createIdentifierValue(CSSValueTouch);
</span><span class="cx"> #endif
</span><del>-        case CSSPropertyWebkitPerspective:
</del><ins>+        case CSSPropertyPerspective:
</ins><span class="cx">             if (!style-&gt;hasPerspective())
</span><span class="cx">                 return cssValuePool().createIdentifierValue(CSSValueNone);
</span><span class="cx">             return zoomAdjustedPixelValue(style-&gt;perspective(), style.get());
</span><del>-        case CSSPropertyWebkitPerspectiveOrigin: {
</del><ins>+        case CSSPropertyPerspectiveOrigin: {
</ins><span class="cx">             RefPtr&lt;CSSValueList&gt; list = CSSValueList::createSpaceSeparated();
</span><span class="cx">             if (renderer) {
</span><span class="cx">                 LayoutRect box;
</span><span class="lines">@@ -2873,9 +2874,9 @@
</span><span class="cx">         }
</span><span class="cx">         case CSSPropertySpeak:
</span><span class="cx">             return cssValuePool().createValue(style-&gt;speak());
</span><del>-        case CSSPropertyWebkitTransform:
</del><ins>+        case CSSPropertyTransform:
</ins><span class="cx">             return computedTransform(renderer, style.get());
</span><del>-        case CSSPropertyWebkitTransformOrigin: {
</del><ins>+        case CSSPropertyTransformOrigin: {
</ins><span class="cx">             RefPtr&lt;CSSValueList&gt; list = CSSValueList::createSpaceSeparated();
</span><span class="cx">             if (renderer) {
</span><span class="cx">                 LayoutRect box;
</span><span class="lines">@@ -2894,6 +2895,7 @@
</span><span class="cx">             }
</span><span class="cx">             return list.release();
</span><span class="cx">         }
</span><ins>+        case CSSPropertyTransformStyle:
</ins><span class="cx">         case CSSPropertyWebkitTransformStyle:
</span><span class="cx">             return cssValuePool().createIdentifierValue((style-&gt;transformStyle3D() == TransformStyle3DPreserve3D) ? CSSValuePreserve3d : CSSValueFlat);
</span><span class="cx">         case CSSPropertyTransitionDelay:
</span><span class="lines">@@ -3185,12 +3187,12 @@
</span><span class="cx">         case CSSPropertyWebkitMask:
</span><span class="cx">         case CSSPropertyWebkitMaskRepeatX:
</span><span class="cx">         case CSSPropertyWebkitMaskRepeatY:
</span><del>-        case CSSPropertyWebkitPerspectiveOriginX:
-        case CSSPropertyWebkitPerspectiveOriginY:
</del><ins>+        case CSSPropertyPerspectiveOriginX:
+        case CSSPropertyPerspectiveOriginY:
</ins><span class="cx">         case CSSPropertyWebkitTextStroke:
</span><del>-        case CSSPropertyWebkitTransformOriginX:
-        case CSSPropertyWebkitTransformOriginY:
-        case CSSPropertyWebkitTransformOriginZ:
</del><ins>+        case CSSPropertyTransformOriginX:
+        case CSSPropertyTransformOriginY:
+        case CSSPropertyTransformOriginZ:
</ins><span class="cx">             break;
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(CSS_DEVICE_ADAPTATION)
</span></span></pre></div>
<a id="trunkSourceWebCorecssCSSParsercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/CSSParser.cpp (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/CSSParser.cpp        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebCore/css/CSSParser.cpp        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -1014,6 +1014,7 @@
</span><span class="cx">             return true;
</span><span class="cx">         break;
</span><span class="cx"> #endif
</span><ins>+    case CSSPropertyTransformStyle:
</ins><span class="cx">     case CSSPropertyWebkitTransformStyle:
</span><span class="cx">         if (valueID == CSSValueFlat || valueID == CSSValuePreserve3d)
</span><span class="cx">             return true;
</span><span class="lines">@@ -1172,6 +1173,7 @@
</span><span class="cx">     case CSSPropertyWebkitTextJustify:
</span><span class="cx"> #endif // CSS3_TEXT
</span><span class="cx">     case CSSPropertyWebkitTextSecurity:
</span><ins>+    case CSSPropertyTransformStyle:
</ins><span class="cx">     case CSSPropertyWebkitTransformStyle:
</span><span class="cx">     case CSSPropertyWebkitUserDrag:
</span><span class="cx">     case CSSPropertyWebkitUserModify:
</span><span class="lines">@@ -1251,7 +1253,7 @@
</span><span class="cx"> 
</span><span class="cx"> static bool parseTranslateTransformValue(MutableStyleProperties* properties, CSSPropertyID propertyID, const String&amp; string, bool important)
</span><span class="cx"> {
</span><del>-    if (propertyID != CSSPropertyWebkitTransform)
</del><ins>+    if (propertyID != CSSPropertyTransform)
</ins><span class="cx">         return false;
</span><span class="cx">     static const unsigned shortestValidTransformStringLength = 12;
</span><span class="cx">     static const unsigned likelyMultipartTransformStringLengthCutoff = 32;
</span><span class="lines">@@ -1292,7 +1294,7 @@
</span><span class="cx">         return false;
</span><span class="cx">     RefPtr&lt;CSSValueList&gt; result = CSSValueList::createSpaceSeparated();
</span><span class="cx">     result-&gt;append(transformValue.releaseNonNull());
</span><del>-    properties-&gt;addParsedProperty(CSSProperty(CSSPropertyWebkitTransform, result.release(), important));
</del><ins>+    properties-&gt;addParsedProperty(CSSProperty(CSSPropertyTransform, result.release(), important));
</ins><span class="cx">     return true;
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -2615,7 +2617,7 @@
</span><span class="cx">             return false;
</span><span class="cx">         return parseRegionThread(propId, important);
</span><span class="cx"> #endif
</span><del>-    case CSSPropertyWebkitTransform:
</del><ins>+    case CSSPropertyTransform:
</ins><span class="cx">         if (id == CSSValueNone)
</span><span class="cx">             validPrimitive = true;
</span><span class="cx">         else {
</span><span class="lines">@@ -2627,10 +2629,10 @@
</span><span class="cx">             return false;
</span><span class="cx">         }
</span><span class="cx">         break;
</span><del>-    case CSSPropertyWebkitTransformOrigin:
-    case CSSPropertyWebkitTransformOriginX:
-    case CSSPropertyWebkitTransformOriginY:
-    case CSSPropertyWebkitTransformOriginZ: {
</del><ins>+    case CSSPropertyTransformOrigin:
+    case CSSPropertyTransformOriginX:
+    case CSSPropertyTransformOriginY:
+    case CSSPropertyTransformOriginZ: {
</ins><span class="cx">         RefPtr&lt;CSSValue&gt; val1;
</span><span class="cx">         RefPtr&lt;CSSValue&gt; val2;
</span><span class="cx">         RefPtr&lt;CSSValue&gt; val3;
</span><span class="lines">@@ -2645,7 +2647,7 @@
</span><span class="cx">         }
</span><span class="cx">         return false;
</span><span class="cx">     }
</span><del>-    case CSSPropertyWebkitPerspective:
</del><ins>+    case CSSPropertyPerspective:
</ins><span class="cx">         if (id == CSSValueNone)
</span><span class="cx">             validPrimitive = true;
</span><span class="cx">         else {
</span><span class="lines">@@ -2660,9 +2662,9 @@
</span><span class="cx">             }
</span><span class="cx">         }
</span><span class="cx">         break;
</span><del>-    case CSSPropertyWebkitPerspectiveOrigin:
-    case CSSPropertyWebkitPerspectiveOriginX:
-    case CSSPropertyWebkitPerspectiveOriginY: {
</del><ins>+    case CSSPropertyPerspectiveOrigin:
+    case CSSPropertyPerspectiveOriginX:
+    case CSSPropertyPerspectiveOriginY: {
</ins><span class="cx">         RefPtr&lt;CSSValue&gt; val1;
</span><span class="cx">         RefPtr&lt;CSSValue&gt; val2;
</span><span class="cx">         CSSPropertyID propId1, propId2;
</span><span class="lines">@@ -3149,6 +3151,7 @@
</span><span class="cx">     case CSSPropertyWebkitTextJustify:
</span><span class="cx"> #endif // CSS3_TEXT
</span><span class="cx">     case CSSPropertyWebkitTextSecurity:
</span><ins>+    case CSSPropertyTransformStyle:
</ins><span class="cx">     case CSSPropertyWebkitTransformStyle:
</span><span class="cx">     case CSSPropertyWebkitUserDrag:
</span><span class="cx">     case CSSPropertyWebkitUserModify:
</span><span class="lines">@@ -9775,42 +9778,42 @@
</span><span class="cx">     propId1 = propId;
</span><span class="cx">     propId2 = propId;
</span><span class="cx">     propId3 = propId;
</span><del>-    if (propId == CSSPropertyWebkitTransformOrigin) {
-        propId1 = CSSPropertyWebkitTransformOriginX;
-        propId2 = CSSPropertyWebkitTransformOriginY;
-        propId3 = CSSPropertyWebkitTransformOriginZ;
</del><ins>+    if (propId == CSSPropertyTransformOrigin) {
+        propId1 = CSSPropertyTransformOriginX;
+        propId2 = CSSPropertyTransformOriginY;
+        propId3 = CSSPropertyTransformOriginZ;
</ins><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     switch (propId) {
</span><del>-        case CSSPropertyWebkitTransformOrigin:
-            if (!parseTransformOriginShorthand(value, value2, value3))
-                return false;
-            // parseTransformOriginShorthand advances the m_valueList pointer
-            break;
-        case CSSPropertyWebkitTransformOriginX: {
-            value = parsePositionX(*m_valueList);
-            if (value)
-                m_valueList-&gt;next();
-            break;
-        }
-        case CSSPropertyWebkitTransformOriginY: {
-            value = parsePositionY(*m_valueList);
-            if (value)
-                m_valueList-&gt;next();
-            break;
-        }
-        case CSSPropertyWebkitTransformOriginZ: {
-            ValueWithCalculation valueWithCalculation(*m_valueList-&gt;current());
-            if (validateUnit(valueWithCalculation, FLength))
-                value = createPrimitiveNumericValue(valueWithCalculation);
-            if (value)
-                m_valueList-&gt;next();
-            break;
-        }
-        default:
-            ASSERT_NOT_REACHED();
</del><ins>+    case CSSPropertyTransformOrigin:
+        if (!parseTransformOriginShorthand(value, value2, value3))
</ins><span class="cx">             return false;
</span><ins>+        // parseTransformOriginShorthand advances the m_valueList pointer
+        break;
+    case CSSPropertyTransformOriginX: {
+        value = parsePositionX(*m_valueList);
+        if (value)
+            m_valueList-&gt;next();
+        break;
</ins><span class="cx">     }
</span><ins>+    case CSSPropertyTransformOriginY: {
+        value = parsePositionY(*m_valueList);
+        if (value)
+            m_valueList-&gt;next();
+        break;
+    }
+    case CSSPropertyTransformOriginZ: {
+        ValueWithCalculation valueWithCalculation(*m_valueList-&gt;current());
+        if (validateUnit(valueWithCalculation, FLength))
+            value = createPrimitiveNumericValue(valueWithCalculation);
+        if (value)
+            m_valueList-&gt;next();
+        break;
+    }
+    default:
+        ASSERT_NOT_REACHED();
+        return false;
+    }
</ins><span class="cx"> 
</span><span class="cx">     return value;
</span><span class="cx"> }
</span><span class="lines">@@ -9819,33 +9822,33 @@
</span><span class="cx"> {
</span><span class="cx">     propId1 = propId;
</span><span class="cx">     propId2 = propId;
</span><del>-    if (propId == CSSPropertyWebkitPerspectiveOrigin) {
-        propId1 = CSSPropertyWebkitPerspectiveOriginX;
-        propId2 = CSSPropertyWebkitPerspectiveOriginY;
</del><ins>+    if (propId == CSSPropertyPerspectiveOrigin) {
+        propId1 = CSSPropertyPerspectiveOriginX;
+        propId2 = CSSPropertyPerspectiveOriginY;
</ins><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     switch (propId) {
</span><del>-        case CSSPropertyWebkitPerspectiveOrigin:
-            if (m_valueList-&gt;size() &gt; 2)
-                return false;
-            parse2ValuesFillPosition(*m_valueList, value, value2);
-            break;
-        case CSSPropertyWebkitPerspectiveOriginX: {
-            value = parsePositionX(*m_valueList);
-            if (value)
-                m_valueList-&gt;next();
-            break;
-        }
-        case CSSPropertyWebkitPerspectiveOriginY: {
-            value = parsePositionY(*m_valueList);
-            if (value)
-                m_valueList-&gt;next();
-            break;
-        }
-        default:
-            ASSERT_NOT_REACHED();
</del><ins>+    case CSSPropertyPerspectiveOrigin:
+        if (m_valueList-&gt;size() &gt; 2)
</ins><span class="cx">             return false;
</span><ins>+        parse2ValuesFillPosition(*m_valueList, value, value2);
+        break;
+    case CSSPropertyPerspectiveOriginX: {
+        value = parsePositionX(*m_valueList);
+        if (value)
+            m_valueList-&gt;next();
+        break;
</ins><span class="cx">     }
</span><ins>+    case CSSPropertyPerspectiveOriginY: {
+        value = parsePositionY(*m_valueList);
+        if (value)
+            m_valueList-&gt;next();
+        break;
+    }
+    default:
+        ASSERT_NOT_REACHED();
+        return false;
+    }
</ins><span class="cx"> 
</span><span class="cx">     return value;
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorecssCSSPropertyNamesin"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/CSSPropertyNames.in (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/CSSPropertyNames.in        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebCore/css/CSSPropertyNames.in        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -556,10 +556,14 @@
</span><span class="cx"> -webkit-padding-before [SkipBuilder]
</span><span class="cx"> -webkit-padding-end [SkipBuilder]
</span><span class="cx"> -webkit-padding-start [SkipBuilder]
</span><del>--webkit-perspective [ConditionalConverter=Perspective]
--webkit-perspective-origin [Longhands=-webkit-perspective-origin-x|-webkit-perspective-origin-y]
--webkit-perspective-origin-x [Converter=Length]
--webkit-perspective-origin-y [Converter=Length]
</del><ins>+perspective [ConditionalConverter=Perspective]
+-webkit-perspective = perspective
+perspective-origin [Longhands=perspective-origin-x|perspective-origin-y]
+-webkit-perspective-origin = perspective-origin
+perspective-origin-x [Converter=Length]
+-webkit-perspective-origin-x = perspective-origin-x
+perspective-origin-y [Converter=Length]
+-webkit-perspective-origin-y = perspective-origin-y
</ins><span class="cx"> -webkit-print-color-adjust [Inherited]
</span><span class="cx"> -webkit-rtl-ordering [Inherited, Setter=setRTLOrdering, Initial=initialRTLOrdering]
</span><span class="cx"> #if defined(ENABLE_CSS_SCROLL_SNAP)
</span><span class="lines">@@ -599,11 +603,18 @@
</span><span class="cx"> -webkit-text-stroke [Inherited, Longhands=-webkit-text-stroke-width|-webkit-text-stroke-color]
</span><span class="cx"> -webkit-text-stroke-color [Inherited, VisitedLinkColorSupport, Initial=invalidColor]
</span><span class="cx"> -webkit-text-stroke-width [Inherited, Converter=TextStrokeWidth]
</span><del>--webkit-transform [Converter=Transform]
--webkit-transform-origin [Longhands=-webkit-transform-origin-x|-webkit-transform-origin-y|-webkit-transform-origin-z]
--webkit-transform-origin-x [Converter=Length]
--webkit-transform-origin-y [Converter=Length]
--webkit-transform-origin-z [Converter=ComputedLength&lt;float&gt;]
</del><ins>+transform [Converter=Transform]
+-webkit-transform = transform
+transform-origin [Longhands=transform-origin-x|transform-origin-y|transform-origin-z]
+-webkit-transform-origin = transform-origin
+transform-origin-x [Converter=Length]
+-webkit-transform-origin-x = transform-origin-x
+transform-origin-y [Converter=Length]
+-webkit-transform-origin-y = transform-origin-y
+transform-origin-z [Converter=ComputedLength&lt;float&gt;]
+-webkit-transform-origin-z = transform-origin-z
+transform-style [NameForMethods=TransformStyle3D]
+// Keeping -webkit-transform-style around is how we'll detect legacy content. At that point we'll have to add a custom builder and a new ETransformStyle3D type.
</ins><span class="cx"> -webkit-transform-style [NameForMethods=TransformStyle3D]
</span><span class="cx"> -webkit-transition [Longhands=-webkit-transition-property|-webkit-transition-duration|-webkit-transition-timing-function|-webkit-transition-delay]
</span><span class="cx"> -webkit-transition-delay [AnimationProperty, NameForMethods=Delay]
</span></span></pre></div>
<a id="trunkSourceWebCorecssStylePropertiescpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/StyleProperties.cpp (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/StyleProperties.cpp        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebCore/css/StyleProperties.cpp        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -199,10 +199,10 @@
</span><span class="cx">         return getShorthandValue(webkitTextEmphasisShorthand());
</span><span class="cx">     case CSSPropertyWebkitTextStroke:
</span><span class="cx">         return getShorthandValue(webkitTextStrokeShorthand());
</span><del>-    case CSSPropertyWebkitPerspectiveOrigin:
-        return getShorthandValue(webkitPerspectiveOriginShorthand());
-    case CSSPropertyWebkitTransformOrigin:
-        return getShorthandValue(webkitTransformOriginShorthand());
</del><ins>+    case CSSPropertyPerspectiveOrigin:
+        return getShorthandValue(perspectiveOriginShorthand());
+    case CSSPropertyTransformOrigin:
+        return getShorthandValue(transformOriginShorthand());
</ins><span class="cx">     case CSSPropertyWebkitTransition:
</span><span class="cx">         return getLayeredShorthandValue(webkitTransitionShorthand());
</span><span class="cx">     case CSSPropertyWebkitAnimation:
</span><span class="lines">@@ -928,14 +928,14 @@
</span><span class="cx">         case CSSPropertyWebkitMaskOrigin:
</span><span class="cx">             shorthandPropertyID = CSSPropertyWebkitMask;
</span><span class="cx">             break;
</span><del>-        case CSSPropertyWebkitPerspectiveOriginX:
-        case CSSPropertyWebkitPerspectiveOriginY:
-            shorthandPropertyID = CSSPropertyWebkitPerspectiveOrigin;
</del><ins>+        case CSSPropertyPerspectiveOriginX:
+        case CSSPropertyPerspectiveOriginY:
+            shorthandPropertyID = CSSPropertyPerspectiveOrigin;
</ins><span class="cx">             break;
</span><del>-        case CSSPropertyWebkitTransformOriginX:
-        case CSSPropertyWebkitTransformOriginY:
-        case CSSPropertyWebkitTransformOriginZ:
-            shorthandPropertyID = CSSPropertyWebkitTransformOrigin;
</del><ins>+        case CSSPropertyTransformOriginX:
+        case CSSPropertyTransformOriginY:
+        case CSSPropertyTransformOriginZ:
+            shorthandPropertyID = CSSPropertyTransformOrigin;
</ins><span class="cx">             break;
</span><span class="cx">         case CSSPropertyWebkitTransitionProperty:
</span><span class="cx">         case CSSPropertyWebkitTransitionDuration:
</span></span></pre></div>
<a id="trunkSourceWebCorecssWebKitCSSMatrixcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/WebKitCSSMatrix.cpp (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/WebKitCSSMatrix.cpp        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebCore/css/WebKitCSSMatrix.cpp        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -57,10 +57,10 @@
</span><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx">     RefPtr&lt;MutableStyleProperties&gt; styleDeclaration = MutableStyleProperties::create();
</span><del>-    if (CSSParser::parseValue(styleDeclaration.get(), CSSPropertyWebkitTransform, string, true, CSSStrictMode, 0)) {
</del><ins>+    if (CSSParser::parseValue(styleDeclaration.get(), CSSPropertyTransform, string, true, CSSStrictMode, 0)) {
</ins><span class="cx">         // Convert to TransformOperations. This can fail if a property
</span><span class="cx">         // requires style (i.e., param uses 'ems' or 'exs')
</span><del>-        RefPtr&lt;CSSValue&gt; value = styleDeclaration-&gt;getPropertyCSSValue(CSSPropertyWebkitTransform);
</del><ins>+        RefPtr&lt;CSSValue&gt; value = styleDeclaration-&gt;getPropertyCSSValue(CSSPropertyTransform);
</ins><span class="cx"> 
</span><span class="cx">         // Check for a &quot;none&quot; or empty transform. In these cases we can use the default identity matrix.
</span><span class="cx">         if (!value || (is&lt;CSSPrimitiveValue&gt;(*value) &amp;&amp; downcast&lt;CSSPrimitiveValue&gt;(*value).getValueID() == CSSValueNone))
</span></span></pre></div>
<a id="trunkSourceWebCorehtmltrackVTTCuecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/track/VTTCue.cpp (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/track/VTTCue.cpp        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebCore/html/track/VTTCue.cpp        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -221,7 +221,7 @@
</span><span class="cx">         // of the way across the height of the video's rendering area, while
</span><span class="cx">         // maintaining the relative positions of the boxes in boxes to each
</span><span class="cx">         // other.
</span><del>-        setInlineStyleProperty(CSSPropertyWebkitTransform,
</del><ins>+        setInlineStyleProperty(CSSPropertyTransform,
</ins><span class="cx">             String::format(&quot;translate(-%.2f%%, -%.2f%%)&quot;, position.first, position.second));
</span><span class="cx"> 
</span><span class="cx">         setInlineStyleProperty(CSSPropertyWhiteSpace, CSSValuePre);
</span></span></pre></div>
<a id="trunkSourceWebCorepageanimationAnimationControllercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/animation/AnimationController.cpp (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/animation/AnimationController.cpp        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebCore/page/animation/AnimationController.cpp        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -425,7 +425,7 @@
</span><span class="cx">     ASSERT(m_compositeAnimations.contains(&amp;renderer));
</span><span class="cx"> 
</span><span class="cx">     const CompositeAnimation&amp; rendererAnimations = *m_compositeAnimations.get(&amp;renderer);
</span><del>-    if (!rendererAnimations.isAnimatingProperty(CSSPropertyWebkitTransform, false, AnimationBase::Running | AnimationBase::Paused))
</del><ins>+    if (!rendererAnimations.isAnimatingProperty(CSSPropertyTransform, false, AnimationBase::Running | AnimationBase::Paused))
</ins><span class="cx">         return true;
</span><span class="cx"> 
</span><span class="cx">     return rendererAnimations.computeExtentOfTransformAnimation(bounds);
</span></span></pre></div>
<a id="trunkSourceWebCorepageanimationCSSPropertyAnimationcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/animation/CSSPropertyAnimation.cpp (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/animation/CSSPropertyAnimation.cpp        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebCore/page/animation/CSSPropertyAnimation.cpp        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -577,7 +577,7 @@
</span><span class="cx"> class PropertyWrapperAcceleratedTransform : public PropertyWrapper&lt;const TransformOperations&amp;&gt; {
</span><span class="cx"> public:
</span><span class="cx">     PropertyWrapperAcceleratedTransform()
</span><del>-        : PropertyWrapper&lt;const TransformOperations&amp;&gt;(CSSPropertyWebkitTransform, &amp;RenderStyle::transform, &amp;RenderStyle::setTransform)
</del><ins>+        : PropertyWrapper&lt;const TransformOperations&amp;&gt;(CSSPropertyTransform, &amp;RenderStyle::transform, &amp;RenderStyle::setTransform)
</ins><span class="cx">     {
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="lines">@@ -1237,12 +1237,12 @@
</span><span class="cx">         new LengthPropertyWrapper&lt;Length&gt;(CSSPropertyWordSpacing, &amp;RenderStyle::wordSpacing, &amp;RenderStyle::setWordSpacing),
</span><span class="cx">         new LengthPropertyWrapper&lt;Length&gt;(CSSPropertyTextIndent, &amp;RenderStyle::textIndent, &amp;RenderStyle::setTextIndent),
</span><span class="cx"> 
</span><del>-        new PropertyWrapper&lt;float&gt;(CSSPropertyWebkitPerspective, &amp;RenderStyle::perspective, &amp;RenderStyle::setPerspective),
-        new LengthPropertyWrapper&lt;Length&gt;(CSSPropertyWebkitPerspectiveOriginX, &amp;RenderStyle::perspectiveOriginX, &amp;RenderStyle::setPerspectiveOriginX),
-        new LengthPropertyWrapper&lt;Length&gt;(CSSPropertyWebkitPerspectiveOriginY, &amp;RenderStyle::perspectiveOriginY, &amp;RenderStyle::setPerspectiveOriginY),
-        new LengthPropertyWrapper&lt;Length&gt;(CSSPropertyWebkitTransformOriginX, &amp;RenderStyle::transformOriginX, &amp;RenderStyle::setTransformOriginX),
-        new LengthPropertyWrapper&lt;Length&gt;(CSSPropertyWebkitTransformOriginY, &amp;RenderStyle::transformOriginY, &amp;RenderStyle::setTransformOriginY),
-        new PropertyWrapper&lt;float&gt;(CSSPropertyWebkitTransformOriginZ, &amp;RenderStyle::transformOriginZ, &amp;RenderStyle::setTransformOriginZ),
</del><ins>+        new PropertyWrapper&lt;float&gt;(CSSPropertyPerspective, &amp;RenderStyle::perspective, &amp;RenderStyle::setPerspective),
+        new LengthPropertyWrapper&lt;Length&gt;(CSSPropertyPerspectiveOriginX, &amp;RenderStyle::perspectiveOriginX, &amp;RenderStyle::setPerspectiveOriginX),
+        new LengthPropertyWrapper&lt;Length&gt;(CSSPropertyPerspectiveOriginY, &amp;RenderStyle::perspectiveOriginY, &amp;RenderStyle::setPerspectiveOriginY),
+        new LengthPropertyWrapper&lt;Length&gt;(CSSPropertyTransformOriginX, &amp;RenderStyle::transformOriginX, &amp;RenderStyle::setTransformOriginX),
+        new LengthPropertyWrapper&lt;Length&gt;(CSSPropertyTransformOriginY, &amp;RenderStyle::transformOriginY, &amp;RenderStyle::setTransformOriginY),
+        new PropertyWrapper&lt;float&gt;(CSSPropertyTransformOriginZ, &amp;RenderStyle::transformOriginZ, &amp;RenderStyle::setTransformOriginZ),
</ins><span class="cx">         new LengthPropertyWrapper&lt;LengthSize&gt;(CSSPropertyBorderTopLeftRadius, &amp;RenderStyle::borderTopLeftRadius, &amp;RenderStyle::setBorderTopLeftRadius),
</span><span class="cx">         new LengthPropertyWrapper&lt;LengthSize&gt;(CSSPropertyBorderTopRightRadius, &amp;RenderStyle::borderTopRightRadius, &amp;RenderStyle::setBorderTopRightRadius),
</span><span class="cx">         new LengthPropertyWrapper&lt;LengthSize&gt;(CSSPropertyBorderBottomLeftRadius, &amp;RenderStyle::borderBottomLeftRadius, &amp;RenderStyle::setBorderBottomLeftRadius),
</span><span class="lines">@@ -1327,7 +1327,7 @@
</span><span class="cx">         CSSPropertyWebkitTextStroke,
</span><span class="cx">         CSSPropertyColumnRule,
</span><span class="cx">         CSSPropertyWebkitBorderRadius,
</span><del>-        CSSPropertyWebkitTransformOrigin
</del><ins>+        CSSPropertyTransformOrigin
</ins><span class="cx">     };
</span><span class="cx">     const unsigned animatableShorthandPropertiesCount = WTF_ARRAY_LENGTH(animatableShorthandProperties);
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCorepageanimationCompositeAnimationcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/animation/CompositeAnimation.cpp (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/animation/CompositeAnimation.cpp        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebCore/page/animation/CompositeAnimation.cpp        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -424,7 +424,7 @@
</span><span class="cx">     
</span><span class="cx">     for (auto&amp; it : m_keyframeAnimations) {
</span><span class="cx">         if (KeyframeAnimation* anim = it.value.get()) {
</span><del>-            if (!anim-&gt;hasAnimationForProperty(CSSPropertyWebkitTransform))
</del><ins>+            if (!anim-&gt;hasAnimationForProperty(CSSPropertyTransform))
</ins><span class="cx">                 continue;
</span><span class="cx"> 
</span><span class="cx">             if (seenTransformAnimation)
</span><span class="lines">@@ -439,7 +439,7 @@
</span><span class="cx"> 
</span><span class="cx">     for (auto&amp; it : m_transitions) {
</span><span class="cx">         if (ImplicitAnimation* anim = it.value.get()) {
</span><del>-            if (anim-&gt;animatingProperty() != CSSPropertyWebkitTransform || !anim-&gt;hasStyle())
</del><ins>+            if (anim-&gt;animatingProperty() != CSSPropertyTransform || !anim-&gt;hasStyle())
</ins><span class="cx">                 continue;
</span><span class="cx"> 
</span><span class="cx">             if (seenTransformAnimation)
</span></span></pre></div>
<a id="trunkSourceWebCorepageanimationImplicitAnimationcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/animation/ImplicitAnimation.cpp (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/animation/ImplicitAnimation.cpp        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebCore/page/animation/ImplicitAnimation.cpp        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -107,7 +107,7 @@
</span><span class="cx">     if (!is&lt;RenderBox&gt;(m_object))
</span><span class="cx">         return true; // Non-boxes don't get transformed;
</span><span class="cx"> 
</span><del>-    ASSERT(m_animatingProperty == CSSPropertyWebkitTransform);
</del><ins>+    ASSERT(m_animatingProperty == CSSPropertyTransform);
</ins><span class="cx"> 
</span><span class="cx">     RenderBox&amp; box = downcast&lt;RenderBox&gt;(*m_object);
</span><span class="cx">     FloatRect rendererBox = snapRectToDevicePixels(box.borderBoxRect(), box.document().deviceScaleFactor());
</span></span></pre></div>
<a id="trunkSourceWebCorepageanimationKeyframeAnimationcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/animation/KeyframeAnimation.cpp (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/animation/KeyframeAnimation.cpp        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebCore/page/animation/KeyframeAnimation.cpp        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -201,7 +201,7 @@
</span><span class="cx"> 
</span><span class="cx"> bool KeyframeAnimation::computeExtentOfTransformAnimation(LayoutRect&amp; bounds) const
</span><span class="cx"> {
</span><del>-    ASSERT(m_keyframes.containsProperty(CSSPropertyWebkitTransform));
</del><ins>+    ASSERT(m_keyframes.containsProperty(CSSPropertyTransform));
</ins><span class="cx"> 
</span><span class="cx">     if (!is&lt;RenderBox&gt;(m_object))
</span><span class="cx">         return true; // Non-boxes don't get transformed;
</span><span class="lines">@@ -215,7 +215,7 @@
</span><span class="cx">     for (size_t i = 0; i &lt; numKeyframes; ++i) {
</span><span class="cx">         const KeyframeValue&amp; currKeyFrame = m_keyframes[i];
</span><span class="cx"> 
</span><del>-        if (!currKeyFrame.containsProperty(CSSPropertyWebkitTransform))
</del><ins>+        if (!currKeyFrame.containsProperty(CSSPropertyTransform))
</ins><span class="cx">             continue;
</span><span class="cx"> 
</span><span class="cx">         LayoutRect keyframeBounds = bounds;
</span><span class="lines">@@ -359,7 +359,7 @@
</span><span class="cx"> {
</span><span class="cx">     m_transformFunctionListValid = false;
</span><span class="cx">     
</span><del>-    if (m_keyframes.size() &lt; 2 || !m_keyframes.containsProperty(CSSPropertyWebkitTransform))
</del><ins>+    if (m_keyframes.size() &lt; 2 || !m_keyframes.containsProperty(CSSPropertyTransform))
</ins><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx">     // Empty transforms match anything, so find the first non-empty entry as the reference
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsGraphicsLayercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/GraphicsLayer.cpp (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/GraphicsLayer.cpp        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebCore/platform/graphics/GraphicsLayer.cpp        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -551,7 +551,7 @@
</span><span class="cx"> 
</span><span class="cx"> int GraphicsLayer::validateTransformOperations(const KeyframeValueList&amp; valueList, bool&amp; hasBigRotation)
</span><span class="cx"> {
</span><del>-    ASSERT(valueList.property() == AnimatedPropertyWebkitTransform);
</del><ins>+    ASSERT(valueList.property() == AnimatedPropertyTransform);
</ins><span class="cx"> 
</span><span class="cx">     hasBigRotation = false;
</span><span class="cx">     
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsGraphicsLayerClienth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/GraphicsLayerClient.h (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/GraphicsLayerClient.h        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebCore/platform/graphics/GraphicsLayerClient.h        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -52,7 +52,7 @@
</span><span class="cx"> 
</span><span class="cx"> enum AnimatedPropertyID {
</span><span class="cx">     AnimatedPropertyInvalid,
</span><del>-    AnimatedPropertyWebkitTransform,
</del><ins>+    AnimatedPropertyTransform,
</ins><span class="cx">     AnimatedPropertyOpacity,
</span><span class="cx">     AnimatedPropertyBackgroundColor,
</span><span class="cx">     AnimatedPropertyWebkitFilter
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicscaGraphicsLayerCAcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -232,7 +232,7 @@
</span><span class="cx"> static String propertyIdToString(AnimatedPropertyID property)
</span><span class="cx"> {
</span><span class="cx">     switch (property) {
</span><del>-    case AnimatedPropertyWebkitTransform:
</del><ins>+    case AnimatedPropertyTransform:
</ins><span class="cx">         return &quot;transform&quot;;
</span><span class="cx">     case AnimatedPropertyOpacity:
</span><span class="cx">         return &quot;opacity&quot;;
</span><span class="lines">@@ -609,10 +609,10 @@
</span><span class="cx">         for (size_t i = 0; i &lt; numAnimations; ++i) {
</span><span class="cx">             const LayerPropertyAnimation&amp; currAnimation = propertyAnimations[i];
</span><span class="cx"> 
</span><del>-            if (currAnimation.m_property == AnimatedPropertyWebkitTransform || currAnimation.m_property == AnimatedPropertyOpacity
-                    || currAnimation.m_property == AnimatedPropertyBackgroundColor
-                    || currAnimation.m_property == AnimatedPropertyWebkitFilter
-                )
</del><ins>+            if (currAnimation.m_property == AnimatedPropertyTransform
+                || currAnimation.m_property == AnimatedPropertyOpacity
+                || currAnimation.m_property == AnimatedPropertyBackgroundColor
+                || currAnimation.m_property == AnimatedPropertyWebkitFilter)
</ins><span class="cx">                 moveOrCopyLayerAnimation(operation, animationIdentifier(currAnimation.m_name, currAnimation.m_property, currAnimation.m_index, currAnimation.m_subIndex), fromLayer, toLayer);
</span><span class="cx">         }
</span><span class="cx">     }
</span><span class="lines">@@ -884,7 +884,7 @@
</span><span class="cx">         return false;
</span><span class="cx"> 
</span><span class="cx">     bool createdAnimations = false;
</span><del>-    if (valueList.property() == AnimatedPropertyWebkitTransform)
</del><ins>+    if (valueList.property() == AnimatedPropertyTransform)
</ins><span class="cx">         createdAnimations = createTransformAnimationsFromKeyframes(valueList, anim, animationName, timeOffset, boxSize);
</span><span class="cx">     else if (valueList.property() == AnimatedPropertyWebkitFilter) {
</span><span class="cx">         if (supportsAcceleratedFilterAnimations())
</span><span class="lines">@@ -2407,7 +2407,7 @@
</span><span class="cx">         size_t numAnimations = propertyAnimations.size();
</span><span class="cx">         for (size_t i = 0; i &lt; numAnimations; ++i) {
</span><span class="cx">             const LayerPropertyAnimation&amp; currAnimation = propertyAnimations[i];
</span><del>-            if (currAnimation.m_property == AnimatedPropertyWebkitTransform)
</del><ins>+            if (currAnimation.m_property == AnimatedPropertyTransform)
</ins><span class="cx">                 return true;
</span><span class="cx">         }
</span><span class="cx">     }
</span><span class="lines">@@ -2531,7 +2531,7 @@
</span><span class="cx"> 
</span><span class="cx"> bool GraphicsLayerCA::createAnimationFromKeyframes(const KeyframeValueList&amp; valueList, const Animation* animation, const String&amp; animationName, double timeOffset)
</span><span class="cx"> {
</span><del>-    ASSERT(valueList.property() != AnimatedPropertyWebkitTransform &amp;&amp; (!supportsAcceleratedFilterAnimations() || valueList.property() != AnimatedPropertyWebkitFilter));
</del><ins>+    ASSERT(valueList.property() != AnimatedPropertyTransform &amp;&amp; (!supportsAcceleratedFilterAnimations() || valueList.property() != AnimatedPropertyWebkitFilter));
</ins><span class="cx"> 
</span><span class="cx">     bool isKeyframe = valueList.size() &gt; 2;
</span><span class="cx">     bool valuesOK;
</span><span class="lines">@@ -2582,7 +2582,7 @@
</span><span class="cx"> 
</span><span class="cx"> bool GraphicsLayerCA::createTransformAnimationsFromKeyframes(const KeyframeValueList&amp; valueList, const Animation* animation, const String&amp; animationName, double timeOffset, const FloatSize&amp; boxSize)
</span><span class="cx"> {
</span><del>-    ASSERT(valueList.property() == AnimatedPropertyWebkitTransform);
</del><ins>+    ASSERT(valueList.property() == AnimatedPropertyTransform);
</ins><span class="cx"> 
</span><span class="cx">     bool hasBigRotation;
</span><span class="cx">     int listIndex = validateTransformOperations(valueList, hasBigRotation);
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicstexmapGraphicsLayerTextureMappercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -561,13 +561,13 @@
</span><span class="cx"> {
</span><span class="cx">     ASSERT(!keyframesName.isEmpty());
</span><span class="cx"> 
</span><del>-    if (!anim || anim-&gt;isEmptyOrZeroDuration() || valueList.size() &lt; 2 || (valueList.property() != AnimatedPropertyWebkitTransform &amp;&amp; valueList.property() != AnimatedPropertyOpacity))
</del><ins>+    if (!anim || anim-&gt;isEmptyOrZeroDuration() || valueList.size() &lt; 2 || (valueList.property() != AnimatedPropertyTransform &amp;&amp; valueList.property() != AnimatedPropertyOpacity))
</ins><span class="cx">         return false;
</span><span class="cx"> 
</span><span class="cx">     bool listsMatch = false;
</span><span class="cx">     bool hasBigRotation;
</span><span class="cx"> 
</span><del>-    if (valueList.property() == AnimatedPropertyWebkitTransform)
</del><ins>+    if (valueList.property() == AnimatedPropertyTransform)
</ins><span class="cx">         listsMatch = validateTransformOperations(valueList, hasBigRotation) &gt;= 0;
</span><span class="cx"> 
</span><span class="cx">     const double currentTime = monotonicallyIncreasingTime();
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicstexmapTextureMapperAnimationcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/texmap/TextureMapperAnimation.cpp (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/texmap/TextureMapperAnimation.cpp        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebCore/platform/graphics/texmap/TextureMapperAnimation.cpp        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -229,7 +229,7 @@
</span><span class="cx">     case AnimatedPropertyOpacity:
</span><span class="cx">         client-&gt;setAnimatedOpacity(applyOpacityAnimation((static_cast&lt;const FloatAnimationValue&amp;&gt;(from).value()), (static_cast&lt;const FloatAnimationValue&amp;&gt;(to).value()), progress));
</span><span class="cx">         return;
</span><del>-    case AnimatedPropertyWebkitTransform:
</del><ins>+    case AnimatedPropertyTransform:
</ins><span class="cx">         client-&gt;setAnimatedTransform(applyTransformAnimation(static_cast&lt;const TransformAnimationValue&amp;&gt;(from).value(), static_cast&lt;const TransformAnimationValue&amp;&gt;(to).value(), progress, m_boxSize, m_listsMatch));
</span><span class="cx">         return;
</span><span class="cx">     case AnimatedPropertyWebkitFilter:
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicstexmapTextureMapperLayercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -656,7 +656,7 @@
</span><span class="cx"> void TextureMapperLayer::syncAnimations()
</span><span class="cx"> {
</span><span class="cx">     m_animations.apply(this);
</span><del>-    if (!m_animations.hasActiveAnimationsOfType(AnimatedPropertyWebkitTransform))
</del><ins>+    if (!m_animations.hasActiveAnimationsOfType(AnimatedPropertyTransform))
</ins><span class="cx">         m_currentTransform.setLocalTransform(m_state.transform);
</span><span class="cx">     if (!m_animations.hasActiveAnimationsOfType(AnimatedPropertyOpacity))
</span><span class="cx">         m_currentOpacity = m_state.opacity;
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicstexmapcoordinatedCoordinatedGraphicsLayercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -1153,7 +1153,7 @@
</span><span class="cx"> 
</span><span class="cx"> bool CoordinatedGraphicsLayer::selfOrAncestorHasActiveTransformAnimation() const
</span><span class="cx"> {
</span><del>-    if (m_animations.hasActiveAnimationsOfType(AnimatedPropertyWebkitTransform))
</del><ins>+    if (m_animations.hasActiveAnimationsOfType(AnimatedPropertyTransform))
</ins><span class="cx">         return true;
</span><span class="cx"> 
</span><span class="cx">     if (!parent())
</span><span class="lines">@@ -1164,7 +1164,7 @@
</span><span class="cx"> 
</span><span class="cx"> bool CoordinatedGraphicsLayer::selfOrAncestorHaveNonAffineTransforms()
</span><span class="cx"> {
</span><del>-    if (m_animations.hasActiveAnimationsOfType(AnimatedPropertyWebkitTransform))
</del><ins>+    if (m_animations.hasActiveAnimationsOfType(AnimatedPropertyTransform))
</ins><span class="cx">         return true;
</span><span class="cx"> 
</span><span class="cx">     if (!m_layerTransform.combined().isAffine())
</span><span class="lines">@@ -1180,13 +1180,13 @@
</span><span class="cx"> {
</span><span class="cx">     ASSERT(!keyframesName.isEmpty());
</span><span class="cx"> 
</span><del>-    if (!anim || anim-&gt;isEmptyOrZeroDuration() || valueList.size() &lt; 2 || (valueList.property() != AnimatedPropertyWebkitTransform &amp;&amp; valueList.property() != AnimatedPropertyOpacity &amp;&amp; valueList.property() != AnimatedPropertyWebkitFilter))
</del><ins>+    if (!anim || anim-&gt;isEmptyOrZeroDuration() || valueList.size() &lt; 2 || (valueList.property() != AnimatedPropertyTransform &amp;&amp; valueList.property() != AnimatedPropertyOpacity &amp;&amp; valueList.property() != AnimatedPropertyWebkitFilter))
</ins><span class="cx">         return false;
</span><span class="cx"> 
</span><span class="cx">     bool listsMatch = false;
</span><span class="cx">     bool ignoredHasBigRotation;
</span><span class="cx"> 
</span><del>-    if (valueList.property() == AnimatedPropertyWebkitTransform)
</del><ins>+    if (valueList.property() == AnimatedPropertyTransform)
</ins><span class="cx">         listsMatch = validateTransformOperations(valueList, ignoredHasBigRotation) &gt;= 0;
</span><span class="cx"> 
</span><span class="cx">     m_lastAnimationStartTime = monotonicallyIncreasingTime() - delayAsNegativeTimeOffset;
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderLayerBackingcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderLayerBacking.cpp (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderLayerBacking.cpp        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebCore/rendering/RenderLayerBacking.cpp        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -674,7 +674,7 @@
</span><span class="cx"> 
</span><span class="cx">     // Set transform property, if it is not animating. We have to do this here because the transform
</span><span class="cx">     // is affected by the layer dimensions.
</span><del>-    if (!renderer().animation().isRunningAcceleratedAnimationOnRenderer(renderer(), CSSPropertyWebkitTransform, AnimationBase::Running | AnimationBase::Paused | AnimationBase::FillingFowards))
</del><ins>+    if (!renderer().animation().isRunningAcceleratedAnimationOnRenderer(renderer(), CSSPropertyTransform, AnimationBase::Running | AnimationBase::Paused | AnimationBase::FillingFowards))
</ins><span class="cx">         updateTransform(style);
</span><span class="cx"> 
</span><span class="cx">     // Set opacity, if it is not animating.
</span><span class="lines">@@ -2443,13 +2443,13 @@
</span><span class="cx"> bool RenderLayerBacking::startAnimation(double timeOffset, const Animation* anim, const KeyframeList&amp; keyframes)
</span><span class="cx"> {
</span><span class="cx">     bool hasOpacity = keyframes.containsProperty(CSSPropertyOpacity);
</span><del>-    bool hasTransform = renderer().isBox() &amp;&amp; keyframes.containsProperty(CSSPropertyWebkitTransform);
</del><ins>+    bool hasTransform = renderer().isBox() &amp;&amp; keyframes.containsProperty(CSSPropertyTransform);
</ins><span class="cx">     bool hasFilter = keyframes.containsProperty(CSSPropertyWebkitFilter);
</span><span class="cx"> 
</span><span class="cx">     if (!hasOpacity &amp;&amp; !hasTransform &amp;&amp; !hasFilter)
</span><span class="cx">         return false;
</span><span class="cx">     
</span><del>-    KeyframeValueList transformVector(AnimatedPropertyWebkitTransform);
</del><ins>+    KeyframeValueList transformVector(AnimatedPropertyTransform);
</ins><span class="cx">     KeyframeValueList opacityVector(AnimatedPropertyOpacity);
</span><span class="cx">     KeyframeValueList filterVector(AnimatedPropertyWebkitFilter);
</span><span class="cx"> 
</span><span class="lines">@@ -2465,7 +2465,7 @@
</span><span class="cx">         TimingFunction* tf = currentKeyframe.timingFunction(keyframes.animationName());
</span><span class="cx">         
</span><span class="cx">         bool isFirstOrLastKeyframe = key == 0 || key == 1;
</span><del>-        if ((hasTransform &amp;&amp; isFirstOrLastKeyframe) || currentKeyframe.containsProperty(CSSPropertyWebkitTransform))
</del><ins>+        if ((hasTransform &amp;&amp; isFirstOrLastKeyframe) || currentKeyframe.containsProperty(CSSPropertyTransform))
</ins><span class="cx">             transformVector.insert(std::make_unique&lt;TransformAnimationValue&gt;(key, keyframeStyle-&gt;transform(), tf));
</span><span class="cx"> 
</span><span class="cx">         if ((hasOpacity &amp;&amp; isFirstOrLastKeyframe) || currentKeyframe.containsProperty(CSSPropertyOpacity))
</span><span class="lines">@@ -2523,13 +2523,13 @@
</span><span class="cx">         }
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    if (property == CSSPropertyWebkitTransform &amp;&amp; m_owningLayer.hasTransform()) {
-        const Animation* transformAnim = toStyle-&gt;transitionForProperty(CSSPropertyWebkitTransform);
</del><ins>+    if (property == CSSPropertyTransform &amp;&amp; m_owningLayer.hasTransform()) {
+        const Animation* transformAnim = toStyle-&gt;transitionForProperty(CSSPropertyTransform);
</ins><span class="cx">         if (transformAnim &amp;&amp; !transformAnim-&gt;isEmptyOrZeroDuration()) {
</span><del>-            KeyframeValueList transformVector(AnimatedPropertyWebkitTransform);
</del><ins>+            KeyframeValueList transformVector(AnimatedPropertyTransform);
</ins><span class="cx">             transformVector.insert(std::make_unique&lt;TransformAnimationValue&gt;(0, fromStyle-&gt;transform()));
</span><span class="cx">             transformVector.insert(std::make_unique&lt;TransformAnimationValue&gt;(1, toStyle-&gt;transform()));
</span><del>-            if (m_graphicsLayer-&gt;addAnimation(transformVector, downcast&lt;RenderBox&gt;(renderer()).pixelSnappedBorderBoxRect().size(), transformAnim, GraphicsLayer::animationNameForTransition(AnimatedPropertyWebkitTransform), timeOffset)) {
</del><ins>+            if (m_graphicsLayer-&gt;addAnimation(transformVector, downcast&lt;RenderBox&gt;(renderer()).pixelSnappedBorderBoxRect().size(), transformAnim, GraphicsLayer::animationNameForTransition(AnimatedPropertyTransform), timeOffset)) {
</ins><span class="cx">                 // To ensure that the correct transform is visible when the animation ends, also set the final transform.
</span><span class="cx">                 updateTransform(*toStyle);
</span><span class="cx">                 didAnimate = true;
</span><span class="lines">@@ -2626,20 +2626,20 @@
</span><span class="cx"> {
</span><span class="cx">     CSSPropertyID cssProperty = CSSPropertyInvalid;
</span><span class="cx">     switch (property) {
</span><del>-        case AnimatedPropertyWebkitTransform:
-            cssProperty = CSSPropertyWebkitTransform;
-            break;
-        case AnimatedPropertyOpacity:
-            cssProperty = CSSPropertyOpacity;
-            break;
-        case AnimatedPropertyBackgroundColor:
-            cssProperty = CSSPropertyBackgroundColor;
-            break;
-        case AnimatedPropertyWebkitFilter:
-            cssProperty = CSSPropertyWebkitFilter;
-            break;
-        case AnimatedPropertyInvalid:
-            ASSERT_NOT_REACHED();
</del><ins>+    case AnimatedPropertyTransform:
+        cssProperty = CSSPropertyTransform;
+        break;
+    case AnimatedPropertyOpacity:
+        cssProperty = CSSPropertyOpacity;
+        break;
+    case AnimatedPropertyBackgroundColor:
+        cssProperty = CSSPropertyBackgroundColor;
+        break;
+    case AnimatedPropertyWebkitFilter:
+        cssProperty = CSSPropertyWebkitFilter;
+        break;
+    case AnimatedPropertyInvalid:
+        ASSERT_NOT_REACHED();
</ins><span class="cx">     }
</span><span class="cx">     return cssProperty;
</span><span class="cx"> }
</span><span class="lines">@@ -2647,17 +2647,17 @@
</span><span class="cx"> AnimatedPropertyID RenderLayerBacking::cssToGraphicsLayerProperty(CSSPropertyID cssProperty)
</span><span class="cx"> {
</span><span class="cx">     switch (cssProperty) {
</span><del>-        case CSSPropertyWebkitTransform:
-            return AnimatedPropertyWebkitTransform;
-        case CSSPropertyOpacity:
-            return AnimatedPropertyOpacity;
-        case CSSPropertyBackgroundColor:
-            return AnimatedPropertyBackgroundColor;
-        case CSSPropertyWebkitFilter:
-            return AnimatedPropertyWebkitFilter;
-        default:
-            // It's fine if we see other css properties here; they are just not accelerated.
-            break;
</del><ins>+    case CSSPropertyTransform:
+        return AnimatedPropertyTransform;
+    case CSSPropertyOpacity:
+        return AnimatedPropertyOpacity;
+    case CSSPropertyBackgroundColor:
+        return AnimatedPropertyBackgroundColor;
+    case CSSPropertyWebkitFilter:
+        return AnimatedPropertyWebkitFilter;
+    default:
+        // It's fine if we see other css properties here; they are just not accelerated.
+        break;
</ins><span class="cx">     }
</span><span class="cx">     return AnimatedPropertyInvalid;
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderLayerCompositorcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -2612,7 +2612,7 @@
</span><span class="cx">     return (animController.isRunningAnimationOnRenderer(renderer, CSSPropertyOpacity, activeAnimationState)
</span><span class="cx">             &amp;&amp; (inCompositingMode() || (m_compositingTriggers &amp; ChromeClient::AnimatedOpacityTrigger)))
</span><span class="cx">             || animController.isRunningAnimationOnRenderer(renderer, CSSPropertyWebkitFilter, activeAnimationState)
</span><del>-            || animController.isRunningAnimationOnRenderer(renderer, CSSPropertyWebkitTransform, activeAnimationState);
</del><ins>+            || animController.isRunningAnimationOnRenderer(renderer, CSSPropertyTransform, activeAnimationState);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> bool RenderLayerCompositor::requiresCompositingForIndirectReason(RenderLayerModelObject&amp; renderer, bool hasCompositedDescendants, bool has3DTransformedDescendants, RenderLayer::IndirectCompositingReason&amp; reason) const
</span><span class="lines">@@ -2810,7 +2810,7 @@
</span><span class="cx">     if (!(m_compositingTriggers &amp; ChromeClient::AnimationTrigger))
</span><span class="cx">         return false;
</span><span class="cx"> 
</span><del>-    return renderer.animation().isRunningAnimationOnRenderer(renderer, CSSPropertyWebkitTransform, AnimationBase::Running | AnimationBase::Paused);
</del><ins>+    return renderer.animation().isRunningAnimationOnRenderer(renderer, CSSPropertyTransform, AnimationBase::Running | AnimationBase::Paused);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> // If an element has negative z-index children, those children render in front of the 
</span></span></pre></div>
<a id="trunkSourceWebCoresvgSVGElementcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/svg/SVGElement.cpp (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/svg/SVGElement.cpp        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebCore/svg/SVGElement.cpp        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -158,7 +158,7 @@
</span><span class="cx"> 
</span><span class="cx">     // FIXME: When CSS supports &quot;transform-origin&quot; this special case can be removed,
</span><span class="cx">     // and we can add transform_originAttr to the table above instead.
</span><del>-    map.add(transform_originAttr.localName().impl(), CSSPropertyWebkitTransformOrigin);
</del><ins>+    map.add(transform_originAttr.localName().impl(), CSSPropertyTransformOrigin);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> static NEVER_INLINE void populateAttributeNameToAnimatedPropertyTypeMap(HashMap&lt;QualifiedName::QualifiedNameImpl*, AnimatedPropertyType&gt;&amp; map)
</span></span></pre></div>
<a id="trunkSourceWebKit2ChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/ChangeLog (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/ChangeLog        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebKit2/ChangeLog        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -1,3 +1,16 @@
</span><ins>+2015-03-21  Dean Jackson  &lt;dino@apple.com&gt;
+
+        Remove the prefix for CSS Transforms
+        https://bugs.webkit.org/show_bug.cgi?id=142927
+        &lt;rdar://problem/11568151&gt;
+
+        Reviewed by Simon Fraser.
+
+        Rename AnimatedPropertyWebkitTransform to AnimatedPropertyTransform.
+
+        * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
+        (IPC::ArgumentCoder&lt;TextureMapperAnimation&gt;::encode):
+
</ins><span class="cx"> 2015-03-21  Csaba Osztrogonác  &lt;ossy@webkit.org&gt;
</span><span class="cx"> 
</span><span class="cx">         [EFL][GTK] Make WebKit2's generate-forwarding-headers.pl less verbose
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedCoordinatedGraphicsCoordinatedGraphicsArgumentCoderscpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp (181831 => 181832)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp        2015-03-22 04:08:23 UTC (rev 181831)
+++ trunk/Source/WebKit2/Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp        2015-03-22 04:55:33 UTC (rev 181832)
</span><span class="lines">@@ -445,7 +445,7 @@
</span><span class="cx">         case AnimatedPropertyOpacity:
</span><span class="cx">             encoder &lt;&lt; static_cast&lt;const FloatAnimationValue&amp;&gt;(value).value();
</span><span class="cx">             break;
</span><del>-        case AnimatedPropertyWebkitTransform:
</del><ins>+        case AnimatedPropertyTransform:
</ins><span class="cx">             encoder &lt;&lt; static_cast&lt;const TransformAnimationValue&amp;&gt;(value).value();
</span><span class="cx">             break;
</span><span class="cx">         case AnimatedPropertyWebkitFilter:
</span><span class="lines">@@ -527,7 +527,7 @@
</span><span class="cx">             keyframes.insert(std::make_unique&lt;FloatAnimationValue&gt;(keyTime, value, timingFunction.get()));
</span><span class="cx">             break;
</span><span class="cx">         }
</span><del>-        case AnimatedPropertyWebkitTransform: {
</del><ins>+        case AnimatedPropertyTransform: {
</ins><span class="cx">             TransformOperations transform;
</span><span class="cx">             if (!decoder.decode(transform))
</span><span class="cx">                 return false;
</span></span></pre>
</div>
</div>

</body>
</html>