| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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_impl.h" | 5 #include "content/renderer/render_frame_impl.h" |
| 6 | 6 |
| 7 #include <map> | 7 #include <map> |
| 8 #include <string> | 8 #include <string> |
| 9 | 9 |
| 10 #include "base/auto_reset.h" | 10 #include "base/auto_reset.h" |
| (...skipping 368 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 379 // static | 379 // static |
| 380 RenderFrameImpl* RenderFrameImpl::FromRoutingID(int32 routing_id) { | 380 RenderFrameImpl* RenderFrameImpl::FromRoutingID(int32 routing_id) { |
| 381 RoutingIDFrameMap::iterator iter = | 381 RoutingIDFrameMap::iterator iter = |
| 382 g_routing_id_frame_map.Get().find(routing_id); | 382 g_routing_id_frame_map.Get().find(routing_id); |
| 383 if (iter != g_routing_id_frame_map.Get().end()) | 383 if (iter != g_routing_id_frame_map.Get().end()) |
| 384 return iter->second; | 384 return iter->second; |
| 385 return NULL; | 385 return NULL; |
| 386 } | 386 } |
| 387 | 387 |
| 388 // static | 388 // static |
| 389 void RenderFrameImpl::CreateFrame(int routing_id, int parent_routing_id) { | 389 void RenderFrameImpl::CreateFrame( |
| 390 int routing_id, |
| 391 int parent_routing_id, |
| 392 const FrameMsg_NewFrame_WidgetParams& params) { |
| 390 // TODO(nasko): For now, this message is only sent for subframes, as the | 393 // TODO(nasko): For now, this message is only sent for subframes, as the |
| 391 // top level frame is created when the RenderView is created through the | 394 // top level frame is created when the RenderView is created through the |
| 392 // ViewMsg_New IPC. | 395 // ViewMsg_New IPC. |
| 393 CHECK_NE(MSG_ROUTING_NONE, parent_routing_id); | 396 CHECK_NE(MSG_ROUTING_NONE, parent_routing_id); |
| 394 | 397 |
| 395 RenderFrameProxy* proxy = RenderFrameProxy::FromRoutingID(parent_routing_id); | 398 RenderFrameProxy* proxy = RenderFrameProxy::FromRoutingID(parent_routing_id); |
| 396 | 399 |
| 397 // If the browser is sending a valid parent routing id, it should already be | 400 // If the browser is sending a valid parent routing id, it should already be |
| 398 // created and registered. | 401 // created and registered. |
| 399 CHECK(proxy); | 402 CHECK(proxy); |
| 400 blink::WebRemoteFrame* parent_web_frame = proxy->web_frame(); | 403 blink::WebRemoteFrame* parent_web_frame = proxy->web_frame(); |
| 401 | 404 |
| 402 // Create the RenderFrame and WebLocalFrame, linking the two. | 405 // Create the RenderFrame and WebLocalFrame, linking the two. |
| 403 RenderFrameImpl* render_frame = | 406 RenderFrameImpl* render_frame = |
| 404 RenderFrameImpl::Create(proxy->render_view(), routing_id); | 407 RenderFrameImpl::Create(proxy->render_view(), routing_id); |
| 405 blink::WebLocalFrame* web_frame = | 408 blink::WebLocalFrame* web_frame = |
| 406 parent_web_frame->createLocalChild("", render_frame); | 409 parent_web_frame->createLocalChild("", render_frame); |
| 407 render_frame->SetWebFrame(web_frame); | 410 render_frame->SetWebFrame(web_frame); |
| 408 render_frame->Initialize(); | 411 render_frame->Initialize(); |
| 412 |
| 413 if (params.routing_id != MSG_ROUTING_NONE) { |
| 414 render_frame->render_widget_ = RenderWidget::CreateForFrame( |
| 415 params.routing_id, |
| 416 params.surface_id, |
| 417 params.hidden, |
| 418 render_frame->render_view_->screen_info()); |
| 419 } |
| 409 } | 420 } |
| 410 | 421 |
| 411 // static | 422 // static |
| 412 RenderFrame* RenderFrame::FromWebFrame(blink::WebFrame* web_frame) { | 423 RenderFrame* RenderFrame::FromWebFrame(blink::WebFrame* web_frame) { |
| 413 return RenderFrameImpl::FromWebFrame(web_frame); | 424 return RenderFrameImpl::FromWebFrame(web_frame); |
| 414 } | 425 } |
| 415 | 426 |
| 416 // static | 427 // static |
| 417 RenderFrameImpl* RenderFrameImpl::FromWebFrame(blink::WebFrame* web_frame) { | 428 RenderFrameImpl* RenderFrameImpl::FromWebFrame(blink::WebFrame* web_frame) { |
| 418 FrameMap::iterator iter = g_frame_map.Get().find(web_frame); | 429 FrameMap::iterator iter = g_frame_map.Get().find(web_frame); |
| (...skipping 3487 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3906 | 3917 |
| 3907 #if defined(ENABLE_BROWSER_CDMS) | 3918 #if defined(ENABLE_BROWSER_CDMS) |
| 3908 RendererCdmManager* RenderFrameImpl::GetCdmManager() { | 3919 RendererCdmManager* RenderFrameImpl::GetCdmManager() { |
| 3909 if (!cdm_manager_) | 3920 if (!cdm_manager_) |
| 3910 cdm_manager_ = new RendererCdmManager(this); | 3921 cdm_manager_ = new RendererCdmManager(this); |
| 3911 return cdm_manager_; | 3922 return cdm_manager_; |
| 3912 } | 3923 } |
| 3913 #endif // defined(ENABLE_BROWSER_CDMS) | 3924 #endif // defined(ENABLE_BROWSER_CDMS) |
| 3914 | 3925 |
| 3915 } // namespace content | 3926 } // namespace content |
| OLD | NEW |