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

Unified Diff: chrome/browser/password_manager/save_password_infobar_delegate.h

Issue 967193002: Credential saving clank infobar for Smart Lock. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@reusable_more_button
Patch Set: Created 5 years, 9 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/password_manager/save_password_infobar_delegate.h
diff --git a/chrome/browser/password_manager/save_password_infobar_delegate.h b/chrome/browser/password_manager/save_password_infobar_delegate.h
index fdf3e35b68e7b70cf55a2e62aa871e80007315de..4dd0b4d0684bfc28cbef21d55f54bc27df12a138 100644
--- a/chrome/browser/password_manager/save_password_infobar_delegate.h
+++ b/chrome/browser/password_manager/save_password_infobar_delegate.h
@@ -6,11 +6,9 @@
#define CHROME_BROWSER_PASSWORD_MANAGER_SAVE_PASSWORD_INFOBAR_DELEGATE_H_
#include "base/basictypes.h"
-#include "base/compiler_specific.h"
#include "base/memory/scoped_ptr.h"
#include "base/timer/elapsed_timer.h"
#include "components/infobars/core/confirm_infobar_delegate.h"
-#include "components/infobars/core/infobar_delegate.h"
#include "components/password_manager/core/browser/password_form_manager.h"
#include "components/password_manager/core/browser/password_manager_metrics_util.h"
@@ -18,6 +16,10 @@ namespace content {
class WebContents;
}
+namespace password_manager {
+enum class CredentialSourceType;
+}
+
// After a successful *new* login attempt, we take the PasswordFormManager in
// provisional_save_manager_ and move it to a SavePasswordInfoBarDelegate while
// the user makes up their mind with the "save password" infobar. Note if the
@@ -35,15 +37,15 @@ class SavePasswordInfoBarDelegate : public ConfirmInfoBarDelegate {
static void Create(
content::WebContents* web_contents,
scoped_ptr<password_manager::PasswordFormManager> form_to_save,
- const std::string& uma_histogram_suffix);
-
- private:
- SavePasswordInfoBarDelegate(
- scoped_ptr<password_manager::PasswordFormManager> form_to_save,
- const std::string& uma_histogram_suffix);
+ const std::string& uma_histogram_suffix,
+ password_manager::CredentialSourceType source_type);
~SavePasswordInfoBarDelegate() override;
+ // If the infobar was triggered by the Credential management API, then on
+ // Android it should display the "More" button.
+ bool ShouldShowMoreButton();
+
// ConfirmInfoBarDelegate:
Type GetInfoBarType() const override;
InfoBarAutomationType GetInfoBarAutomationType() const override;
@@ -55,6 +57,12 @@ class SavePasswordInfoBarDelegate : public ConfirmInfoBarDelegate {
bool Accept() override;
bool Cancel() override;
+ private:
+ SavePasswordInfoBarDelegate(
+ scoped_ptr<password_manager::PasswordFormManager> form_to_save,
+ const std::string& uma_histogram_suffix,
+ password_manager::CredentialSourceType source_type);
+
// The PasswordFormManager managing the form we're asking the user about,
// and should update as per her decision.
scoped_ptr<password_manager::PasswordFormManager> form_to_save_;
@@ -70,6 +78,10 @@ class SavePasswordInfoBarDelegate : public ConfirmInfoBarDelegate {
// form is on a monitored domain. Otherwise, an empty string.
const std::string uma_histogram_suffix_;
+ // Records source from where infobar was triggered.
+ // Infobar appearance (title, buttons) depends on value of this parameter.
+ password_manager::CredentialSourceType source_type_;
+
DISALLOW_COPY_AND_ASSIGN(SavePasswordInfoBarDelegate);
};

Powered by Google App Engine
This is Rietveld 408576698