Changeset 278610 in webkit
- Timestamp:
- Jun 8, 2021, 9:27:50 AM (5 years ago)
- Location:
- trunk
- Files:
-
- 2 added
- 3 edited
-
LayoutTests/ChangeLog (modified) (1 diff)
-
LayoutTests/webanimations/accelerated-transform-animation-to-scale-zero-with-implicit-from-keyframe-expected.html (added)
-
LayoutTests/webanimations/accelerated-transform-animation-to-scale-zero-with-implicit-from-keyframe.html (added)
-
Source/WebCore/ChangeLog (modified) (1 diff)
-
Source/WebCore/animation/KeyframeEffect.cpp (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r278609 r278610 1 2021-06-08 Antoine Quint <graouts@webkit.org> 2 3 REGRESSION (r256095): Adding a border-radius, border, or box-shadow breaks animations from scale(0) 4 https://bugs.webkit.org/show_bug.cgi?id=218371 5 <rdar://problem/70906316> 6 7 Reviewed by Simon Fraser. 8 9 Add a test where we have an animation on an element with a a border and a transform animation to scale(0) where the 10 first keyframe is implicit. This test would fail prior to this patch. 11 12 * webanimations/accelerated-transform-animation-to-scale-zero-with-implicit-from-keyframe-expected.html: Added. 13 * webanimations/accelerated-transform-animation-to-scale-zero-with-implicit-from-keyframe.html: Added. 14 1 15 2021-06-08 Youenn Fablet <youenn@apple.com> 2 16 -
trunk/Source/WebCore/ChangeLog
r278609 r278610 1 2021-06-08 Antoine Quint <graouts@webkit.org> 2 3 REGRESSION (r256095): Adding a border-radius, border, or box-shadow breaks animations from scale(0) 4 https://bugs.webkit.org/show_bug.cgi?id=218371 5 <rdar://problem/70906316> 6 7 Reviewed by Simon Fraser. 8 9 When computing an animation's transform extent, we must account for implicit keyframes. 10 11 Test: webanimations/accelerated-transform-animation-to-scale-zero-with-implicit-from-keyframe.html 12 13 * animation/KeyframeEffect.cpp: 14 (WebCore::KeyframeEffect::computeExtentOfTransformAnimation const): 15 1 16 2021-06-08 Youenn Fablet <youenn@apple.com> and Victor M. Jaquez L. <vjaquez@igalia.com> 2 17 -
trunk/Source/WebCore/animation/KeyframeEffect.cpp
r278540 r278610 1896 1896 LayoutRect cumulativeBounds; 1897 1897 1898 auto addStyleToCumulativeBounds = [&](const RenderStyle* style) -> bool { 1899 auto keyframeBounds = bounds; 1900 1901 bool canCompute; 1902 if (transformFunctionListsMatch()) 1903 canCompute = computeTransformedExtentViaTransformList(rendererBox, *style, keyframeBounds); 1904 else 1905 canCompute = computeTransformedExtentViaMatrix(rendererBox, *style, keyframeBounds); 1906 1907 if (!canCompute) 1908 return false; 1909 1910 cumulativeBounds.unite(keyframeBounds); 1911 return true; 1912 }; 1913 1898 1914 for (const auto& keyframe : m_blendingKeyframes.keyframes()) { 1899 1915 const auto* keyframeStyle = keyframe.style(); … … 1908 1924 } 1909 1925 1910 auto keyframeBounds = bounds; 1911 1912 bool canCompute; 1913 if (transformFunctionListsMatch()) 1914 canCompute = computeTransformedExtentViaTransformList(rendererBox, *keyframeStyle, keyframeBounds); 1915 else 1916 canCompute = computeTransformedExtentViaMatrix(rendererBox, *keyframeStyle, keyframeBounds); 1917 1918 if (!canCompute) 1926 if (!addStyleToCumulativeBounds(keyframeStyle)) 1919 1927 return false; 1920 1921 cumulativeBounds.unite(keyframeBounds); 1928 } 1929 1930 if (m_blendingKeyframes.hasImplicitKeyframes()) { 1931 if (!addStyleToCumulativeBounds(&box.style())) 1932 return false; 1922 1933 } 1923 1934
Note:
See TracChangeset
for help on using the changeset viewer.