| Index: chrome/browser/prerender/prerender_contents.cc
|
| diff --git a/chrome/browser/prerender/prerender_contents.cc b/chrome/browser/prerender/prerender_contents.cc
|
| index ad2081029a542391ab83ed7d555844e1deda7845..288cfa09c531f3825978a6f83f357d652c28661c 100644
|
| --- a/chrome/browser/prerender/prerender_contents.cc
|
| +++ b/chrome/browser/prerender/prerender_contents.cc
|
| @@ -183,6 +183,10 @@ void PrerenderContents::Observer::OnPrerenderStopLoading(
|
| PrerenderContents* contents) {
|
| }
|
|
|
| +void PrerenderContents::Observer::OnPrerenderDomContentLoaded(
|
| + PrerenderContents* contents) {
|
| +}
|
| +
|
| void PrerenderContents::Observer::OnPrerenderCreatedMatchCompleteReplacement(
|
| PrerenderContents* contents, PrerenderContents* replacement) {
|
| }
|
| @@ -217,6 +221,7 @@ PrerenderContents::PrerenderContents(
|
| origin_(origin),
|
| experiment_id_(experiment_id),
|
| creator_child_id_(-1),
|
| + main_frame_id_(0),
|
| cookie_status_(0) {
|
| DCHECK(prerender_manager != NULL);
|
| }
|
| @@ -477,6 +482,11 @@ void PrerenderContents::NotifyPrerenderStopLoading() {
|
| FOR_EACH_OBSERVER(Observer, observer_list_, OnPrerenderStopLoading(this));
|
| }
|
|
|
| +void PrerenderContents::NotifyPrerenderDomContentLoaded() {
|
| + FOR_EACH_OBSERVER(Observer, observer_list_,
|
| + OnPrerenderDomContentLoaded(this));
|
| +}
|
| +
|
| void PrerenderContents::NotifyPrerenderStop() {
|
| DCHECK_NE(FINAL_STATUS_MAX, final_status_);
|
| FOR_EACH_OBSERVER(Observer, observer_list_, OnPrerenderStop(this));
|
| @@ -564,6 +574,13 @@ void PrerenderContents::DidStopLoading(
|
| NotifyPrerenderStopLoading();
|
| }
|
|
|
| +void PrerenderContents::DocumentLoadedInFrame(
|
| + int64 frame_id,
|
| + RenderViewHost* render_view_host) {
|
| + if (frame_id == main_frame_id_)
|
| + NotifyPrerenderDomContentLoaded();
|
| +}
|
| +
|
| void PrerenderContents::DidStartProvisionalLoadForFrame(
|
| int64 frame_id,
|
| int64 parent_frame_id,
|
| @@ -586,6 +603,18 @@ void PrerenderContents::DidStartProvisionalLoadForFrame(
|
| }
|
| }
|
|
|
| +void PrerenderContents::DidCommitProvisionalLoadForFrame(
|
| + int64 frame_id,
|
| + const base::string16& frame_unique_name,
|
| + bool is_main_frame,
|
| + const GURL& url,
|
| + content::PageTransition transition_type,
|
| + RenderViewHost* render_view_host) {
|
| + if (is_main_frame) {
|
| + main_frame_id_ = frame_id;
|
| + }
|
| +}
|
| +
|
| void PrerenderContents::DidFinishLoad(int64 frame_id,
|
| const GURL& validated_url,
|
| bool is_main_frame,
|
|
|