Chromium Code Reviews| Index: components/web_modal/web_contents_modal_dialog_manager.h |
| diff --git a/components/web_modal/web_contents_modal_dialog_manager.h b/components/web_modal/web_contents_modal_dialog_manager.h |
| index 6505301c215f73fa3e250b800f239dd3de988208..374cd705d1bbf69231e37640d13b508848549c2b 100644 |
| --- a/components/web_modal/web_contents_modal_dialog_manager.h |
| +++ b/components/web_modal/web_contents_modal_dialog_manager.h |
| @@ -37,6 +37,12 @@ class WebContentsModalDialogManager |
| // WillClose() when it is being destroyed. |
| void ShowModalDialog(gfx::NativeWindow dialog); |
| + // Shows the dialog as a non clipped web contents modal dialog. The dialog |
| + // will be able to extend outside the bounds of the parent window on platforms |
| + // where this is allowed. The dialog will notify via WillClose() when it is |
| + // being destroyed. |
| + void ShowNonClippedModalDialog(gfx::NativeWindow dialog); |
| + |
| // Allow clients to supply their own native dialog manager. Suitable for |
| // bubble clients. |
| void ShowDialogWithManager( |
| @@ -53,6 +59,7 @@ class WebContentsModalDialogManager |
| // SingleWebContentsDialogManagerDelegate: |
| content::WebContents* GetWebContents() const override; |
| void WillClose(gfx::NativeWindow dialog) override; |
| + bool IsNonClipped(gfx::NativeWindow dialog) override; |
| // For testing. |
| class TestApi { |
| @@ -85,6 +92,7 @@ class WebContentsModalDialogManager |
| }; |
| typedef std::deque<DialogState*> WebContentsModalDialogList; |
| + typedef std::deque<gfx::NativeWindow> NativeWindowDialogList; |
|
Mike Wittman
2016/08/12 22:51:34
std::set would be better given how this is used. A
rbpotter
2016/08/15 18:03:46
Done.
|
| // Utility function to get the dialog state for a dialog. |
| WebContentsModalDialogList::iterator FindDialogState( |
| @@ -114,6 +122,9 @@ class WebContentsModalDialogManager |
| // All active dialogs. |
| WebContentsModalDialogList child_dialogs_; |
| + // All non clipped active dialogs. |
| + NativeWindowDialogList nonclipped_child_dialogs_; |
| + |
| // True while closing the dialogs on WebContents close. |
| bool closing_all_dialogs_; |