| 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 153 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 164 } | 164 } |
| 165 return NULL; | 165 return NULL; |
| 166 } | 166 } |
| 167 | 167 |
| 168 RenderFrameProxy::RenderFrameProxy(int routing_id, int frame_routing_id) | 168 RenderFrameProxy::RenderFrameProxy(int routing_id, int frame_routing_id) |
| 169 : routing_id_(routing_id), | 169 : routing_id_(routing_id), |
| 170 frame_routing_id_(frame_routing_id), | 170 frame_routing_id_(frame_routing_id), |
| 171 web_frame_(nullptr), | 171 web_frame_(nullptr), |
| 172 render_view_(nullptr), | 172 render_view_(nullptr), |
| 173 render_widget_(nullptr) { | 173 render_widget_(nullptr) { |
| 174 LOG(ERROR) << "RFP[" << this << "]::RFP: " |
| 175 << " routing_id:" << routing_id_; |
| 174 std::pair<RoutingIDProxyMap::iterator, bool> result = | 176 std::pair<RoutingIDProxyMap::iterator, bool> result = |
| 175 g_routing_id_proxy_map.Get().insert(std::make_pair(routing_id_, this)); | 177 g_routing_id_proxy_map.Get().insert(std::make_pair(routing_id_, this)); |
| 176 CHECK(result.second) << "Inserting a duplicate item."; | 178 CHECK(result.second) << "Inserting a duplicate item."; |
| 177 RenderThread::Get()->AddRoute(routing_id_, this); | 179 RenderThread::Get()->AddRoute(routing_id_, this); |
| 178 } | 180 } |
| 179 | 181 |
| 180 RenderFrameProxy::~RenderFrameProxy() { | 182 RenderFrameProxy::~RenderFrameProxy() { |
| 181 render_widget_->UnregisterRenderFrameProxy(this); | 183 render_widget_->UnregisterRenderFrameProxy(this); |
| 182 | 184 |
| 183 CHECK(!web_frame_); | 185 CHECK(!web_frame_); |
| 184 RenderThread::Get()->RemoveRoute(routing_id_); | 186 RenderThread::Get()->RemoveRoute(routing_id_); |
| 185 g_routing_id_proxy_map.Get().erase(routing_id_); | 187 g_routing_id_proxy_map.Get().erase(routing_id_); |
| 188 LOG(ERROR) << "RFP[" << this << "]::~RFP: " |
| 189 << " routing_id:" << routing_id_; |
| 186 } | 190 } |
| 187 | 191 |
| 188 void RenderFrameProxy::Init(blink::WebRemoteFrame* web_frame, | 192 void RenderFrameProxy::Init(blink::WebRemoteFrame* web_frame, |
| 189 RenderViewImpl* render_view, | 193 RenderViewImpl* render_view, |
| 190 RenderWidget* render_widget) { | 194 RenderWidget* render_widget) { |
| 191 CHECK(web_frame); | 195 CHECK(web_frame); |
| 192 CHECK(render_view); | 196 CHECK(render_view); |
| 193 CHECK(render_widget); | 197 CHECK(render_widget); |
| 194 | 198 |
| 195 web_frame_ = web_frame; | 199 web_frame_ = web_frame; |
| (...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 290 | 294 |
| 291 // Note: If |handled| is true, |this| may have been deleted. | 295 // Note: If |handled| is true, |this| may have been deleted. |
| 292 return handled; | 296 return handled; |
| 293 } | 297 } |
| 294 | 298 |
| 295 bool RenderFrameProxy::Send(IPC::Message* message) { | 299 bool RenderFrameProxy::Send(IPC::Message* message) { |
| 296 return RenderThread::Get()->Send(message); | 300 return RenderThread::Get()->Send(message); |
| 297 } | 301 } |
| 298 | 302 |
| 299 void RenderFrameProxy::OnDeleteProxy() { | 303 void RenderFrameProxy::OnDeleteProxy() { |
| 304 LOG(ERROR) << "RFP[" << this << "]::OnDeleteProxy:"; |
| 300 DCHECK(web_frame_); | 305 DCHECK(web_frame_); |
| 301 web_frame_->detach(); | 306 web_frame_->detach(); |
| 302 } | 307 } |
| 303 | 308 |
| 304 void RenderFrameProxy::OnChildFrameProcessGone() { | 309 void RenderFrameProxy::OnChildFrameProcessGone() { |
| 305 if (compositing_helper_.get()) | 310 if (compositing_helper_.get()) |
| 306 compositing_helper_->ChildFrameGone(); | 311 compositing_helper_->ChildFrameGone(); |
| 307 } | 312 } |
| 308 | 313 |
| 309 void RenderFrameProxy::OnSetChildFrameSurface( | 314 void RenderFrameProxy::OnSetChildFrameSurface( |
| (...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 387 // This uses focusDocumentView rather than setFocusedFrame so that blur | 392 // This uses focusDocumentView rather than setFocusedFrame so that blur |
| 388 // events are properly dispatched on any currently focused elements. | 393 // events are properly dispatched on any currently focused elements. |
| 389 render_view_->webview()->focusDocumentView(web_frame_); | 394 render_view_->webview()->focusDocumentView(web_frame_); |
| 390 } | 395 } |
| 391 | 396 |
| 392 void RenderFrameProxy::OnWillEnterFullscreen() { | 397 void RenderFrameProxy::OnWillEnterFullscreen() { |
| 393 web_frame_->willEnterFullscreen(); | 398 web_frame_->willEnterFullscreen(); |
| 394 } | 399 } |
| 395 | 400 |
| 396 void RenderFrameProxy::frameDetached(DetachType type) { | 401 void RenderFrameProxy::frameDetached(DetachType type) { |
| 402 LOG(ERROR) << "RFP[" << this << "]::frameDetached: " |
| 403 << " type:" << static_cast<int>(type); |
| 397 if (type == DetachType::Remove && web_frame_->parent()) { | 404 if (type == DetachType::Remove && web_frame_->parent()) { |
| 398 web_frame_->parent()->removeChild(web_frame_); | 405 web_frame_->parent()->removeChild(web_frame_); |
| 399 | 406 |
| 400 // Let the browser process know this subframe is removed, so that it is | 407 // Let the browser process know this subframe is removed, so that it is |
| 401 // destroyed in its current process. | 408 // destroyed in its current process. |
| 402 Send(new FrameHostMsg_Detach(routing_id_)); | 409 Send(new FrameHostMsg_Detach(routing_id_)); |
| 403 } | 410 } |
| 404 | 411 |
| 405 web_frame_->close(); | 412 web_frame_->close(); |
| 406 | 413 |
| (...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 502 blink::WebLocalFrame* source) { | 509 blink::WebLocalFrame* source) { |
| 503 int source_routing_id = RenderFrameImpl::FromWebFrame(source)->GetRoutingID(); | 510 int source_routing_id = RenderFrameImpl::FromWebFrame(source)->GetRoutingID(); |
| 504 Send(new FrameHostMsg_AdvanceFocus(routing_id_, type, source_routing_id)); | 511 Send(new FrameHostMsg_AdvanceFocus(routing_id_, type, source_routing_id)); |
| 505 } | 512 } |
| 506 | 513 |
| 507 void RenderFrameProxy::frameFocused() { | 514 void RenderFrameProxy::frameFocused() { |
| 508 Send(new FrameHostMsg_FrameFocused(routing_id_)); | 515 Send(new FrameHostMsg_FrameFocused(routing_id_)); |
| 509 } | 516 } |
| 510 | 517 |
| 511 } // namespace | 518 } // namespace |
| OLD | NEW |