[CastWebService] Move RenderProcessHostObserver into CastWebContentsImpl

Move RenderProcessHostObserver methods into CastWebContentsImpl. Remove
CastBluetoothChooser with corresponding CastWebView::Delegate method.

Merge-with: eureka-internal/361134

Bug: b/148898885
Test: CQ
Change-Id: I2adce89c9b3baba5780211e58d5a3be48ff63171
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2051024
Reviewed-by: Sean Topping <[email protected]>
Commit-Queue: Zhaoxin Liang <[email protected]>
Cr-Commit-Position: refs/heads/master@{#740463}
diff --git a/chromecast/browser/cast_web_contents.h b/chromecast/browser/cast_web_contents.h
index 323007c..a4df057a 100644
--- a/chromecast/browser/cast_web_contents.h
+++ b/chromecast/browser/cast_web_contents.h
@@ -12,6 +12,7 @@
 #include "base/containers/flat_set.h"
 #include "base/observer_list.h"
 #include "base/optional.h"
+#include "base/process/process.h"
 #include "base/strings/string16.h"
 #include "base/strings/string_piece_forward.h"
 #include "chromecast/common/mojom/feature_manager.mojom.h"
@@ -164,6 +165,10 @@
     // Notifies that a resource for the main frame failed to load.
     virtual void ResourceLoadFailed(CastWebContents* cast_web_contents) {}
 
+    // Propagates the process information via observer, in particular to
+    // the underlying OnRendererProcessStarted() method.
+    virtual void OnRenderProcessReady(const base::Process& process) {}
+
     // Adds |this| to the ObserverList in the implementation of
     // |cast_web_contents|.
     void Observe(CastWebContents* cast_web_contents);