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

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

Issue 2474323002: Implement WebContentsViewChildFrame::TakeFocus. (Closed)
Patch Set: Fix cases where focus does not actually advance focus Created 4 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_proxy_host.cc
diff --git a/content/browser/frame_host/render_frame_proxy_host.cc b/content/browser/frame_host/render_frame_proxy_host.cc
index b8ec5d390ec6a0fe9e84b550a2fa927d9bbb1903..3470e42080ac468a29896b01cf1b2009ff30d2df 100644
--- a/content/browser/frame_host/render_frame_proxy_host.cc
+++ b/content/browser/frame_host/render_frame_proxy_host.cc
@@ -359,18 +359,14 @@ void RenderFrameProxyHost::OnAdvanceFocus(blink::WebFocusType type,
// child frames finishes its traversal.
RenderFrameHostImpl* source_rfh =
RenderFrameHostImpl::FromID(GetProcess()->GetID(), source_routing_id);
- int32_t source_proxy_routing_id = MSG_ROUTING_NONE;
- if (source_rfh) {
- RenderFrameProxyHost* source_proxy =
- source_rfh->frame_tree_node()
- ->render_manager()
- ->GetRenderFrameProxyHost(target_rfh->GetSiteInstance());
- if (source_proxy)
- source_proxy_routing_id = source_proxy->GetRoutingID();
- }
-
- target_rfh->Send(new FrameMsg_AdvanceFocus(target_rfh->GetRoutingID(), type,
- source_proxy_routing_id));
+ RenderFrameProxyHost* source_proxy =
+ source_rfh
+ ? source_rfh->frame_tree_node()
+ ->render_manager()
+ ->GetRenderFrameProxyHost(target_rfh->GetSiteInstance())
+ : nullptr;
+
+ target_rfh->AdvanceFocus(type, source_proxy);
}
void RenderFrameProxyHost::OnFrameFocused() {

Powered by Google App Engine
This is Rietveld 408576698