| 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 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 90 #include "media/mojo/interfaces/service_factory.mojom.h" | 90 #include "media/mojo/interfaces/service_factory.mojom.h" |
| 91 #include "mojo/public/cpp/bindings/associated_interface_ptr.h" | 91 #include "mojo/public/cpp/bindings/associated_interface_ptr.h" |
| 92 #include "services/shell/public/cpp/connector.h" | 92 #include "services/shell/public/cpp/connector.h" |
| 93 #include "services/shell/public/cpp/interface_provider.h" | 93 #include "services/shell/public/cpp/interface_provider.h" |
| 94 #include "ui/accessibility/ax_tree.h" | 94 #include "ui/accessibility/ax_tree.h" |
| 95 #include "ui/accessibility/ax_tree_update.h" | 95 #include "ui/accessibility/ax_tree_update.h" |
| 96 #include "ui/gfx/geometry/quad_f.h" | 96 #include "ui/gfx/geometry/quad_f.h" |
| 97 #include "url/gurl.h" | 97 #include "url/gurl.h" |
| 98 | 98 |
| 99 #if defined(OS_ANDROID) | 99 #if defined(OS_ANDROID) |
| 100 #include "content/browser/mojo/interface_registrar_android.h" | |
| 101 #include "content/public/browser/android/java_interfaces.h" | 100 #include "content/public/browser/android/java_interfaces.h" |
| 102 #if defined(ENABLE_MOJO_CDM) | 101 #if defined(ENABLE_MOJO_CDM) |
| 103 #include "content/browser/media/android/provision_fetcher_impl.h" | 102 #include "content/browser/media/android/provision_fetcher_impl.h" |
| 104 #endif | 103 #endif |
| 105 #endif | 104 #endif |
| 106 | 105 |
| 107 #if defined(OS_MACOSX) | 106 #if defined(OS_MACOSX) |
| 108 #include "content/browser/frame_host/popup_menu_helper_mac.h" | 107 #include "content/browser/frame_host/popup_menu_helper_mac.h" |
| 109 #endif | 108 #endif |
| 110 | 109 |
| (...skipping 2423 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2534 frame_factory->CreateFrame(routing_id_, GetProxy(&frame_), | 2533 frame_factory->CreateFrame(routing_id_, GetProxy(&frame_), |
| 2535 frame_host_binding_.CreateInterfacePtrAndBind()); | 2534 frame_host_binding_.CreateInterfacePtrAndBind()); |
| 2536 | 2535 |
| 2537 | 2536 |
| 2538 shell::mojom::InterfaceProviderPtr remote_interfaces; | 2537 shell::mojom::InterfaceProviderPtr remote_interfaces; |
| 2539 shell::mojom::InterfaceProviderRequest remote_interfaces_request = | 2538 shell::mojom::InterfaceProviderRequest remote_interfaces_request = |
| 2540 GetProxy(&remote_interfaces); | 2539 GetProxy(&remote_interfaces); |
| 2541 remote_interfaces_.reset(new shell::InterfaceProvider); | 2540 remote_interfaces_.reset(new shell::InterfaceProvider); |
| 2542 remote_interfaces_->Bind(std::move(remote_interfaces)); | 2541 remote_interfaces_->Bind(std::move(remote_interfaces)); |
| 2543 frame_->GetInterfaceProvider(std::move(remote_interfaces_request)); | 2542 frame_->GetInterfaceProvider(std::move(remote_interfaces_request)); |
| 2544 | |
| 2545 #if defined(OS_ANDROID) | |
| 2546 interface_registry_android_ = | |
| 2547 InterfaceRegistryAndroid::Create(interface_registry_.get()); | |
| 2548 InterfaceRegistrarAndroid::ExposeInterfacesToFrame( | |
| 2549 interface_registry_android_.get(), this); | |
| 2550 #endif | |
| 2551 } | 2543 } |
| 2552 | 2544 |
| 2553 void RenderFrameHostImpl::InvalidateMojoConnection() { | 2545 void RenderFrameHostImpl::InvalidateMojoConnection() { |
| 2554 #if defined(OS_ANDROID) | |
| 2555 // The Android-specific interface registry has a reference to | |
| 2556 // |interface_registry_| and thus must be torn down first. | |
| 2557 interface_registry_android_.reset(); | |
| 2558 #endif | |
| 2559 | |
| 2560 interface_registry_.reset(); | 2546 interface_registry_.reset(); |
| 2561 frame_.reset(); | 2547 frame_.reset(); |
| 2562 frame_host_binding_.Close(); | 2548 frame_host_binding_.Close(); |
| 2563 | 2549 |
| 2564 // Disconnect with ImageDownloader Mojo service in RenderFrame. | 2550 // Disconnect with ImageDownloader Mojo service in RenderFrame. |
| 2565 mojo_image_downloader_.reset(); | 2551 mojo_image_downloader_.reset(); |
| 2566 } | 2552 } |
| 2567 | 2553 |
| 2568 bool RenderFrameHostImpl::IsFocused() { | 2554 bool RenderFrameHostImpl::IsFocused() { |
| 2569 return GetRenderWidgetHost()->is_focused() && | 2555 return GetRenderWidgetHost()->is_focused() && |
| (...skipping 526 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3096 web_bluetooth_service_->SetClientConnectionErrorHandler(base::Bind( | 3082 web_bluetooth_service_->SetClientConnectionErrorHandler(base::Bind( |
| 3097 &RenderFrameHostImpl::DeleteWebBluetoothService, base::Unretained(this))); | 3083 &RenderFrameHostImpl::DeleteWebBluetoothService, base::Unretained(this))); |
| 3098 return web_bluetooth_service_.get(); | 3084 return web_bluetooth_service_.get(); |
| 3099 } | 3085 } |
| 3100 | 3086 |
| 3101 void RenderFrameHostImpl::DeleteWebBluetoothService() { | 3087 void RenderFrameHostImpl::DeleteWebBluetoothService() { |
| 3102 web_bluetooth_service_.reset(); | 3088 web_bluetooth_service_.reset(); |
| 3103 } | 3089 } |
| 3104 | 3090 |
| 3105 } // namespace content | 3091 } // namespace content |
| OLD | NEW |