Consider making `document.visibilityState` work in chrome docs (reflect window occlusion)
Categories
(Core :: DOM: Core & HTML, task)
Tracking
()
People
(Reporter: emilio, Assigned: emilio)
References
(Blocks 2 open bugs, Regressed 2 open bugs)
Details
(Keywords: power)
Attachments
(3 files)
Seems it'd make the code a bit simpler and more consistent.
Assignee | ||
Comment 1•2 years ago
|
||
Just like it manages content, so that we stop chrome animations and such
in hidden or fully-occluded windows too. This already happened on macOS
for minimized windows via PauseCompositor, but this should be better and
more consistent.
Assignee | ||
Comment 2•2 years ago
|
||
This simplifies a bit the tabbrowser/tab switcher code, and makes it
work in all windows.
Comment 4•2 years ago
|
||
Backed out for causing multiple bc failures
- Backout link
- Push with failures
- Failure Log
- Failure line: TEST-UNEXPECTED-FAIL | browser/components/places/tests/browser/browser_toolbar_other_bookmarks.js | Test timed out -
- Failure Log 2
- Failure line 2: TEST-UNEXPECTED-FAIL | browser/base/content/test/gesture/browser_gesture_navigation.js | should be stopping anim -
Assignee | ||
Comment 5•2 years ago
|
||
Assignee | ||
Updated•2 years ago
|
Assignee | ||
Updated•2 years ago
|
Comment 10•2 years ago
|
||
Comment 11•2 years ago
|
||
Backed out for causing wpt failures on unload-bubbles.html
- Backout link
- Push with failures
- Failure Log
- Failure line: TEST-UNEXPECTED-TIMEOUT | /page-visibility/unload-bubbles.html | visibilitychange event bubbles when fired on unload - Test timed out
Assignee | ||
Updated•2 years ago
|
Comment 12•2 years ago
|
||
Comment 13•2 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/939cb6d24171
https://hg.mozilla.org/mozilla-central/rev/02862be5276f
Comment 14•2 years ago
|
||
Comment 15•2 years ago
|
||
Thanks for fixing this!
Here is a profile of the tab throbber animation with the patches applied: https://share.firefox.dev/3RHLaNE
(Steps to reproduce: I loaded http://tests.themasta.com/load-never-finishes.php in a tab (this page keeps the tab loading animation going forever), started the profiler, and then made the window fully occluded (in a way that Mac OS would detect, ie. I resized the window to avoid touching the left/right edges of the screen to avoid bug 1779557).)
What I see in the profile: when the window is fully occluded, the RefreshDriverTick (and CSS animation iteration) markers are throttled in the parent process main thread (the patches work!), but the full activity continues in the Renderer and Compositor threads, ie I can still reproduce bug 1768495.
Updated•2 years ago
|
Assignee | ||
Comment 17•2 years ago
|
||
Release Note Request (optional, but appreciated)
[Why is this notable]: Reduces battery usage by throttling animations in our UI inside occluded or minimized windows.
[Affects Firefox for Android]: no
[Suggested wording]: The Firefox UI itself will now be throttled for performance and battery usage when minimized or occluded, in the same way background tabs are.
[Links (documentation, blog post, etc)]: n/a
Updated•2 years ago
|
Description
•