{Add,Get}Interface() for PendingAssociatedReceiver/AssociatedRemote

This comes from the discussion of crrev/c/1306240. We want to migrate
- AssociatedInterfaceRequest to PendingAssociatedReceiver.
- AssociatedInterfacePtr to AssociatedRemote

However AssociatedInterfaceRegistry and AssociatedInterfaceProvider
don't have such support yet.

Bug: 955171
Change-Id: I350dba2dac66b37cfc59f08daa06b000352b0c1d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1685837
Reviewed-by: Ken Rockot <[email protected]>
Reviewed-by: Arthur Sonzogni <[email protected]>
Reviewed-by: Daniel Cheng <[email protected]>
Commit-Queue: Shimi Zhang <[email protected]>
Cr-Commit-Position: refs/heads/master@{#675743}
diff --git a/content/renderer/render_frame_impl.h b/content/renderer/render_frame_impl.h
index 3f45bcc..9fad002 100644
--- a/content/renderer/render_frame_impl.h
+++ b/content/renderer/render_frame_impl.h
@@ -62,6 +62,7 @@
 #include "ipc/ipc_platform_file.h"
 #include "media/base/routing_token_callback.h"
 #include "mojo/public/cpp/bindings/associated_binding.h"
+#include "mojo/public/cpp/bindings/associated_receiver.h"
 #include "mojo/public/cpp/bindings/binding.h"
 #include "mojo/public/cpp/bindings/binding_set.h"
 #include "mojo/public/cpp/system/data_pipe.h"
@@ -904,7 +905,7 @@
   void BindFrameBindingsControl(
       mojom::FrameBindingsControlAssociatedRequest request);
   void BindFrameNavigationControl(
-      mojom::FrameNavigationControlAssociatedRequest request);
+      mojo::PendingAssociatedReceiver<mojom::FrameNavigationControl> receiver);
   // Only used when PerNavigationMojoInterface is enabled.
   void BindNavigationClient(mojom::NavigationClientAssociatedRequest request);
 
@@ -1669,8 +1670,8 @@
   mojo::AssociatedBinding<mojom::HostZoom> host_zoom_binding_;
   mojo::AssociatedBinding<mojom::FrameBindingsControl>
       frame_bindings_control_binding_;
-  mojo::AssociatedBinding<mojom::FrameNavigationControl>
-      frame_navigation_control_binding_;
+  mojo::AssociatedReceiver<mojom::FrameNavigationControl>
+      frame_navigation_control_receiver_;
   mojo::AssociatedBinding<mojom::FullscreenVideoElementHandler>
       fullscreen_binding_;
   mojo::AssociatedBinding<mojom::MhtmlFileWriter> mhtml_file_writer_binding_;