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 387 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
398 web_user_media_client_(NULL), | 398 web_user_media_client_(NULL), |
399 #if defined(OS_ANDROID) | 399 #if defined(OS_ANDROID) |
400 media_player_manager_(NULL), | 400 media_player_manager_(NULL), |
401 #endif | 401 #endif |
402 #if defined(ENABLE_BROWSER_CDMS) | 402 #if defined(ENABLE_BROWSER_CDMS) |
403 cdm_manager_(NULL), | 403 cdm_manager_(NULL), |
404 #endif | 404 #endif |
405 geolocation_dispatcher_(NULL), | 405 geolocation_dispatcher_(NULL), |
406 screen_orientation_dispatcher_(NULL), | 406 screen_orientation_dispatcher_(NULL), |
407 weak_factory_(this) { | 407 weak_factory_(this) { |
408 RenderThread::Get()->AddRoute(routing_id_, this); | |
409 | |
410 std::pair<RoutingIDFrameMap::iterator, bool> result = | 408 std::pair<RoutingIDFrameMap::iterator, bool> result = |
411 g_routing_id_frame_map.Get().insert(std::make_pair(routing_id_, this)); | 409 g_routing_id_frame_map.Get().insert(std::make_pair(routing_id_, this)); |
412 CHECK(result.second) << "Inserting a duplicate item."; | 410 CHECK(result.second) << "Inserting a duplicate item."; |
413 | 411 |
| 412 RenderThread::Get()->AddRoute(routing_id_, this); |
| 413 |
414 render_view_->RegisterRenderFrame(this); | 414 render_view_->RegisterRenderFrame(this); |
415 | 415 |
416 #if defined(OS_ANDROID) | 416 #if defined(OS_ANDROID) |
417 new JavaBridgeDispatcher(this); | 417 new JavaBridgeDispatcher(this); |
418 #endif | 418 #endif |
419 | 419 |
420 #if defined(ENABLE_NOTIFICATIONS) | 420 #if defined(ENABLE_NOTIFICATIONS) |
421 notification_provider_ = new NotificationProvider(this); | 421 notification_provider_ = new NotificationProvider(this); |
422 #endif | 422 #endif |
423 } | 423 } |
(...skipping 470 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
894 (navigation_start - base::TimeTicks()).InSecondsF(); | 894 (navigation_start - base::TimeTicks()).InSecondsF(); |
895 frame->provisionalDataSource()->setNavigationStartTime( | 895 frame->provisionalDataSource()->setNavigationStartTime( |
896 navigation_start_seconds); | 896 navigation_start_seconds); |
897 } | 897 } |
898 } | 898 } |
899 | 899 |
900 // In case LoadRequest failed before DidCreateDataSource was called. | 900 // In case LoadRequest failed before DidCreateDataSource was called. |
901 render_view_->pending_navigation_params_.reset(); | 901 render_view_->pending_navigation_params_.reset(); |
902 } | 902 } |
903 | 903 |
| 904 void RenderFrameImpl::BindServiceRegistry( |
| 905 mojo::ScopedMessagePipeHandle service_provider_handle) { |
| 906 service_registry_.BindRemoteServiceProvider(service_provider_handle.Pass()); |
| 907 } |
| 908 |
904 void RenderFrameImpl::OnBeforeUnload() { | 909 void RenderFrameImpl::OnBeforeUnload() { |
905 // TODO(creis): Right now, this is only called on the main frame. Make the | 910 // TODO(creis): Right now, this is only called on the main frame. Make the |
906 // browser process send dispatchBeforeUnloadEvent to every frame that needs | 911 // browser process send dispatchBeforeUnloadEvent to every frame that needs |
907 // it. | 912 // it. |
908 CHECK(!frame_->parent()); | 913 CHECK(!frame_->parent()); |
909 | 914 |
910 base::TimeTicks before_unload_start_time = base::TimeTicks::Now(); | 915 base::TimeTicks before_unload_start_time = base::TimeTicks::Now(); |
911 bool proceed = frame_->dispatchBeforeUnloadEvent(); | 916 bool proceed = frame_->dispatchBeforeUnloadEvent(); |
912 base::TimeTicks before_unload_end_time = base::TimeTicks::Now(); | 917 base::TimeTicks before_unload_end_time = base::TimeTicks::Now(); |
913 Send(new FrameHostMsg_BeforeUnload_ACK(routing_id_, proceed, | 918 Send(new FrameHostMsg_BeforeUnload_ACK(routing_id_, proceed, |
(...skipping 410 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1324 const blink::WebURLRequest& request, | 1329 const blink::WebURLRequest& request, |
1325 blink::WebNavigationPolicy policy) { | 1330 blink::WebNavigationPolicy policy) { |
1326 DCHECK(!frame_ || frame_ == frame); | 1331 DCHECK(!frame_ || frame_ == frame); |
1327 loadURLExternally(frame, request, policy, WebString()); | 1332 loadURLExternally(frame, request, policy, WebString()); |
1328 } | 1333 } |
1329 | 1334 |
1330 void RenderFrameImpl::ExecuteJavaScript(const base::string16& javascript) { | 1335 void RenderFrameImpl::ExecuteJavaScript(const base::string16& javascript) { |
1331 OnJavaScriptExecuteRequest(javascript, 0, false); | 1336 OnJavaScriptExecuteRequest(javascript, 0, false); |
1332 } | 1337 } |
1333 | 1338 |
| 1339 ServiceRegistry* RenderFrameImpl::GetServiceRegistry() { |
| 1340 return &service_registry_; |
| 1341 } |
| 1342 |
1334 void RenderFrameImpl::OnChildFrameProcessGone() { | 1343 void RenderFrameImpl::OnChildFrameProcessGone() { |
1335 if (compositing_helper_) | 1344 if (compositing_helper_) |
1336 compositing_helper_->ChildFrameGone(); | 1345 compositing_helper_->ChildFrameGone(); |
1337 } | 1346 } |
1338 | 1347 |
1339 // blink::WebFrameClient implementation ---------------------------------------- | 1348 // blink::WebFrameClient implementation ---------------------------------------- |
1340 | 1349 |
1341 blink::WebPlugin* RenderFrameImpl::createPlugin( | 1350 blink::WebPlugin* RenderFrameImpl::createPlugin( |
1342 blink::WebLocalFrame* frame, | 1351 blink::WebLocalFrame* frame, |
1343 const blink::WebPluginParams& params) { | 1352 const blink::WebPluginParams& params) { |
(...skipping 2223 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3567 | 3576 |
3568 #if defined(ENABLE_BROWSER_CDMS) | 3577 #if defined(ENABLE_BROWSER_CDMS) |
3569 RendererCdmManager* RenderFrameImpl::GetCdmManager() { | 3578 RendererCdmManager* RenderFrameImpl::GetCdmManager() { |
3570 if (!cdm_manager_) | 3579 if (!cdm_manager_) |
3571 cdm_manager_ = new RendererCdmManager(this); | 3580 cdm_manager_ = new RendererCdmManager(this); |
3572 return cdm_manager_; | 3581 return cdm_manager_; |
3573 } | 3582 } |
3574 #endif // defined(ENABLE_BROWSER_CDMS) | 3583 #endif // defined(ENABLE_BROWSER_CDMS) |
3575 | 3584 |
3576 } // namespace content | 3585 } // namespace content |
OLD | NEW |