commit | 678f025f7cde75d3c4c9dddbaefde07aec197faa | [log] [tgz] |
---|---|---|
author | danakj <[email protected]> | Fri Nov 09 21:46:34 2018 |
committer | Commit Bot <[email protected]> | Fri Nov 09 21:46:34 2018 |
tree | 6b418740ef0c3e229146427323a1b2c21c71bf80 | |
parent | de866d853a446d71213062c151d1af6761b0e0ec [diff] |
Reland "Don't make a LayerTreeFrameSink for a non-visible RenderWidget." This is a reland of 68d8dbc019fd37659252e273ade868aac7a9d8ac The flaky test this caused to fail is flaky before this CL. Investigation in https://bugs.chromium.org/p/chromium/issues/detail?id=903695. I will disable it if I can't resolve it. TBR= Original change's description: > Don't make a LayerTreeFrameSink for a non-visible RenderWidget. > > Importantly, non-visible RenderWidgets include swapped out RenderWidgets > which are zombies, without a frame, and which should not be used. > > This can happen if the RenderWidget swap out races with the posted task > from the compositor to make a LayerTreeFrameSink. When swapping out, the > compositor would be marked as not-visible, which would stop it from > making such requests, but one could already be in flight. > > In the other case, honoring the request for a non-visible compositor is > more benign, but we can delay it until the compositor is actually > visible again. This means if a context is lost, backgrounded tabs would > not all attempt to reconnect to the Gpu process at once. > > This is a better followup for the hacky > https://chromium-review.googlesource.com/c/chromium/src/+/1292711 which > was meant only for merge to a release branch. It reverts that change as > part of this one. > > [email protected] > > Change-Id: I058bdc37482d04bb86d65a7377b7520dad8573e7 > Bug: 896836, 419087 > Reviewed-on: https://chromium-review.googlesource.com/c/1292714 > Commit-Queue: danakj <[email protected]> > Reviewed-by: Daniel Cheng <[email protected]> > Reviewed-by: Antoine Labour <[email protected]> > Cr-Commit-Position: refs/heads/master@{#606655} Bug: 896836, 419087, 894899 Change-Id: Ic82c9c61d0e3154e20352470636e09b13248d775 Reviewed-on: https://chromium-review.googlesource.com/c/1329546 Reviewed-by: danakj <[email protected]> Commit-Queue: danakj <[email protected]> Cr-Commit-Position: refs/heads/master@{#606981}
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 .