| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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/renderer/render_frame_proxy.h" | 5 #include "content/renderer/render_frame_proxy.h" |
| 6 | 6 |
| 7 #include <stdint.h> | 7 #include <stdint.h> |
| 8 #include <map> | 8 #include <map> |
| 9 #include <utility> | 9 #include <utility> |
| 10 | 10 |
| (...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 156 } | 156 } |
| 157 return NULL; | 157 return NULL; |
| 158 } | 158 } |
| 159 | 159 |
| 160 RenderFrameProxy::RenderFrameProxy(int routing_id, int frame_routing_id) | 160 RenderFrameProxy::RenderFrameProxy(int routing_id, int frame_routing_id) |
| 161 : routing_id_(routing_id), | 161 : routing_id_(routing_id), |
| 162 frame_routing_id_(frame_routing_id), | 162 frame_routing_id_(frame_routing_id), |
| 163 web_frame_(nullptr), | 163 web_frame_(nullptr), |
| 164 render_view_(nullptr), | 164 render_view_(nullptr), |
| 165 render_widget_(nullptr) { | 165 render_widget_(nullptr) { |
| 166 LOG(ERROR) << "RFP[" << this << "]::RFP: " |
| 167 << " routing_id:" << routing_id_; |
| 166 std::pair<RoutingIDProxyMap::iterator, bool> result = | 168 std::pair<RoutingIDProxyMap::iterator, bool> result = |
| 167 g_routing_id_proxy_map.Get().insert(std::make_pair(routing_id_, this)); | 169 g_routing_id_proxy_map.Get().insert(std::make_pair(routing_id_, this)); |
| 168 CHECK(result.second) << "Inserting a duplicate item."; | 170 CHECK(result.second) << "Inserting a duplicate item."; |
| 169 RenderThread::Get()->AddRoute(routing_id_, this); | 171 RenderThread::Get()->AddRoute(routing_id_, this); |
| 170 } | 172 } |
| 171 | 173 |
| 172 RenderFrameProxy::~RenderFrameProxy() { | 174 RenderFrameProxy::~RenderFrameProxy() { |
| 173 render_widget_->UnregisterRenderFrameProxy(this); | 175 render_widget_->UnregisterRenderFrameProxy(this); |
| 174 | 176 |
| 175 CHECK(!web_frame_); | 177 CHECK(!web_frame_); |
| 176 RenderThread::Get()->RemoveRoute(routing_id_); | 178 RenderThread::Get()->RemoveRoute(routing_id_); |
| 177 g_routing_id_proxy_map.Get().erase(routing_id_); | 179 g_routing_id_proxy_map.Get().erase(routing_id_); |
| 180 LOG(ERROR) << "RFP[" << this << "]::~RFP: " |
| 181 << " routing_id:" << routing_id_; |
| 178 } | 182 } |
| 179 | 183 |
| 180 void RenderFrameProxy::Init(blink::WebRemoteFrame* web_frame, | 184 void RenderFrameProxy::Init(blink::WebRemoteFrame* web_frame, |
| 181 RenderViewImpl* render_view, | 185 RenderViewImpl* render_view, |
| 182 RenderWidget* render_widget) { | 186 RenderWidget* render_widget) { |
| 183 CHECK(web_frame); | 187 CHECK(web_frame); |
| 184 CHECK(render_view); | 188 CHECK(render_view); |
| 185 CHECK(render_widget); | 189 CHECK(render_widget); |
| 186 | 190 |
| 187 web_frame_ = web_frame; | 191 web_frame_ = web_frame; |
| (...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 282 | 286 |
| 283 // Note: If |handled| is true, |this| may have been deleted. | 287 // Note: If |handled| is true, |this| may have been deleted. |
| 284 return handled; | 288 return handled; |
| 285 } | 289 } |
| 286 | 290 |
| 287 bool RenderFrameProxy::Send(IPC::Message* message) { | 291 bool RenderFrameProxy::Send(IPC::Message* message) { |
| 288 return RenderThread::Get()->Send(message); | 292 return RenderThread::Get()->Send(message); |
| 289 } | 293 } |
| 290 | 294 |
| 291 void RenderFrameProxy::OnDeleteProxy() { | 295 void RenderFrameProxy::OnDeleteProxy() { |
| 296 LOG(ERROR) << "RFP[" << this << "]::OnDeleteProxy:"; |
| 292 DCHECK(web_frame_); | 297 DCHECK(web_frame_); |
| 293 web_frame_->detach(); | 298 web_frame_->detach(); |
| 294 } | 299 } |
| 295 | 300 |
| 296 void RenderFrameProxy::OnChildFrameProcessGone() { | 301 void RenderFrameProxy::OnChildFrameProcessGone() { |
| 297 if (compositing_helper_.get()) | 302 if (compositing_helper_.get()) |
| 298 compositing_helper_->ChildFrameGone(); | 303 compositing_helper_->ChildFrameGone(); |
| 299 } | 304 } |
| 300 | 305 |
| 301 void RenderFrameProxy::OnSetChildFrameSurface( | 306 void RenderFrameProxy::OnSetChildFrameSurface( |
| (...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 379 // This uses focusDocumentView rather than setFocusedFrame so that blur | 384 // This uses focusDocumentView rather than setFocusedFrame so that blur |
| 380 // events are properly dispatched on any currently focused elements. | 385 // events are properly dispatched on any currently focused elements. |
| 381 render_view_->webview()->focusDocumentView(web_frame_); | 386 render_view_->webview()->focusDocumentView(web_frame_); |
| 382 } | 387 } |
| 383 | 388 |
| 384 void RenderFrameProxy::OnWillEnterFullscreen() { | 389 void RenderFrameProxy::OnWillEnterFullscreen() { |
| 385 web_frame_->willEnterFullscreen(); | 390 web_frame_->willEnterFullscreen(); |
| 386 } | 391 } |
| 387 | 392 |
| 388 void RenderFrameProxy::frameDetached(DetachType type) { | 393 void RenderFrameProxy::frameDetached(DetachType type) { |
| 394 LOG(ERROR) << "RFP[" << this << "]::frameDetached: " |
| 395 << " type:" << static_cast<int>(type); |
| 389 if (type == DetachType::Remove && web_frame_->parent()) { | 396 if (type == DetachType::Remove && web_frame_->parent()) { |
| 390 web_frame_->parent()->removeChild(web_frame_); | 397 web_frame_->parent()->removeChild(web_frame_); |
| 391 | 398 |
| 392 // Let the browser process know this subframe is removed, so that it is | 399 // Let the browser process know this subframe is removed, so that it is |
| 393 // destroyed in its current process. | 400 // destroyed in its current process. |
| 394 Send(new FrameHostMsg_Detach(routing_id_)); | 401 Send(new FrameHostMsg_Detach(routing_id_)); |
| 395 } | 402 } |
| 396 | 403 |
| 397 web_frame_->close(); | 404 web_frame_->close(); |
| 398 | 405 |
| (...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 494 blink::WebLocalFrame* source) { | 501 blink::WebLocalFrame* source) { |
| 495 int source_routing_id = RenderFrameImpl::FromWebFrame(source)->GetRoutingID(); | 502 int source_routing_id = RenderFrameImpl::FromWebFrame(source)->GetRoutingID(); |
| 496 Send(new FrameHostMsg_AdvanceFocus(routing_id_, type, source_routing_id)); | 503 Send(new FrameHostMsg_AdvanceFocus(routing_id_, type, source_routing_id)); |
| 497 } | 504 } |
| 498 | 505 |
| 499 void RenderFrameProxy::frameFocused() { | 506 void RenderFrameProxy::frameFocused() { |
| 500 Send(new FrameHostMsg_FrameFocused(routing_id_)); | 507 Send(new FrameHostMsg_FrameFocused(routing_id_)); |
| 501 } | 508 } |
| 502 | 509 |
| 503 } // namespace | 510 } // namespace |
| OLD | NEW |