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/browser/frame_host/render_frame_host_impl.h" | 5 #include "content/browser/frame_host/render_frame_host_impl.h" |
6 | 6 |
7 #include <utility> | 7 #include <utility> |
8 | 8 |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
(...skipping 516 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
527 } | 527 } |
528 | 528 |
529 void RenderFrameHostImpl::SaveImageAt(int x, int y) { | 529 void RenderFrameHostImpl::SaveImageAt(int x, int y) { |
530 Send(new FrameMsg_SaveImageAt(routing_id_, x, y)); | 530 Send(new FrameMsg_SaveImageAt(routing_id_, x, y)); |
531 } | 531 } |
532 | 532 |
533 RenderViewHost* RenderFrameHostImpl::GetRenderViewHost() { | 533 RenderViewHost* RenderFrameHostImpl::GetRenderViewHost() { |
534 return render_view_host_; | 534 return render_view_host_; |
535 } | 535 } |
536 | 536 |
537 shell::InterfaceRegistry* RenderFrameHostImpl::GetInterfaceRegistry() { | 537 service_manager::InterfaceRegistry* |
| 538 RenderFrameHostImpl::GetInterfaceRegistry() { |
538 return interface_registry_.get(); | 539 return interface_registry_.get(); |
539 } | 540 } |
540 | 541 |
541 shell::InterfaceProvider* RenderFrameHostImpl::GetRemoteInterfaces() { | 542 service_manager::InterfaceProvider* RenderFrameHostImpl::GetRemoteInterfaces() { |
542 return remote_interfaces_.get(); | 543 return remote_interfaces_.get(); |
543 } | 544 } |
544 | 545 |
545 AssociatedInterfaceProvider* | 546 AssociatedInterfaceProvider* |
546 RenderFrameHostImpl::GetRemoteAssociatedInterfaces() { | 547 RenderFrameHostImpl::GetRemoteAssociatedInterfaces() { |
547 if (!remote_associated_interfaces_) { | 548 if (!remote_associated_interfaces_) { |
548 mojom::AssociatedInterfaceProviderAssociatedPtr remote_interfaces; | 549 mojom::AssociatedInterfaceProviderAssociatedPtr remote_interfaces; |
549 IPC::ChannelProxy* channel = GetProcess()->GetChannel(); | 550 IPC::ChannelProxy* channel = GetProcess()->GetChannel(); |
550 if (channel) { | 551 if (channel) { |
551 RenderProcessHostImpl* process = | 552 RenderProcessHostImpl* process = |
(...skipping 301 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
853 | 854 |
854 // The renderer process is gone, so this frame can no longer be loading. | 855 // The renderer process is gone, so this frame can no longer be loading. |
855 ResetLoadingState(); | 856 ResetLoadingState(); |
856 | 857 |
857 // Any future UpdateState or UpdateTitle messages from this or a recreated | 858 // Any future UpdateState or UpdateTitle messages from this or a recreated |
858 // process should be ignored until the next commit. | 859 // process should be ignored until the next commit. |
859 set_nav_entry_id(0); | 860 set_nav_entry_id(0); |
860 } | 861 } |
861 | 862 |
862 void RenderFrameHostImpl::Create( | 863 void RenderFrameHostImpl::Create( |
863 const shell::Identity& remote_identity, | 864 const service_manager::Identity& remote_identity, |
864 media::mojom::ServiceFactoryRequest request) { | 865 media::mojom::ServiceFactoryRequest request) { |
865 std::unique_ptr<shell::InterfaceRegistry> registry( | 866 std::unique_ptr<service_manager::InterfaceRegistry> registry( |
866 new shell::InterfaceRegistry); | 867 new service_manager::InterfaceRegistry); |
867 #if defined(OS_ANDROID) && defined(ENABLE_MOJO_CDM) | 868 #if defined(OS_ANDROID) && defined(ENABLE_MOJO_CDM) |
868 registry->AddInterface( | 869 registry->AddInterface( |
869 base::Bind(&ProvisionFetcherImpl::Create, this)); | 870 base::Bind(&ProvisionFetcherImpl::Create, this)); |
870 #endif | 871 #endif |
871 GetContentClient()->browser()->ExposeInterfacesToMediaService(registry.get(), | 872 GetContentClient()->browser()->ExposeInterfacesToMediaService(registry.get(), |
872 this); | 873 this); |
873 shell::mojom::InterfaceProviderPtr interfaces; | 874 service_manager::mojom::InterfaceProviderPtr interfaces; |
874 registry->Bind(GetProxy(&interfaces)); | 875 registry->Bind(GetProxy(&interfaces)); |
875 media_registries_.push_back(std::move(registry)); | 876 media_registries_.push_back(std::move(registry)); |
876 | 877 |
877 // TODO(slan): Use the BrowserContext Connector instead. See crbug.com/638950. | 878 // TODO(slan): Use the BrowserContext Connector instead. See crbug.com/638950. |
878 media::mojom::MediaServicePtr media_service; | 879 media::mojom::MediaServicePtr media_service; |
879 shell::Connector* connector = | 880 service_manager::Connector* connector = |
880 ServiceManagerConnection::GetForProcess()->GetConnector(); | 881 ServiceManagerConnection::GetForProcess()->GetConnector(); |
881 connector->ConnectToInterface("service:media", &media_service); | 882 connector->ConnectToInterface("service:media", &media_service); |
882 media_service->CreateServiceFactory(std::move(request), | 883 media_service->CreateServiceFactory(std::move(request), |
883 std::move(interfaces)); | 884 std::move(interfaces)); |
884 } | 885 } |
885 | 886 |
886 bool RenderFrameHostImpl::CreateRenderFrame(int proxy_routing_id, | 887 bool RenderFrameHostImpl::CreateRenderFrame(int proxy_routing_id, |
887 int opener_routing_id, | 888 int opener_routing_id, |
888 int parent_routing_id, | 889 int parent_routing_id, |
889 int previous_sibling_routing_id) { | 890 int previous_sibling_routing_id) { |
(...skipping 1727 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2617 | 2618 |
2618 // An error page is expected to commit, hence why is_loading_ is set to true. | 2619 // An error page is expected to commit, hence why is_loading_ is set to true. |
2619 is_loading_ = true; | 2620 is_loading_ = true; |
2620 frame_tree_node_->ResetNavigationRequest(true); | 2621 frame_tree_node_->ResetNavigationRequest(true); |
2621 } | 2622 } |
2622 | 2623 |
2623 void RenderFrameHostImpl::SetUpMojoIfNeeded() { | 2624 void RenderFrameHostImpl::SetUpMojoIfNeeded() { |
2624 if (interface_registry_.get()) | 2625 if (interface_registry_.get()) |
2625 return; | 2626 return; |
2626 | 2627 |
2627 interface_registry_.reset(new shell::InterfaceRegistry); | 2628 interface_registry_.reset(new service_manager::InterfaceRegistry); |
2628 if (!GetProcess()->GetRemoteInterfaces()) | 2629 if (!GetProcess()->GetRemoteInterfaces()) |
2629 return; | 2630 return; |
2630 | 2631 |
2631 RegisterMojoInterfaces(); | 2632 RegisterMojoInterfaces(); |
2632 mojom::FrameFactoryPtr frame_factory; | 2633 mojom::FrameFactoryPtr frame_factory; |
2633 GetProcess()->GetRemoteInterfaces()->GetInterface(&frame_factory); | 2634 GetProcess()->GetRemoteInterfaces()->GetInterface(&frame_factory); |
2634 frame_factory->CreateFrame(routing_id_, GetProxy(&frame_), | 2635 frame_factory->CreateFrame(routing_id_, GetProxy(&frame_), |
2635 frame_host_binding_.CreateInterfacePtrAndBind()); | 2636 frame_host_binding_.CreateInterfacePtrAndBind()); |
2636 | 2637 |
2637 | 2638 service_manager::mojom::InterfaceProviderPtr remote_interfaces; |
2638 shell::mojom::InterfaceProviderPtr remote_interfaces; | 2639 service_manager::mojom::InterfaceProviderRequest remote_interfaces_request = |
2639 shell::mojom::InterfaceProviderRequest remote_interfaces_request = | |
2640 GetProxy(&remote_interfaces); | 2640 GetProxy(&remote_interfaces); |
2641 remote_interfaces_.reset(new shell::InterfaceProvider); | 2641 remote_interfaces_.reset(new service_manager::InterfaceProvider); |
2642 remote_interfaces_->Bind(std::move(remote_interfaces)); | 2642 remote_interfaces_->Bind(std::move(remote_interfaces)); |
2643 frame_->GetInterfaceProvider(std::move(remote_interfaces_request)); | 2643 frame_->GetInterfaceProvider(std::move(remote_interfaces_request)); |
2644 } | 2644 } |
2645 | 2645 |
2646 void RenderFrameHostImpl::InvalidateMojoConnection() { | 2646 void RenderFrameHostImpl::InvalidateMojoConnection() { |
2647 interface_registry_.reset(); | 2647 interface_registry_.reset(); |
2648 frame_.reset(); | 2648 frame_.reset(); |
2649 frame_host_binding_.Close(); | 2649 frame_host_binding_.Close(); |
2650 | 2650 |
2651 // Disconnect with ImageDownloader Mojo service in RenderFrame. | 2651 // Disconnect with ImageDownloader Mojo service in RenderFrame. |
(...skipping 249 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2901 GetProcess()->GetID(), | 2901 GetProcess()->GetID(), |
2902 file_system_context->CrackURL(file.file_system_url) | 2902 file_system_context->CrackURL(file.file_system_url) |
2903 .mount_filesystem_id()); | 2903 .mount_filesystem_id()); |
2904 } | 2904 } |
2905 } | 2905 } |
2906 | 2906 |
2907 Send(new FrameMsg_RunFileChooserResponse(routing_id_, files)); | 2907 Send(new FrameMsg_RunFileChooserResponse(routing_id_, files)); |
2908 } | 2908 } |
2909 | 2909 |
2910 void RenderFrameHostImpl::GetInterfaceProvider( | 2910 void RenderFrameHostImpl::GetInterfaceProvider( |
2911 shell::mojom::InterfaceProviderRequest interfaces) { | 2911 service_manager::mojom::InterfaceProviderRequest interfaces) { |
2912 interface_registry_->Bind(std::move(interfaces)); | 2912 interface_registry_->Bind(std::move(interfaces)); |
2913 } | 2913 } |
2914 | 2914 |
2915 #if defined(USE_EXTERNAL_POPUP_MENU) | 2915 #if defined(USE_EXTERNAL_POPUP_MENU) |
2916 #if defined(OS_MACOSX) | 2916 #if defined(OS_MACOSX) |
2917 | 2917 |
2918 void RenderFrameHostImpl::DidSelectPopupMenuItem(int selected_index) { | 2918 void RenderFrameHostImpl::DidSelectPopupMenuItem(int selected_index) { |
2919 Send(new FrameMsg_SelectPopupMenuItem(routing_id_, selected_index)); | 2919 Send(new FrameMsg_SelectPopupMenuItem(routing_id_, selected_index)); |
2920 } | 2920 } |
2921 | 2921 |
(...skipping 261 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3183 web_bluetooth_service_->SetClientConnectionErrorHandler(base::Bind( | 3183 web_bluetooth_service_->SetClientConnectionErrorHandler(base::Bind( |
3184 &RenderFrameHostImpl::DeleteWebBluetoothService, base::Unretained(this))); | 3184 &RenderFrameHostImpl::DeleteWebBluetoothService, base::Unretained(this))); |
3185 return web_bluetooth_service_.get(); | 3185 return web_bluetooth_service_.get(); |
3186 } | 3186 } |
3187 | 3187 |
3188 void RenderFrameHostImpl::DeleteWebBluetoothService() { | 3188 void RenderFrameHostImpl::DeleteWebBluetoothService() { |
3189 web_bluetooth_service_.reset(); | 3189 web_bluetooth_service_.reset(); |
3190 } | 3190 } |
3191 | 3191 |
3192 } // namespace content | 3192 } // namespace content |
OLD | NEW |