diff --git a/brightray/browser/inspectable_web_contents.cc b/brightray/browser/inspectable_web_contents.cc index ca3bded4a4..5e3af6013d 100644 --- a/brightray/browser/inspectable_web_contents.cc +++ b/brightray/browser/inspectable_web_contents.cc @@ -2,10 +2,18 @@ #include "browser/inspectable_web_contents_impl.h" +#include "content/public/browser/web_contents_view.h" + namespace brightray { InspectableWebContents* InspectableWebContents::Create(const content::WebContents::CreateParams& create_params) { - return Create(content::WebContents::Create(create_params)); + auto contents = content::WebContents::Create(create_params); +#if defined(OS_MACOSX) + // Work around http://crbug.com/279472. + contents->GetView()->SetAllowOverlappingViews(true); +#endif + + return Create(contents); } InspectableWebContents* InspectableWebContents::Create(content::WebContents* web_contents) { diff --git a/brightray/browser/inspectable_web_contents_impl.cc b/brightray/browser/inspectable_web_contents_impl.cc index 341521cf9b..935026df31 100644 --- a/brightray/browser/inspectable_web_contents_impl.cc +++ b/brightray/browser/inspectable_web_contents_impl.cc @@ -58,6 +58,12 @@ content::WebContents* InspectableWebContentsImpl::GetWebContents() const { void InspectableWebContentsImpl::ShowDevTools() { if (!devtools_web_contents_) { devtools_web_contents_.reset(content::WebContents::Create(content::WebContents::CreateParams(web_contents_->GetBrowserContext()))); + +#if defined(OS_MACOSX) + // Work around http://crbug.com/279472. + devtools_web_contents_->GetView()->SetAllowOverlappingViews(true); +#endif + Observe(devtools_web_contents_.get()); devtools_web_contents_->SetDelegate(this);