New issue
Advanced search Search tips

Issue 659570 link

Starred by 5 users

Issue metadata

Status: Available
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

CSS animations on visibility:hidden elements keep running

Project Member Reported by skyos...@chromium.org, Oct 26 2016

Issue description

A continuous CSS animation on an element with visibility:hidden keeps the compositor rendering continuously even though the animation is not visible to the user.

Repro: http://fiddle.jshell.net/Ldzau35p/show/light/

<style type="text/css">
.d {
  animation: spin 10000ms linear 0ms infinite;
  visibility: hidden;
}
@keyframes spin {
  100% { transform: rotate(360deg); }
}
</style>

<p class="d">you spin me round</p>
 
Trace file.
trace_hidden_animation.json.gz
862 KB Download
Components: Blink>Animation
(Landed a workaround in about:tracing where I found this: https://codereview.chromium.org/2454663002/)
Project Member

Comment 4 by bugdroid1@chromium.org, Oct 26 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/5bb52488bbf91f60a861f5c5e02fda1dd52d5588

commit 5bb52488bbf91f60a861f5c5e02fda1dd52d5588
Author: catapult-deps-roller <catapult-deps-roller@chromium.org>
Date: Wed Oct 26 18:45:40 2016

Roll src/third_party/catapult/ e1cc507f8..497392574 (1 commit).

https://chromium.googlesource.com/external/github.com/catapult-project/catapult.git/+log/e1cc507f8122..497392574899

$ git log e1cc507f8..497392574 --date=short --no-merges --format='%ad %ae %s'
2016-10-26 skyostil Remove hidden spinner animation

BUG=659570

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, see:
http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls

CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_optional_gpu_tests_rel
TBR=catapult-sheriff@chromium.org

Review-Url: https://codereview.chromium.org/2446893007
Cr-Commit-Position: refs/heads/master@{#427759}

[modify] https://crrev.com/5bb52488bbf91f60a861f5c5e02fda1dd52d5588/DEPS

Comment 5 by sunxd@chromium.org, Oct 26 2016

Cc: ajuma@chromium.org
Ali, does cc handle rotation animation?

Comment 6 by ajuma@chromium.org, Oct 26 2016

Cc: loyso@chromium.org
It does. Continuing to create composited layers and continuing to tick the animation on the compositor was done to fix bugs like  issue 444852 , where toggling visibility:hidden broke animations (they're expected to behave as if the animation continues while hidden). But perhaps there's a better way to do this, e.g., maybe Blink can destroy the composited animation but remember its start time, and then re-add it with that start time when it becomes visible again.

Comment 7 by nainar@chromium.org, Oct 26 2016

Status: Available (was: Untriaged)

Comment 8 by nainar@chromium.org, Oct 26 2016

Labels: Performance
Labels: Squash-A-Bug Update-Quarterly
Making this work without breaking  issue 444852  probably involves a simple tweak to CSSAnimations::calculateCompositorAnimationUpdate().
Labels: -Performance Performance-Loading Performance-Responsiveness
Labels: -Squash-A-Bug Hotlist-Squash-A-Bug
Project Member

Comment 12 by sheriffbot@chromium.org, Jul 2

Labels: Hotlist-Recharge-Cold
Status: Untriaged (was: Available)
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue.

Sorry for the inconvenience if the bug really should have been left as Available.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Labels: -Hotlist-Recharge-Cold
Status: Available (was: Untriaged)

Sign in to add a comment