Refine appearance of quoted reply message cells.

pull/1/head
Matthew Chen 8 years ago
parent d6f3df82ae
commit 5235f6eee9

@ -367,9 +367,9 @@ NS_ASSUME_NONNULL_BEGIN
OWSAssert(!lastSubview); OWSAssert(!lastSubview);
TSMessage *message = (TSMessage *)self.viewItem.interaction; TSMessage *message = (TSMessage *)self.viewItem.interaction;
OWSQuotedMessageView *quotedMessageView = OWSQuotedMessageView *quotedMessageView = [OWSQuotedMessageView
[OWSQuotedMessageView quotedMessageViewForConversation:message.quotedMessage quotedMessageViewForConversation:message.quotedMessage
displayableQuotedText:self.viewItem.displayableQuotedText]; displayableQuotedText:(self.viewItem.hasQuotedText ? self.viewItem.displayableQuotedText : nil)];
[quotedMessageView createContents]; [quotedMessageView createContents];
[self.bubbleView addSubview:quotedMessageView]; [self.bubbleView addSubview:quotedMessageView];
@ -1178,7 +1178,7 @@ NS_ASSUME_NONNULL_BEGIN
OWSAssert(self.viewItem); OWSAssert(self.viewItem);
OWSAssert([self.viewItem.interaction isKindOfClass:[TSMessage class]]); OWSAssert([self.viewItem.interaction isKindOfClass:[TSMessage class]]);
if (!self.isQuotedReply) { if (!self.isQuotedReply || !self.hasQuotedText) {
return CGSizeZero; return CGSizeZero;
} }

@ -65,7 +65,6 @@ NS_ASSUME_NONNULL_BEGIN
} }
OWSAssert(quotedMessage); OWSAssert(quotedMessage);
OWSAssert(displayableQuotedText);
_quotedMessage = quotedMessage; _quotedMessage = quotedMessage;
_displayableQuotedText = displayableQuotedText; _displayableQuotedText = displayableQuotedText;
@ -74,6 +73,11 @@ NS_ASSUME_NONNULL_BEGIN
return self; return self;
} }
- (BOOL)hasQuotedAttachment
{
return self.quotedMessage.contentType.length > 0;
}
- (BOOL)hasQuotedAttachmentThumbnail - (BOOL)hasQuotedAttachmentThumbnail
{ {
return (self.quotedMessage.contentType.length > 0 && return (self.quotedMessage.contentType.length > 0 &&
@ -99,8 +103,7 @@ NS_ASSUME_NONNULL_BEGIN
UIView *_Nullable quotedAttachmentView = nil; UIView *_Nullable quotedAttachmentView = nil;
// TODO: // TODO:
// if (self.hasQuotedAttachmentThumbnail) if (self.hasQuotedAttachment) {
{
// TODO: // TODO:
quotedAttachmentView = [UIView containerView]; quotedAttachmentView = [UIView containerView];
quotedAttachmentView.userInteractionEnabled = NO; quotedAttachmentView.userInteractionEnabled = NO;
@ -162,7 +165,7 @@ NS_ASSUME_NONNULL_BEGIN
} else { } else {
[stripeAndTextContainer autoPinTrailingToSuperviewMarginWithInset:self.quotedContentHInset]; [stripeAndTextContainer autoPinTrailingToSuperviewMarginWithInset:self.quotedContentHInset];
} }
[stripeAndTextContainer autoPinBottomToSuperviewMarginWithInset:self.quotedContentHInset]; [stripeAndTextContainer autoPinBottomToSuperviewMarginWithInset:self.quotedTextBottomInset];
[stripeAndTextContainer setContentHuggingLow]; [stripeAndTextContainer setContentHuggingLow];
[stripeAndTextContainer setCompressionResistanceLow]; [stripeAndTextContainer setCompressionResistanceLow];
@ -204,7 +207,7 @@ NS_ASSUME_NONNULL_BEGIN
result.width += self.quotedContentHInset; result.width += self.quotedContentHInset;
CGFloat thumbnailHeight = 0.f; CGFloat thumbnailHeight = 0.f;
if (self.hasQuotedAttachmentThumbnail) { if (self.hasQuotedAttachment) {
result.width += self.quotedAttachmentHSpacing; result.width += self.quotedAttachmentHSpacing;
result.width += self.quotedAttachmentSize; result.width += self.quotedAttachmentSize;
@ -249,7 +252,6 @@ NS_ASSUME_NONNULL_BEGIN
CGSize textSize = CGSizeCeil([quotedTextLabel sizeThatFits:CGSizeMake(maxQuotedTextWidth, CGFLOAT_MAX)]); CGSize textSize = CGSizeCeil([quotedTextLabel sizeThatFits:CGSizeMake(maxQuotedTextWidth, CGFLOAT_MAX)]);
quotedTextWidth = textSize.width + self.quotedReplyStripeThickness + self.quotedReplyStripeHSpacing; quotedTextWidth = textSize.width + self.quotedReplyStripeThickness + self.quotedReplyStripeHSpacing;
result.height += self.quotedAuthorBottomSpacing;
result.height += textSize.height + self.quotedReplyStripeVExtension * 2; result.height += textSize.height + self.quotedReplyStripeVExtension * 2;
} }
@ -371,6 +373,13 @@ NS_ASSUME_NONNULL_BEGIN
return 8.f; return 8.f;
} }
#pragma mark -
- (CGSize)sizeThatFits:(CGSize)size
{
return [self sizeForMaxWidth:CGFLOAT_MAX];
}
@end @end
NS_ASSUME_NONNULL_END NS_ASSUME_NONNULL_END

Loading…
Cancel
Save