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