| Index: chrome/browser/android/offline_pages/prerendering_loader.cc
|
| diff --git a/chrome/browser/android/offline_pages/prerendering_loader.cc b/chrome/browser/android/offline_pages/prerendering_loader.cc
|
| index 5eccbf9f696600b8045c7cfbf5e1cf3c315d6fe7..fd31ed8a0f7d13cf69cda47b6b7cb570fcc4ea50 100644
|
| --- a/chrome/browser/android/offline_pages/prerendering_loader.cc
|
| +++ b/chrome/browser/android/offline_pages/prerendering_loader.cc
|
| @@ -88,6 +88,17 @@ void PrerenderingLoader::AddLoadingSignal(const char* signal_name) {
|
| signal_data_.SetDouble(signal_name, delay);
|
| }
|
|
|
| +void PrerenderingLoader::AddResourceSignal(const ResourceDataType type,
|
| + int64_t started_count,
|
| + int64_t completed_count) {
|
| + double percentage = 100 * static_cast<double>(completed_count) /
|
| + static_cast<double>(started_count);
|
| + // TODO(petewil): Use actual signal type instead of hardcoding name to image.
|
| + signal_data_.SetDouble("ImagePercentage", percentage);
|
| + signal_data_.SetDouble("StartedImages", started_count);
|
| + signal_data_.SetDouble("CompletedImages", completed_count);
|
| +}
|
| +
|
| bool PrerenderingLoader::LoadPage(const GURL& url,
|
| const LoadPageCallback& load_done_callback,
|
| const ProgressCallback& progress_callback) {
|
| @@ -199,6 +210,14 @@ bool PrerenderingLoader::IsLowbarMet() {
|
| return is_lowbar_met_;
|
| }
|
|
|
| +void PrerenderingLoader::ObserveResourceTracking(const ResourceDataType type,
|
| + int64_t started_count,
|
| + int64_t completed_count) {
|
| + // Add the signal to extra data, and use for tracking.
|
| + if (type == ResourceDataType::IMAGE)
|
| + AddResourceSignal(type, started_count, completed_count);
|
| +}
|
| +
|
| void PrerenderingLoader::HandleLoadEvent() {
|
| // If still loading, check if the load succeeded or not, then update
|
| // the internal state (LOADED for success or IDLE for failure) and post
|
|
|