Remove WebContentsViewGuest & RenderWidgetHostViewGuest.

This CL removes more dead BrowserPlugin infrastructure.

Specifically, it remove WebContentsViewGuest, and
RenderWidgetHostViewGuest. It also removes the "guest_view_hack" which
has been in RenderWidgetHostViewMac/Aura since the inception of
BrowserPlugin.

Bug: 533069
Change-Id: Ie6d28ca981d612d3f7bf8f180c615f78d53b7e26
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1943097
Commit-Queue: James MacLean <[email protected]>
Reviewed-by: Alex Moshchuk <[email protected]>
Cr-Commit-Position: refs/heads/master@{#721497}
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index 3a5aa31d..c116da56 100644
--- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc
@@ -85,7 +85,6 @@
 #include "content/browser/site_instance_impl.h"
 #include "content/browser/web_contents/javascript_dialog_navigation_deferrer.h"
 #include "content/browser/web_contents/web_contents_view_child_frame.h"
-#include "content/browser/web_contents/web_contents_view_guest.h"
 #include "content/browser/webui/web_ui_controller_factory_registry.h"
 #include "content/browser/webui/web_ui_impl.h"
 #include "content/common/browser_plugin/browser_plugin_constants.h"
@@ -2055,11 +2054,6 @@
   } else {
     view_.reset(CreateWebContentsView(this, delegate,
                                       &render_view_host_delegate_view_));
-    if (browser_plugin_guest_) {
-      view_ = std::make_unique<WebContentsViewGuest>(
-          this, browser_plugin_guest_.get(), std::move(view_),
-          &render_view_host_delegate_view_);
-    }
   }
   CHECK(render_view_host_delegate_view_);
   CHECK(view_.get());
@@ -2399,13 +2393,8 @@
 
   // If the focused WebContents is a guest WebContents, then get the focused
   // frame in the embedder WebContents instead.
-  FrameTreeNode* focused_frame = nullptr;
-  if (focused_contents->browser_plugin_guest_ &&
-      !GuestMode::IsCrossProcessFrameGuest(focused_contents)) {
-    focused_frame = frame_tree_.GetFocusedFrame();
-  } else {
-    focused_frame = GetFocusedWebContents()->frame_tree_.GetFocusedFrame();
-  }
+  FrameTreeNode* focused_frame =
+      GetFocusedWebContents()->frame_tree_.GetFocusedFrame();
 
   if (!focused_frame)
     return receiving_widget;
@@ -2429,13 +2418,6 @@
                focused_web_contents->interstitial_page_->GetMainFrame())
         ->GetRenderWidgetHost();
   }
-  if (!GuestMode::IsCrossProcessFrameGuest(focused_web_contents) &&
-      focused_web_contents->browser_plugin_guest_) {
-    // If this is a guest, we need to be controlled by our embedder.
-    return focused_web_contents->GetOuterWebContents()
-        ->GetMainFrame()
-        ->GetRenderWidgetHost();
-  }
 
   return focused_web_contents->GetMainFrame()->GetRenderWidgetHost();
 }
@@ -2912,7 +2894,7 @@
       // TODO(brettw): It seems bogus that we have to call this function on the
       // newly created object and give it one of its own member variables.
       RenderWidgetHostView* widget_view = new_view->CreateViewForWidget(
-          new_contents_impl->GetRenderViewHost()->GetWidget(), false);
+          new_contents_impl->GetRenderViewHost()->GetWidget());
       if (!renderer_started_hidden) {
         // RenderWidgets for frames always initialize as hidden. If the renderer
         // created this window as visible, then we show it here.
@@ -5750,12 +5732,6 @@
 }
 
 WebContentsImpl* WebContentsImpl::GetOuterWebContents() {
-  if (GuestMode::IsCrossProcessFrameGuest(this))
-    return node_.outer_web_contents();
-
-  if (browser_plugin_guest_)
-    return browser_plugin_guest_->embedder_web_contents();
-
   return node_.outer_web_contents();
 }
 
@@ -6251,9 +6227,6 @@
 
   GetOutermostWebContents()->node_.SetFocusedWebContents(this);
 
-  if (!GuestMode::IsCrossProcessFrameGuest(this) && browser_plugin_guest_)
-    return;
-
   // Send a page level blur to the old contents so that it displays inactive UI
   // and focus this contents to activate it.
   if (old_contents)
@@ -6420,11 +6393,6 @@
 
 void WebContentsImpl::FocusOwningWebContents(
     RenderWidgetHostImpl* render_widget_host) {
-  // The PDF plugin still runs as a BrowserPlugin and must go through the
-  // input redirection mechanism. It must not become focused direcly.
-  if (!GuestMode::IsCrossProcessFrameGuest(this) && browser_plugin_guest_)
-    return;
-
   RenderWidgetHostImpl* main_frame_widget_host =
       GetMainFrame()->GetRenderWidgetHost();
   RenderWidgetHostImpl* focused_widget =
@@ -6580,7 +6548,7 @@
 void WebContentsImpl::CreateRenderWidgetHostViewForRenderManager(
     RenderViewHost* render_view_host) {
   RenderWidgetHostViewBase* rwh_view =
-      view_->CreateViewForWidget(render_view_host->GetWidget(), false);
+      view_->CreateViewForWidget(render_view_host->GetWidget());
   rwh_view->SetSize(GetSizeForNewRenderView(true));
 }
 
diff --git a/content/browser/web_contents/web_contents_view.h b/content/browser/web_contents/web_contents_view.h
index bff5b42..4c5fb180 100644
--- a/content/browser/web_contents/web_contents_view.h
+++ b/content/browser/web_contents/web_contents_view.h
@@ -83,13 +83,8 @@
   // Sets up the View that holds the rendered web page, receives messages for
   // it and contains page plugins. The host view should be sized to the current
   // size of the WebContents.
-  //
-  // |is_guest_view_hack| is temporary hack and will be removed once
-  // RenderWidgetHostViewGuest is not dependent on platform view.
-  // TODO(lazyboy): Remove |is_guest_view_hack| once http://crbug.com/330264 is
-  // fixed.
   virtual RenderWidgetHostViewBase* CreateViewForWidget(
-      RenderWidgetHost* render_widget_host, bool is_guest_view_hack) = 0;
+      RenderWidgetHost* render_widget_host) = 0;
 
   // Creates a new View that holds a non-top-level widget and receives messages
   // for it.
diff --git a/content/browser/web_contents/web_contents_view_android.cc b/content/browser/web_contents/web_contents_view_android.cc
index af081e77..991732d 100644
--- a/content/browser/web_contents/web_contents_view_android.cc
+++ b/content/browser/web_contents/web_contents_view_android.cc
@@ -233,7 +233,7 @@
 void WebContentsViewAndroid::CreateView(gfx::NativeView context) {}
 
 RenderWidgetHostViewBase* WebContentsViewAndroid::CreateViewForWidget(
-    RenderWidgetHost* render_widget_host, bool is_guest_view_hack) {
+    RenderWidgetHost* render_widget_host) {
   if (render_widget_host->GetView()) {
     // During testing, the view will already be set up in most cases to the
     // test view, so we don't want to clobber it with a real one. To verify that
diff --git a/content/browser/web_contents/web_contents_view_android.h b/content/browser/web_contents/web_contents_view_android.h
index 59579dc..63befcc1 100644
--- a/content/browser/web_contents/web_contents_view_android.h
+++ b/content/browser/web_contents/web_contents_view_android.h
@@ -70,8 +70,7 @@
   gfx::Rect GetViewBounds() const override;
   void CreateView(gfx::NativeView context) override;
   RenderWidgetHostViewBase* CreateViewForWidget(
-      RenderWidgetHost* render_widget_host,
-      bool is_guest_view_hack) override;
+      RenderWidgetHost* render_widget_host) override;
   RenderWidgetHostViewBase* CreateViewForChildWidget(
       RenderWidgetHost* render_widget_host) override;
   void SetPageTitle(const base::string16& title) override;
diff --git a/content/browser/web_contents/web_contents_view_aura.cc b/content/browser/web_contents/web_contents_view_aura.cc
index d8f6e22..75972bb 100644
--- a/content/browser/web_contents/web_contents_view_aura.cc
+++ b/content/browser/web_contents/web_contents_view_aura.cc
@@ -962,7 +962,7 @@
 }
 
 RenderWidgetHostViewBase* WebContentsViewAura::CreateViewForWidget(
-    RenderWidgetHost* render_widget_host, bool is_guest_view_hack) {
+    RenderWidgetHost* render_widget_host) {
   if (render_widget_host->GetView()) {
     // During testing, the view will already be set up in most cases to the
     // test view, so we don't want to clobber it with a real one. To verify that
@@ -976,10 +976,8 @@
 
   RenderWidgetHostViewAura* view =
       g_create_render_widget_host_view
-          ? g_create_render_widget_host_view(render_widget_host,
-                                             is_guest_view_hack)
-          : new RenderWidgetHostViewAura(render_widget_host,
-                                         is_guest_view_hack);
+          ? g_create_render_widget_host_view(render_widget_host)
+          : new RenderWidgetHostViewAura(render_widget_host);
   view->InitAsChild(GetRenderWidgetHostViewParent());
 
   RenderWidgetHostImpl* host_impl =
@@ -1002,7 +1000,7 @@
 
 RenderWidgetHostViewBase* WebContentsViewAura::CreateViewForChildWidget(
     RenderWidgetHost* render_widget_host) {
-  return new RenderWidgetHostViewAura(render_widget_host, false);
+  return new RenderWidgetHostViewAura(render_widget_host);
 }
 
 void WebContentsViewAura::SetPageTitle(const base::string16& title) {
diff --git a/content/browser/web_contents/web_contents_view_aura.h b/content/browser/web_contents/web_contents_view_aura.h
index 180f4fa0..acdba5f 100644
--- a/content/browser/web_contents/web_contents_view_aura.h
+++ b/content/browser/web_contents/web_contents_view_aura.h
@@ -61,7 +61,7 @@
   }
 
   using RenderWidgetHostViewCreateFunction =
-      RenderWidgetHostViewAura* (*)(RenderWidgetHost*, bool);
+      RenderWidgetHostViewAura* (*)(RenderWidgetHost*);
 
   // Used to override the creation of RenderWidgetHostViews in tests.
   static void InstallCreateHookForTests(
@@ -147,8 +147,7 @@
   gfx::Rect GetViewBounds() const override;
   void CreateView(gfx::NativeView context) override;
   RenderWidgetHostViewBase* CreateViewForWidget(
-      RenderWidgetHost* render_widget_host,
-      bool is_guest_view_hack) override;
+      RenderWidgetHost* render_widget_host) override;
   RenderWidgetHostViewBase* CreateViewForChildWidget(
       RenderWidgetHost* render_widget_host) override;
   void SetPageTitle(const base::string16& title) override;
diff --git a/content/browser/web_contents/web_contents_view_child_frame.cc b/content/browser/web_contents/web_contents_view_child_frame.cc
index a766385..c8cb360 100644
--- a/content/browser/web_contents/web_contents_view_child_frame.cc
+++ b/content/browser/web_contents/web_contents_view_child_frame.cc
@@ -82,8 +82,7 @@
 }
 
 RenderWidgetHostViewBase* WebContentsViewChildFrame::CreateViewForWidget(
-    RenderWidgetHost* render_widget_host,
-    bool is_guest_view_hack) {
+    RenderWidgetHost* render_widget_host) {
   return RenderWidgetHostViewChildFrame::Create(render_widget_host);
 }
 
diff --git a/content/browser/web_contents/web_contents_view_child_frame.h b/content/browser/web_contents/web_contents_view_child_frame.h
index 412bb35..92cbe3d 100644
--- a/content/browser/web_contents/web_contents_view_child_frame.h
+++ b/content/browser/web_contents/web_contents_view_child_frame.h
@@ -38,8 +38,7 @@
   gfx::Rect GetViewBounds() const override;
   void CreateView(gfx::NativeView context) override;
   RenderWidgetHostViewBase* CreateViewForWidget(
-      RenderWidgetHost* render_widget_host,
-      bool is_guest_view_hack) override;
+      RenderWidgetHost* render_widget_host) override;
   RenderWidgetHostViewBase* CreateViewForChildWidget(
       RenderWidgetHost* render_widget_host) override;
   void SetPageTitle(const base::string16& title) override;
diff --git a/content/browser/web_contents/web_contents_view_guest.cc b/content/browser/web_contents/web_contents_view_guest.cc
deleted file mode 100644
index c45581fd..0000000
--- a/content/browser/web_contents/web_contents_view_guest.cc
+++ /dev/null
@@ -1,237 +0,0 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "content/browser/web_contents/web_contents_view_guest.h"
-
-#include <utility>
-
-#include "base/metrics/user_metrics.h"
-#include "build/build_config.h"
-#include "content/browser/browser_plugin/browser_plugin_embedder.h"
-#include "content/browser/browser_plugin/browser_plugin_guest.h"
-#include "content/browser/frame_host/interstitial_page_impl.h"
-#include "content/browser/frame_host/render_widget_host_view_guest.h"
-#include "content/browser/renderer_host/display_util.h"
-#include "content/browser/renderer_host/render_view_host_factory.h"
-#include "content/browser/renderer_host/render_view_host_impl.h"
-#include "content/browser/web_contents/web_contents_impl.h"
-#include "content/common/drag_messages.h"
-#include "content/public/browser/guest_mode.h"
-#include "content/public/browser/web_contents_delegate.h"
-#include "content/public/common/context_menu_params.h"
-#include "content/public/common/drop_data.h"
-#include "ui/gfx/geometry/point.h"
-#include "ui/gfx/geometry/rect.h"
-#include "ui/gfx/geometry/size.h"
-#include "ui/gfx/image/image_skia.h"
-
-#if defined(USE_AURA)
-#include "ui/aura/window.h"
-#endif
-
-using blink::WebDragOperation;
-using blink::WebDragOperationsMask;
-
-namespace content {
-
-WebContentsViewGuest::WebContentsViewGuest(
-    WebContentsImpl* web_contents,
-    BrowserPluginGuest* guest,
-    std::unique_ptr<WebContentsView> platform_view,
-    RenderViewHostDelegateView** delegate_view)
-    : web_contents_(web_contents),
-      guest_(guest),
-      platform_view_(std::move(platform_view)),
-      platform_view_delegate_view_(*delegate_view) {
-  *delegate_view = this;
-  DCHECK(!GuestMode::IsCrossProcessFrameGuest(web_contents));
-}
-
-WebContentsViewGuest::~WebContentsViewGuest() {
-}
-
-gfx::NativeView WebContentsViewGuest::GetNativeView() const {
-  return platform_view_->GetNativeView();
-}
-
-gfx::NativeView WebContentsViewGuest::GetContentNativeView() const {
-  RenderWidgetHostView* rwhv = web_contents_->GetRenderWidgetHostView();
-  if (!rwhv)
-    return nullptr;
-  return rwhv->GetNativeView();
-}
-
-gfx::NativeWindow WebContentsViewGuest::GetTopLevelNativeWindow() const {
-  return guest_->embedder_web_contents()->GetTopLevelNativeWindow();
-}
-
-void WebContentsViewGuest::OnGuestAttached(WebContentsView* parent_view) {
-#if defined(USE_AURA)
-  // In aura, ScreenPositionClient doesn't work properly if we do
-  // not have the native view associated with this WebContentsViewGuest in the
-  // view hierarchy. We add this view as embedder's child here.
-  // This would go in WebContentsViewGuest::CreateView, but that is too early to
-  // access embedder_web_contents(). Therefore, we do it here.
-  parent_view->GetNativeView()->AddChild(platform_view_->GetNativeView());
-#endif  // defined(USE_AURA)
-}
-
-void WebContentsViewGuest::OnGuestDetached(WebContentsView* old_parent_view) {
-#if defined(USE_AURA)
-  old_parent_view->GetNativeView()->RemoveChild(
-      platform_view_->GetNativeView());
-#endif  // defined(USE_AURA)
-}
-
-void WebContentsViewGuest::GetContainerBounds(gfx::Rect* out) const {
-  if (guest_->embedder_web_contents()) {
-    // We need embedder container's bounds to calculate our bounds.
-    guest_->embedder_web_contents()->GetView()->GetContainerBounds(out);
-    gfx::Point guest_coordinates =
-        guest_->GetCoordinatesInEmbedderWebContents(gfx::Point());
-    out->Offset(guest_coordinates.x(), guest_coordinates.y());
-  } else {
-    out->set_origin(gfx::Point());
-  }
-
-  out->set_size(size_);
-}
-
-void WebContentsViewGuest::SizeContents(const gfx::Size& size) {
-  size_ = size;
-  RenderWidgetHostView* rwhv = web_contents_->GetRenderWidgetHostView();
-  if (rwhv)
-    rwhv->SetSize(size);
-}
-
-void WebContentsViewGuest::SetInitialFocus() {
-  platform_view_->SetInitialFocus();
-}
-
-gfx::Rect WebContentsViewGuest::GetViewBounds() const {
-  return gfx::Rect(size_);
-}
-
-void WebContentsViewGuest::CreateView(gfx::NativeView context) {
-  platform_view_->CreateView(context);
-}
-
-RenderWidgetHostViewBase* WebContentsViewGuest::CreateViewForWidget(
-    RenderWidgetHost* render_widget_host, bool is_guest_view_hack) {
-  if (render_widget_host->GetView()) {
-    // During testing, the view will already be set up in most cases to the
-    // test view, so we don't want to clobber it with a real one. To verify that
-    // this actually is happening (and somebody isn't accidentally creating the
-    // view twice), we check for the RVH Factory, which will be set when we're
-    // making special ones (which go along with the special views).
-    DCHECK(RenderViewHostFactory::has_factory());
-    return static_cast<RenderWidgetHostViewBase*>(
-        render_widget_host->GetView());
-  }
-
-  RenderWidgetHostViewBase* platform_widget =
-      platform_view_->CreateViewForWidget(render_widget_host, true);
-
-  return RenderWidgetHostViewGuest::Create(render_widget_host, guest_,
-                                           platform_widget->GetWeakPtr());
-}
-
-RenderWidgetHostViewBase* WebContentsViewGuest::CreateViewForChildWidget(
-    RenderWidgetHost* render_widget_host) {
-  return platform_view_->CreateViewForChildWidget(render_widget_host);
-}
-
-void WebContentsViewGuest::SetPageTitle(const base::string16& title) {
-}
-
-void WebContentsViewGuest::RenderViewCreated(RenderViewHost* host) {
-  platform_view_->RenderViewCreated(host);
-}
-
-void WebContentsViewGuest::RenderViewReady() {
-  platform_view_->RenderViewReady();
-}
-
-void WebContentsViewGuest::RenderViewHostChanged(RenderViewHost* old_host,
-                                                 RenderViewHost* new_host) {
-  platform_view_->RenderViewHostChanged(old_host, new_host);
-}
-
-void WebContentsViewGuest::SetOverscrollControllerEnabled(bool enabled) {
-  // This should never override the setting of the embedder view.
-}
-
-#if defined(OS_MACOSX)
-bool WebContentsViewGuest::CloseTabAfterEventTrackingIfNeeded() {
-  return false;
-}
-#endif
-
-WebContents* WebContentsViewGuest::web_contents() {
-  return web_contents_;
-}
-
-void WebContentsViewGuest::RestoreFocus() {
-  platform_view_->RestoreFocus();
-}
-
-void WebContentsViewGuest::Focus() {
-  platform_view_->Focus();
-}
-
-void WebContentsViewGuest::StoreFocus() {
-  platform_view_->StoreFocus();
-}
-
-void WebContentsViewGuest::FocusThroughTabTraversal(bool reverse) {
-  platform_view_->FocusThroughTabTraversal(reverse);
-}
-
-DropData* WebContentsViewGuest::GetDropData() const {
-  NOTIMPLEMENTED();
-  return nullptr;
-}
-
-void WebContentsViewGuest::UpdateDragCursor(WebDragOperation operation) {
-  RenderViewHostImpl* embedder_render_view_host =
-      static_cast<RenderViewHostImpl*>(
-          guest_->embedder_web_contents()->GetRenderViewHost());
-  CHECK(embedder_render_view_host);
-  RenderViewHostDelegateView* view =
-      embedder_render_view_host->GetDelegate()->GetDelegateView();
-  if (view)
-    view->UpdateDragCursor(operation);
-}
-
-void WebContentsViewGuest::ShowContextMenu(RenderFrameHost* render_frame_host,
-                                           const ContextMenuParams& params) {
-  DCHECK(platform_view_delegate_view_);
-  platform_view_delegate_view_->ShowContextMenu(render_frame_host, params);
-}
-
-void WebContentsViewGuest::StartDragging(
-    const DropData& drop_data,
-    WebDragOperationsMask ops,
-    const gfx::ImageSkia& image,
-    const gfx::Vector2d& image_offset,
-    const DragEventSourceInfo& event_info,
-    RenderWidgetHostImpl* source_rwh) {
-  WebContentsImpl* embedder_web_contents = guest_->embedder_web_contents();
-  embedder_web_contents->GetBrowserPluginEmbedder()->StartDrag(guest_);
-  RenderViewHostImpl* embedder_render_view_host =
-      static_cast<RenderViewHostImpl*>(
-          embedder_web_contents->GetRenderViewHost());
-  CHECK(embedder_render_view_host);
-  RenderViewHostDelegateView* view =
-      embedder_render_view_host->GetDelegate()->GetDelegateView();
-  if (view) {
-    RecordAction(base::UserMetricsAction("BrowserPlugin.Guest.StartDrag"));
-    view->StartDragging(
-        drop_data, ops, image, image_offset, event_info, source_rwh);
-  } else {
-    embedder_web_contents->SystemDragEnded(source_rwh);
-  }
-}
-
-}  // namespace content
diff --git a/content/browser/web_contents/web_contents_view_guest.h b/content/browser/web_contents/web_contents_view_guest.h
deleted file mode 100644
index 12aa7cd..0000000
--- a/content/browser/web_contents/web_contents_view_guest.h
+++ /dev/null
@@ -1,101 +0,0 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef CONTENT_BROWSER_WEB_CONTENTS_WEB_CONTENTS_VIEW_GUEST_H_
-#define CONTENT_BROWSER_WEB_CONTENTS_WEB_CONTENTS_VIEW_GUEST_H_
-
-#include <memory>
-#include <vector>
-
-#include "base/macros.h"
-#include "build/build_config.h"
-#include "content/browser/renderer_host/render_view_host_delegate_view.h"
-#include "content/browser/web_contents/web_contents_view.h"
-#include "content/common/content_export.h"
-#include "content/common/drag_event_source_info.h"
-
-namespace content {
-
-class WebContents;
-class WebContentsImpl;
-class BrowserPluginGuest;
-
-class WebContentsViewGuest : public WebContentsView,
-                             public RenderViewHostDelegateView {
- public:
-  // The corresponding WebContentsImpl is passed in the constructor, and manages
-  // our lifetime. This doesn't need to be the case, but is this way currently
-  // because that's what was easiest when they were split.
-  // WebContentsViewGuest always has a backing platform dependent view,
-  // |platform_view|.
-  WebContentsViewGuest(WebContentsImpl* web_contents,
-                       BrowserPluginGuest* guest,
-                       std::unique_ptr<WebContentsView> platform_view,
-                       RenderViewHostDelegateView** delegate_view);
-  ~WebContentsViewGuest() override;
-
-  WebContents* web_contents();
-
-  void OnGuestAttached(WebContentsView* parent_view);
-
-  void OnGuestDetached(WebContentsView* old_parent_view);
-
-  // WebContentsView implementation --------------------------------------------
-  gfx::NativeView GetNativeView() const override;
-  gfx::NativeView GetContentNativeView() const override;
-  gfx::NativeWindow GetTopLevelNativeWindow() const override;
-  void GetContainerBounds(gfx::Rect* out) const override;
-  void SizeContents(const gfx::Size& size) override;
-  void Focus() override;
-  void SetInitialFocus() override;
-  void StoreFocus() override;
-  void RestoreFocus() override;
-  void FocusThroughTabTraversal(bool reverse) override;
-  DropData* GetDropData() const override;
-  gfx::Rect GetViewBounds() const override;
-  void CreateView(gfx::NativeView context) override;
-  RenderWidgetHostViewBase* CreateViewForWidget(
-      RenderWidgetHost* render_widget_host,
-      bool is_guest_view_hack) override;
-  RenderWidgetHostViewBase* CreateViewForChildWidget(
-      RenderWidgetHost* render_widget_host) override;
-  void SetPageTitle(const base::string16& title) override;
-  void RenderViewCreated(RenderViewHost* host) override;
-  void RenderViewReady() override;
-  void RenderViewHostChanged(RenderViewHost* old_host,
-                             RenderViewHost* new_host) override;
-  void SetOverscrollControllerEnabled(bool enabled) override;
-#if defined(OS_MACOSX)
-  bool CloseTabAfterEventTrackingIfNeeded() override;
-#endif
-
-  // Backend implementation of RenderViewHostDelegateView.
-  void ShowContextMenu(RenderFrameHost* render_frame_host,
-                       const ContextMenuParams& params) override;
-  void StartDragging(const DropData& drop_data,
-                     blink::WebDragOperationsMask allowed_ops,
-                     const gfx::ImageSkia& image,
-                     const gfx::Vector2d& image_offset,
-                     const DragEventSourceInfo& event_info,
-                     RenderWidgetHostImpl* source_rwh) override;
-  void UpdateDragCursor(blink::WebDragOperation operation) override;
-
- private:
-  // The WebContentsImpl whose contents we display.
-  WebContentsImpl* web_contents_;
-  BrowserPluginGuest* guest_;
-  // The platform dependent view backing this WebContentsView.
-  // Calls to this WebContentsViewGuest are forwarded to |platform_view_|.
-  std::unique_ptr<WebContentsView> platform_view_;
-  gfx::Size size_;
-
-  // Delegate view for guest's platform view.
-  RenderViewHostDelegateView* platform_view_delegate_view_;
-
-  DISALLOW_COPY_AND_ASSIGN(WebContentsViewGuest);
-};
-
-}  // namespace content
-
-#endif  // CONTENT_BROWSER_WEB_CONTENTS_WEB_CONTENTS_VIEW_GUEST_H_
diff --git a/content/browser/web_contents/web_contents_view_mac.h b/content/browser/web_contents/web_contents_view_mac.h
index 470a8a6..78b29f5 100644
--- a/content/browser/web_contents/web_contents_view_mac.h
+++ b/content/browser/web_contents/web_contents_view_mac.h
@@ -76,8 +76,7 @@
   gfx::Rect GetViewBounds() const override;
   void CreateView(gfx::NativeView context) override;
   RenderWidgetHostViewBase* CreateViewForWidget(
-      RenderWidgetHost* render_widget_host,
-      bool is_guest_view_hack) override;
+      RenderWidgetHost* render_widget_host) override;
   RenderWidgetHostViewBase* CreateViewForChildWidget(
       RenderWidgetHost* render_widget_host) override;
   void SetPageTitle(const base::string16& title) override;
@@ -133,7 +132,7 @@
   WebDragDest* drag_dest() const { return drag_dest_.get(); }
 
   using RenderWidgetHostViewCreateFunction =
-      RenderWidgetHostViewMac* (*)(RenderWidgetHost*, bool);
+      RenderWidgetHostViewMac* (*)(RenderWidgetHost*);
 
   // Used to override the creation of RenderWidgetHostViews in tests.
   CONTENT_EXPORT static void InstallCreateHookForTests(
diff --git a/content/browser/web_contents/web_contents_view_mac.mm b/content/browser/web_contents/web_contents_view_mac.mm
index ef68ba9..e0bb1e52 100644
--- a/content/browser/web_contents/web_contents_view_mac.mm
+++ b/content/browser/web_contents/web_contents_view_mac.mm
@@ -326,7 +326,7 @@
 }
 
 RenderWidgetHostViewBase* WebContentsViewMac::CreateViewForWidget(
-    RenderWidgetHost* render_widget_host, bool is_guest_view_hack) {
+    RenderWidgetHost* render_widget_host) {
   if (render_widget_host->GetView()) {
     // During testing, the view will already be set up in most cases to the
     // test view, so we don't want to clobber it with a real one. To verify that
@@ -340,9 +340,8 @@
 
   RenderWidgetHostViewMac* view =
       g_create_render_widget_host_view
-          ? g_create_render_widget_host_view(render_widget_host,
-                                             is_guest_view_hack)
-          : new RenderWidgetHostViewMac(render_widget_host, is_guest_view_hack);
+          ? g_create_render_widget_host_view(render_widget_host)
+          : new RenderWidgetHostViewMac(render_widget_host);
   if (delegate()) {
     base::scoped_nsobject<NSObject<RenderWidgetHostViewMacDelegate>>
         rw_delegate(delegate()->CreateRenderWidgetHostViewDelegate(
@@ -385,7 +384,7 @@
 RenderWidgetHostViewBase* WebContentsViewMac::CreateViewForChildWidget(
     RenderWidgetHost* render_widget_host) {
   RenderWidgetHostViewMac* view =
-      new RenderWidgetHostViewMac(render_widget_host, false);
+      new RenderWidgetHostViewMac(render_widget_host);
   if (delegate()) {
     base::scoped_nsobject<NSObject<RenderWidgetHostViewMacDelegate>>
         rw_delegate(delegate()->CreateRenderWidgetHostViewDelegate(