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

Side by Side Diff: content/browser/frame_host/navigator_impl.cc

Issue 949473002: Avoid unnecessary casts in NavigationControllerImpl. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 5 years, 10 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
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 "content/browser/frame_host/navigator_impl.h" 5 #include "content/browser/frame_host/navigator_impl.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/metrics/histogram.h" 8 #include "base/metrics/histogram.h"
9 #include "base/time/time.h" 9 #include "base/time/time.h"
10 #include "content/browser/frame_host/frame_tree.h" 10 #include "content/browser/frame_host/frame_tree.h"
(...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after
184 RenderFrameHostImpl* render_frame_host, 184 RenderFrameHostImpl* render_frame_host,
185 const GURL& url, 185 const GURL& url,
186 bool is_transition_navigation) { 186 bool is_transition_navigation) {
187 bool is_error_page = (url.spec() == kUnreachableWebDataURL); 187 bool is_error_page = (url.spec() == kUnreachableWebDataURL);
188 bool is_iframe_srcdoc = (url.spec() == kAboutSrcDocURL); 188 bool is_iframe_srcdoc = (url.spec() == kAboutSrcDocURL);
189 GURL validated_url(url); 189 GURL validated_url(url);
190 RenderProcessHost* render_process_host = render_frame_host->GetProcess(); 190 RenderProcessHost* render_process_host = render_frame_host->GetProcess();
191 render_process_host->FilterURL(false, &validated_url); 191 render_process_host->FilterURL(false, &validated_url);
192 192
193 bool is_main_frame = render_frame_host->frame_tree_node()->IsMainFrame(); 193 bool is_main_frame = render_frame_host->frame_tree_node()->IsMainFrame();
194 NavigationEntryImpl* pending_entry = 194 NavigationEntryImpl* pending_entry = controller_->GetPendingEntry();
195 NavigationEntryImpl::FromNavigationEntry(controller_->GetPendingEntry());
196 if (is_main_frame) { 195 if (is_main_frame) {
197 // If there is no browser-initiated pending entry for this navigation and it 196 // If there is no browser-initiated pending entry for this navigation and it
198 // is not for the error URL, create a pending entry using the current 197 // is not for the error URL, create a pending entry using the current
199 // SiteInstance, and ensure the address bar updates accordingly. We don't 198 // SiteInstance, and ensure the address bar updates accordingly. We don't
200 // know the referrer or extra headers at this point, but the referrer will 199 // know the referrer or extra headers at this point, but the referrer will
201 // be set properly upon commit. 200 // be set properly upon commit.
202 bool has_browser_initiated_pending_entry = pending_entry && 201 bool has_browser_initiated_pending_entry = pending_entry &&
203 !pending_entry->is_renderer_initiated(); 202 !pending_entry->is_renderer_initiated();
204 if (!has_browser_initiated_pending_entry && !is_error_page) { 203 if (!has_browser_initiated_pending_entry && !is_error_page) {
205 NavigationEntryImpl* entry = NavigationEntryImpl::FromNavigationEntry( 204 NavigationEntryImpl* entry = NavigationEntryImpl::FromNavigationEntry(
(...skipping 208 matching lines...) Expand 10 before | Expand all | Expand 10 after
414 entry.GetURL(), 413 entry.GetURL(),
415 reload_type); 414 reload_type);
416 } 415 }
417 416
418 return true; 417 return true;
419 } 418 }
420 419
421 bool NavigatorImpl::NavigateToPendingEntry( 420 bool NavigatorImpl::NavigateToPendingEntry(
422 FrameTreeNode* frame_tree_node, 421 FrameTreeNode* frame_tree_node,
423 NavigationController::ReloadType reload_type) { 422 NavigationController::ReloadType reload_type) {
424 return NavigateToEntry( 423 return NavigateToEntry(frame_tree_node, *controller_->GetPendingEntry(),
425 frame_tree_node, 424 reload_type);
426 *NavigationEntryImpl::FromNavigationEntry(controller_->GetPendingEntry()),
427 reload_type);
428 } 425 }
429 426
430 void NavigatorImpl::DidNavigate( 427 void NavigatorImpl::DidNavigate(
431 RenderFrameHostImpl* render_frame_host, 428 RenderFrameHostImpl* render_frame_host,
432 const FrameHostMsg_DidCommitProvisionalLoad_Params& input_params) { 429 const FrameHostMsg_DidCommitProvisionalLoad_Params& input_params) {
433 // PlzNavigate 430 // PlzNavigate
434 // The navigation request has been committed so the browser process doesn't 431 // The navigation request has been committed so the browser process doesn't
435 // need to care about it anymore. 432 // need to care about it anymore.
436 if (base::CommandLine::ForCurrentProcess()->HasSwitch( 433 if (base::CommandLine::ForCurrentProcess()->HasSwitch(
437 switches::kEnableBrowserSideNavigation)) { 434 switches::kEnableBrowserSideNavigation)) {
(...skipping 488 matching lines...) Expand 10 before | Expand all | Expand 10 after
926 "Navigation.TimeToCommit_ExistingRenderer_BeforeUnloadDiscounted", 923 "Navigation.TimeToCommit_ExistingRenderer_BeforeUnloadDiscounted",
927 time_to_commit); 924 time_to_commit);
928 UMA_HISTOGRAM_TIMES( 925 UMA_HISTOGRAM_TIMES(
929 "Navigation.TimeToURLJobStart_ExistingRenderer_BeforeUnloadDiscounted", 926 "Navigation.TimeToURLJobStart_ExistingRenderer_BeforeUnloadDiscounted",
930 time_to_network); 927 time_to_network);
931 } 928 }
932 navigation_data_.reset(); 929 navigation_data_.reset();
933 } 930 }
934 931
935 } // namespace content 932 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/frame_host/navigation_entry_screenshot_manager.cc ('k') | content/browser/ssl/ssl_manager.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698