OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/ui/views/profiles/signin_view_controller_delegate_views
.h" | 5 #include "chrome/browser/ui/views/profiles/signin_view_controller_delegate_views
.h" |
6 | 6 |
7 #include "base/macros.h" | 7 #include "base/macros.h" |
8 #include "chrome/browser/profiles/profile.h" | 8 #include "chrome/browser/profiles/profile.h" |
9 #include "chrome/browser/profiles/profile_avatar_icon_util.h" | 9 #include "chrome/browser/profiles/profile_avatar_icon_util.h" |
10 #include "chrome/browser/signin/signin_promo.h" | 10 #include "chrome/browser/signin/signin_promo.h" |
11 #include "chrome/browser/ui/browser.h" | 11 #include "chrome/browser/ui/browser.h" |
12 #include "chrome/browser/ui/tabs/tab_strip_model.h" | 12 #include "chrome/browser/ui/tabs/tab_strip_model.h" |
13 #include "chrome/browser/ui/views/frame/browser_view.h" | 13 #include "chrome/browser/ui/views/frame/browser_view.h" |
14 #include "chrome/common/url_constants.h" | 14 #include "chrome/common/url_constants.h" |
15 #include "components/constrained_window/constrained_window_views.h" | 15 #include "components/constrained_window/constrained_window_views.h" |
16 #include "components/signin/core/common/profile_management_switches.h" | 16 #include "components/signin/core/common/profile_management_switches.h" |
17 #include "components/web_modal/web_contents_modal_dialog_host.h" | 17 #include "components/web_modal/web_contents_modal_dialog_host.h" |
18 #include "content/public/browser/render_widget_host_view.h" | 18 #include "content/public/browser/render_widget_host_view.h" |
19 #include "content/public/browser/web_contents.h" | 19 #include "content/public/browser/web_contents.h" |
20 #include "ui/views/controls/webview/webview.h" | 20 #include "ui/views/controls/webview/webview.h" |
21 #include "ui/views/widget/widget.h" | 21 #include "ui/views/widget/widget.h" |
22 | 22 |
23 const int kPasswordCombinedFixedGaiaViewHeight = 440; | 23 const int kPasswordCombinedFixedGaiaViewHeight = 440; |
24 const int kPasswordCombinedFixedGaiaViewWidth = 360; | 24 const int kPasswordCombinedFixedGaiaViewWidth = 360; |
25 const int kFixedGaiaViewHeight = 612; | 25 const int kFixedGaiaViewHeight = 612; |
26 const int kModalDialogWidth = 448; | 26 const int kModalDialogWidth = 448; |
27 const int kSyncConfirmationDialogHeight = 487; | 27 const int kSyncConfirmationDialogHeight = 487; |
| 28 const int kSigninErrorDialogHeight = 164; |
28 | 29 |
29 SigninViewControllerDelegateViews::SigninViewControllerDelegateViews( | 30 SigninViewControllerDelegateViews::SigninViewControllerDelegateViews( |
30 SigninViewController* signin_view_controller, | 31 SigninViewController* signin_view_controller, |
31 views::WebView* content_view, | 32 views::WebView* content_view, |
32 Browser* browser, | 33 Browser* browser, |
33 bool wait_for_size) | 34 bool wait_for_size) |
34 : SigninViewControllerDelegate(signin_view_controller, | 35 : SigninViewControllerDelegate(signin_view_controller, |
35 content_view->GetWebContents()), | 36 content_view->GetWebContents()), |
36 content_view_(content_view), | 37 content_view_(content_view), |
37 modal_signin_widget_(nullptr), | 38 modal_signin_widget_(nullptr), |
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
146 ->window() | 147 ->window() |
147 ->GetWebContentsModalDialogHost() | 148 ->GetWebContentsModalDialogHost() |
148 ->GetMaximumDialogSize().height(); | 149 ->GetMaximumDialogSize().height(); |
149 web_view->SetPreferredSize( | 150 web_view->SetPreferredSize( |
150 gfx::Size(kModalDialogWidth, | 151 gfx::Size(kModalDialogWidth, |
151 std::min(kSyncConfirmationDialogHeight, max_height))); | 152 std::min(kSyncConfirmationDialogHeight, max_height))); |
152 | 153 |
153 return web_view; | 154 return web_view; |
154 } | 155 } |
155 | 156 |
| 157 views::WebView* SigninViewControllerDelegateViews::CreateSigninErrorWebView( |
| 158 Browser* browser) { |
| 159 views::WebView* web_view = new views::WebView(browser->profile()); |
| 160 web_view->LoadInitialURL(GURL(chrome::kChromeUISigninErrorURL)); |
| 161 |
| 162 int max_height = browser->window() |
| 163 ->GetWebContentsModalDialogHost() |
| 164 ->GetMaximumDialogSize() |
| 165 .height(); |
| 166 web_view->SetPreferredSize(gfx::Size( |
| 167 kModalDialogWidth, std::min(kSigninErrorDialogHeight, max_height))); |
| 168 |
| 169 return web_view; |
| 170 } |
| 171 |
156 SigninViewControllerDelegate* | 172 SigninViewControllerDelegate* |
157 SigninViewControllerDelegate::CreateModalSigninDelegate( | 173 SigninViewControllerDelegate::CreateModalSigninDelegate( |
158 SigninViewController* signin_view_controller, | 174 SigninViewController* signin_view_controller, |
159 profiles::BubbleViewMode mode, | 175 profiles::BubbleViewMode mode, |
160 Browser* browser, | 176 Browser* browser, |
161 signin_metrics::AccessPoint access_point) { | 177 signin_metrics::AccessPoint access_point) { |
162 return new SigninViewControllerDelegateViews( | 178 return new SigninViewControllerDelegateViews( |
163 signin_view_controller, | 179 signin_view_controller, |
164 SigninViewControllerDelegateViews::CreateGaiaWebView( | 180 SigninViewControllerDelegateViews::CreateGaiaWebView( |
165 nullptr, mode, browser, access_point), | 181 nullptr, mode, browser, access_point), |
166 browser, false); | 182 browser, false); |
167 } | 183 } |
168 | 184 |
169 SigninViewControllerDelegate* | 185 SigninViewControllerDelegate* |
170 SigninViewControllerDelegate::CreateSyncConfirmationDelegate( | 186 SigninViewControllerDelegate::CreateSyncConfirmationDelegate( |
171 SigninViewController* signin_view_controller, | 187 SigninViewController* signin_view_controller, |
172 Browser* browser) { | 188 Browser* browser) { |
173 return new SigninViewControllerDelegateViews( | 189 return new SigninViewControllerDelegateViews( |
174 signin_view_controller, | 190 signin_view_controller, |
175 SigninViewControllerDelegateViews::CreateSyncConfirmationWebView(browser), | 191 SigninViewControllerDelegateViews::CreateSyncConfirmationWebView(browser), |
176 browser, true); | 192 browser, true); |
177 } | 193 } |
| 194 |
| 195 SigninViewControllerDelegate* |
| 196 SigninViewControllerDelegate::CreateSigninErrorDelegate( |
| 197 SigninViewController* signin_view_controller, |
| 198 Browser* browser) { |
| 199 return new SigninViewControllerDelegateViews( |
| 200 signin_view_controller, |
| 201 SigninViewControllerDelegateViews::CreateSigninErrorWebView(browser), |
| 202 browser, true); |
| 203 } |
OLD | NEW |