A little more context:
PrerenderingOffliner currently has a constant for whether to consider DocumentAvailableInMainFrame as a signal for snapshotting. This is always set to false because anecdotal evidence suggest that this signal comes too soon.
RecentTabHelper *does* pass the DocumentAvailableInMainFrame signal along. Speaking with carlosk@, this could be because we are limited by user's patience in last_n and want to make sure we get *a* snapshot.
BackgroundOffliner *should* have a similar constant, but was lost in the transition from a 2-second timer to snapshot controller. I wrongly assumed that the decision of whether to use this signal or not was taken care of by the SnapshotController. In addition, since RecentTabHelper was used as a reference, we did not "sensor" this signal the way PrerenderingOffliner did.
There are (potentially) 2 issues here:
1. BackgroundOffliner is using DocumentAvailableInMainFrame + 25 seconds as a signal for snapshotting
2. SnapshotController is relying on an outside filter for signals. If its role is to determine when to snapshot, why can't it figure out what signals are needed itself?
Additional context:
-- As part of this change, we are also removing the +25 seconds after DocumentAvailableInMainFrame from the BackgroundOffliner and PrerenderingOffliner. This is because neither was caring about DocumentAvailableInMainFrame signal anyway, so the +25 seconds is essentially void
Your change meets the bar and is auto-approved for M59. Please go ahead and merge the CL to branch 3071 manually. Please contact milestone owner if you have questions.
Owners: amineer@(Android), cmasso@(iOS), gkihumba@(ChromeOS), Abdul Syed@(Desktop)
For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Comment 1 by chili@chromium.org
, Apr 19 2017