Migrate all old uses of InterfaceProvider to new Mojo types
This CL converts InterfaceProviderPtr|Request to the new Mojo
types. Major changes are as below,
- Convert mojom::InterfaceProviderPtr to
mojo::PendingRemote|Remote<mojom::InterfaceProvider>
- Convert mojo::InterfaceProviderRequest to
mojo::PendingReceiver<mojom::InterfaceProvider>
- Convert mojo::Binding to mojo::Receiver
- Convert mojom::InterfaceProviderPtrInfo to
mojo::PendingRemote<mojom::InterfaceProvider>
Bug: 955171, 978694
Change-Id: I94b956bb60e20810a84f7714e23c4da836bfd8c6
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1928429
Reviewed-by: Wei Li <[email protected]>
Reviewed-by: Frank Liberato <[email protected]>
Reviewed-by: Matt Falkenhagen <[email protected]>
Reviewed-by: Ken Rockot <[email protected]>
Reviewed-by: Sam McNally <[email protected]>
Reviewed-by: Hiroki Nakagawa <[email protected]>
Commit-Queue: Gyuyoung Kim <[email protected]>
Cr-Commit-Position: refs/heads/master@{#719007}
diff --git a/content/renderer/render_frame_impl.h b/content/renderer/render_frame_impl.h
index 8171c74..e245b5a 100644
--- a/content/renderer/render_frame_impl.h
+++ b/content/renderer/render_frame_impl.h
@@ -63,11 +63,11 @@
#include "mojo/public/cpp/bindings/associated_binding.h"
#include "mojo/public/cpp/bindings/associated_receiver.h"
#include "mojo/public/cpp/bindings/associated_remote.h"
-#include "mojo/public/cpp/bindings/binding_set.h"
#include "mojo/public/cpp/bindings/pending_associated_receiver.h"
#include "mojo/public/cpp/bindings/pending_receiver.h"
#include "mojo/public/cpp/bindings/pending_remote.h"
#include "mojo/public/cpp/bindings/receiver.h"
+#include "mojo/public/cpp/bindings/receiver_set.h"
#include "mojo/public/cpp/bindings/remote.h"
#include "mojo/public/cpp/system/data_pipe.h"
#include "ppapi/buildflags/buildflags.h"
@@ -217,7 +217,8 @@
// through Blink and Create.
static void CreateFrame(
int routing_id,
- service_manager::mojom::InterfaceProviderPtr interface_provider,
+ mojo::PendingRemote<service_manager::mojom::InterfaceProvider>
+ interface_provider,
mojo::PendingRemote<blink::mojom::BrowserInterfaceBroker>
browser_interface_broker,
int previous_routing_id,
@@ -239,13 +240,13 @@
// Constructor parameters are bundled into a struct.
struct CONTENT_EXPORT CreateParams {
- CreateParams(
- RenderViewImpl* render_view,
- int32_t routing_id,
- service_manager::mojom::InterfaceProviderPtr interface_provider,
- mojo::PendingRemote<blink::mojom::BrowserInterfaceBroker>
- browser_interface_broker,
- const base::UnguessableToken& devtools_frame_token);
+ CreateParams(RenderViewImpl* render_view,
+ int32_t routing_id,
+ mojo::PendingRemote<service_manager::mojom::InterfaceProvider>
+ interface_provider,
+ mojo::PendingRemote<blink::mojom::BrowserInterfaceBroker>
+ browser_interface_broker,
+ const base::UnguessableToken& devtools_frame_token);
~CreateParams();
CreateParams(CreateParams&&);
@@ -253,7 +254,8 @@
RenderViewImpl* render_view;
int32_t routing_id;
- service_manager::mojom::InterfaceProviderPtr interface_provider;
+ mojo::PendingRemote<service_manager::mojom::InterfaceProvider>
+ interface_provider;
mojo::PendingRemote<blink::mojom::BrowserInterfaceBroker>
browser_interface_broker;
base::UnguessableToken devtools_frame_token;
@@ -501,7 +503,8 @@
// mojom::Frame implementation:
void GetInterfaceProvider(
- service_manager::mojom::InterfaceProviderRequest request) override;
+ mojo::PendingReceiver<service_manager::mojom::InterfaceProvider> receiver)
+ override;
void GetCanonicalUrlForSharing(
GetCanonicalUrlForSharingCallback callback) override;
void BlockRequests() override;
@@ -1039,7 +1042,8 @@
static RenderFrameImpl* Create(
RenderViewImpl* render_view,
int32_t routing_id,
- service_manager::mojom::InterfaceProviderPtr interface_provider,
+ mojo::PendingRemote<service_manager::mojom::InterfaceProvider>
+ interface_provider,
mojo::PendingRemote<blink::mojom::BrowserInterfaceBroker>
browser_interface_broker,
const base::UnguessableToken& devtools_frame_token);
@@ -1601,8 +1605,8 @@
bool enable_mojo_js_bindings_ = false;
mojo::AssociatedRemote<mojom::FrameHost> frame_host_remote_;
- mojo::BindingSet<service_manager::mojom::InterfaceProvider>
- interface_provider_bindings_;
+ mojo::ReceiverSet<service_manager::mojom::InterfaceProvider>
+ interface_provider_receivers_;
// URLLoaderFactory instances used for subresource loading.
// Depending on how the frame was created, |loader_factories_| could be: