From 6a69070ce9313e3dcd9c0a7cff762ee31389e34e Mon Sep 17 00:00:00 2001 From: Matthew Chen Date: Mon, 16 Apr 2018 11:46:20 -0400 Subject: [PATCH] Apply design changes from Myles. --- .../ConversationView/Cells/OWSBubbleView.m | 2 +- .../ConversationView/Cells/OWSMessageCell.m | 16 +++++++++++++--- .../Cells/OWSQuotedMessageView.m | 2 +- .../ViewControllers/HomeView/HomeViewCell.m | 18 ++++++++++++++---- 4 files changed, 29 insertions(+), 9 deletions(-) diff --git a/Signal/src/ViewControllers/ConversationView/Cells/OWSBubbleView.m b/Signal/src/ViewControllers/ConversationView/Cells/OWSBubbleView.m index b14f604a3..ae1527297 100644 --- a/Signal/src/ViewControllers/ConversationView/Cells/OWSBubbleView.m +++ b/Signal/src/ViewControllers/ConversationView/Cells/OWSBubbleView.m @@ -7,7 +7,7 @@ NS_ASSUME_NONNULL_BEGIN -const CGFloat kOWSMessageCellCornerRadius = 17; +const CGFloat kOWSMessageCellCornerRadius = 18; const CGFloat kBubbleVRounding = kOWSMessageCellCornerRadius; const CGFloat kBubbleHRounding = kOWSMessageCellCornerRadius; diff --git a/Signal/src/ViewControllers/ConversationView/Cells/OWSMessageCell.m b/Signal/src/ViewControllers/ConversationView/Cells/OWSMessageCell.m index cd4171307..ecd5ab68b 100644 --- a/Signal/src/ViewControllers/ConversationView/Cells/OWSMessageCell.m +++ b/Signal/src/ViewControllers/ConversationView/Cells/OWSMessageCell.m @@ -69,7 +69,7 @@ NS_ASSUME_NONNULL_BEGIN [self.contentView addSubview:self.dateHeaderLabel]; self.footerLabel = [UILabel new]; - self.footerLabel.font = UIFont.ows_dynamicTypeCaption1Font; + self.footerLabel.font = UIFont.ows_dynamicTypeCaption2Font; self.footerLabel.textColor = [UIColor lightGrayColor]; [self.footerView addSubview:self.footerLabel]; @@ -80,7 +80,6 @@ NS_ASSUME_NONNULL_BEGIN [self.messageBubbleView autoPinEdge:ALEdgeTop toEdge:ALEdgeBottom ofView:self.dateHeaderLabel]; [self.footerView autoPinEdgeToSuperviewEdge:ALEdgeBottom]; - [self.footerView autoPinWidthToSuperview]; self.contentView.userInteractionEnabled = YES; @@ -161,6 +160,10 @@ NS_ASSUME_NONNULL_BEGIN [self.messageBubbleView configureViews]; [self.messageBubbleView loadContent]; + // Update label fonts to honor dynamic type size. + self.dateHeaderLabel.font = self.dateHeaderDateFont; + self.footerLabel.font = UIFont.ows_dynamicTypeCaption2Font; + if (self.shouldHaveFailedSendBadge) { self.failedSendBadgeView = [UIImageView new]; self.failedSendBadgeView.image = @@ -294,7 +297,7 @@ NS_ASSUME_NONNULL_BEGIN - (CGFloat)footerVSpacing { - return 1.f; + return 0.f; } - (void)updateFooter @@ -327,6 +330,13 @@ NS_ASSUME_NONNULL_BEGIN return; } + [self.viewConstraints addObjectsFromArray:@[ + (self.isIncoming ? [self.footerView autoPinLeadingToSuperviewMarginWithInset:kBubbleThornSideInset] + : [self.footerView autoPinTrailingToSuperviewMarginWithInset:kBubbleThornSideInset]), + (self.isIncoming ? [self.footerView autoPinTrailingToSuperviewMargin] + : [self.footerView autoPinLeadingToSuperviewMargin]), + ]]; + [self.viewConstraints addObject:[self.footerView autoPinEdge:ALEdgeTop toEdge:ALEdgeBottom ofView:self.messageBubbleView diff --git a/Signal/src/ViewControllers/ConversationView/Cells/OWSQuotedMessageView.m b/Signal/src/ViewControllers/ConversationView/Cells/OWSQuotedMessageView.m index b9dc4aeb9..1ba2cdcac 100644 --- a/Signal/src/ViewControllers/ConversationView/Cells/OWSQuotedMessageView.m +++ b/Signal/src/ViewControllers/ConversationView/Cells/OWSQuotedMessageView.m @@ -467,7 +467,7 @@ NS_ASSUME_NONNULL_BEGIN - (CGFloat)quotedTextBottomInset { - return 4.f; + return 8.f; } - (CGFloat)quotedReplyStripeThickness diff --git a/Signal/src/ViewControllers/HomeView/HomeViewCell.m b/Signal/src/ViewControllers/HomeView/HomeViewCell.m index 371e6393b..294ed3a1c 100644 --- a/Signal/src/ViewControllers/HomeView/HomeViewCell.m +++ b/Signal/src/ViewControllers/HomeView/HomeViewCell.m @@ -291,9 +291,9 @@ NS_ASSUME_NONNULL_BEGIN dateTimeString = [[DateUtil timeFormatter] stringFromDate:date]; } - return [[NSAttributedString alloc] initWithString:dateTimeString + return [[NSAttributedString alloc] initWithString:dateTimeString.uppercaseString attributes:@{ - NSForegroundColorAttributeName : [UIColor ows_darkGrayColor], + NSForegroundColorAttributeName : [UIColor blackColor], NSFontAttributeName : self.dateTimeFont, }]; } @@ -302,7 +302,7 @@ NS_ASSUME_NONNULL_BEGIN - (UIFont *)dateTimeFont { - return [UIFont ows_dynamicTypeFootnoteFont]; + return [UIFont ows_dynamicTypeFootnoteFont].ows_medium; } - (UIFont *)snippetFont @@ -339,7 +339,17 @@ NS_ASSUME_NONNULL_BEGIN + (CGFloat)rowHeight { - return 72; + // Scale the cell height using size of dynamic "body" type as a reference. + const CGFloat kReferenceFontSizeMin = 17.f; + const CGFloat kReferenceFontSizeMax = 23.f; + CGFloat referenceFontSize = UIFont.ows_dynamicTypeBodyFont.pointSize; + CGFloat alpha = CGFloatClamp01(CGFloatInverseLerp(referenceFontSize, kReferenceFontSizeMin, kReferenceFontSizeMax)); + + const CGFloat kCellHeightMin = 68.f; + const CGFloat kCellHeightMax = 76.f; + CGFloat result = ceil(CGFloatLerp(kCellHeightMin, kCellHeightMax, alpha)); + + return result; } - (NSUInteger)cellHMargin