RenderViewImpl: remove FromWebView

Redirect usage in render_view_browsertest.cc through
RenderFrameImpl and render_view(). Despite the comment on
render_view() about it being temporary, this path is much more
commonly used than FromWebView().

Move the definition up a level directly to RenderView. Still
investigating other uses. The goal is to remove anything which
relies on global variables so that RenderViews can be
frozen/throttled independently.

Bug: 1098157
Change-Id: I9fe0c180f305e6d2fa8a302231be8d4529f48192
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2259674
Commit-Queue: Daniel Cheng <[email protected]>
Reviewed-by: Daniel Cheng <[email protected]>
Cr-Commit-Position: refs/heads/master@{#793531}
diff --git a/content/renderer/render_view_browsertest.cc b/content/renderer/render_view_browsertest.cc
index 24f074c..e1c6a8b6 100644
--- a/content/renderer/render_view_browsertest.cc
+++ b/content/renderer/render_view_browsertest.cc
@@ -1095,7 +1095,6 @@
       network::mojom::WebSandboxFlags::kNone,
       blink::FeaturePolicyFeatureState(),
       blink::AllocateSessionStorageNamespaceId());
-  RenderViewImpl* new_view = RenderViewImpl::FromWebView(new_web_view);
   auto popup_navigation_info = std::make_unique<blink::WebNavigationInfo>();
   popup_navigation_info->url_request = std::move(popup_request);
   popup_navigation_info->frame_type =
@@ -1104,7 +1103,9 @@
   popup_navigation_info->navigation_policy =
       blink::kWebNavigationPolicyNewForegroundTab;
   render_thread_->sink().ClearMessages();
-  static_cast<RenderFrameImpl*>(new_view->GetMainRenderFrame())
+  RenderFrameImpl::FromWebFrame(new_web_view->MainFrame())
+      ->render_view()
+      ->GetMainRenderFrame()
       ->BeginNavigation(std::move(popup_navigation_info));
   EXPECT_TRUE(frame()->IsURLOpened());
 }
diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc
index 77b595de..3c8aebe7 100644
--- a/content/renderer/render_view_impl.cc
+++ b/content/renderer/render_view_impl.cc
@@ -511,7 +511,7 @@
 }
 
 /*static*/
-RenderViewImpl* RenderViewImpl::FromWebView(WebView* webview) {
+RenderView* RenderView::FromWebView(blink::WebView* webview) {
   DCHECK(RenderThread::IsMainThread());
   ViewMap* views = g_view_map.Pointer();
   auto it = views->find(webview);
@@ -519,11 +519,6 @@
 }
 
 /*static*/
-RenderView* RenderView::FromWebView(blink::WebView* webview) {
-  return RenderViewImpl::FromWebView(webview);
-}
-
-/*static*/
 RenderViewImpl* RenderViewImpl::FromRoutingID(int32_t routing_id) {
   DCHECK(RenderThread::IsMainThread());
   RoutingIDViewMap* views = g_routing_id_view_map.Pointer();
diff --git a/content/renderer/render_view_impl.h b/content/renderer/render_view_impl.h
index 5dbf5084..d3d1c042 100644
--- a/content/renderer/render_view_impl.h
+++ b/content/renderer/render_view_impl.h
@@ -124,9 +124,6 @@
       CompositorDependencies* compositor_deps,
       const mojom::CreateViewParams&));
 
-  // Returns the RenderViewImpl containing the given WebView.
-  static RenderViewImpl* FromWebView(blink::WebView* webview);
-
   // Returns the RenderViewImpl for the given routing ID.
   static RenderViewImpl* FromRoutingID(int routing_id);