BubbleCellContentView: Add support for URL preview, expose several constraints.

This commit is contained in:
SBiOSoftWhare
2022-02-07 16:07:27 +01:00
parent 329c163771
commit 6deb6d34a3
2 changed files with 41 additions and 4 deletions
@@ -38,6 +38,7 @@ final class BubbleCellContentView: UIView, NibLoadable {
@IBOutlet weak var innerContentViewLeadingConstraint: NSLayoutConstraint!
@IBOutlet weak var innerContentViewTrailingConstraint: NSLayoutConstraint!
@IBOutlet weak var innerContentViewBottomContraint: NSLayoutConstraint!
@IBOutlet weak var encryptionStatusContainerView: UIView!
@IBOutlet weak var encryptionImageView: UIImageView!
@@ -45,11 +46,15 @@ final class BubbleCellContentView: UIView, NibLoadable {
@IBOutlet weak var bubbleInfoContainer: UIView!
@IBOutlet weak var bubbleInfoContainerTopConstraint: NSLayoutConstraint!
@IBOutlet weak var urlPreviewContainerView: UIView!
@IBOutlet weak var readReceiptsContainerView: UIView!
@IBOutlet weak var readReceiptsContentView: UIView!
@IBOutlet weak var reactionsContainerView: UIView!
@IBOutlet weak var reactionsContentView: UIView!
@IBOutlet weak var reactionsContentViewLeadingConstraint: NSLayoutConstraint!
@IBOutlet weak var reactionsContentViewTrailingConstraint: NSLayoutConstraint!
@IBOutlet weak var threadSummaryContainerView: UIView!
@@ -57,6 +62,15 @@ final class BubbleCellContentView: UIView, NibLoadable {
// MARK: Private
private var showURLPreview: Bool {
get {
return !self.urlPreviewContainerView.isHidden
}
set {
self.urlPreviewContainerView.isHidden = !newValue
}
}
private var showReadReceipts: Bool {
get {
return !self.readReceiptsContainerView.isHidden
@@ -178,5 +192,19 @@ extension BubbleCellContentView: BubbleCellThreadSummaryDisplayable {
self.showThreadSummary = false
self.threadSummaryContainerView.vc_removeAllSubviews()
}
}
// MARK: - RoomCellURLPreviewDisplayable
extension BubbleCellContentView: RoomCellURLPreviewDisplayable {
func addURLPreviewView(_ urlPreviewView: UIView) {
self.urlPreviewContainerView.vc_removeAllSubviews()
self.urlPreviewContainerView.vc_addSubViewMatchingParent(urlPreviewView)
self.showURLPreview = true
}
func removeURLPreviewView() {
self.showURLPreview = false
self.urlPreviewContainerView.vc_removeAllSubviews()
}
}