Diff
Modified: branches/safari-611.1.4-branch/LayoutTests/ChangeLog (268875 => 268876)
--- branches/safari-611.1.4-branch/LayoutTests/ChangeLog 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/LayoutTests/ChangeLog 2020-10-22 18:26:40 UTC (rev 268876)
@@ -1,5 +1,9 @@
2020-10-22 Alan Coon <[email protected]>
+ Revert r268615. rdar://problem/70578639
+
+2020-10-22 Alan Coon <[email protected]>
+
Revert r268746. rdar://problem/70578639
2020-10-22 Alan Coon <[email protected]>
Modified: branches/safari-611.1.4-branch/LayoutTests/TestExpectations (268875 => 268876)
--- branches/safari-611.1.4-branch/LayoutTests/TestExpectations 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/LayoutTests/TestExpectations 2020-10-22 18:26:40 UTC (rev 268876)
@@ -4519,9 +4519,3 @@
fast/layoutformattingcontext/ [ ImageOnlyFailure ]
webkit.org/b/217054 fast/layoutformattingcontext/horizontal-sizing-with-trailing-letter-spacing.html [ Skip ]
-webkit.org/b/217851 transitions/interrupted-transition-hardware.html [ Pass Failure ]
-webkit.org/b/217851 webanimations/accelerated-transform-related-animation-property-order.html [ Pass Failure ]
-webkit.org/b/217851 webanimations/accelerated-translate-animation-additional-animation-added-in-flight.html [ Pass Failure ]
-webkit.org/b/217851 webanimations/accelerated-translate-animation-underlying-transform-changed-in-flight.html [ Pass Failure ]
-webkit.org/b/217851 webanimations/accelerated-translate-animation-with-transform.html [ Pass Failure ]
-webkit.org/b/217851 webanimations/accelerated-translate-animation.html [ Pass Failure ]
Modified: branches/safari-611.1.4-branch/LayoutTests/imported/w3c/ChangeLog (268875 => 268876)
--- branches/safari-611.1.4-branch/LayoutTests/imported/w3c/ChangeLog 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/LayoutTests/imported/w3c/ChangeLog 2020-10-22 18:26:40 UTC (rev 268876)
@@ -1,3 +1,7 @@
+2020-10-22 Alan Coon <[email protected]>
+
+ Revert r268615. rdar://problem/70578639
+
2020-10-16 Darin Adler <[email protected]>
Add AbstractRange
Modified: branches/safari-611.1.4-branch/LayoutTests/imported/w3c/web-platform-tests/css/css-transforms/animation/rotate-interpolation-expected.txt (268875 => 268876)
--- branches/safari-611.1.4-branch/LayoutTests/imported/w3c/web-platform-tests/css/css-transforms/animation/rotate-interpolation-expected.txt 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/LayoutTests/imported/w3c/web-platform-tests/css/css-transforms/animation/rotate-interpolation-expected.txt 2020-10-22 18:26:40 UTC (rev 268876)
@@ -137,10 +137,10 @@
PASS CSS Animations: property <rotate> from neutral to [30deg] at (0.75) should be [25deg]
PASS CSS Animations: property <rotate> from neutral to [30deg] at (1) should be [30deg]
PASS CSS Animations: property <rotate> from neutral to [30deg] at (2) should be [50deg]
-FAIL Web Animations: property <rotate> from neutral to [30deg] at (-1) should be [-10deg] assert_equals: expected "- 10deg " but got "- 50deg "
+PASS Web Animations: property <rotate> from neutral to [30deg] at (-1) should be [-10deg]
FAIL Web Animations: property <rotate> from neutral to [30deg] at (0) should be [10deg] assert_equals: expected "10deg " but got "- 10deg "
-FAIL Web Animations: property <rotate> from neutral to [30deg] at (0.25) should be [15deg] assert_equals: expected "15deg " but got "7.5deg "
-FAIL Web Animations: property <rotate> from neutral to [30deg] at (0.75) should be [25deg] assert_equals: expected "25deg " but got "28.13deg "
+FAIL Web Animations: property <rotate> from neutral to [30deg] at (0.25) should be [15deg] assert_equals: expected "15deg " but got "none "
+FAIL Web Animations: property <rotate> from neutral to [30deg] at (0.75) should be [25deg] assert_equals: expected "25deg " but got "22.5deg "
PASS Web Animations: property <rotate> from neutral to [30deg] at (1) should be [30deg]
FAIL Web Animations: property <rotate> from neutral to [30deg] at (2) should be [50deg] assert_equals: expected "50deg " but got "30deg "
PASS CSS Transitions: property <rotate> from [inherit] to [270deg] at (-1) should be [-90deg]
Modified: branches/safari-611.1.4-branch/LayoutTests/imported/w3c/web-platform-tests/css/css-transforms/animation/scale-interpolation-expected.txt (268875 => 268876)
--- branches/safari-611.1.4-branch/LayoutTests/imported/w3c/web-platform-tests/css/css-transforms/animation/scale-interpolation-expected.txt 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/LayoutTests/imported/w3c/web-platform-tests/css/css-transforms/animation/scale-interpolation-expected.txt 2020-10-22 18:26:40 UTC (rev 268876)
@@ -185,10 +185,10 @@
PASS CSS Animations: property <scale> from neutral to [1.5 1] at (0.75) should be [1.4 1]
PASS CSS Animations: property <scale> from neutral to [1.5 1] at (1) should be [1.5 1]
PASS CSS Animations: property <scale> from neutral to [1.5 1] at (2) should be [1.9 1]
-FAIL Web Animations: property <scale> from neutral to [1.5 1] at (-1) should be [0.7 1] assert_equals: expected "0.7 1 " but got "- 0.1 1 "
+PASS Web Animations: property <scale> from neutral to [1.5 1] at (-1) should be [0.7 1]
FAIL Web Animations: property <scale> from neutral to [1.5 1] at (0) should be [1.1 1] assert_equals: expected "1.1 1 " but got "0.7 1 "
-FAIL Web Animations: property <scale> from neutral to [1.5 1] at (0.25) should be [1.2 1] assert_equals: expected "1.2 1 " but got "1.05 1 "
-FAIL Web Animations: property <scale> from neutral to [1.5 1] at (0.75) should be [1.4 1] assert_equals: expected "1.4 1 " but got "1.46 1 "
+FAIL Web Animations: property <scale> from neutral to [1.5 1] at (0.25) should be [1.2 1] assert_equals: expected "1.2 1 " but got "0.9 1 "
+FAIL Web Animations: property <scale> from neutral to [1.5 1] at (0.75) should be [1.4 1] assert_equals: expected "1.4 1 " but got "1.35 1 "
PASS Web Animations: property <scale> from neutral to [1.5 1] at (1) should be [1.5 1]
FAIL Web Animations: property <scale> from neutral to [1.5 1] at (2) should be [1.9 1] assert_equals: expected "1.9 1 " but got "1.5 1 "
PASS CSS Transitions: property <scale> from [initial] to [2 0.5 1] at (-1) should be [0 1.5]
Modified: branches/safari-611.1.4-branch/LayoutTests/imported/w3c/web-platform-tests/css/css-transforms/animation/translate-interpolation-expected.txt (268875 => 268876)
--- branches/safari-611.1.4-branch/LayoutTests/imported/w3c/web-platform-tests/css/css-transforms/animation/translate-interpolation-expected.txt 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/LayoutTests/imported/w3c/web-platform-tests/css/css-transforms/animation/translate-interpolation-expected.txt 2020-10-22 18:26:40 UTC (rev 268876)
@@ -233,10 +233,10 @@
PASS CSS Animations: property <translate> from neutral to [20px] at (0.75) should be [17.5px]
PASS CSS Animations: property <translate> from neutral to [20px] at (1) should be [20px]
PASS CSS Animations: property <translate> from neutral to [20px] at (2) should be [30px]
-FAIL Web Animations: property <translate> from neutral to [20px] at (-1) should be [0px] assert_equals: expected "none " but got "- 20px "
+PASS Web Animations: property <translate> from neutral to [20px] at (-1) should be [0px]
FAIL Web Animations: property <translate> from neutral to [20px] at (0) should be [10px] assert_equals: expected "10px " but got "none "
-FAIL Web Animations: property <translate> from neutral to [20px] at (0.25) should be [12.5px] assert_equals: expected "12.5px " but got "8.75px "
-FAIL Web Animations: property <translate> from neutral to [20px] at (0.75) should be [17.5px] assert_equals: expected "17.5px " but got "19.06px "
+FAIL Web Animations: property <translate> from neutral to [20px] at (0.25) should be [12.5px] assert_equals: expected "12.5px " but got "5px "
+FAIL Web Animations: property <translate> from neutral to [20px] at (0.75) should be [17.5px] assert_equals: expected "17.5px " but got "16.25px "
PASS Web Animations: property <translate> from neutral to [20px] at (1) should be [20px]
FAIL Web Animations: property <translate> from neutral to [20px] at (2) should be [30px] assert_equals: expected "30px " but got "20px "
PASS CSS Transitions: property <translate> from [initial] to [200px 100px 200px] at (-1) should be [-200px -100px -200px]
Deleted: branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-transform-related-animation-property-order-expected.html (268875 => 268876)
--- branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-transform-related-animation-property-order-expected.html 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-transform-related-animation-property-order-expected.html 2020-10-22 18:26:40 UTC (rev 268876)
@@ -1,14 +0,0 @@
-<style>
-
- #target {
- position: absolute;
- top: 0;
- left: 0;
- width: 100px;
- height: 100px;
- background-color: black;
- transform: translateX(250px) scale(1.5) translateY(100px);
- }
-
-</style>
-<div id="target"></div>
Deleted: branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-transform-related-animation-property-order.html (268875 => 268876)
--- branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-transform-related-animation-property-order.html 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-transform-related-animation-property-order.html 2020-10-22 18:26:40 UTC (rev 268876)
@@ -1,35 +0,0 @@
-<style>
-
- #target {
- position: absolute;
- top: 0;
- left: 0;
- width: 100px;
- height: 100px;
- background-color: black;
- transform: translateY(100px);
- }
-
-</style>
-<div id="target"></div>
-<script src=""
-<script>
-
-(async () => {
- if (window.testRunner)
- testRunner.waitUntilDone();
-
- // Start an animation that lasts a day.
- const duration = 24 * 60 * 60 * 1000;
- const animation = document.getElementById("target").animate({ translate: "500px", scale: "2" }, duration);
- animation.currentTime = duration / 2;
-
- // Wait until the animation has been applied.
- await animation.ready;
- await UIHelper.ensureStablePresentationUpdate();
-
- if (window.testRunner)
- testRunner.notifyDone();
-})();
-
-</script>
Deleted: branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-translate-animation-additional-animation-added-in-flight-expected.html (268875 => 268876)
--- branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-translate-animation-additional-animation-added-in-flight-expected.html 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-translate-animation-additional-animation-added-in-flight-expected.html 2020-10-22 18:26:40 UTC (rev 268876)
@@ -1,14 +0,0 @@
-<style>
-
- #target {
- position: absolute;
- top: 0;
- left: 0;
- width: 100px;
- height: 100px;
- background-color: black;
- transform: translateX(100px) scale(0.5);
- }
-
-</style>
-<div id="target"></div>
Deleted: branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-translate-animation-additional-animation-added-in-flight.html (268875 => 268876)
--- branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-translate-animation-additional-animation-added-in-flight.html 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-translate-animation-additional-animation-added-in-flight.html 2020-10-22 18:26:40 UTC (rev 268876)
@@ -1,42 +0,0 @@
-<style>
-
- #target {
- position: absolute;
- top: 0;
- left: 0;
- width: 100px;
- height: 100px;
- background-color: black;
- }
-
-</style>
-<div id="target"></div>
-<script src=""
-<script>
-
-(async () => {
- if (window.testRunner)
- testRunner.waitUntilDone();
-
- // Start an animation that lasts a day.
- const duration = 24 * 60 * 60 * 1000;
- const translateAnimation = document.getElementById("target").animate({ translate: "200px" }, duration);
- translateAnimation.currentTime = duration / 2;
-
- // Wait until the animation has been applied.
- await translateAnimation.ready;
- await UIHelper.ensureStablePresentationUpdate();
-
- // Add an extra animation.
- const scaleAnimation = document.getElementById("target").animate({ scale: "0" }, duration);
- scaleAnimation.currentTime = duration / 2;
-
- // Wait until the new animation has been applied.
- await scaleAnimation.ready;
- await UIHelper.ensureStablePresentationUpdate();
-
- if (window.testRunner)
- testRunner.notifyDone();
-})();
-
-</script>
Deleted: branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-translate-animation-expected.html (268875 => 268876)
--- branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-translate-animation-expected.html 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-translate-animation-expected.html 2020-10-22 18:26:40 UTC (rev 268876)
@@ -1,14 +0,0 @@
-<style>
-
- #target {
- position: absolute;
- top: 0;
- left: 0;
- width: 100px;
- height: 100px;
- background-color: black;
- transform: translateX(100px);
- }
-
-</style>
-<div id="target"></div>
Deleted: branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-translate-animation-underlying-transform-changed-in-flight-expected.html (268875 => 268876)
--- branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-translate-animation-underlying-transform-changed-in-flight-expected.html 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-translate-animation-underlying-transform-changed-in-flight-expected.html 2020-10-22 18:26:40 UTC (rev 268876)
@@ -1,14 +0,0 @@
-<style>
-
- #target {
- position: absolute;
- top: 0;
- left: 0;
- width: 100px;
- height: 100px;
- background-color: black;
- transform: translate(100px, 100px);
- }
-
-</style>
-<div id="target"></div>
Deleted: branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-translate-animation-underlying-transform-changed-in-flight.html (268875 => 268876)
--- branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-translate-animation-underlying-transform-changed-in-flight.html 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-translate-animation-underlying-transform-changed-in-flight.html 2020-10-22 18:26:40 UTC (rev 268876)
@@ -1,41 +0,0 @@
-<style>
-
- #target {
- position: absolute;
- top: 0;
- left: 0;
- width: 100px;
- height: 100px;
- background-color: black;
- }
-
-</style>
-<div id="target"></div>
-<script src=""
-<script>
-
-(async () => {
- if (window.testRunner)
- testRunner.waitUntilDone();
-
- // Start an animation that lasts a day.
- const duration = 24 * 60 * 60 * 1000;
- const target = document.getElementById("target");
- const animation = target.animate({ translate: "200px" }, duration);
- animation.currentTime = duration / 2;
-
- // Wait until the animation has been applied.
- await animation.ready;
- await UIHelper.ensureStablePresentationUpdate();
-
- // Change the transform property.
- target.style.transform = "translateY(100px)";
-
- // Wait until that change was made.
- await UIHelper.ensureStablePresentationUpdate();
-
- if (window.testRunner)
- testRunner.notifyDone();
-})();
-
-</script>
Deleted: branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-translate-animation-with-transform-expected.html (268875 => 268876)
--- branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-translate-animation-with-transform-expected.html 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-translate-animation-with-transform-expected.html 2020-10-22 18:26:40 UTC (rev 268876)
@@ -1,14 +0,0 @@
-<style>
-
- #target {
- position: absolute;
- top: 0;
- left: 0;
- width: 100px;
- height: 100px;
- background-color: black;
- transform: translateX(150px);
- }
-
-</style>
-<div id="target"></div>
Deleted: branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-translate-animation-with-transform.html (268875 => 268876)
--- branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-translate-animation-with-transform.html 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-translate-animation-with-transform.html 2020-10-22 18:26:40 UTC (rev 268876)
@@ -1,35 +0,0 @@
-<style>
-
- #target {
- position: absolute;
- top: 0;
- left: 0;
- width: 100px;
- height: 100px;
- background-color: black;
- transform: translateX(50px);
- }
-
-</style>
-<div id="target"></div>
-<script src=""
-<script>
-
-(async () => {
- if (window.testRunner)
- testRunner.waitUntilDone();
-
- // Start an animation that lasts a day.
- const duration = 24 * 60 * 60 * 1000;
- const animation = document.getElementById("target").animate({ translate: "200px" }, duration);
- animation.currentTime = duration / 2;
-
- // Wait until the animation has been applied.
- await animation.ready;
- await UIHelper.ensureStablePresentationUpdate();
-
- if (window.testRunner)
- testRunner.notifyDone();
-})();
-
-</script>
Deleted: branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-translate-animation.html (268875 => 268876)
--- branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-translate-animation.html 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/LayoutTests/webanimations/accelerated-translate-animation.html 2020-10-22 18:26:40 UTC (rev 268876)
@@ -1,34 +0,0 @@
-<style>
-
- #target {
- position: absolute;
- top: 0;
- left: 0;
- width: 100px;
- height: 100px;
- background-color: black;
- }
-
-</style>
-<div id="target"></div>
-<script src=""
-<script>
-
-(async () => {
- if (window.testRunner)
- testRunner.waitUntilDone();
-
- // Start an animation that lasts a day.
- const duration = 24 * 60 * 60 * 1000;
- const animation = document.getElementById("target").animate({ translate: "200px" }, duration);
- animation.currentTime = duration / 2;
-
- // Wait until the animation has been applied.
- await animation.ready;
- await UIHelper.ensureStablePresentationUpdate();
-
- if (window.testRunner)
- testRunner.notifyDone();
-})();
-
-</script>
Modified: branches/safari-611.1.4-branch/Source/WebCore/ChangeLog (268875 => 268876)
--- branches/safari-611.1.4-branch/Source/WebCore/ChangeLog 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/Source/WebCore/ChangeLog 2020-10-22 18:26:40 UTC (rev 268876)
@@ -1,5 +1,9 @@
2020-10-22 Alan Coon <[email protected]>
+ Revert r268615. rdar://problem/70578639
+
+2020-10-22 Alan Coon <[email protected]>
+
Revert r268746. rdar://problem/70578639
2020-10-22 Alan Coon <[email protected]>
Modified: branches/safari-611.1.4-branch/Source/WebCore/animation/CSSPropertyAnimation.cpp (268875 => 268876)
--- branches/safari-611.1.4-branch/Source/WebCore/animation/CSSPropertyAnimation.cpp 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/Source/WebCore/animation/CSSPropertyAnimation.cpp 2020-10-22 18:26:40 UTC (rev 268876)
@@ -850,8 +850,6 @@
}
private:
- bool animationIsAccelerated() const final { return true; }
-
bool equals(const RenderStyle* a, const RenderStyle* b) const final
{
return arePointingToEqualData((a->*m_getter)(), (b->*m_getter)());
@@ -867,8 +865,6 @@
}
private:
- bool animationIsAccelerated() const final { return true; }
-
bool equals(const RenderStyle* a, const RenderStyle* b) const final
{
return arePointingToEqualData((a->*m_getter)(), (b->*m_getter)());
@@ -884,8 +880,6 @@
}
private:
- bool animationIsAccelerated() const final { return true; }
-
bool equals(const RenderStyle* a, const RenderStyle* b) const final
{
return arePointingToEqualData((a->*m_getter)(), (b->*m_getter)());
Modified: branches/safari-611.1.4-branch/Source/WebCore/platform/graphics/GraphicsLayer.cpp (268875 => 268876)
--- branches/safari-611.1.4-branch/Source/WebCore/platform/graphics/GraphicsLayer.cpp 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/Source/WebCore/platform/graphics/GraphicsLayer.cpp 2020-10-22 18:26:40 UTC (rev 268876)
@@ -721,7 +721,7 @@
int GraphicsLayer::validateTransformOperations(const KeyframeValueList& valueList, bool& hasBigRotation)
{
- ASSERT(animatedPropertyIsTransformOrRelated(valueList.property()));
+ ASSERT(valueList.property() == AnimatedPropertyTransform);
hasBigRotation = false;
Modified: branches/safari-611.1.4-branch/Source/WebCore/platform/graphics/GraphicsLayer.h (268875 => 268876)
--- branches/safari-611.1.4-branch/Source/WebCore/platform/graphics/GraphicsLayer.h 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/Source/WebCore/platform/graphics/GraphicsLayer.h 2020-10-22 18:26:40 UTC (rev 268876)
@@ -133,13 +133,6 @@
{
}
- TransformAnimationValue(double keyTime, TransformOperation* value, TimingFunction* timingFunction = nullptr)
- : AnimationValue(keyTime, timingFunction)
- {
- if (value)
- m_value.operations().append(value);
- }
-
std::unique_ptr<AnimationValue> clone() const override
{
return makeUnique<TransformAnimationValue>(*this);
Modified: branches/safari-611.1.4-branch/Source/WebCore/platform/graphics/GraphicsLayerClient.h (268875 => 268876)
--- branches/safari-611.1.4-branch/Source/WebCore/platform/graphics/GraphicsLayerClient.h 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/Source/WebCore/platform/graphics/GraphicsLayerClient.h 2020-10-22 18:26:40 UTC (rev 268876)
@@ -26,7 +26,6 @@
#pragma once
#include "TiledBacking.h"
-#include "TransformationMatrix.h"
#include <wtf/Forward.h>
#include <wtf/OptionSet.h>
@@ -38,6 +37,7 @@
class GraphicsLayer;
class IntPoint;
class IntRect;
+class TransformationMatrix;
enum class GraphicsLayerPaintingPhase {
Background = 1 << 0,
@@ -51,9 +51,6 @@
enum AnimatedPropertyID {
AnimatedPropertyInvalid,
- AnimatedPropertyTranslate,
- AnimatedPropertyScale,
- AnimatedPropertyRotate,
AnimatedPropertyTransform,
AnimatedPropertyOpacity,
AnimatedPropertyBackgroundColor,
@@ -63,11 +60,6 @@
#endif
};
-inline bool animatedPropertyIsTransformOrRelated(AnimatedPropertyID property)
-{
- return property == AnimatedPropertyTransform || property == AnimatedPropertyTranslate || property == AnimatedPropertyScale || property == AnimatedPropertyRotate;
-}
-
enum LayerTreeAsTextBehaviorFlags {
LayerTreeAsTextBehaviorNormal = 0,
LayerTreeAsTextDebug = 1 << 0, // Dump extra debugging info like layer addresses.
@@ -147,8 +139,6 @@
virtual void logFilledVisibleFreshTile(unsigned) { };
- virtual TransformationMatrix transformMatrixForProperty(AnimatedPropertyID) const { return { }; }
-
#ifndef NDEBUG
// RenderLayerBacking overrides this to verify that it is not
// currently painting contents. An ASSERT fails, if it is.
Modified: branches/safari-611.1.4-branch/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp (268875 => 268876)
--- branches/safari-611.1.4-branch/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp 2020-10-22 18:26:40 UTC (rev 268876)
@@ -56,7 +56,6 @@
#include <wtf/PointerComparison.h>
#include <wtf/SetForScope.h>
#include <wtf/SystemTracing.h>
-#include <wtf/UUID.h>
#include <wtf/text/StringConcatenateNumbers.h>
#include <wtf/text/TextStream.h>
@@ -252,9 +251,6 @@
static ASCIILiteral propertyIdToString(AnimatedPropertyID property)
{
switch (property) {
- case AnimatedPropertyTranslate:
- case AnimatedPropertyScale:
- case AnimatedPropertyRotate:
case AnimatedPropertyTransform:
return "transform"_s;
case AnimatedPropertyOpacity:
@@ -661,12 +657,6 @@
GraphicsLayer::setTransform(t);
noteLayerPropertyChanged(TransformChanged);
-
- // If we are currently running a transform-related animation, a change in underlying
- // transform value means we must re-evaluate all transform-related animations to ensure
- // that the base value transform animations are current.
- if (isRunningTransformAnimation())
- noteLayerPropertyChanged(AnimationChanged | CoverageRectChanged);
}
void GraphicsLayerCA::setChildrenTransform(const TransformationMatrix& t)
@@ -699,7 +689,7 @@
void GraphicsLayerCA::moveOrCopyAnimations(MoveOrCopy operation, PlatformCALayer *fromLayer, PlatformCALayer *toLayer)
{
for (auto& animation : m_animations) {
- if ((animatedPropertyIsTransformOrRelated(animation.m_property)
+ if ((animation.m_property == AnimatedPropertyTransform
|| animation.m_property == AnimatedPropertyOpacity
|| animation.m_property == AnimatedPropertyBackgroundColor
|| animation.m_property == AnimatedPropertyFilter)
@@ -1054,7 +1044,7 @@
return false;
bool createdAnimations = false;
- if (animatedPropertyIsTransformOrRelated(valueList.property()))
+ if (valueList.property() == AnimatedPropertyTransform)
createdAnimations = createTransformAnimationsFromKeyframes(valueList, anim, animationName, Seconds { timeOffset }, boxSize);
else if (valueList.property() == AnimatedPropertyFilter) {
if (supportsAcceleratedFilterAnimations())
@@ -2861,156 +2851,30 @@
void GraphicsLayerCA::updateAnimations()
{
- enum class Additive { Yes, No };
- auto addAnimation = [&](LayerPropertyAnimation& animation, Additive additive = Additive::Yes) {
- animation.m_animation->setAdditive(additive == Additive::Yes);
- setAnimationOnLayer(animation);
- if (animation.m_playState == PlayState::PausePending || animation.m_playState == PlayState::Paused) {
- pauseCAAnimationOnLayer(animation);
- animation.m_playState = PlayState::Paused;
- } else
- animation.m_playState = PlayState::Playing;
- };
-
- enum class TransformationMatrixSource { UseIdentityMatrix, AskClient };
- auto addBaseValueTransformAnimation = [&](AnimatedPropertyID property, TransformationMatrixSource matrixSource = TransformationMatrixSource::AskClient) {
- // A base value transform animation can either be set to the identity matrix or to read the underlying
- // value from the GraphicsLayerClient. If we didn't explicitly ask for an identity matrix, we can skip
- // the addition of this base value transform animation since it will be a no-op.
- auto matrix = matrixSource == TransformationMatrixSource::UseIdentityMatrix ? TransformationMatrix() : client().transformMatrixForProperty(property);
- if (matrixSource == TransformationMatrixSource::AskClient && matrix.isIdentity())
- return;
-
- // A base value transform animation needs to last forever and use the same value for its from and to values.
- auto caAnimation = createPlatformCAAnimation(PlatformCAAnimation::Basic, propertyIdToString(property));
- caAnimation->setDuration(Seconds::infinity().seconds());
- caAnimation->setFromValue(matrix);
- caAnimation->setToValue(matrix);
-
- auto animation = LayerPropertyAnimation(WTFMove(caAnimation), "base-transform-" + createCanonicalUUIDString(), property, 0, 0, 0_s);
- // To ensure the base value transform is applied along with all the interpolating animations, we set it to have started
- // as early as possible, which combined with the infinite duration ensures it's current for any given CA media time.
- animation.m_beginTime = Seconds::fromNanoseconds(1);
-
- // Additivity will depend on the source of the matrix, if it was explicitly provided as an identity matrix, it
- // is the initial base value transform animation and must override the current transform value for this layer.
- // Otherwise, it is meant to apply the underlying value for one specific transform-related property and be additive
- // to be combined with the other base value transform animations and interpolating animations.
- addAnimation(animation, matrixSource == TransformationMatrixSource::AskClient ? Additive::Yes : Additive::No);
- m_baseValueTransformAnimations.append(WTFMove(animation));
- };
-
- // Remove all running CA animations.
- for (auto& animation : m_animations) {
- if (animation.m_playState == PlayState::Playing || animation.m_playState == PlayState::Paused)
- removeCAAnimationFromLayer(animation);
- }
-
- // Also remove all the base value transform CA animations.
- for (auto& animation : m_baseValueTransformAnimations)
+ // Remove all animations so far.
+ for (auto& animation : m_animations)
removeCAAnimationFromLayer(animation);
- // Now remove all the animations marked as pending removal and all base value transform animations.
+ // Remove all animations from the list that were pending removal.
m_animations.removeAllMatching([&](LayerPropertyAnimation animation) {
return animation.m_pendingRemoval;
});
- m_baseValueTransformAnimations.clear();
- // Now that our list of animations is current, we can separate animations by property so that
- // we can apply them in order. We only need to apply the last animation applied for a given
- // individual transform property, so we keep a reference to that. For animations targeting
- // the transform property itself, we keep them in order since they all need to apply and build
- // on top of each other. Finally, animations that are not transform-related can be applied
- // right away since their order relative to transform animations does not matter.
- LayerPropertyAnimation* translateAnimation = nullptr;
- LayerPropertyAnimation* scaleAnimation = nullptr;
- LayerPropertyAnimation* rotateAnimation = nullptr;
- Vector<LayerPropertyAnimation*> transformAnimations;
-
+ // Add all remaining animations.
for (auto& animation : m_animations) {
- switch (animation.m_property) {
- case AnimatedPropertyTranslate:
- translateAnimation = &animation;
- break;
- case AnimatedPropertyScale:
- scaleAnimation = &animation;
- break;
- case AnimatedPropertyRotate:
- rotateAnimation = &animation;
- break;
- case AnimatedPropertyTransform:
- transformAnimations.append(&animation);
- break;
- case AnimatedPropertyOpacity:
- case AnimatedPropertyBackgroundColor:
- case AnimatedPropertyFilter:
-#if ENABLE(FILTERS_LEVEL_2)
- case AnimatedPropertyWebkitBackdropFilter:
-#endif
- addAnimation(animation, Additive::No);
- break;
- case AnimatedPropertyInvalid:
- ASSERT_NOT_REACHED();
- }
+ setAnimationOnLayer(animation);
+ if (animation.m_playState == PlayState::PausePending || animation.m_playState == PlayState::Paused) {
+ pauseCAAnimationOnLayer(animation);
+ animation.m_playState = PlayState::Paused;
+ } else
+ animation.m_playState = PlayState::Playing;
}
-
- // Now we can apply the transform-related animations, taking care to add them in the right order
- // (translate/scale/rotate/transform) and generate non-interpolating base value transform animations
- // for each property that is not otherwise interpolated.
- if (translateAnimation || scaleAnimation || rotateAnimation || !transformAnimations.isEmpty()) {
- // Start with a base identity transform to override the transform applied to the layer and have a
- // sound base to add animations on top of with additivity enabled.
- addBaseValueTransformAnimation(AnimatedPropertyTransform, TransformationMatrixSource::UseIdentityMatrix);
-
- // Core Animation might require additive animations to be applied in the reverse order.
-#if !PLATFORM(WIN) && !HAVE(CA_WHERE_ADDITIVE_TRANSFORMS_ARE_REVERSED)
- if (translateAnimation)
- addAnimation(*translateAnimation);
- else
- addBaseValueTransformAnimation(AnimatedPropertyTranslate);
-
- if (scaleAnimation)
- addAnimation(*scaleAnimation);
- else
- addBaseValueTransformAnimation(AnimatedPropertyScale);
-
- if (rotateAnimation)
- addAnimation(*rotateAnimation);
- else
- addBaseValueTransformAnimation(AnimatedPropertyRotate);
-
- for (auto* animation : transformAnimations)
- addAnimation(*animation);
- if (transformAnimations.isEmpty())
- addBaseValueTransformAnimation(AnimatedPropertyTransform);
-#else
- for (auto* animation : WTF::makeReversedRange(transformAnimations))
- addAnimation(*animation);
- if (transformAnimations.isEmpty())
- addBaseValueTransformAnimation(AnimatedPropertyTransform);
-
- if (rotateAnimation)
- addAnimation(*rotateAnimation);
- else
- addBaseValueTransformAnimation(AnimatedPropertyRotate);
-
- if (scaleAnimation)
- addAnimation(*scaleAnimation);
- else
- addBaseValueTransformAnimation(AnimatedPropertyScale);
-
- if (translateAnimation)
- addAnimation(*translateAnimation);
- else
- addBaseValueTransformAnimation(AnimatedPropertyTranslate);
-#endif
- }
}
bool GraphicsLayerCA::isRunningTransformAnimation() const
{
return m_animations.findMatching([&](LayerPropertyAnimation animation) {
- return animatedPropertyIsTransformOrRelated(animation.m_property) && (animation.m_playState == PlayState::Playing || animation.m_playState == PlayState::Paused);
+ return animation.m_property == AnimatedPropertyTransform && animation.m_playState == PlayState::Playing;
}) != notFound;
}
@@ -3146,7 +3010,7 @@
bool GraphicsLayerCA::createAnimationFromKeyframes(const KeyframeValueList& valueList, const Animation* animation, const String& animationName, Seconds timeOffset)
{
- ASSERT(!animatedPropertyIsTransformOrRelated(valueList.property()) && (!supportsAcceleratedFilterAnimations() || valueList.property() != AnimatedPropertyFilter));
+ ASSERT(valueList.property() != AnimatedPropertyTransform && (!supportsAcceleratedFilterAnimations() || valueList.property() != AnimatedPropertyFilter));
bool valuesOK;
@@ -3177,17 +3041,23 @@
bool GraphicsLayerCA::appendToUncommittedAnimations(const KeyframeValueList& valueList, const TransformOperations* operations, const Animation* animation, const String& animationName, const FloatSize& boxSize, int animationIndex, Seconds timeOffset, bool isMatrixAnimation)
{
TransformOperation::OperationType transformOp = isMatrixAnimation ? TransformOperation::MATRIX_3D : operations->operations().at(animationIndex)->type();
+#if !PLATFORM(WIN) && !HAVE(CA_WHERE_ADDITIVE_TRANSFORMS_ARE_REVERSED)
+ bool additive = animationIndex > 0;
+#else
+ int numAnimations = isMatrixAnimation ? 1 : operations->size();
+ bool additive = animationIndex < numAnimations - 1;
+#endif
RefPtr<PlatformCAAnimation> caAnimation;
bool validMatrices = true;
if (isKeyframe(valueList)) {
- caAnimation = createKeyframeAnimation(animation, propertyIdToString(valueList.property()), false);
+ caAnimation = createKeyframeAnimation(animation, propertyIdToString(valueList.property()), additive);
validMatrices = setTransformAnimationKeyframes(valueList, animation, caAnimation.get(), animationIndex, transformOp, isMatrixAnimation, boxSize);
} else {
if (animation->timingFunction()->isSpringTimingFunction())
- caAnimation = createSpringAnimation(animation, propertyIdToString(valueList.property()), false);
+ caAnimation = createSpringAnimation(animation, propertyIdToString(valueList.property()), additive);
else
- caAnimation = createBasicAnimation(animation, propertyIdToString(valueList.property()), false);
+ caAnimation = createBasicAnimation(animation, propertyIdToString(valueList.property()), additive);
validMatrices = setTransformAnimationEndpoints(valueList, animation, caAnimation.get(), animationIndex, transformOp, isMatrixAnimation, boxSize);
}
@@ -3200,7 +3070,7 @@
bool GraphicsLayerCA::createTransformAnimationsFromKeyframes(const KeyframeValueList& valueList, const Animation* animation, const String& animationName, Seconds timeOffset, const FloatSize& boxSize)
{
- ASSERT(animatedPropertyIsTransformOrRelated(valueList.property()));
+ ASSERT(valueList.property() == AnimatedPropertyTransform);
bool hasBigRotation;
int listIndex = validateTransformOperations(valueList, hasBigRotation);
@@ -3209,10 +3079,15 @@
bool validMatrices = true;
// If function lists don't match we do a matrix animation, otherwise we do a component hardware animation.
- bool isMatrixAnimation = valueList.property() == AnimatedPropertyTransform ? listIndex < 0 : true;
+ bool isMatrixAnimation = listIndex < 0;
int numAnimations = isMatrixAnimation ? 1 : operations->size();
+#if !PLATFORM(WIN) && !HAVE(CA_WHERE_ADDITIVE_TRANSFORMS_ARE_REVERSED)
for (int animationIndex = 0; animationIndex < numAnimations; ++animationIndex) {
+#else
+ // Some versions of CA require animation lists to be applied in reverse order (<rdar://problem/43908047> and <rdar://problem/9112233>).
+ for (int animationIndex = numAnimations - 1; animationIndex >= 0; --animationIndex) {
+#endif
if (!appendToUncommittedAnimations(valueList, operations, animation, animationName, boxSize, animationIndex, timeOffset, isMatrixAnimation)) {
validMatrices = false;
break;
@@ -4340,26 +4215,20 @@
static String animatedPropertyIDAsString(AnimatedPropertyID property)
{
- switch (property) {
- case AnimatedPropertyTranslate:
- case AnimatedPropertyScale:
- case AnimatedPropertyRotate:
- case AnimatedPropertyTransform:
+ if (property == AnimatedPropertyTransform)
return "transform";
- case AnimatedPropertyOpacity:
+ if (property == AnimatedPropertyOpacity)
return "opacity";
- case AnimatedPropertyBackgroundColor:
+ if (property == AnimatedPropertyBackgroundColor)
return "background-color";
- case AnimatedPropertyFilter:
+ if (property == AnimatedPropertyFilter)
return "filter";
+ if (property == AnimatedPropertyInvalid)
+ return "invalid";
#if ENABLE(FILTERS_LEVEL_2)
- case AnimatedPropertyWebkitBackdropFilter:
+ if (property == AnimatedPropertyWebkitBackdropFilter)
return "backdrop-filter";
#endif
- case AnimatedPropertyInvalid:
- return "invalid";
- }
- ASSERT_NOT_REACHED();
return "";
}
Modified: branches/safari-611.1.4-branch/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.h (268875 => 268876)
--- branches/safari-611.1.4-branch/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.h 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.h 2020-10-22 18:26:40 UTC (rev 268876)
@@ -597,7 +597,6 @@
RetainPtr<CGImageRef> m_pendingContentsImage;
Vector<LayerPropertyAnimation> m_animations;
- Vector<LayerPropertyAnimation> m_baseValueTransformAnimations;
Vector<FloatRect> m_dirtyRects;
Modified: branches/safari-611.1.4-branch/Source/WebCore/rendering/RenderLayerBacking.cpp (268875 => 268876)
--- branches/safari-611.1.4-branch/Source/WebCore/rendering/RenderLayerBacking.cpp 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/Source/WebCore/rendering/RenderLayerBacking.cpp 2020-10-22 18:26:40 UTC (rev 268876)
@@ -3561,9 +3561,6 @@
bool RenderLayerBacking::startAnimation(double timeOffset, const Animation& animation, const KeyframeList& keyframes)
{
bool hasOpacity = keyframes.containsProperty(CSSPropertyOpacity);
- bool hasRotate = renderer().isBox() && keyframes.containsProperty(CSSPropertyRotate);
- bool hasScale = renderer().isBox() && keyframes.containsProperty(CSSPropertyScale);
- bool hasTranslate = renderer().isBox() && keyframes.containsProperty(CSSPropertyTranslate);
bool hasTransform = renderer().isBox() && keyframes.containsProperty(CSSPropertyTransform);
bool hasFilter = keyframes.containsProperty(CSSPropertyFilter);
@@ -3572,12 +3569,9 @@
hasBackdropFilter = keyframes.containsProperty(CSSPropertyWebkitBackdropFilter);
#endif
- if (!hasOpacity && !hasRotate && !hasScale && !hasTranslate && !hasTransform && !hasFilter && !hasBackdropFilter)
+ if (!hasOpacity && !hasTransform && !hasFilter && !hasBackdropFilter)
return false;
- KeyframeValueList rotateVector(AnimatedPropertyRotate);
- KeyframeValueList scaleVector(AnimatedPropertyScale);
- KeyframeValueList translateVector(AnimatedPropertyTranslate);
KeyframeValueList transformVector(AnimatedPropertyTransform);
KeyframeValueList opacityVector(AnimatedPropertyOpacity);
KeyframeValueList filterVector(AnimatedPropertyFilter);
@@ -3597,15 +3591,6 @@
auto* tf = currentKeyframe.timingFunction();
bool isFirstOrLastKeyframe = key == 0 || key == 1;
- if ((hasRotate && isFirstOrLastKeyframe) || currentKeyframe.containsProperty(CSSPropertyRotate))
- rotateVector.insert(makeUnique<TransformAnimationValue>(key, keyframeStyle->rotate(), tf));
-
- if ((hasScale && isFirstOrLastKeyframe) || currentKeyframe.containsProperty(CSSPropertyScale))
- scaleVector.insert(makeUnique<TransformAnimationValue>(key, keyframeStyle->scale(), tf));
-
- if ((hasTranslate && isFirstOrLastKeyframe) || currentKeyframe.containsProperty(CSSPropertyTranslate))
- translateVector.insert(makeUnique<TransformAnimationValue>(key, keyframeStyle->translate(), tf));
-
if ((hasTransform && isFirstOrLastKeyframe) || currentKeyframe.containsProperty(CSSPropertyTransform))
transformVector.insert(makeUnique<TransformAnimationValue>(key, keyframeStyle->transform(), tf));
@@ -3626,15 +3611,6 @@
bool didAnimate = false;
- if (hasRotate && m_graphicsLayer->addAnimation(rotateVector, snappedIntRect(renderBox()->borderBoxRect()).size(), &animation, keyframes.animationName(), timeOffset))
- didAnimate = true;
-
- if (hasScale && m_graphicsLayer->addAnimation(scaleVector, snappedIntRect(renderBox()->borderBoxRect()).size(), &animation, keyframes.animationName(), timeOffset))
- didAnimate = true;
-
- if (hasTranslate && m_graphicsLayer->addAnimation(translateVector, snappedIntRect(renderBox()->borderBoxRect()).size(), &animation, keyframes.animationName(), timeOffset))
- didAnimate = true;
-
if (hasTransform && m_graphicsLayer->addAnimation(transformVector, snappedIntRect(renderBox()->borderBoxRect()).size(), &animation, keyframes.animationName(), timeOffset))
didAnimate = true;
@@ -3731,15 +3707,6 @@
{
CSSPropertyID cssProperty = CSSPropertyInvalid;
switch (property) {
- case AnimatedPropertyTranslate:
- cssProperty = CSSPropertyTranslate;
- break;
- case AnimatedPropertyScale:
- cssProperty = CSSPropertyScale;
- break;
- case AnimatedPropertyRotate:
- cssProperty = CSSPropertyRotate;
- break;
case AnimatedPropertyTransform:
cssProperty = CSSPropertyTransform;
break;
@@ -3766,12 +3733,6 @@
AnimatedPropertyID RenderLayerBacking::cssToGraphicsLayerProperty(CSSPropertyID cssProperty)
{
switch (cssProperty) {
- case CSSPropertyTranslate:
- return AnimatedPropertyTranslate;
- case CSSPropertyScale:
- return AnimatedPropertyScale;
- case CSSPropertyRotate:
- return AnimatedPropertyRotate;
case CSSPropertyTransform:
return AnimatedPropertyTransform;
case CSSPropertyOpacity:
@@ -3859,31 +3820,4 @@
return ts;
}
-TransformationMatrix RenderLayerBacking::transformMatrixForProperty(AnimatedPropertyID property) const
-{
- auto* box = renderBox();
- if (!box)
- return { };
-
- TransformationMatrix matrix;
-
- auto applyTransformOperation = [&](TransformOperation* operation) {
- if (operation)
- operation->apply(matrix, snappedIntRect(renderBox()->borderBoxRect()).size());
- };
-
- if (property == AnimatedPropertyTranslate)
- applyTransformOperation(renderer().style().translate());
- else if (property == AnimatedPropertyScale)
- applyTransformOperation(renderer().style().scale());
- else if (property == AnimatedPropertyRotate)
- applyTransformOperation(renderer().style().rotate());
- else if (property == AnimatedPropertyTransform)
- renderer().style().transform().apply(snappedIntRect(renderBox()->borderBoxRect()).size(), matrix);
- else
- ASSERT_NOT_REACHED();
-
- return matrix;
-}
-
} // namespace WebCore
Modified: branches/safari-611.1.4-branch/Source/WebCore/rendering/RenderLayerBacking.h (268875 => 268876)
--- branches/safari-611.1.4-branch/Source/WebCore/rendering/RenderLayerBacking.h 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/Source/WebCore/rendering/RenderLayerBacking.h 2020-10-22 18:26:40 UTC (rev 268876)
@@ -251,8 +251,6 @@
LayoutSize subpixelOffsetFromRenderer() const { return m_subpixelOffsetFromRenderer; }
- TransformationMatrix transformMatrixForProperty(AnimatedPropertyID) const final;
-
#if PLATFORM(IOS_FAMILY)
bool needsIOSDumpRenderTreeMainFrameRenderViewLayerIsAlwaysOpaqueHack(const GraphicsLayer&) const override;
#endif
Modified: branches/safari-611.1.4-branch/Source/WebCore/rendering/RenderLayerCompositor.cpp (268875 => 268876)
--- branches/safari-611.1.4-branch/Source/WebCore/rendering/RenderLayerCompositor.cpp 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/Source/WebCore/rendering/RenderLayerCompositor.cpp 2020-10-22 18:26:40 UTC (rev 268876)
@@ -2972,9 +2972,6 @@
#if ENABLE(FILTERS_LEVEL_2)
|| effectsStack->isCurrentlyAffectingProperty(CSSPropertyWebkitBackdropFilter)
#endif
- || effectsStack->isCurrentlyAffectingProperty(CSSPropertyTranslate)
- || effectsStack->isCurrentlyAffectingProperty(CSSPropertyScale)
- || effectsStack->isCurrentlyAffectingProperty(CSSPropertyRotate)
|| effectsStack->isCurrentlyAffectingProperty(CSSPropertyTransform);
}
}
@@ -3520,10 +3517,7 @@
if (auto styleable = Styleable::fromRenderer(renderer)) {
if (auto* effectsStack = styleable->keyframeEffectStack())
- return effectsStack->isCurrentlyAffectingProperty(CSSPropertyTransform)
- || effectsStack->isCurrentlyAffectingProperty(CSSPropertyRotate)
- || effectsStack->isCurrentlyAffectingProperty(CSSPropertyScale)
- || effectsStack->isCurrentlyAffectingProperty(CSSPropertyTranslate);
+ return effectsStack->isCurrentlyAffectingProperty(CSSPropertyTransform);
}
return false;
Modified: branches/safari-611.1.4-branch/Source/WebCore/rendering/style/WillChangeData.cpp (268875 => 268876)
--- branches/safari-611.1.4-branch/Source/WebCore/rendering/style/WillChangeData.cpp 2020-10-22 18:26:34 UTC (rev 268875)
+++ branches/safari-611.1.4-branch/Source/WebCore/rendering/style/WillChangeData.cpp 2020-10-22 18:26:40 UTC (rev 268876)
@@ -120,9 +120,6 @@
// Similarly, we don't want -webkit-overflow-scrolling-touch to
// always composite if there's no scrollable overflow.
switch (property) {
- case CSSPropertyScale:
- case CSSPropertyRotate:
- case CSSPropertyTranslate:
case CSSPropertyTransform:
return true;
default: