Index: ios/chrome/browser/ui/authentication/signin_promo_view.mm |
diff --git a/ios/chrome/browser/ui/authentication/signin_promo_view.mm b/ios/chrome/browser/ui/authentication/signin_promo_view.mm |
index bab01cc0082bcd2352838d12851d0aa55fb56ac5..dce7d7fdca506b9d12962b8c2cd5fa12a41a1415 100644 |
--- a/ios/chrome/browser/ui/authentication/signin_promo_view.mm |
+++ b/ios/chrome/browser/ui/authentication/signin_promo_view.mm |
@@ -29,6 +29,8 @@ const CGFloat kButtonVerticalPadding = 6; |
const CGFloat kProfileImageFixedSize = 48; |
// Button height. |
const CGFloat kButtonHeight = 36; |
+// Dismiss button size. |
+const CGFloat kDismissButtonSize = 24; |
} |
@implementation SigninPromoView { |
@@ -41,6 +43,7 @@ const CGFloat kButtonHeight = 36; |
@synthesize textLabel = _textLabel; |
@synthesize primaryButton = _primaryButton; |
@synthesize secondaryButton = _secondaryButton; |
+@synthesize dismissButton = _dismissButton; |
@synthesize sendChromeCommand = _sendChromeCommand; |
- (instancetype)initWithFrame:(CGRect)frame { |
@@ -75,6 +78,12 @@ const CGFloat kButtonHeight = 36; |
forControlEvents:UIControlEventTouchUpInside]; |
[self addSubview:_secondaryButton]; |
+ _dismissButton = [[UIButton alloc] |
+ initWithFrame:CGRectMake(0, 0, kDismissButtonSize, kDismissButtonSize)]; |
+ _dismissButton.translatesAutoresizingMaskIntoConstraints = NO; |
+ _dismissButton.hidden = YES; |
+ [self addSubview:_dismissButton]; |
+ |
// Adding style. |
_imageView.contentMode = UIViewContentModeCenter; |
_imageView.layer.masksToBounds = YES; |
@@ -93,6 +102,9 @@ const CGFloat kButtonHeight = 36; |
_secondaryButton.customTitleColor = [[MDCPalette cr_bluePalette] tint500]; |
_secondaryButton.uppercaseTitle = NO; |
+ [_dismissButton setImage:[UIImage imageNamed:@"signin_promo_dismiss_gray"] |
+ forState:UIControlStateNormal]; |
+ |
// Adding constraints. |
NSDictionary* metrics = @{ |
@"kButtonHeight" : @(kButtonHeight), |
@@ -105,6 +117,7 @@ const CGFloat kButtonHeight = 36; |
@(kVerticalPadding + kButtonVerticalPadding), |
}; |
NSDictionary* views = @{ |
+ @"dismissButton" : _dismissButton, |
@"imageView" : _imageView, |
@"primaryButton" : _primaryButton, |
@"secondaryButton" : _secondaryButton, |
@@ -141,6 +154,11 @@ const CGFloat kButtonHeight = 36; |
_warmStateConstraints = VisualConstraintsWithMetrics( |
warmStateVisualConstraints, views, metrics); |
+ // Constraints for the dismiss button. |
+ NSArray* buttonVisualConstraints = |
+ @[ @"H:[dismissButton]-|", @"V:|-[dismissButton]" ]; |
+ ApplyVisualConstraints(buttonVisualConstraints, views); |
+ |
_mode = SigninPromoViewModeColdState; |
[self activateColdMode]; |
} |