Use Channel-associated interfaces for autofill IPC

This converts autofill and password manager use Channel-assocaited
interfaces for the AutofillDriver and AutofillAgent mojom interfaces.
This is necessary due to subtle timing dependencies between autofill
IPC and frame IPC (e.g. FrameHostMsg_Detach) which were exposed when
attempting to make changes to mojom message dispatch scheduling.

Bug: 866616
Change-Id: I2b2f521673715b1a6aa7bbb59dad605306b175de
Reviewed-on: https://chromium-review.googlesource.com/1148587
Commit-Queue: Ken Rockot <[email protected]>
Reviewed-by: Evan Stade <[email protected]>
Reviewed-by: John Abd-El-Malek <[email protected]>
Reviewed-by: Daniel Cheng <[email protected]>
Cr-Commit-Position: refs/heads/master@{#579420}
diff --git a/android_webview/renderer/aw_render_frame_ext.h b/android_webview/renderer/aw_render_frame_ext.h
index 55d4b38..dfa6ec9 100644
--- a/android_webview/renderer/aw_render_frame_ext.h
+++ b/android_webview/renderer/aw_render_frame_ext.h
@@ -7,7 +7,7 @@
 
 #include "base/macros.h"
 #include "content/public/renderer/render_frame_observer.h"
-#include "services/service_manager/public/cpp/binder_registry.h"
+#include "third_party/blink/public/common/associated_interfaces/associated_interface_registry.h"
 #include "third_party/skia/include/core/SkColor.h"
 #include "ui/gfx/geometry/point_f.h"
 #include "ui/gfx/geometry/size.h"
@@ -33,9 +33,9 @@
   ~AwRenderFrameExt() override;
 
   // RenderFrameObserver:
-  void OnInterfaceRequestForFrame(
+  bool OnAssociatedInterfaceRequestForFrame(
       const std::string& interface_name,
-      mojo::ScopedMessagePipeHandle* interface_pipe) override;
+      mojo::ScopedInterfaceEndpointHandle* handle) override;
   void DidCommitProvisionalLoad(bool is_new_navigation,
                                 bool is_same_document_navigation) override;
 
@@ -62,7 +62,7 @@
 
   url::Origin last_origin_;
 
-  std::unique_ptr<service_manager::BinderRegistry> registry_;
+  blink::AssociatedInterfaceRegistry registry_;
 
   DISALLOW_COPY_AND_ASSIGN(AwRenderFrameExt);
 };