| 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 0b2f878764963cadf74a4cf1ec95240527f95c2f..d4c5482c73b6674e78209c4f3154c9ba5489da57 100644
|
| --- a/chrome/browser/android/offline_pages/prerendering_loader.cc
|
| +++ b/chrome/browser/android/offline_pages/prerendering_loader.cc
|
| @@ -8,6 +8,7 @@
|
| #include "base/logging.h"
|
| #include "base/metrics/histogram_macros.h"
|
| #include "base/threading/thread_task_runner_handle.h"
|
| +#include "base/time/time.h"
|
| #include "chrome/browser/profiles/profile.h"
|
| #include "content/public/browser/browser_context.h"
|
| #include "content/public/browser/browser_thread.h"
|
| @@ -88,6 +89,14 @@ PrerenderingLoader::~PrerenderingLoader() {
|
| CancelPrerender();
|
| }
|
|
|
| +void PrerenderingLoader::AddLoadingSignal(const char* signal_name) {
|
| + std::string signal(signal_name);
|
| + signal += ": ";
|
| + // We need a time in milliseconds, and JavaTime provides that.
|
| + signal += std::to_string(base::Time::Now().ToJavaTime());
|
| + signal_data_.push_back(signal);
|
| +}
|
| +
|
| bool PrerenderingLoader::LoadPage(const GURL& url,
|
| const LoadPageCallback& load_done_callback,
|
| const ProgressCallback& progress_callback) {
|
| @@ -98,6 +107,9 @@ bool PrerenderingLoader::LoadPage(const GURL& url,
|
| return false;
|
| }
|
|
|
| + // Add this signal to signal_data_.
|
| + AddLoadingSignal("StartLoading");
|
| +
|
| // Create a WebContents instance to define and hold a SessionStorageNamespace
|
| // for this load request.
|
| DCHECK(!session_contents_.get());
|
| @@ -152,6 +164,9 @@ void PrerenderingLoader::OnPrerenderStopLoading() {
|
| // Inform SnapshotController of OnLoad event so it can determine
|
| // when to consider it really LOADED.
|
| snapshot_controller_->DocumentOnLoadCompletedInMainFrame();
|
| +
|
| + // Add this signal to signal_data_.
|
| + AddLoadingSignal("OnLoad");
|
| }
|
|
|
| void PrerenderingLoader::OnPrerenderDomContentLoaded() {
|
| @@ -168,6 +183,9 @@ void PrerenderingLoader::OnPrerenderDomContentLoaded() {
|
| // second delay from this event).
|
| snapshot_controller_->DocumentAvailableInMainFrame();
|
| }
|
| +
|
| + // Add this signal to signal_data_.
|
| + AddLoadingSignal("OnDomContentLoaded");
|
| }
|
| }
|
|
|
| @@ -183,6 +201,10 @@ void PrerenderingLoader::OnPrerenderNetworkBytesChanged(int64_t bytes) {
|
|
|
| void PrerenderingLoader::StartSnapshot() {
|
| DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
|
| +
|
| + // Add this signal to signal_data_.
|
| + AddLoadingSignal("Snapshotting");
|
| +
|
| HandleLoadEvent();
|
| }
|
|
|
|
|