Chromium Code Reviews| 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 2376 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 2387 // An error page is expected to commit, hence why is_loading_ is set to true. | 2387 // An error page is expected to commit, hence why is_loading_ is set to true. |
| 2388 is_loading_ = true; | 2388 is_loading_ = true; |
| 2389 frame_tree_node_->ResetNavigationRequest(true); | 2389 frame_tree_node_->ResetNavigationRequest(true); |
| 2390 } | 2390 } |
| 2391 | 2391 |
| 2392 void RenderFrameHostImpl::SetUpMojoIfNeeded() { | 2392 void RenderFrameHostImpl::SetUpMojoIfNeeded() { |
| 2393 if (interface_registry_.get()) | 2393 if (interface_registry_.get()) |
| 2394 return; | 2394 return; |
| 2395 | 2395 |
| 2396 interface_registry_.reset(new shell::InterfaceRegistry(nullptr)); | 2396 interface_registry_.reset(new shell::InterfaceRegistry(nullptr)); |
| 2397 | |
| 2398 // Even RenderProcessHost has no remote interfaces, such as | |
| 2399 // MockRenderProcessHost, here still create |remote_interfaces_| to enable | |
| 2400 // test codes register local implementations. | |
| 2401 remote_interfaces_.reset(new shell::InterfaceProvider); | |
|
Ben Goodger (Google)
2016/06/29 17:55:54
Is this blocking something you want to do? I don't
leonhsl(Using Gerrit)
2016/06/29 22:25:33
In my another CL
https://codereview.chromium.org/
| |
| 2397 if (!GetProcess()->GetRemoteInterfaces()) | 2402 if (!GetProcess()->GetRemoteInterfaces()) |
| 2398 return; | 2403 return; |
| 2399 | 2404 |
| 2400 RegisterMojoInterfaces(); | 2405 RegisterMojoInterfaces(); |
| 2401 mojom::FrameFactoryPtr frame_factory; | 2406 mojom::FrameFactoryPtr frame_factory; |
| 2402 GetProcess()->GetRemoteInterfaces()->GetInterface(&frame_factory); | 2407 GetProcess()->GetRemoteInterfaces()->GetInterface(&frame_factory); |
| 2403 frame_factory->CreateFrame(routing_id_, GetProxy(&frame_), | 2408 frame_factory->CreateFrame(routing_id_, GetProxy(&frame_), |
| 2404 frame_host_binding_.CreateInterfacePtrAndBind()); | 2409 frame_host_binding_.CreateInterfacePtrAndBind()); |
| 2405 | 2410 |
| 2406 | 2411 |
| 2407 shell::mojom::InterfaceProviderPtr remote_interfaces; | 2412 shell::mojom::InterfaceProviderPtr remote_interfaces; |
| 2408 shell::mojom::InterfaceProviderRequest remote_interfaces_request = | 2413 shell::mojom::InterfaceProviderRequest remote_interfaces_request = |
| 2409 GetProxy(&remote_interfaces); | 2414 GetProxy(&remote_interfaces); |
| 2410 remote_interfaces_.reset(new shell::InterfaceProvider); | |
| 2411 remote_interfaces_->Bind(std::move(remote_interfaces)); | 2415 remote_interfaces_->Bind(std::move(remote_interfaces)); |
| 2412 frame_->GetInterfaceProvider(std::move(remote_interfaces_request)); | 2416 frame_->GetInterfaceProvider(std::move(remote_interfaces_request)); |
| 2413 | 2417 |
| 2414 #if defined(OS_ANDROID) | 2418 #if defined(OS_ANDROID) |
| 2415 service_registry_android_ = | 2419 service_registry_android_ = |
| 2416 ServiceRegistryAndroid::Create(interface_registry_.get(), | 2420 ServiceRegistryAndroid::Create(interface_registry_.get(), |
| 2417 remote_interfaces_.get()); | 2421 remote_interfaces_.get()); |
| 2418 ServiceRegistrarAndroid::RegisterFrameHostServices( | 2422 ServiceRegistrarAndroid::RegisterFrameHostServices( |
| 2419 service_registry_android_.get()); | 2423 service_registry_android_.get()); |
| 2420 #endif | 2424 #endif |
| (...skipping 537 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 2958 // handler after it's destroyed so it can't run after the RFHI is destroyed. | 2962 // handler after it's destroyed so it can't run after the RFHI is destroyed. |
| 2959 web_bluetooth_service_->SetClientConnectionErrorHandler(base::Bind( | 2963 web_bluetooth_service_->SetClientConnectionErrorHandler(base::Bind( |
| 2960 &RenderFrameHostImpl::DeleteWebBluetoothService, base::Unretained(this))); | 2964 &RenderFrameHostImpl::DeleteWebBluetoothService, base::Unretained(this))); |
| 2961 } | 2965 } |
| 2962 | 2966 |
| 2963 void RenderFrameHostImpl::DeleteWebBluetoothService() { | 2967 void RenderFrameHostImpl::DeleteWebBluetoothService() { |
| 2964 web_bluetooth_service_.reset(); | 2968 web_bluetooth_service_.reset(); |
| 2965 } | 2969 } |
| 2966 | 2970 |
| 2967 } // namespace content | 2971 } // namespace content |
| OLD | NEW |