| Index: ios/chrome/browser/ui/settings/material_cell_catalog_view_controller.mm
|
| diff --git a/ios/chrome/browser/ui/settings/material_cell_catalog_view_controller.mm b/ios/chrome/browser/ui/settings/material_cell_catalog_view_controller.mm
|
| index df84898983330d55616d0885c6db7c5101782f37..c82e713d758636b35945264942201ef767fb0adb 100644
|
| --- a/ios/chrome/browser/ui/settings/material_cell_catalog_view_controller.mm
|
| +++ b/ios/chrome/browser/ui/settings/material_cell_catalog_view_controller.mm
|
| @@ -10,6 +10,7 @@
|
| #include "components/autofill/core/browser/autofill_data_util.h"
|
| #include "components/autofill/core/browser/credit_card.h"
|
| #include "components/grit/components_scaled_resources.h"
|
| +#import "ios/chrome/browser/payments/cells/accepted_payment_methods_item.h"
|
| #import "ios/chrome/browser/payments/cells/autofill_profile_item.h"
|
| #import "ios/chrome/browser/payments/cells/payments_text_item.h"
|
| #import "ios/chrome/browser/payments/cells/price_item.h"
|
| @@ -97,6 +98,9 @@ typedef NS_ENUM(NSInteger, ItemType) {
|
| // Image fixed horizontal size.
|
| const CGFloat kHorizontalImageFixedSize = 40;
|
|
|
| +// Credit Card icon size.
|
| +const CGFloat kCardTypeIconDimension = 25.0;
|
| +
|
| } // namespace
|
|
|
| @implementation MaterialCellCatalogViewController
|
| @@ -258,6 +262,7 @@ const CGFloat kHorizontalImageFixedSize = 40;
|
| [model addSectionWithIdentifier:SectionIdentifierPayments];
|
| [model addItem:[self paymentsItemWithWrappingTextandOptionalImage]
|
| toSectionWithIdentifier:SectionIdentifierPayments];
|
| +
|
| PriceItem* priceItem1 =
|
| [[PriceItem alloc] initWithType:ItemTypePaymentsSingleLine];
|
| priceItem1.item = @"Total";
|
| @@ -306,6 +311,9 @@ const CGFloat kHorizontalImageFixedSize = 40;
|
| [model addItem:profileItem3
|
| toSectionWithIdentifier:SectionIdentifierPayments];
|
|
|
| + [model addItem:[self acceptedPaymentMethodsItem]
|
| + toSectionWithIdentifier:SectionIdentifierPayments];
|
| +
|
| // Account cells.
|
| [model addSectionWithIdentifier:SectionIdentifierAccountCell];
|
| [model addItem:[self accountItemDetailWithError]
|
| @@ -557,6 +565,31 @@ const CGFloat kHorizontalImageFixedSize = 40;
|
| return item;
|
| }
|
|
|
| +- (CollectionViewItem*)acceptedPaymentMethodsItem {
|
| + AcceptedPaymentMethodsItem* item = [[AcceptedPaymentMethodsItem alloc]
|
| + initWithType:ItemTypePaymentsDynamicHeight];
|
| + item.message = @"Cards accepted:";
|
| +
|
| + NSMutableArray* cardTypeIcons = [NSMutableArray array];
|
| + const char* cardTypes[]{autofill::kVisaCard,
|
| + autofill::kMasterCard,
|
| + autofill::kAmericanExpressCard,
|
| + autofill::kJCBCard,
|
| + autofill::kDinersCard,
|
| + autofill::kDiscoverCard};
|
| + for (const std::string& cardType : cardTypes) {
|
| + autofill::data_util::PaymentRequestData data =
|
| + autofill::data_util::GetPaymentRequestData(cardType);
|
| + UIImage* cardTypeIcon =
|
| + ResizeImage(NativeImage(data.icon_resource_id),
|
| + CGSizeMake(kCardTypeIconDimension, kCardTypeIconDimension),
|
| + ProjectionMode::kAspectFillNoClipping);
|
| + [cardTypeIcons addObject:cardTypeIcon];
|
| + }
|
| + item.methodTypeIcons = cardTypeIcons;
|
| + return item;
|
| +}
|
| +
|
| - (CollectionViewItem*)autofillItemWithMainAndTrailingText {
|
| AutofillDataItem* item =
|
| [[AutofillDataItem alloc] initWithType:ItemTypeAutofillDynamicHeight];
|
|
|