Revert "feed: Don't spin the spinner when its ancestors are hidden"

This reverts commit 46c618aa01355f4bb1a227dc5aae1dcdc790528e.

Reason for revert: crbug.com/1152817

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}

TBR=dewittj@chromium.org,jianli@chromium.org,skyostil@chromium.org,eseckler@chromium.org

Change-Id: Iac8698c1bd7cf2eb5101e7a85811ab15ff929f5f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 1151391
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2560825
Reviewed-by: Gang Wu <gangwu@chromium.org>
Commit-Queue: Gang Wu <gangwu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#831060}
6 files changed
tree: 55e22f55c545029e2b9c2a1ca44c38ad749b5189
  1. android_webview/
  2. apps/
  3. ash/
  4. base/
  5. build/
  6. build_overrides/
  7. buildtools/
  8. cc/
  9. chrome/
  10. chromecast/
  11. chromeos/
  12. cloud_print/
  13. codelabs/
  14. components/
  15. content/
  16. courgette/
  17. crypto/
  18. dbus/
  19. device/
  20. docs/
  21. extensions/
  22. fuchsia/
  23. gin/
  24. google_apis/
  25. google_update/
  26. gpu/
  27. headless/
  28. infra/
  29. ios/
  30. ipc/
  31. jingle/
  32. media/
  33. mojo/
  34. native_client_sdk/
  35. net/
  36. pdf/
  37. ppapi/
  38. printing/
  39. remoting/
  40. rlz/
  41. sandbox/
  42. services/
  43. skia/
  44. sql/
  45. storage/
  46. styleguide/
  47. testing/
  48. third_party/
  49. tools/
  50. ui/
  51. url/
  52. weblayer/
  53. .clang-format
  54. .clang-tidy
  55. .eslintrc.js
  56. .git-blame-ignore-revs
  57. .gitattributes
  58. .gitignore
  59. .gn
  60. .vpython
  61. .vpython3
  62. .yapfignore
  63. AUTHORS
  64. BUILD.gn
  65. CODE_OF_CONDUCT.md
  66. codereview.settings
  67. DEPS
  68. DIR_METADATA
  69. ENG_REVIEW_OWNERS
  70. LICENSE
  71. LICENSE.chromium_os
  72. OWNERS
  73. PRESUBMIT.py
  74. PRESUBMIT_test.py
  75. PRESUBMIT_test_mocks.py
  76. README.md
  77. WATCHLISTS
README.md

Logo Chromium

Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.

The project's web site is https://www.chromium.org.

Documentation in the source is rooted in docs/README.md.

Learn how to Get Around the Chromium Source Code Directory Structure .

For historical reasons, there are some small top level directories. Now the guidance is that new top level directories are for product (e.g. Chrome, Android WebView, Ash). Even if these products have multiple executables, the code should be in subdirectories of the product.