| 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 |