OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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_PASSWORDS_CLIENT_UI_DELEGATE_H_ | 5 #ifndef CHROME_BROWSER_UI_PASSWORDS_PASSWORDS_CLIENT_UI_DELEGATE_H_ |
6 #define CHROME_BROWSER_UI_PASSWORDS_PASSWORDS_CLIENT_UI_DELEGATE_H_ | 6 #define CHROME_BROWSER_UI_PASSWORDS_PASSWORDS_CLIENT_UI_DELEGATE_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 #include <memory> | 9 #include <memory> |
10 #include <vector> | 10 #include <vector> |
(...skipping 12 matching lines...) Expand all Loading... |
23 | 23 |
24 // An interface for ChromePasswordManagerClient implemented by | 24 // An interface for ChromePasswordManagerClient implemented by |
25 // ManagePasswordsUIController. Allows to push a new state for the tab. | 25 // ManagePasswordsUIController. Allows to push a new state for the tab. |
26 class PasswordsClientUIDelegate { | 26 class PasswordsClientUIDelegate { |
27 public: | 27 public: |
28 // Called when the user submits a form containing login information, so the | 28 // Called when the user submits a form containing login information, so the |
29 // later requests to save or blacklist can be handled. | 29 // later requests to save or blacklist can be handled. |
30 // This stores the provided object and triggers the UI to prompt the user | 30 // This stores the provided object and triggers the UI to prompt the user |
31 // about whether they would like to save the password. | 31 // about whether they would like to save the password. |
32 virtual void OnPasswordSubmitted( | 32 virtual void OnPasswordSubmitted( |
33 std::unique_ptr<password_manager::PasswordFormManager> form_manager) = 0; | 33 scoped_refptr<password_manager::PasswordFormManager> form_manager) = 0; |
34 | 34 |
35 // Called when the user submits a new password for an existing credential. | 35 // Called when the user submits a new password for an existing credential. |
36 // This stores the provided object and triggers the UI to prompt the user | 36 // This stores the provided object and triggers the UI to prompt the user |
37 // about whether they would like to update the password. | 37 // about whether they would like to update the password. |
38 virtual void OnUpdatePasswordSubmitted( | 38 virtual void OnUpdatePasswordSubmitted( |
39 std::unique_ptr<password_manager::PasswordFormManager> form_manager) = 0; | 39 scoped_refptr<password_manager::PasswordFormManager> form_manager) = 0; |
40 | 40 |
41 // Called when the site asks user to choose from credentials. This triggers | 41 // Called when the site asks user to choose from credentials. This triggers |
42 // the UI to prompt the user. |local_credentials| shouldn't be empty. |origin| | 42 // the UI to prompt the user. |local_credentials| shouldn't be empty. |origin| |
43 // is a URL of the site that requested a credential. | 43 // is a URL of the site that requested a credential. |
44 // Returns true when the UI is shown. |callback| is called when the user made | 44 // Returns true when the UI is shown. |callback| is called when the user made |
45 // a decision. If the UI isn't shown the method returns false and doesn't call | 45 // a decision. If the UI isn't shown the method returns false and doesn't call |
46 // |callback|. | 46 // |callback|. |
47 virtual bool OnChooseCredentials( | 47 virtual bool OnChooseCredentials( |
48 std::vector<std::unique_ptr<autofill::PasswordForm>> local_credentials, | 48 std::vector<std::unique_ptr<autofill::PasswordForm>> local_credentials, |
49 const GURL& origin, | 49 const GURL& origin, |
50 const base::Callback<void(const autofill::PasswordForm*)>& callback) = 0; | 50 const base::Callback<void(const autofill::PasswordForm*)>& callback) = 0; |
51 | 51 |
52 // Called when user is auto signed in to the site. |local_forms[0]| contains | 52 // Called when user is auto signed in to the site. |local_forms[0]| contains |
53 // the credential returned to the site. |origin| is a URL of the site. | 53 // the credential returned to the site. |origin| is a URL of the site. |
54 virtual void OnAutoSignin( | 54 virtual void OnAutoSignin( |
55 std::vector<std::unique_ptr<autofill::PasswordForm>> local_forms, | 55 std::vector<std::unique_ptr<autofill::PasswordForm>> local_forms, |
56 const GURL& origin) = 0; | 56 const GURL& origin) = 0; |
57 | 57 |
58 // Called when it's the right time to enable autosign-in explicitly. | 58 // Called when it's the right time to enable autosign-in explicitly. |
59 virtual void OnPromptEnableAutoSignin() = 0; | 59 virtual void OnPromptEnableAutoSignin() = 0; |
60 | 60 |
61 // Called when the password will be saved automatically, but we still wish to | 61 // Called when the password will be saved automatically, but we still wish to |
62 // visually inform the user that the save has occured. | 62 // visually inform the user that the save has occured. |
63 virtual void OnAutomaticPasswordSave( | 63 virtual void OnAutomaticPasswordSave( |
64 std::unique_ptr<password_manager::PasswordFormManager> form_manager) = 0; | 64 scoped_refptr<password_manager::PasswordFormManager> form_manager) = 0; |
65 | 65 |
66 // Called when a form is autofilled with login information, so we can manage | 66 // Called when a form is autofilled with login information, so we can manage |
67 // password credentials for the current site which are stored in | 67 // password credentials for the current site which are stored in |
68 // |password_form_map|. This stores a copy of |password_form_map| and shows | 68 // |password_form_map|. This stores a copy of |password_form_map| and shows |
69 // the manage password icon. |federated_matches| contain the matching stored | 69 // the manage password icon. |federated_matches| contain the matching stored |
70 // federated credentials to display in the UI. | 70 // federated credentials to display in the UI. |
71 virtual void OnPasswordAutofilled( | 71 virtual void OnPasswordAutofilled( |
72 const std::map<base::string16, const autofill::PasswordForm*>& | 72 const std::map<base::string16, const autofill::PasswordForm*>& |
73 password_form_map, | 73 password_form_map, |
74 const GURL& origin, | 74 const GURL& origin, |
75 const std::vector<const autofill::PasswordForm*>* federated_matches) = 0; | 75 const std::vector<const autofill::PasswordForm*>* federated_matches) = 0; |
76 | 76 |
77 protected: | 77 protected: |
78 virtual ~PasswordsClientUIDelegate() = default; | 78 virtual ~PasswordsClientUIDelegate() = default; |
79 }; | 79 }; |
80 | 80 |
81 // Returns ManagePasswordsUIController instance for |contents| | 81 // Returns ManagePasswordsUIController instance for |contents| |
82 PasswordsClientUIDelegate* PasswordsClientUIDelegateFromWebContents( | 82 PasswordsClientUIDelegate* PasswordsClientUIDelegateFromWebContents( |
83 content::WebContents* web_contents); | 83 content::WebContents* web_contents); |
84 | 84 |
85 #endif // CHROME_BROWSER_UI_PASSWORDS_PASSWORDS_CLIENT_UI_DELEGATE_H_ | 85 #endif // CHROME_BROWSER_UI_PASSWORDS_PASSWORDS_CLIENT_UI_DELEGATE_H_ |
OLD | NEW |