Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(737)

Side by Side Diff: chrome/browser/prerender/prerender_tab_helper.cc

Issue 10316020: Remove WebContentsImpl::OnDidRedirectProvisionalLoad. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: ...and remove from WebContentsObserver. Created 8 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/prerender/prerender_tab_helper.h" 5 #include "chrome/browser/prerender/prerender_tab_helper.h"
6 6
7 #include "base/metrics/histogram.h" 7 #include "base/metrics/histogram.h"
8 #include "base/string_number_conversions.h" 8 #include "base/string_number_conversions.h"
9 #include "base/time.h" 9 #include "base/time.h"
10 #include "chrome/browser/prerender/prerender_manager.h" 10 #include "chrome/browser/prerender/prerender_manager.h"
(...skipping 23 matching lines...) Expand all
34 } // namespace 34 } // namespace
35 35
36 PrerenderTabHelper::PrerenderTabHelper(TabContentsWrapper* tab) 36 PrerenderTabHelper::PrerenderTabHelper(TabContentsWrapper* tab)
37 : content::WebContentsObserver(tab->web_contents()), 37 : content::WebContentsObserver(tab->web_contents()),
38 tab_(tab) { 38 tab_(tab) {
39 } 39 }
40 40
41 PrerenderTabHelper::~PrerenderTabHelper() { 41 PrerenderTabHelper::~PrerenderTabHelper() {
42 } 42 }
43 43
44 void PrerenderTabHelper::ProvisionalChangeToMainFrameUrl(
45 const GURL& url,
46 const GURL& opener_url) {
47 url_ = url;
48 RecordPageviewEvent(PAGEVIEW_EVENT_NEW_URL);
cbentzel 2012/05/15 20:26:59 Note to self: I'm not sure we can get rid of this
49 if (IsTopSite(url))
50 RecordPageviewEvent(PAGEVIEW_EVENT_TOP_SITE_NEW_URL);
51 PrerenderManager* prerender_manager = MaybeGetPrerenderManager();
52 if (!prerender_manager)
53 return;
54 if (prerender_manager->IsWebContentsPrerendering(web_contents()))
55 return;
56 prerender_manager->MarkWebContentsAsNotPrerendered(web_contents());
57 }
58
59 void PrerenderTabHelper::DidCommitProvisionalLoadForFrame( 44 void PrerenderTabHelper::DidCommitProvisionalLoadForFrame(
60 int64 frame_id, 45 int64 frame_id,
61 bool is_main_frame, 46 bool is_main_frame,
62 const GURL& validated_url, 47 const GURL& validated_url,
63 content::PageTransition transition_type) { 48 content::PageTransition transition_type) {
64 if (!is_main_frame) 49 if (!is_main_frame)
65 return; 50 return;
66 PrerenderManager* prerender_manager = MaybeGetPrerenderManager(); 51 PrerenderManager* prerender_manager = MaybeGetPrerenderManager();
67 if (!prerender_manager) 52 if (!prerender_manager)
68 return; 53 return;
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
143 pplt_load_start_ = base::TimeTicks::Now(); 128 pplt_load_start_ = base::TimeTicks::Now();
144 } 129 }
145 } 130 }
146 131
147 bool PrerenderTabHelper::IsTopSite(const GURL& url) { 132 bool PrerenderTabHelper::IsTopSite(const GURL& url) {
148 PrerenderManager* pm = MaybeGetPrerenderManager(); 133 PrerenderManager* pm = MaybeGetPrerenderManager();
149 return (pm && pm->IsTopSite(url)); 134 return (pm && pm->IsTopSite(url));
150 } 135 }
151 136
152 } // namespace prerender 137 } // namespace prerender
OLDNEW
« no previous file with comments | « chrome/browser/prerender/prerender_tab_helper.h ('k') | content/browser/renderer_host/render_view_host_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698