Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(52)

Side by Side Diff: ios/chrome/browser/passwords/password_controller.mm

Issue 2900693002: [Password Manager] Convert |pending_login_managers_| to an array of scoped_refptr (Closed)
Patch Set: Rebase Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 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 #import "ios/chrome/browser/passwords/password_controller.h" 5 #import "ios/chrome/browser/passwords/password_controller.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <map> 10 #include <map>
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
111 // Takes values from a JSON |dictionary| and populates the |form|. 111 // Takes values from a JSON |dictionary| and populates the |form|.
112 // The |pageLocation| is the URL of the current page. 112 // The |pageLocation| is the URL of the current page.
113 // Returns YES if the form was correctly populated, NO otherwise. 113 // Returns YES if the form was correctly populated, NO otherwise.
114 - (BOOL)getPasswordForm:(autofill::PasswordForm*)form 114 - (BOOL)getPasswordForm:(autofill::PasswordForm*)form
115 fromDictionary:(const base::DictionaryValue*)dictionary 115 fromDictionary:(const base::DictionaryValue*)dictionary
116 pageURL:(const GURL&)pageLocation; 116 pageURL:(const GURL&)pageLocation;
117 117
118 // Displays infobar for |form| with |type|. If |type| is UPDATE, the user 118 // Displays infobar for |form| with |type|. If |type| is UPDATE, the user
119 // is prompted to update the password. If |type| is SAVE, the user is prompted 119 // is prompted to update the password. If |type| is SAVE, the user is prompted
120 // to save the password. 120 // to save the password.
121 - (void)showInfoBarForForm:(std::unique_ptr<PasswordFormManager>)form 121 - (void)showInfoBarForForm:(scoped_refptr<PasswordFormManager>)form
122 infoBarType:(PasswordInfoBarType)type; 122 infoBarType:(PasswordInfoBarType)type;
123 123
124 @end 124 @end
125 125
126 namespace { 126 namespace {
127 127
128 // Constructs an array of FormSuggestions, each corresponding to a username/ 128 // Constructs an array of FormSuggestions, each corresponding to a username/
129 // password pair in |formFillData|, such that |prefix| is a prefix of the 129 // password pair in |formFillData|, such that |prefix| is a prefix of the
130 // username of each suggestion. 130 // username of each suggestion.
131 NSArray* BuildSuggestions(const autofill::PasswordFormFillData& formFillData, 131 NSArray* BuildSuggestions(const autofill::PasswordFormFillData& formFillData,
(...skipping 503 matching lines...) Expand 10 before | Expand all | Expand 10 after
635 completionHandler:^(BOOL success) { 635 completionHandler:^(BOOL success) {
636 completion(); 636 completion();
637 }]; 637 }];
638 } else { 638 } else {
639 completion(); 639 completion();
640 } 640 }
641 } 641 }
642 642
643 #pragma mark - PasswordManagerClientDelegate 643 #pragma mark - PasswordManagerClientDelegate
644 644
645 - (void)showSavePasswordInfoBar: 645 - (void)showSavePasswordInfoBar:(scoped_refptr<PasswordFormManager>)formToSave {
646 (std::unique_ptr<PasswordFormManager>)formToSave {
647 [self showInfoBarForForm:std::move(formToSave) 646 [self showInfoBarForForm:std::move(formToSave)
648 infoBarType:PasswordInfoBarType::SAVE]; 647 infoBarType:PasswordInfoBarType::SAVE];
649 } 648 }
650 649
651 - (void)showUpdatePasswordInfoBar: 650 - (void)showUpdatePasswordInfoBar:
652 (std::unique_ptr<PasswordFormManager>)formToUpdate { 651 (scoped_refptr<PasswordFormManager>)formToUpdate {
653 [self showInfoBarForForm:std::move(formToUpdate) 652 [self showInfoBarForForm:std::move(formToUpdate)
654 infoBarType:PasswordInfoBarType::UPDATE]; 653 infoBarType:PasswordInfoBarType::UPDATE];
655 } 654 }
656 655
657 #pragma mark - 656 #pragma mark -
658 #pragma mark WebPasswordFormData Adaptation 657 #pragma mark WebPasswordFormData Adaptation
659 658
660 - (BOOL)getPasswordForm:(autofill::PasswordForm*)form 659 - (BOOL)getPasswordForm:(autofill::PasswordForm*)form
661 fromDictionary:(const base::DictionaryValue*)dictionary 660 fromDictionary:(const base::DictionaryValue*)dictionary
662 pageURL:(const GURL&)pageLocation { 661 pageURL:(const GURL&)pageLocation {
(...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after
845 - (PasswordManager*)passwordManager { 844 - (PasswordManager*)passwordManager {
846 return passwordManager_.get(); 845 return passwordManager_.get();
847 } 846 }
848 847
849 - (JsPasswordManager*)passwordJsManager { 848 - (JsPasswordManager*)passwordJsManager {
850 return passwordJsManager_; 849 return passwordJsManager_;
851 } 850 }
852 851
853 #pragma mark - Private methods 852 #pragma mark - Private methods
854 853
855 - (void)showInfoBarForForm:(std::unique_ptr<PasswordFormManager>)form 854 - (void)showInfoBarForForm:(scoped_refptr<PasswordFormManager>)form
856 infoBarType:(PasswordInfoBarType)type { 855 infoBarType:(PasswordInfoBarType)type {
857 if (!webStateObserverBridge_ || !webStateObserverBridge_->web_state()) 856 if (!webStateObserverBridge_ || !webStateObserverBridge_->web_state())
858 return; 857 return;
859 858
860 bool isSmartLockBrandingEnabled = false; 859 bool isSmartLockBrandingEnabled = false;
861 if (self.browserState) { 860 if (self.browserState) {
862 syncer::SyncService* sync_service = 861 syncer::SyncService* sync_service =
863 IOSChromeProfileSyncServiceFactory::GetForBrowserState( 862 IOSChromeProfileSyncServiceFactory::GetForBrowserState(
864 self.browserState); 863 self.browserState);
865 isSmartLockBrandingEnabled = 864 isSmartLockBrandingEnabled =
866 password_bubble_experiment::IsSmartLockUser(sync_service); 865 password_bubble_experiment::IsSmartLockUser(sync_service);
867 } 866 }
868 infobars::InfoBarManager* infoBarManager = 867 infobars::InfoBarManager* infoBarManager =
869 InfoBarManagerImpl::FromWebState(webStateObserverBridge_->web_state()); 868 InfoBarManagerImpl::FromWebState(webStateObserverBridge_->web_state());
870 869
871 switch (type) { 870 switch (type) {
872 case PasswordInfoBarType::SAVE: 871 case PasswordInfoBarType::SAVE:
873 IOSChromeSavePasswordInfoBarDelegate::Create( 872 IOSChromeSavePasswordInfoBarDelegate::Create(
874 isSmartLockBrandingEnabled, infoBarManager, std::move(form)); 873 isSmartLockBrandingEnabled, infoBarManager, std::move(form));
875 break; 874 break;
876 875
877 case PasswordInfoBarType::UPDATE: 876 case PasswordInfoBarType::UPDATE:
878 IOSChromeUpdatePasswordInfoBarDelegate::Create( 877 IOSChromeUpdatePasswordInfoBarDelegate::Create(
879 isSmartLockBrandingEnabled, infoBarManager, std::move(form)); 878 isSmartLockBrandingEnabled, infoBarManager, std::move(form));
880 break; 879 break;
881 } 880 }
882 } 881 }
883 882
884 @end 883 @end
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698