Chromium Code Reviews| 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 69b8fca7431e2a1f7ad99d4d6dcd2ad664266a25..c306bd2768b4dcde780f74dbe01f3919fbf65306 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 |
| @@ -14,6 +14,8 @@ |
| #import "ios/chrome/browser/payments/cells/payments_text_item.h" |
| #import "ios/chrome/browser/payments/cells/price_item.h" |
| #import "ios/chrome/browser/ui/authentication/account_control_item.h" |
| +#import "ios/chrome/browser/ui/authentication/signin_promo_item.h" |
| +#import "ios/chrome/browser/ui/authentication/signin_promo_view_mediator.h" |
|
lpromero
2017/03/22 16:18:49
You shouldn't need the mediator here. You need to
jlebel
2017/03/24 20:59:10
I need to alloc a SigninPromoViewMediator instance
lpromero
2017/03/27 13:14:46
Can't you just use here:
@interface MyConfigurato
|
| #import "ios/chrome/browser/ui/autofill/cells/cvc_item.h" |
| #import "ios/chrome/browser/ui/autofill/cells/status_item.h" |
| #import "ios/chrome/browser/ui/autofill/cells/storage_switch_item.h" |
| @@ -31,7 +33,6 @@ |
| #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" |
| @@ -73,7 +74,8 @@ typedef NS_ENUM(NSInteger, ItemType) { |
| ItemTypeAccountDetail, |
| ItemTypeAccountCheckMark, |
| ItemTypeAccountSignIn, |
| - ItemTypeSigninPromo, |
| + ItemTypeColdStartSigninPromo, |
| + ItemTypeWarmStartSigninPromo, |
|
lpromero
2017/03/24 10:36:20
BTW, what happened to the hot version?
jlebel
2017/03/24 20:59:10
It will be done by the current code.
|
| ItemTypeApp, |
| ItemTypePaymentsSingleLine, |
| ItemTypePaymentsDynamicHeight, |
| @@ -296,7 +298,9 @@ const CGFloat kHorizontalImageFixedSize = 40; |
| toSectionWithIdentifier:SectionIdentifierAccountCell]; |
| [model addItem:[self accountSignInItem] |
| toSectionWithIdentifier:SectionIdentifierAccountCell]; |
| - [model addItem:[self signinPromoItem] |
| + [model addItem:[self coldStartSigninPromoItem] |
| + toSectionWithIdentifier:SectionIdentifierAccountCell]; |
| + [model addItem:[self warmStartSigninPromoItem] |
| toSectionWithIdentifier:SectionIdentifierAccountCell]; |
| // Account control cells. |
| @@ -366,7 +370,8 @@ const CGFloat kHorizontalImageFixedSize = 40; |
| case ItemTypeAutofillStorageSwitch: |
| case ItemTypePaymentsDynamicHeight: |
| case ItemTypeAutofillDynamicHeight: |
| - case ItemTypeSigninPromo: |
| + case ItemTypeColdStartSigninPromo: |
| + case ItemTypeWarmStartSigninPromo: |
| return [MDCCollectionViewCell |
| cr_preferredHeightForWidth:CGRectGetWidth(collectionView.bounds) |
| forItem:item]; |
| @@ -420,12 +425,13 @@ const CGFloat kHorizontalImageFixedSize = 40; |
| CollectionViewItem* item = |
| [self.collectionViewModel itemAtIndexPath:indexPath]; |
| switch (item.type) { |
| - case ItemTypeSwitchBasic: |
| - case ItemTypeSwitchDynamicHeight: |
| case ItemTypeApp: |
| case ItemTypeAutofillStorageSwitch: |
| + case ItemTypeColdStartSigninPromo: |
| + case ItemTypeSwitchBasic: |
| + case ItemTypeSwitchDynamicHeight: |
| case ItemTypeSwitchSync: |
| - case ItemTypeSigninPromo: |
| + case ItemTypeWarmStartSigninPromo: |
| return YES; |
| default: |
| return NO; |
| @@ -474,16 +480,23 @@ 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); |
| +- (CollectionViewItem*)coldStartSigninPromoItem { |
| + SigninPromoViewMediator* signinPromoViewMediator = |
| + [[SigninPromoViewMediator alloc] init]; |
| + SigninPromoItem* signinPromoItem = [[[SigninPromoItem alloc] |
| + initWithType:ItemTypeWarmStartSigninPromo |
| + signinPromoViewConfigurator:signinPromoViewMediator] autorelease]; |
| + return signinPromoItem; |
| +} |
| + |
| +- (CollectionViewItem*)warmStartSigninPromoItem { |
| + SigninPromoViewMediator* signinPromoViewMediator = |
| + [[SigninPromoViewMediator alloc] init]; |
| + signinPromoViewMediator.userFullName = @"John Doe"; |
| + signinPromoViewMediator.userEmail = @"johndoe@example.com"; |
| + SigninPromoItem* signinPromoItem = [[[SigninPromoItem alloc] |
| + initWithType:ItemTypeColdStartSigninPromo |
| + signinPromoViewConfigurator:signinPromoViewMediator] autorelease]; |
| return signinPromoItem; |
| } |