OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 #ifndef CHROME_BROWSER_UI_SYNC_ONE_CLICK_SIGNIN_HELPER_H_ | 5 #ifndef CHROME_BROWSER_UI_SYNC_ONE_CLICK_SIGNIN_HELPER_H_ |
6 #define CHROME_BROWSER_UI_SYNC_ONE_CLICK_SIGNIN_HELPER_H_ | 6 #define CHROME_BROWSER_UI_SYNC_ONE_CLICK_SIGNIN_HELPER_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/gtest_prod_util.h" | 10 #include "base/gtest_prod_util.h" |
11 #include "base/memory/weak_ptr.h" | 11 #include "base/memory/weak_ptr.h" |
12 #include "chrome/browser/signin/signin_promo.h" | 12 #include "chrome/browser/signin/signin_promo.h" |
13 #include "chrome/browser/sync/profile_sync_service_observer.h" | 13 #include "chrome/browser/sync/profile_sync_service_observer.h" |
14 #include "chrome/browser/ui/sync/one_click_signin_sync_starter.h" | 14 #include "chrome/browser/ui/sync/one_click_signin_sync_starter.h" |
15 #include "content/public/browser/navigation_controller.h" | 15 #include "content/public/browser/navigation_controller.h" |
16 #include "content/public/browser/web_contents_observer.h" | 16 #include "content/public/browser/web_contents_observer.h" |
17 #include "content/public/browser/web_contents_user_data.h" | 17 #include "content/public/browser/web_contents_user_data.h" |
18 #include "google_apis/gaia/google_service_auth_error.h" | 18 #include "google_apis/gaia/google_service_auth_error.h" |
19 | 19 |
20 class Browser; | 20 class Browser; |
21 class GURL; | 21 class GURL; |
22 class PasswordManager; | 22 class PasswordManager; |
23 class ProfileIOData; | 23 class ProfileIOData; |
24 | 24 |
| 25 namespace autofill { |
| 26 struct PasswordForm; |
| 27 } |
| 28 |
25 namespace content { | 29 namespace content { |
26 class WebContents; | 30 class WebContents; |
27 struct FrameNavigateParams; | 31 struct FrameNavigateParams; |
28 struct LoadCommittedDetails; | 32 struct LoadCommittedDetails; |
29 struct PasswordForm; | |
30 } | 33 } |
31 | 34 |
32 namespace net { | 35 namespace net { |
33 class URLRequest; | 36 class URLRequest; |
34 } | 37 } |
35 | 38 |
36 // Per-tab one-click signin helper. When a user signs in to a Google service | 39 // Per-tab one-click signin helper. When a user signs in to a Google service |
37 // and the profile is not yet connected to a Google account, will start the | 40 // and the profile is not yet connected to a Google account, will start the |
38 // process of helping the user connect his profile with one click. The process | 41 // process of helping the user connect his profile with one click. The process |
39 // begins with an infobar and is followed with a confirmation dialog explaining | 42 // begins with an infobar and is followed with a confirmation dialog explaining |
(...skipping 170 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
210 // Clear all data member of the helper, except for the error. | 213 // Clear all data member of the helper, except for the error. |
211 void CleanTransientState(); | 214 void CleanTransientState(); |
212 | 215 |
213 // Unitests that use a TestingProfile should call this. | 216 // Unitests that use a TestingProfile should call this. |
214 // Otherwise, clearing the pending e-mail crashes because the code expects | 217 // Otherwise, clearing the pending e-mail crashes because the code expects |
215 // a real ResourceContext rather than the MockResourceContext a | 218 // a real ResourceContext rather than the MockResourceContext a |
216 // TestingProfile provides. | 219 // TestingProfile provides. |
217 void SetDoNotClearPendingEmailForTesting(); | 220 void SetDoNotClearPendingEmailForTesting(); |
218 | 221 |
219 // Called when password has been submitted. | 222 // Called when password has been submitted. |
220 void PasswordSubmitted(const content::PasswordForm& form); | 223 void PasswordSubmitted(const autofill::PasswordForm& form); |
221 | 224 |
222 // content::WebContentsObserver overrides. | 225 // content::WebContentsObserver overrides. |
223 virtual void NavigateToPendingEntry( | 226 virtual void NavigateToPendingEntry( |
224 const GURL& url, | 227 const GURL& url, |
225 content::NavigationController::ReloadType reload_type) OVERRIDE; | 228 content::NavigationController::ReloadType reload_type) OVERRIDE; |
226 virtual void DidNavigateMainFrame( | 229 virtual void DidNavigateMainFrame( |
227 const content::LoadCommittedDetails& details, | 230 const content::LoadCommittedDetails& details, |
228 const content::FrameNavigateParams& params) OVERRIDE; | 231 const content::FrameNavigateParams& params) OVERRIDE; |
229 virtual void DidStopLoading( | 232 virtual void DidStopLoading( |
230 content::RenderViewHost* render_view_host) OVERRIDE; | 233 content::RenderViewHost* render_view_host) OVERRIDE; |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
272 // Allows unittests to avoid accessing the ResourceContext for clearing a | 275 // Allows unittests to avoid accessing the ResourceContext for clearing a |
273 // pending e-mail. | 276 // pending e-mail. |
274 bool do_not_clear_pending_email_; | 277 bool do_not_clear_pending_email_; |
275 | 278 |
276 base::WeakPtrFactory<OneClickSigninHelper> weak_pointer_factory_; | 279 base::WeakPtrFactory<OneClickSigninHelper> weak_pointer_factory_; |
277 | 280 |
278 DISALLOW_COPY_AND_ASSIGN(OneClickSigninHelper); | 281 DISALLOW_COPY_AND_ASSIGN(OneClickSigninHelper); |
279 }; | 282 }; |
280 | 283 |
281 #endif // CHROME_BROWSER_UI_SYNC_ONE_CLICK_SIGNIN_HELPER_H_ | 284 #endif // CHROME_BROWSER_UI_SYNC_ONE_CLICK_SIGNIN_HELPER_H_ |
OLD | NEW |