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

Unified Diff: content/browser/frame_host/render_frame_host_manager.cc

Issue 1418853003: Remove RFHM::GetNavigatingWebUI() and RFHM::web_ui(). (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@webui-refactor
Patch Set: Rebase and minor comment change. Created 5 years, 1 month 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 side-by-side diff with in-line comments
Download patch
Index: content/browser/frame_host/render_frame_host_manager.cc
diff --git a/content/browser/frame_host/render_frame_host_manager.cc b/content/browser/frame_host/render_frame_host_manager.cc
index e4c7fd7f0eb44e0417a87ccb26a498e45084f89e..9d2aaff31a7f0891fc11e004ac629219c9bdad12 100644
--- a/content/browser/frame_host/render_frame_host_manager.cc
+++ b/content/browser/frame_host/render_frame_host_manager.cc
@@ -218,7 +218,6 @@ RenderFrameHostManager::RenderFrameHostManager(
render_widget_delegate_(render_widget_delegate),
proxy_hosts_(new RenderFrameProxyHostMap(this)),
interstitial_page_(nullptr),
- current_web_ui_is_navigating_(false),
weak_factory_(this) {
DCHECK(frame_tree_node_);
}
@@ -283,21 +282,6 @@ RenderViewHostImpl* RenderFrameHostManager::pending_render_view_host() const {
return pending_render_frame_host_->render_view_host();
}
-WebUIImpl* RenderFrameHostManager::GetNavigatingWebUI() const {
- if (current_web_ui_is_navigating_)
- return render_frame_host_->web_ui();
-
- if (base::CommandLine::ForCurrentProcess()->HasSwitch(
- switches::kEnableBrowserSideNavigation)) {
- if (speculative_render_frame_host_)
- return speculative_render_frame_host_->web_ui();
- } else {
- if (pending_render_frame_host_)
- return pending_render_frame_host_->web_ui();
- }
- return nullptr;
-}
-
RenderWidgetHostView* RenderFrameHostManager::GetRenderWidgetHostView() const {
if (interstitial_page_)
return interstitial_page_->GetView();
@@ -414,8 +398,8 @@ RenderFrameHostImpl* RenderFrameHostManager::Navigate(
if (!InitRenderView(dest_render_frame_host->render_view_host(), nullptr))
return nullptr;
- if (GetNavigatingWebUI()) {
- GetNavigatingWebUI()->RenderViewCreated(
+ if (dest_render_frame_host->web_ui()) {
+ dest_render_frame_host->web_ui()->RenderViewCreated(
dest_render_frame_host->render_view_host());
}
@@ -669,14 +653,15 @@ void RenderFrameHostManager::CommitPendingIfNecessary(
RenderFrameHostImpl* render_frame_host,
bool was_caused_by_user_gesture) {
if (!pending_render_frame_host_ && !speculative_render_frame_host_) {
- DCHECK(!current_web_ui_is_navigating_ || render_frame_host_->web_ui());
// We should only hear this from our current renderer.
DCHECK_EQ(render_frame_host_, render_frame_host);
- // A commit is required if there is a navigating WebUI, even without a
- // pending or speculative RenderFrameHost.
- if (GetNavigatingWebUI())
+ // If the current RenderFrameHost has a WebUI it must be committed
Charlie Reis 2015/11/09 07:02:02 nit: End sentence with period.
carlosk 2015/11/10 10:28:55 Done.
+ // Note: for when one tries to move same-site commit logic into
Charlie Reis 2015/11/09 07:02:02 nit: s/for when/If/
carlosk 2015/11/10 10:28:55 Done.
+ // RenderFrameHost itself mind that the focus setting logic inside
Charlie Reis 2015/11/09 07:02:02 nit: comma after "itself"
carlosk 2015/11/10 10:28:55 Done.
+ // CommitPending also needs to be moved there.
+ if (render_frame_host_->web_ui())
CommitPending();
return;
}
@@ -1055,7 +1040,6 @@ RenderFrameHostImpl* RenderFrameHostManager::GetFrameHostForNavigation(
speculative_render_frame_host_->render_view_host());
}
DCHECK(speculative_render_frame_host_);
- DCHECK_EQ(GetNavigatingWebUI(), speculative_render_frame_host_->web_ui());
navigation_rfh = speculative_render_frame_host_.get();
@@ -1068,7 +1052,6 @@ RenderFrameHostImpl* RenderFrameHostManager::GetFrameHostForNavigation(
// RFH isn't live.)
CommitPending();
}
- DCHECK(!current_web_ui_is_navigating_);
}
DCHECK(navigation_rfh &&
(navigation_rfh == render_frame_host_.get() ||
@@ -1082,8 +1065,8 @@ RenderFrameHostImpl* RenderFrameHostManager::GetFrameHostForNavigation(
if (!InitRenderView(navigation_rfh->render_view_host(), nullptr))
return nullptr;
- if (GetNavigatingWebUI()) {
- GetNavigatingWebUI()->RenderViewCreated(
+ if (navigation_rfh->web_ui()) {
+ navigation_rfh->web_ui()->RenderViewCreated(
navigation_rfh->render_view_host());
}
@@ -1106,9 +1089,6 @@ RenderFrameHostImpl* RenderFrameHostManager::GetFrameHostForNavigation(
void RenderFrameHostManager::CleanUpNavigation() {
CHECK(base::CommandLine::ForCurrentProcess()->HasSwitch(
switches::kEnableBrowserSideNavigation));
- // TODO(carlosk): the discarding of the current RFH WebUI and the cleanup of
- // the speculative RFH should not always happen together.
- current_web_ui_is_navigating_ = false;
if (speculative_render_frame_host_)
DiscardUnusedFrame(UnsetSpeculativeRenderFrameHost());
}
@@ -1734,7 +1714,6 @@ bool RenderFrameHostManager::CreateSpeculativeRenderFrameHost(
SiteInstance* new_instance) {
CHECK(new_instance);
CHECK_NE(old_instance, new_instance);
- CHECK(!current_web_ui_is_navigating_);
// The process for the new SiteInstance may (if we're sharing a process with
// another host that already initialized it) or may not (we have our own
@@ -2089,8 +2068,6 @@ void RenderFrameHostManager::CommitPending() {
bool will_focus_location_bar = delegate_->FocusLocationBarByDefault();
if (!pending_render_frame_host_ && !speculative_render_frame_host_) {
- DCHECK_EQ(current_web_ui_is_navigating_, !!render_frame_host_->web_ui());
- current_web_ui_is_navigating_ = false;
// If there's no pending/speculative RenderFrameHost then the current
// RenderFrameHost is committing.
if (will_focus_location_bar)
@@ -2292,7 +2269,6 @@ RenderFrameHostImpl* RenderFrameHostManager::UpdateStateForNavigate(
// New SiteInstance: create a pending RFH to navigate.
- current_web_ui_is_navigating_ = false;
CreatePendingRenderFrameHost(current_instance, new_instance.get());
DCHECK(pending_render_frame_host_);
if (!pending_render_frame_host_)
@@ -2304,9 +2280,6 @@ RenderFrameHostImpl* RenderFrameHostManager::UpdateStateForNavigate(
pending_render_frame_host_->render_view_host());
}
- // We now have a pending RFH and possibly an associated pending WebUI.
- DCHECK_EQ(GetNavigatingWebUI(), pending_render_frame_host_->web_ui());
-
// Check if our current RFH is live before we set up a transition.
if (!render_frame_host_->IsRenderFrameLive()) {
// The current RFH is not live. There's no reason to sit around with a
@@ -2382,19 +2355,15 @@ void RenderFrameHostManager::UpdateWebUIOnCurrentFrameHost(const GURL& dest_url,
if (changed_web_ui)
CheckWebUITransition(previous_web_ui_type, dest_url, dest_is_restore);
- // If there is a WebUI in the current RenderFrameHost, it will navigate.
- current_web_ui_is_navigating_ = !!render_frame_host_->web_ui();
- DCHECK_EQ(GetNavigatingWebUI(), render_frame_host_->web_ui());
-
// If the current RenderFrameHost has a WebUI and the associated RenderFrame
// is alive, notify to the WebUI that the RenderView is being created or
// reused depending on whether the WebUI was changed or not.
- if (GetNavigatingWebUI() && render_frame_host_->IsRenderFrameLive()) {
+ if (render_frame_host_->web_ui() && render_frame_host_->IsRenderFrameLive()) {
if (changed_web_ui) {
- GetNavigatingWebUI()->RenderViewCreated(
+ render_frame_host_->web_ui()->RenderViewCreated(
render_frame_host_->render_view_host());
} else {
- GetNavigatingWebUI()->RenderViewReused(
+ render_frame_host_->web_ui()->RenderViewReused(
render_frame_host_->render_view_host(),
frame_tree_node_->IsMainFrame());
}
@@ -2404,7 +2373,6 @@ void RenderFrameHostManager::UpdateWebUIOnCurrentFrameHost(const GURL& dest_url,
void RenderFrameHostManager::CancelPending() {
TRACE_EVENT1("navigation", "RenderFrameHostManager::CancelPending",
"FrameTreeNode id", frame_tree_node_->frame_tree_node_id());
- current_web_ui_is_navigating_ = false;
DiscardUnusedFrame(UnsetPendingRenderFrameHost());
}
@@ -2417,8 +2385,6 @@ RenderFrameHostManager::UnsetPendingRenderFrameHost() {
pending_render_frame_host.get(),
render_frame_host_.get());
- current_web_ui_is_navigating_ = false;
-
// We no longer need to prevent the process from exiting.
pending_render_frame_host->GetProcess()->RemovePendingView();

Powered by Google App Engine
This is Rietveld 408576698