WebKit Bugzilla
Attachment 341453 Details for
Bug 170784
: [iOS] Animations with Bézier timing function not suspended on UI process when animation-play-state is set to "paused"
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
WIP Patch
170784-wip.patch (text/plain), 1.85 KB, created by
Frédéric Wang (:fredw)
on 2018-05-28 08:48:19 PDT
(
hide
)
Description:
WIP Patch
Filename:
MIME Type:
Creator:
Frédéric Wang (:fredw)
Created:
2018-05-28 08:48:19 PDT
Size:
1.85 KB
patch
obsolete
>diff --git a/Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemote.cpp b/Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemote.cpp >index 53968fcdb38..312399cd986 100644 >--- a/Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemote.cpp >+++ b/Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemote.cpp >@@ -328,16 +328,23 @@ void PlatformCALayerRemote::adoptSublayers(PlatformCALayer& source) > void PlatformCALayerRemote::addAnimationForKey(const String& key, PlatformCAAnimation& animation) > { > auto addResult = m_animations.set(key, &animation); >- if (addResult.isNewEntry) >- m_properties.addedAnimations.append(std::pair<String, PlatformCAAnimationRemote::Properties>(key, downcast<PlatformCAAnimationRemote>(animation).properties())); >- else { >+ bool appendToAddedAnimations = true; >+ if (!addResult.isNewEntry) { >+ // There is already an animation for this key. Verify whether it is pending to be sent to >+ // the UI process and update the key accordingly. > for (auto& keyAnimationPair : m_properties.addedAnimations) { > if (keyAnimationPair.first == key) { > keyAnimationPair.second = downcast<PlatformCAAnimationRemote>(animation).properties(); >+ appendToAddedAnimations = false; > break; > } > } >+ // The animation has already been received by the UI Process so it must be replaced. >+ if (appendToAddedAnimations) >+ m_properties.keyPathsOfAnimationsToRemove.add(key); > } >+ if (appendToAddedAnimations) >+ m_properties.addedAnimations.append(std::pair<String, PlatformCAAnimationRemote::Properties>(key, downcast<PlatformCAAnimationRemote>(animation).properties())); > > m_properties.notePropertiesChanged(RemoteLayerTreeTransaction::AnimationsChanged); >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 170784
:
340559
|
340560
|
341453
|
341454
|
341646
|
341650
|
342245
|
342414
|
342422
|
344170