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

Unified Diff: components/autofill/core/browser/autofill_credit_card_filling_infobar_delegate_mobile.h

Issue 2026353002: [Autofill] Credit Card Assist Infobar (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: cleaning Created 4 years, 4 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: components/autofill/core/browser/autofill_credit_card_filling_infobar_delegate_mobile.h
diff --git a/components/autofill/core/browser/autofill_credit_card_filling_infobar_delegate_mobile.h b/components/autofill/core/browser/autofill_credit_card_filling_infobar_delegate_mobile.h
new file mode 100644
index 0000000000000000000000000000000000000000..fe1cc199e0e4cdc564a8e0f5fc491112eee23788
--- /dev/null
+++ b/components/autofill/core/browser/autofill_credit_card_filling_infobar_delegate_mobile.h
@@ -0,0 +1,75 @@
+// Copyright 2016 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef COMPONENTS_AUTOFILL_CORE_BROWSER_AUTOFILL_CREDIT_CARD_FILLING_INFOBAR_DELEGATE_MOBILE_H_
+#define COMPONENTS_AUTOFILL_CORE_BROWSER_AUTOFILL_CREDIT_CARD_FILLING_INFOBAR_DELEGATE_MOBILE_H_
+
+#include <memory>
+
+#include "base/callback.h"
+#include "base/macros.h"
+#include "base/strings/string16.h"
+#include "components/autofill/core/browser/autofill_metrics.h"
+#include "components/infobars/core/confirm_infobar_delegate.h"
+
+namespace infobars {
+class InfoBarManager;
+}
+
+namespace autofill {
+
+class CreditCard;
+
+// An InfoBarDelegate that enables the user to allow or deny filling credit
+// card information on a website form. Only used on mobile.
+class AutofillCreditCardFillingInfoBarDelegateMobile
+ : public ConfirmInfoBarDelegate {
+ public:
+ AutofillCreditCardFillingInfoBarDelegateMobile(
+ const CreditCard& card,
+ const base::Closure& card_filling_callback);
+ ~AutofillCreditCardFillingInfoBarDelegateMobile() override;
+
+ int issuer_icon_id() const { return issuer_icon_id_; }
+ const base::string16& card_label() const { return card_label_; }
+ const base::string16& card_sub_label() const { return card_sub_label_; }
+ void set_was_shown() { was_shown_ = true; }
+
+ // ConfirmInfoBarDelegate (publicly exposed):
+ int GetIconId() const override;
+ base::string16 GetMessageText() const override;
+ void InfoBarDismissed() override;
+ bool Accept() override;
+ bool Cancel() override;
+
+ private:
+ // ConfirmInfoBarDelegate (continued):
+ Type GetInfoBarType() const override;
+ infobars::InfoBarDelegate::InfoBarIdentifier GetIdentifier() const override;
+ base::string16 GetButtonLabel(InfoBarButton button) const override;
+
+ void LogUserAction(AutofillMetrics::InfoBarMetric user_action);
+
+ // The callback after having accepted the infobar; will initiate filling the
+ // credit card information.
+ base::Closure card_filling_callback_;
+
+ // Did the user ever explicitly accept or dismiss this infobar?
+ bool had_user_interaction_;
+
+ // Tracks whether the infobar was shown.
+ bool was_shown_;
+
+ // The resource ID for the icon that identifies the issuer of the card.
+ int issuer_icon_id_;
+
+ base::string16 card_label_;
+ base::string16 card_sub_label_;
+
+ DISALLOW_COPY_AND_ASSIGN(AutofillCreditCardFillingInfoBarDelegateMobile);
+};
+
+} // namespace autofill
+
+#endif // COMPONENTS_AUTOFILL_CORE_BROWSER_AUTOFILL_CREDIT_CARD_FILLING_INFOBAR_DELEGATE_MOBILE_H_

Powered by Google App Engine
This is Rietveld 408576698