Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(94)

Side by Side Diff: content/browser/frame_host/render_frame_host_impl.cc

Issue 2217013002: Remove the JNI-based InterfaceRegistry. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@java-interface-registry-migration
Patch Set: rebase Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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
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
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
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
OLDNEW
« no previous file with comments | « content/browser/frame_host/render_frame_host_impl.h ('k') | content/browser/mojo/interface_registrar_android.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698