| Index: chrome/browser/ui/views/profiles/profile_chooser_view.h | 
| diff --git a/chrome/browser/ui/views/profiles/profile_chooser_view.h b/chrome/browser/ui/views/profiles/profile_chooser_view.h | 
| index b40e6af5af9d8e9edb06e87f084a1ea8e2c145b2..83591b12017348ac3a15e78b793130d66e57bce4 100644 | 
| --- a/chrome/browser/ui/views/profiles/profile_chooser_view.h | 
| +++ b/chrome/browser/ui/views/profiles/profile_chooser_view.h | 
| @@ -13,6 +13,8 @@ | 
| #include "chrome/browser/profiles/profile_metrics.h" | 
| #include "chrome/browser/ui/browser_window.h" | 
| #include "chrome/browser/ui/profile_chooser_constants.h" | 
| +#include "components/web_modal/web_contents_modal_dialog_host.h" | 
| +#include "components/web_modal/web_contents_modal_dialog_manager_delegate.h" | 
| #include "content/public/browser/web_contents_delegate.h" | 
| #include "google_apis/gaia/oauth2_token_service.h" | 
| #include "ui/views/bubble/bubble_delegate.h" | 
| @@ -39,14 +41,17 @@ class Browser; | 
|  | 
| // This bubble view is displayed when the user clicks on the avatar button. | 
| // It displays a list of profiles and allows users to switch between profiles. | 
| -class ProfileChooserView : public content::WebContentsDelegate, | 
| -                           public views::BubbleDelegateView, | 
| -                           public views::ButtonListener, | 
| -                           public views::LinkListener, | 
| -                           public views::StyledLabelListener, | 
| -                           public views::TextfieldController, | 
| -                           public AvatarMenuObserver, | 
| -                           public OAuth2TokenService::Observer { | 
| +class ProfileChooserView | 
| +    : public content::WebContentsDelegate, | 
| +      public views::BubbleDelegateView, | 
| +      public views::ButtonListener, | 
| +      public views::LinkListener, | 
| +      public views::StyledLabelListener, | 
| +      public views::TextfieldController, | 
| +      public web_modal::WebContentsModalDialogHost, | 
| +      public web_modal::WebContentsModalDialogManagerDelegate, | 
| +      public AvatarMenuObserver, | 
| +      public OAuth2TokenService::Observer { | 
| public: | 
| // Shows the bubble if one is not already showing.  This allows us to easily | 
| // make a button toggle the bubble on and off when clicked: we unconditionally | 
| @@ -73,6 +78,19 @@ class ProfileChooserView : public content::WebContentsDelegate, | 
| static ShowingType IsShowingInBrowser(const Browser* browser); | 
| static void Hide(); | 
|  | 
| +  // web_modal::WebContentsModalDialogManagerDelegate implementation. | 
| +  web_modal::WebContentsModalDialogHost* GetWebContentsModalDialogHost() | 
| +      override; | 
| + | 
| +  // web_modal::WebContentsModalDialogHost implementation. | 
| +  gfx::Size GetMaximumDialogSize() override; | 
| + | 
| +  // web_modal::ModalDialogHost implementation. | 
| +  gfx::NativeView GetHostView() const override; | 
| +  gfx::Point GetDialogPosition(const gfx::Size& size) override; | 
| +  void AddObserver(web_modal::ModalDialogHostObserver* observer) override; | 
| +  void RemoveObserver(web_modal::ModalDialogHostObserver* observer) override; | 
| + | 
| private: | 
| friend class ProfileChooserViewExtensionsTest; | 
|  | 
|  |