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.
Pushed by ealvarez@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/6d3f5ad32cd2 Make tabbrowser manage chrome BC activeness. r=Gijs
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
|
||
Pushed by ealvarez@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/ea2b3be0fb5c Disable Windows' window occlusion in some more mochitests. r=sotaro
Assignee | ||
Updated•2 years ago
|
Assignee | ||
Updated•2 years ago
|
Pushed by ealvarez@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/a68a015349ed Make tabbrowser manage chrome BC activeness. r=Gijs https://hg.mozilla.org/integration/autoland/rev/23fe4f24d483 Do this in toolkit instead. r=Gijs
Pushed by emilio@crisal.io: https://hg.mozilla.org/integration/autoland/rev/645bdd59bb99 Annotate a test on Linux for now.
Pushed by bszekely@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/eab896a61170 Annotate another Linux test for now.
Comment 10•2 years ago
|
||
Pushed by emilio@crisal.io: https://hg.mozilla.org/integration/autoland/rev/fbb29df4aa9e Disable occlusion in another mochitest.
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
|
||
Pushed by ealvarez@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/939cb6d24171 Make tabbrowser manage chrome BC activeness. r=Gijs https://hg.mozilla.org/integration/autoland/rev/02862be5276f Do this in toolkit instead. r=Gijs
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.
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
•