Hack for demo screensaver disappearing momentarily after login
There is an existing bug in Chrome OS where the screensaver is told to hide even though it's still visible. Before crrev.com/c/1277826 this used to only cause a freeze, but since then the screensaver disappears altogether. The reason is that during the first 10-20 seconds after logging into Chrome OS, there are 30+ renderers spawned in the background that don't actually draw anything. These renderers overwhelm FrameEvictionManager such that any renderer that goes hidden (e.g. the screensaver) will have its surface immediately evicted. This used to work fine before because notifying FrameEvictionManager used to happen in OnFirstSurfaceActivation as opposed to EmbedSurface, and therefore these useless renderers would not interfere with frame eviction. The Chrome OS team is worried they won't have a proper fix in time, so for the time being implement a behaviour similar to what we had before: only report DelegatedFrameHosts to FrameEvictionManager that have seen their first surface activation. Bug: 900373 Change-Id: Ic98929f8e1c834de2af22aa299805395be6a9072 Reviewed-on: https://chromium-review.googlesource.com/c/1334590 Commit-Queue: Saman Sami <samans@chromium.org> Reviewed-by:Fady Samuel <fsamuel@chromium.org> Cr-Commit-Position: refs/heads/master@{#608041}
Showing
Please register or sign in to comment