    // 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.
-+  if (parent_view->GetNativeView() != platform_view_->GetNativeView())
-   parent_view->GetNativeView()->AddChild(platform_view_->GetNativeView());
+   if (!base::FeatureList::IsEnabled(features::kMash))
+-    parent_view->GetNativeView()->AddChild(platform_view_->GetNativeView());
++    if (parent_view->GetNativeView() != platform_view_->GetNativeView())
++      parent_view->GetNativeView()->AddChild(platform_view_->GetNativeView());
  #endif  // defined(USE_AURA)
  }
  

 
 RenderWidgetHostViewBase* WebContentsViewGuest::CreateViewForPopupWidget(
diff --git a/content/public/browser/web_contents.h b/content/public/browser/web_contents.h
index 453942537f6c..6055b966ccee 100644
--- a/content/public/browser/web_contents.h
+++ b/content/public/browser/web_contents.h
@@ -68,9 +68,12 @@ class InterstitialPage;
 class PageState;
 class RenderFrameHost;
 class RenderViewHost;
+class RenderViewHostDelegateView;

 struct CustomContextMenuContext;
 struct DropData;
 struct Manifest;
@@ -172,6 +175,10 @@ class WebContents : public PageNavigator,
     // navigation requires a dedicated or privileged process, such as a WebUI.
     bool initialize_renderer;
 
+    // Optionally specify the view and delegate view.
+    content::WebContentsView* view = nullptr;
+    content::RenderViewHostDelegateView* delegate_view = nullptr;
+
     // Sandboxing flags set on the new WebContents.
     blink::WebSandboxFlags starting_sandbox_flags;
   };
