| 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 #include "chrome/browser/ui/sync/one_click_signin_helper.h" | 5 #include "chrome/browser/ui/sync/one_click_signin_helper.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <functional> | 8 #include <functional> |
| 9 #include <utility> | 9 #include <utility> |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 983 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 994 void OneClickSigninHelper::DidNavigateMainFrame( | 994 void OneClickSigninHelper::DidNavigateMainFrame( |
| 995 const content::LoadCommittedDetails& details, | 995 const content::LoadCommittedDetails& details, |
| 996 const content::FrameNavigateParams& params) { | 996 const content::FrameNavigateParams& params) { |
| 997 // If we navigate to a non-sign-in URL, make sure that the renderer process | 997 // If we navigate to a non-sign-in URL, make sure that the renderer process |
| 998 // is no longer considered the trusted sign-in process. | 998 // is no longer considered the trusted sign-in process. |
| 999 if (!SigninManager::IsWebBasedSigninFlowURL(params.url)) { | 999 if (!SigninManager::IsWebBasedSigninFlowURL(params.url)) { |
| 1000 Profile* profile = | 1000 Profile* profile = |
| 1001 Profile::FromBrowserContext(web_contents()->GetBrowserContext()); | 1001 Profile::FromBrowserContext(web_contents()->GetBrowserContext()); |
| 1002 SigninManager* manager = profile ? | 1002 SigninManager* manager = profile ? |
| 1003 SigninManagerFactory::GetForProfile(profile) : NULL; | 1003 SigninManagerFactory::GetForProfile(profile) : NULL; |
| 1004 if (manager) | 1004 int process_id = web_contents()->GetRenderProcessHost()->GetID(); |
| 1005 if (manager && manager->IsSigninProcess(process_id)) |
| 1005 manager->ClearSigninProcess(); | 1006 manager->ClearSigninProcess(); |
| 1006 } | 1007 } |
| 1007 } | 1008 } |
| 1008 | 1009 |
| 1009 void OneClickSigninHelper::DidStopLoading( | 1010 void OneClickSigninHelper::DidStopLoading( |
| 1010 content::RenderViewHost* render_view_host) { | 1011 content::RenderViewHost* render_view_host) { |
| 1011 // If the user left the sign in process, clear all members. | 1012 // If the user left the sign in process, clear all members. |
| 1012 // TODO(rogerta): might need to allow some youtube URLs. | 1013 // TODO(rogerta): might need to allow some youtube URLs. |
| 1013 content::WebContents* contents = web_contents(); | 1014 content::WebContents* contents = web_contents(); |
| 1014 const GURL url = contents->GetURL(); | 1015 const GURL url = contents->GetURL(); |
| (...skipping 243 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1258 contents->GetController().LoadURL(redirect_url_, | 1259 contents->GetController().LoadURL(redirect_url_, |
| 1259 content::Referrer(), | 1260 content::Referrer(), |
| 1260 content::PAGE_TRANSITION_AUTO_TOPLEVEL, | 1261 content::PAGE_TRANSITION_AUTO_TOPLEVEL, |
| 1261 std::string()); | 1262 std::string()); |
| 1262 } | 1263 } |
| 1263 | 1264 |
| 1264 // Clear the redirect URL. | 1265 // Clear the redirect URL. |
| 1265 redirect_url_ = GURL(); | 1266 redirect_url_ = GURL(); |
| 1266 sync_service->RemoveObserver(this); | 1267 sync_service->RemoveObserver(this); |
| 1267 } | 1268 } |
| OLD | NEW |