Bug 140374
| Summary: | Web Replay: animations should pause when deterministic playback is paused | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Brian Burg <burg> |
| Component: | Animations | Assignee: | Nobody <webkit-unassigned> |
| Status: | RESOLVED LATER | ||
| Severity: | Normal | CC: | bburg, dino, joepeck, kling |
| Priority: | P2 | ||
| Version: | 528+ (Nightly build) | ||
| Hardware: | All | ||
| OS: | All | ||
| Bug Depends on: | |||
| Bug Blocks: | 136290 | ||
Brian Burg
It would be nice to suspend animations while a playback is paused, using the same code path as suspending when changing tabs or for a modal dialog.
Some issues with this: the code to suspend (Document::suspend+resumeScheduledTasks / PageGroupLoadDeferrer) will trigger timers which are normally deterministic such as ScriptRunner::m_timer and animation timers, which would cause a divergence by over-scheduling the timer. If playback is paused and we call suspendScheduledTasks, it calls ScriptRunner's m_timer.stop(). A subsequent resumeScheduledTasks will do m_timer.startOneShot(0, this). I *think* that this second startOneShot should be ignored, as it could run JS prematurely if some scripts were pending when playback pauses.
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Blaze Burg
Closing web replay-related bugs until we resume working on the feature again.