components: Create web_modal component.
Notable changes:
* Move WebContentsModalDialog related classes into components/web_modal/
* Use namespace web_modal
* Move the logic for sending the Chrome IPC message out of
WebContentsModalDialogManager, and into ChromeModalDialogManager.
Have Browser and ShellWindow subclass ChromeModalDialogManager,
instead of directly from WebContentsModalDialogManager, to be able
to send the IPC.
* Introduce WebContentsModalDialogManagerDelegate::IsWebContentsVisibile.
This is necessary to remove the dependency on platform_util.
BUG=241278
[email protected], [email protected]
Review URL: https://codereview.chromium.org/14969012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@200448 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/chrome/browser/ui/browser_window.h b/chrome/browser/ui/browser_window.h
index ec2521b..23a0ae24 100644
--- a/chrome/browser/ui/browser_window.h
+++ b/chrome/browser/ui/browser_window.h
@@ -28,7 +28,6 @@
#if !defined(OS_MACOSX)
class ToolbarView;
#endif
-class WebContentsModalDialogHost;
namespace autofill {
class PasswordGenerator;
@@ -49,6 +48,10 @@
class Size;
}
+namespace web_modal {
+class WebContentsModalDialogHost;
+}
+
////////////////////////////////////////////////////////////////////////////////
// BrowserWindow interface
// An interface implemented by the "view" of the Browser window.
@@ -326,7 +329,8 @@
// Return the WebContentsModalDialogHost for use in positioning web contents
// modal dialogs within the browser window.
- virtual WebContentsModalDialogHost* GetWebContentsModalDialogHost() = 0;
+ virtual web_modal::WebContentsModalDialogHost*
+ GetWebContentsModalDialogHost() = 0;
// Invoked when the preferred size of the contents in current tab has been
// changed. We might choose to update the window size to accomodate this