Index: content/browser/renderer_host/render_view_host_impl.cc |
=================================================================== |
--- content/browser/renderer_host/render_view_host_impl.cc (revision 254898) |
+++ content/browser/renderer_host/render_view_host_impl.cc (working copy) |
@@ -205,6 +205,7 @@ |
navigations_suspended_(false), |
has_accessed_initial_document_(false), |
main_frame_routing_id_(main_frame_routing_id), |
+ focused_frame_routing_id_(MSG_ROUTING_NONE), |
is_waiting_for_beforeunload_ack_(false), |
unload_ack_is_for_cross_site_transition_(false), |
are_javascript_messages_suppressed_(false), |
@@ -967,6 +968,11 @@ |
return RenderFrameHost::FromID(GetProcess()->GetID(), main_frame_routing_id_); |
} |
+RenderFrameHost* RenderViewHostImpl::GetFocusedFrame() { |
+ return RenderFrameHost::FromID( |
+ GetProcess()->GetID(), focused_frame_routing_id_); |
+} |
+ |
void RenderViewHostImpl::AllowBindings(int bindings_flags) { |
// Never grant any bindings to browser plugin guests. |
if (GetProcess()->IsGuest()) { |
@@ -1158,6 +1164,7 @@ |
IPC_MESSAGE_HANDLER(DragHostMsg_TargetDrop_ACK, OnTargetDropACK) |
IPC_MESSAGE_HANDLER(ViewHostMsg_TakeFocus, OnTakeFocus) |
IPC_MESSAGE_HANDLER(ViewHostMsg_FocusedNodeChanged, OnFocusedNodeChanged) |
+ IPC_MESSAGE_HANDLER(ViewHostMsg_FocusedFrameChanged, OnFocusedFrameChanged) |
IPC_MESSAGE_HANDLER(ViewHostMsg_AddMessageToConsole, OnAddMessageToConsole) |
IPC_MESSAGE_HANDLER(ViewHostMsg_ShouldClose_ACK, OnShouldCloseACK) |
IPC_MESSAGE_HANDLER(ViewHostMsg_ClosePage_ACK, OnClosePageACK) |
@@ -1531,6 +1538,10 @@ |
Details<const bool>(&is_editable_node)); |
} |
+void RenderViewHostImpl::OnFocusedFrameChanged(int focused_frame_routing_id) { |
+ focused_frame_routing_id_ = focused_frame_routing_id; |
+} |
+ |
void RenderViewHostImpl::OnAddMessageToConsole( |
int32 level, |
const base::string16& message, |