| 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 c4759207b6408486ea21634ab7682db5420f9135..62af0ac56bd548c8472266bab5e9c2ab719f3048 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
|
| @@ -29,6 +29,7 @@
|
| #import "ios/chrome/browser/ui/settings/cells/autofill_data_item.h"
|
| #import "ios/chrome/browser/ui/settings/cells/autofill_edit_item.h"
|
| #import "ios/chrome/browser/ui/settings/cells/native_app_item.h"
|
| +#import "ios/chrome/browser/ui/settings/cells/signin_promo_item.h"
|
| #import "ios/chrome/browser/ui/settings/cells/sync_switch_item.h"
|
| #import "ios/chrome/browser/ui/settings/cells/text_and_error_item.h"
|
| #import "ios/chrome/browser/ui/uikit_ui_util.h"
|
| @@ -69,6 +70,7 @@ typedef NS_ENUM(NSInteger, ItemType) {
|
| ItemTypeAccountDetail,
|
| ItemTypeAccountCheckMark,
|
| ItemTypeAccountSignIn,
|
| + ItemTypeSigninPromo,
|
| ItemTypeApp,
|
| ItemTypePaymentsSingleLine,
|
| ItemTypePaymentsDynamicHeight,
|
| @@ -290,6 +292,8 @@ const CGFloat kHorizontalImageFixedSize = 40;
|
| toSectionWithIdentifier:SectionIdentifierAccountCell];
|
| [model addItem:[self accountSignInItem]
|
| toSectionWithIdentifier:SectionIdentifierAccountCell];
|
| + [model addItem:[self signinPromoItem]
|
| + toSectionWithIdentifier:SectionIdentifierAccountCell];
|
|
|
| // Account control cells.
|
| [model addSectionWithIdentifier:SectionIdentifierAccountControlCell];
|
| @@ -350,6 +354,7 @@ const CGFloat kHorizontalImageFixedSize = 40;
|
| case ItemTypeAutofillStorageSwitch:
|
| case ItemTypePaymentsDynamicHeight:
|
| case ItemTypeAutofillDynamicHeight:
|
| + case ItemTypeSigninPromo:
|
| return [MDCCollectionViewCell
|
| cr_preferredHeightForWidth:CGRectGetWidth(collectionView.bounds)
|
| forItem:item];
|
| @@ -398,13 +403,17 @@ const CGFloat kHorizontalImageFixedSize = 40;
|
| hidesInkViewAtIndexPath:(nonnull NSIndexPath*)indexPath {
|
| NSInteger sectionIdentifier =
|
| [self.collectionViewModel sectionIdentifierForSection:indexPath.section];
|
| - switch (sectionIdentifier) {
|
| - case SectionIdentifierFooters:
|
| + if (sectionIdentifier == SectionIdentifierFooters)
|
| + return YES;
|
| + CollectionViewItem* item =
|
| + [self.collectionViewModel itemAtIndexPath:indexPath];
|
| + switch (item.type) {
|
| case ItemTypeSwitchBasic:
|
| case ItemTypeSwitchDynamicHeight:
|
| case ItemTypeApp:
|
| case ItemTypeAutofillStorageSwitch:
|
| case ItemTypeSwitchSync:
|
| + case ItemTypeSigninPromo:
|
| return YES;
|
| default:
|
| return NO;
|
| @@ -453,6 +462,19 @@ const CGFloat kHorizontalImageFixedSize = 40;
|
| return accountSignInItem;
|
| }
|
|
|
| +- (CollectionViewItem*)signinPromoItem {
|
| + SigninPromoItem* signinPromoItem =
|
| + [[[SigninPromoItem alloc] initWithType:ItemTypeSigninPromo] autorelease];
|
| + signinPromoItem.profileName = @"Jane";
|
| + signinPromoItem.profileEmail = @"jane@example.com";
|
| + signinPromoItem.profileImage =
|
| + CircularImageFromImage(ios::GetChromeBrowserProvider()
|
| + ->GetSigninResourcesProvider()
|
| + ->GetDefaultAvatar(),
|
| + kHorizontalImageFixedSize);
|
| + return signinPromoItem;
|
| +}
|
| +
|
| - (CollectionViewItem*)accountControlItem {
|
| AccountControlItem* item = [[[AccountControlItem alloc]
|
| initWithType:ItemTypeAccountControlDynamicHeight] autorelease];
|
|
|