Bug 187216 - DeclarativeAnimation should suspend, resume, & stop m_eventQueue
Summary: DeclarativeAnimation should suspend, resume, & stop m_eventQueue
Alias: None
Product: WebKit
Classification: Unclassified
Component: Animations (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Antoine Quint
Keywords: InRadar
Depends on:
Reported: 2018-06-29 23:32 PDT by Ryosuke Niwa
Modified: 2018-07-20 10:08 PDT (History)
4 users (show)

See Also:

Patch (3.95 KB, patch)
2018-07-19 18:04 PDT, Antoine Quint
rniwa: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Ryosuke Niwa 2018-06-29 23:32:11 PDT
We need to stop/suspend GenericEventQueue when DeclarativeAnimation, as an active DOM object, gets stopped, suspended.
We should also resume it when we get out of the page cache, etc..
Comment 1 Radar WebKit Bug Importer 2018-06-30 00:02:49 PDT
Comment 2 Antoine Quint 2018-07-19 17:21:13 PDT
DeclarativeAnimation is not an ActiveDOMObject… yet :)
Comment 3 Antoine Quint 2018-07-19 17:21:41 PDT
Except its superclass, WebAnimation, is. Duh.
Comment 4 Antoine Quint 2018-07-19 18:04:18 PDT
Created attachment 345412 [details]
Comment 5 Ryosuke Niwa 2018-07-19 19:24:44 PDT
Comment on attachment 345412 [details]

View in context: https://bugs.webkit.org/attachment.cgi?id=345412&action=review

> Source/WebCore/animation/DeclarativeAnimation.cpp:220
> +    ActiveDOMObject::suspend(reason);

There is no need to call this. It's empty.
But we should call WebAnimation::suspend(reason) to make this code future proof.

> Source/WebCore/animation/DeclarativeAnimation.cpp:226
> +    ActiveDOMObject::resume();

Comment 6 Antoine Quint 2018-07-20 10:08:49 PDT
Committed r234049: <https://trac.webkit.org/changeset/234049>