• Eric Seckler's avatar
    Reland "feed: Don't spin the spinner when its ancestors are hidden" · b9a6206a
    Eric Seckler authored
    This is a reland of 46c618aa with an
    added null check in MaterialSpinnerView.updateAnimationState (see diff
    from patch set 1).
    
    Original change's description:
    > feed: Don't spin the spinner when its ancestors are hidden
    >
    > Currently, the spinner used in feed will only stop() its animation if
    > the spinner view itself is hidden through setVisibility(). However, in
    > reality, one of its ancestor views is hidden instead.
    >
    > This causes a continuous invisible animation to tick at the display's
    > refresh rate (usually 60fps) if the spinner was ever shown, until it is
    > destroyed (when the NTP views are eventually evicted).
    >
    > Instead, stop the animation also when any of the spinner's ancestors
    > become hidden by listening for visibility changes and window attachment
    > state changes.
    >
    > Bug: 1151391
    > Change-Id: Ib7b7a8e56f083619420fd58f4340991253402535
    > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2552781
    > Reviewed-by: Sami Kyöstilä <skyostil@chromium.org>
    > Reviewed-by: Jian Li <jianli@chromium.org>
    > Commit-Queue: Eric Seckler <eseckler@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#830957}
    
    Bug: 1151391, 1152817
    Change-Id: I306b623fc5d7243cf96998367f01380a80833aa7
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2560108Reviewed-by: default avatarSami Kyöstilä <skyostil@chromium.org>
    Reviewed-by: default avatarJian Li <jianli@chromium.org>
    Auto-Submit: Eric Seckler <eseckler@chromium.org>
    Commit-Queue: Jian Li <jianli@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#831188}
    b9a6206a
feed_feature_list.cc 3.59 KB