Commit bd330a25 authored by lazyboy's avatar lazyboy Committed by Commit bot

Use GuestViewBase for creating constrained windows instead of WebViewGuest.

This will allow features that use constrained windows (e.g. printing)
  work on all guest views: app-view/web-view/mime-handler-view, etc.

BUG=411765
Test=This is internal only for now, nothing visible,
  once the full support for printing and saving mime-handler-view lands
  it will be used.

Review URL: https://codereview.chromium.org/552013005

Cr-Commit-Position: refs/heads/master@{#293898}
parent 394dfd10
......@@ -14,7 +14,7 @@
#include "components/web_modal/web_contents_modal_dialog_manager.h"
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/web_contents.h"
#include "extensions/browser/guest_view/web_view/web_view_guest.h"
#include "extensions/browser/guest_view/guest_view_base.h"
using web_modal::WebContentsModalDialogManager;
using web_modal::NativeWebContentsModalDialog;
......@@ -28,12 +28,12 @@ ConstrainedWindowMac::ConstrainedWindowMac(
sheet_([sheet retain]),
shown_(false) {
DCHECK(web_contents);
extensions::WebViewGuest* web_view_guest =
extensions::WebViewGuest::FromWebContents(web_contents);
extensions::GuestViewBase* guest_view =
extensions::GuestViewBase::FromWebContents(web_contents);
// For embedded WebContents, use the embedder's WebContents for constrained
// window.
web_contents_ = web_view_guest && web_view_guest->embedder_web_contents() ?
web_view_guest->embedder_web_contents() : web_contents;
web_contents_ = guest_view && guest_view->embedder_web_contents() ?
guest_view->embedder_web_contents() : web_contents;
DCHECK(sheet_.get());
web_modal::PopupManager* popup_manager =
web_modal::PopupManager::FromWebContents(web_contents_);
......
......@@ -9,7 +9,7 @@
#include "chrome/browser/ui/browser_finder.h"
#include "components/web_modal/popup_manager.h"
#include "components/web_modal/web_contents_modal_dialog_host.h"
#include "extensions/browser/guest_view/web_view/web_view_guest.h"
#include "extensions/browser/guest_view/guest_view_base.h"
#include "ui/views/border.h"
#include "ui/views/widget/widget.h"
#include "ui/views/widget/widget_observer.h"
......@@ -123,13 +123,13 @@ void UpdateBrowserModalDialogPosition(views::Widget* widget,
views::Widget* ShowWebModalDialogViews(
views::WidgetDelegate* dialog,
content::WebContents* initiator_web_contents) {
extensions::WebViewGuest* web_view_guest =
extensions::WebViewGuest::FromWebContents(initiator_web_contents);
extensions::GuestViewBase* guest_view =
extensions::GuestViewBase::FromWebContents(initiator_web_contents);
// For embedded WebContents, use the embedder's WebContents for constrained
// window.
content::WebContents* web_contents =
web_view_guest && web_view_guest->embedder_web_contents() ?
web_view_guest->embedder_web_contents() : initiator_web_contents;
guest_view && guest_view->embedder_web_contents() ?
guest_view->embedder_web_contents() : initiator_web_contents;
views::Widget* widget = CreateWebModalDialogViews(dialog, web_contents);
web_modal::PopupManager* popup_manager =
web_modal::PopupManager::FromWebContents(web_contents);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment