OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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_PASSWORDS_MANAGE_PASSWORDS_UI_CONTROLLER_H_ | 5 #ifndef CHROME_BROWSER_UI_PASSWORDS_MANAGE_PASSWORDS_UI_CONTROLLER_H_ |
6 #define CHROME_BROWSER_UI_PASSWORDS_MANAGE_PASSWORDS_UI_CONTROLLER_H_ | 6 #define CHROME_BROWSER_UI_PASSWORDS_MANAGE_PASSWORDS_UI_CONTROLLER_H_ |
7 | 7 |
8 #include "base/gtest_prod_util.h" | 8 #include "base/gtest_prod_util.h" |
9 #include "base/memory/scoped_vector.h" | 9 #include "base/memory/scoped_vector.h" |
10 #include "base/timer/elapsed_timer.h" | 10 #include "base/timer/elapsed_timer.h" |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
50 void OnPasswordAutofilled(const autofill::PasswordFormMap& password_form_map); | 50 void OnPasswordAutofilled(const autofill::PasswordFormMap& password_form_map); |
51 | 51 |
52 // Called when a form is _not_ autofilled due to user blacklisting. This | 52 // Called when a form is _not_ autofilled due to user blacklisting. This |
53 // stores a copy of |password_form_map| so that we can offer the user the | 53 // stores a copy of |password_form_map| so that we can offer the user the |
54 // ability to reenable the manager for this form. | 54 // ability to reenable the manager for this form. |
55 void OnBlacklistBlockedAutofill( | 55 void OnBlacklistBlockedAutofill( |
56 const autofill::PasswordFormMap& password_form_map); | 56 const autofill::PasswordFormMap& password_form_map); |
57 | 57 |
58 // PasswordStore::Observer implementation. | 58 // PasswordStore::Observer implementation. |
59 virtual void OnLoginsChanged( | 59 virtual void OnLoginsChanged( |
60 const password_manager::PasswordStoreChangeList& changes) OVERRIDE; | 60 const password_manager::PasswordStoreChangeList& changes) override; |
61 | 61 |
62 // Called from the model when the user chooses to save a password; passes the | 62 // Called from the model when the user chooses to save a password; passes the |
63 // action off to the FormManager. The controller MUST be in a pending state, | 63 // action off to the FormManager. The controller MUST be in a pending state, |
64 // and WILL be in MANAGE_STATE after this method executes. | 64 // and WILL be in MANAGE_STATE after this method executes. |
65 virtual void SavePassword(); | 65 virtual void SavePassword(); |
66 | 66 |
67 // Called from the model when the user chooses to never save passwords; passes | 67 // Called from the model when the user chooses to never save passwords; passes |
68 // the action off to the FormManager. The controller MUST be in a pending | 68 // the action off to the FormManager. The controller MUST be in a pending |
69 // state, and WILL be in BLACKLIST_STATE after this method executes. | 69 // state, and WILL be in BLACKLIST_STATE after this method executes. |
70 virtual void NeverSavePassword(); | 70 virtual void NeverSavePassword(); |
(...skipping 29 matching lines...) Expand all Loading... |
100 content::WebContents* web_contents); | 100 content::WebContents* web_contents); |
101 | 101 |
102 // The pieces of saving and blacklisting passwords that interact with | 102 // The pieces of saving and blacklisting passwords that interact with |
103 // FormManager, split off into internal functions for testing/mocking. | 103 // FormManager, split off into internal functions for testing/mocking. |
104 virtual void SavePasswordInternal(); | 104 virtual void SavePasswordInternal(); |
105 virtual void NeverSavePasswordInternal(); | 105 virtual void NeverSavePasswordInternal(); |
106 | 106 |
107 // content::WebContentsObserver: | 107 // content::WebContentsObserver: |
108 virtual void DidNavigateMainFrame( | 108 virtual void DidNavigateMainFrame( |
109 const content::LoadCommittedDetails& details, | 109 const content::LoadCommittedDetails& details, |
110 const content::FrameNavigateParams& params) OVERRIDE; | 110 const content::FrameNavigateParams& params) override; |
111 virtual void WasHidden() OVERRIDE; | 111 virtual void WasHidden() override; |
112 | 112 |
113 // We create copies of PasswordForm objects that come in with unclear lifetime | 113 // We create copies of PasswordForm objects that come in with unclear lifetime |
114 // and store them in this vector as well as in |password_form_map_| to ensure | 114 // and store them in this vector as well as in |password_form_map_| to ensure |
115 // that we destroy them correctly. If |new_password_forms_| gets cleared then | 115 // that we destroy them correctly. If |new_password_forms_| gets cleared then |
116 // |password_form_map_| is to be cleared too. | 116 // |password_form_map_| is to be cleared too. |
117 ScopedVector<autofill::PasswordForm> new_password_forms_; | 117 ScopedVector<autofill::PasswordForm> new_password_forms_; |
118 | 118 |
119 // All previously stored credentials for a specific site. | 119 // All previously stored credentials for a specific site. |
120 // Protected, not private, so we can mess with the value in | 120 // Protected, not private, so we can mess with the value in |
121 // ManagePasswordsUIControllerMock. | 121 // ManagePasswordsUIControllerMock. |
(...skipping 14 matching lines...) Expand all Loading... |
136 // Shows the password bubble without user interaction. The controller MUST | 136 // Shows the password bubble without user interaction. The controller MUST |
137 // be in PENDING_PASSWORD_AND_BUBBLE_STATE. | 137 // be in PENDING_PASSWORD_AND_BUBBLE_STATE. |
138 void ShowBubbleWithoutUserInteraction(); | 138 void ShowBubbleWithoutUserInteraction(); |
139 | 139 |
140 // Called when a passwordform is autofilled, when a new passwordform is | 140 // Called when a passwordform is autofilled, when a new passwordform is |
141 // submitted, or when a navigation occurs to update the visibility of the | 141 // submitted, or when a navigation occurs to update the visibility of the |
142 // manage passwords icon and bubble. | 142 // manage passwords icon and bubble. |
143 void UpdateBubbleAndIconVisibility(); | 143 void UpdateBubbleAndIconVisibility(); |
144 | 144 |
145 // content::WebContentsObserver: | 145 // content::WebContentsObserver: |
146 virtual void WebContentsDestroyed() OVERRIDE; | 146 virtual void WebContentsDestroyed() override; |
147 | 147 |
148 // Set by OnPasswordSubmitted() when the user submits a form containing login | 148 // Set by OnPasswordSubmitted() when the user submits a form containing login |
149 // information. If the user responds to a subsequent "Do you want to save | 149 // information. If the user responds to a subsequent "Do you want to save |
150 // this password?" prompt, we ask this object to save or blacklist the | 150 // this password?" prompt, we ask this object to save or blacklist the |
151 // associated login information in Chrome's password store. | 151 // associated login information in Chrome's password store. |
152 scoped_ptr<password_manager::PasswordFormManager> form_manager_; | 152 scoped_ptr<password_manager::PasswordFormManager> form_manager_; |
153 | 153 |
154 // Stores whether autofill was blocked due to a user's decision to blacklist | 154 // Stores whether autofill was blocked due to a user's decision to blacklist |
155 // the current site ("Never save passwords for this site"). | 155 // the current site ("Never save passwords for this site"). |
156 bool autofill_blocked_; | 156 bool autofill_blocked_; |
157 | 157 |
158 // The origin of the form we're currently dealing with; we'll use this to | 158 // The origin of the form we're currently dealing with; we'll use this to |
159 // determine which PasswordStore changes we should care about when updating | 159 // determine which PasswordStore changes we should care about when updating |
160 // |password_form_map_|. | 160 // |password_form_map_|. |
161 GURL origin_; | 161 GURL origin_; |
162 | 162 |
163 DISALLOW_COPY_AND_ASSIGN(ManagePasswordsUIController); | 163 DISALLOW_COPY_AND_ASSIGN(ManagePasswordsUIController); |
164 }; | 164 }; |
165 | 165 |
166 #endif // CHROME_BROWSER_UI_PASSWORDS_MANAGE_PASSWORDS_UI_CONTROLLER_H_ | 166 #endif // CHROME_BROWSER_UI_PASSWORDS_MANAGE_PASSWORDS_UI_CONTROLLER_H_ |
OLD | NEW |