minor fix on cell UI for emoji reacts

pull/638/head
Ryan Zhao 3 years ago
parent 692df74af6
commit 9ae1f3e904

@ -19,9 +19,10 @@ final class VisibleMessageCell : MessageCell, LinkPreviewViewDelegate {
private lazy var reactionContainerViewLeftConstraint = reactionContainerView.pin(.left, to: .left, of: bubbleView) private lazy var reactionContainerViewLeftConstraint = reactionContainerView.pin(.left, to: .left, of: bubbleView)
private lazy var reactionContainerViewRightConstraint = reactionContainerView.pin(.right, to: .right, of: bubbleView) private lazy var reactionContainerViewRightConstraint = reactionContainerView.pin(.right, to: .right, of: bubbleView)
private lazy var messageStatusImageViewTopConstraint = messageStatusImageView.pin(.top, to: .bottom, of: bubbleView, withInset: 0) private lazy var messageStatusImageViewTopConstraint = messageStatusImageView.pin(.top, to: .bottom, of: reactionContainerView, withInset: 0)
private lazy var messageStatusImageViewWidthConstraint = messageStatusImageView.set(.width, to: VisibleMessageCell.messageStatusImageViewSize) private lazy var messageStatusImageViewWidthConstraint = messageStatusImageView.set(.width, to: VisibleMessageCell.messageStatusImageViewSize)
private lazy var messageStatusImageViewHeightConstraint = messageStatusImageView.set(.height, to: VisibleMessageCell.messageStatusImageViewSize) private lazy var messageStatusImageViewHeightConstraint = messageStatusImageView.set(.height, to: VisibleMessageCell.messageStatusImageViewSize)
private lazy var timerViewOutgoingMessageConstraint = timerView.pin(.left, to: .left, of: self, withInset: VisibleMessageCell.contactThreadHSpacing) private lazy var timerViewOutgoingMessageConstraint = timerView.pin(.left, to: .left, of: self, withInset: VisibleMessageCell.contactThreadHSpacing)
private lazy var timerViewIncomingMessageConstraint = timerView.pin(.right, to: .right, of: self, withInset: -VisibleMessageCell.contactThreadHSpacing) private lazy var timerViewIncomingMessageConstraint = timerView.pin(.right, to: .right, of: self, withInset: -VisibleMessageCell.contactThreadHSpacing)
@ -181,6 +182,7 @@ final class VisibleMessageCell : MessageCell, LinkPreviewViewDelegate {
bubbleViewLeftConstraint1.isActive = true bubbleViewLeftConstraint1.isActive = true
bubbleViewTopConstraint.isActive = true bubbleViewTopConstraint.isActive = true
bubbleViewRightConstraint1.isActive = true bubbleViewRightConstraint1.isActive = true
bubbleView.pin(.bottom, to: .bottom, of: profilePictureView, withInset: -1)
// Timer view // Timer view
addSubview(timerView) addSubview(timerView)
timerView.center(.vertical, in: bubbleView) timerView.center(.vertical, in: bubbleView)
@ -190,8 +192,9 @@ final class VisibleMessageCell : MessageCell, LinkPreviewViewDelegate {
snContentView.pin(to: bubbleView) snContentView.pin(to: bubbleView)
// Reaction view // Reaction view
addSubview(reactionContainerView) addSubview(reactionContainerView)
reactionContainerView.pin(.top, to: .bottom, of: bubbleView, withInset: Values.smallSpacing) reactionContainerView.pin(.top, to: .bottom, of: bubbleView, withInset: Values.verySmallSpacing)
reactionContainerViewLeftConstraint.isActive = true reactionContainerViewLeftConstraint.isActive = true
// reactionContainerView.pin(.bottom, to: .bottom, of: self)
// Message status image view // Message status image view
addSubview(messageStatusImageView) addSubview(messageStatusImageView)
messageStatusImageViewTopConstraint.isActive = true messageStatusImageViewTopConstraint.isActive = true
@ -255,6 +258,7 @@ final class VisibleMessageCell : MessageCell, LinkPreviewViewDelegate {
// Content view // Content view
populateContentView(for: viewItem, message: message) populateContentView(for: viewItem, message: message)
// Reaction view // Reaction view
reactionContainerView.isHidden = (message.reactions.count == 0)
reactionContainerViewLeftConstraint.isActive = (direction == .incoming) reactionContainerViewLeftConstraint.isActive = (direction == .incoming)
reactionContainerViewRightConstraint.isActive = (direction == .outgoing) reactionContainerViewRightConstraint.isActive = (direction == .outgoing)
populateReaction(for: viewItem, message: message) populateReaction(for: viewItem, message: message)
@ -484,7 +488,7 @@ final class VisibleMessageCell : MessageCell, LinkPreviewViewDelegate {
override func prepareForReuse() { override func prepareForReuse() {
super.prepareForReuse() super.prepareForReuse()
unloadContent?() unloadContent?()
let viewsToMove = [ bubbleView, profilePictureView, replyButton, timerView, messageStatusImageView ] let viewsToMove = [ bubbleView, profilePictureView, replyButton, timerView, messageStatusImageView, reactionContainerView ]
viewsToMove.forEach { $0.transform = .identity } viewsToMove.forEach { $0.transform = .identity }
replyButton.alpha = 0 replyButton.alpha = 0
timerView.prepareForReuse() timerView.prepareForReuse()

Loading…
Cancel
Save