Commit 3a14d387 authored by Tanisha Mandre's avatar Tanisha Mandre Committed by Commit Bot

Add Credit card scanner flag

- Add a flag for the 'Use Camera' button in the 'Add Credit Card' view.
- The button directs the user to a credit card scanner that uses the camera to scan a credit card number.

Bug:989432

Change-Id: I431e8c915cdf3a745f470a2ab1ecc4552e761311
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1787550Reviewed-by: default avatarEric Noyau <noyau@chromium.org>
Reviewed-by: default avatarGauthier Ambard <gambard@chromium.org>
Commit-Queue: Tanisha Mandre <tanishamandre@google.com>
Cr-Commit-Position: refs/heads/master@{#693831}
parent 7c74438e
......@@ -570,6 +570,9 @@ const flags_ui::FeatureEntry kFeatureEntries[] = {
flags_ui::kOsIos,
FEATURE_VALUE_TYPE(
autofill::features::kAutofillUpstreamEditableExpirationDate)},
{"credit-card-scanner", flag_descriptions::kCreditCardScannerName,
flag_descriptions::kCreditCardScannerDescription, flags_ui::kOsIos,
FEATURE_VALUE_TYPE(kCreditCardScanner)},
};
// Add all switches from experimental flags to |command_line|.
......
......@@ -134,6 +134,11 @@ const char kCopiedContentBehaviorDescription[] =
"When enabled, places that handled copied urls (omnibox long-press, toolbar"
"menus) will differentiate between copied urls, text, and images.";
const char kCreditCardScannerName[] = "Enable the 'Use Camera' button";
const char kCreditCardScannerDescription[] =
"Allow a user to scan a credit card using the credit card camera scanner."
"The 'Use Camera' button is located in the 'Add Payment Method' view";
#if defined(DCHECK_IS_CONFIGURABLE)
const char kDcheckIsFatalName[] = "DCHECKs are fatal";
const char kDcheckIsFatalDescription[] =
......
......@@ -102,6 +102,11 @@ extern const char kCollectionsCardPresentationStyleDescription[];
extern const char kCopiedContentBehaviorName[];
extern const char kCopiedContentBehaviorDescription[];
// Title and description for the flag to scan a new credit card using the
// camera.
extern const char kCreditCardScannerName[];
extern const char kCreditCardScannerDescription[];
#if defined(DCHECK_IS_CONFIGURABLE)
// Title and description for the flag to enable configurable DCHECKs.
extern const char kDcheckIsFatalName[];
......
......@@ -8,6 +8,7 @@
#include "base/mac/foundation_util.h"
#import "ios/chrome/browser/ui/autofill/cells/autofill_edit_item.h"
#import "ios/chrome/browser/ui/settings/autofill/autofill_add_credit_card_view_controller_delegate.h"
#import "ios/chrome/browser/ui/settings/autofill/features.h"
#import "ios/chrome/browser/ui/table_view/cells/table_view_text_edit_item.h"
#import "ios/chrome/browser/ui/table_view/cells/table_view_text_item.h"
#import "ios/chrome/browser/ui/table_view/chrome_table_view_controller.h"
......@@ -177,10 +178,12 @@ typedef NS_ENUM(NSInteger, ItemType) {
cameraButtonItem.text = l10n_util::GetNSString(
IDS_IOS_AUTOFILL_ADD_CREDIT_CARD_OPEN_CAMERA_BUTTON_LABEL);
cameraButtonItem.textAlignment = NSTextAlignmentCenter;
if (@available(iOS 13, *)) {
[model addSectionWithIdentifier:SectionIdentifierCameraButton];
[model addItem:cameraButtonItem
toSectionWithIdentifier:SectionIdentifierCameraButton];
if (base::FeatureList::IsEnabled(kCreditCardScanner)) {
if (@available(iOS 13, *)) {
[model addSectionWithIdentifier:SectionIdentifierCameraButton];
[model addItem:cameraButtonItem
toSectionWithIdentifier:SectionIdentifierCameraButton];
}
}
}
......
......@@ -12,4 +12,7 @@
// Add new credit card feature.
extern const base::Feature kSettingsAddPaymentMethod;
// Scan a credit card using the camera scanner feature.
extern const base::Feature kCreditCardScanner;
#endif // IOS_CHROME_BROWSER_UI_SETTINGS_AUTOFILL_FEATURES_H_
......@@ -10,3 +10,6 @@
const base::Feature kSettingsAddPaymentMethod{
"SettingsAddPaymentMethod", base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kCreditCardScanner{"CreditCardScanner",
base::FEATURE_DISABLED_BY_DEFAULT};
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment