Fix breaking changes following SDK update.
This commit is contained in:
committed by
Stefan Ceriu
parent
53b92ad68f
commit
2993f9b6a2
@@ -723,7 +723,7 @@ class JoinedRoomProxy: JoinedRoomProxyProtocol {
|
|||||||
|
|
||||||
func sendCallNotificationIfNeeded() async -> Result<Void, RoomProxyError> {
|
func sendCallNotificationIfNeeded() async -> Result<Void, RoomProxyError> {
|
||||||
do {
|
do {
|
||||||
try await room.sendCallNotificationIfNeeded()
|
_ = try await room.sendCallNotificationIfNeeded()
|
||||||
return .success(())
|
return .success(())
|
||||||
} catch {
|
} catch {
|
||||||
MXLog.error("Failed room call notification with error: \(error)")
|
MXLog.error("Failed room call notification with error: \(error)")
|
||||||
|
|||||||
@@ -64,6 +64,8 @@ struct RoomMessageEventStringBuilder {
|
|||||||
} else {
|
} else {
|
||||||
message = AttributedString(content.body)
|
message = AttributedString(content.body)
|
||||||
}
|
}
|
||||||
|
case .gallery(let content):
|
||||||
|
message = AttributedString(content.body)
|
||||||
case .other(_, let body):
|
case .other(_, let body):
|
||||||
message = AttributedString(body)
|
message = AttributedString(body)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -96,6 +96,8 @@ struct RoomTimelineItemFactory: RoomTimelineItemFactoryProtocol {
|
|||||||
}
|
}
|
||||||
case .location(let locationMessageContent):
|
case .location(let locationMessageContent):
|
||||||
return buildLocationTimelineItem(for: eventItemProxy, messageLikeContent, messageContent, locationMessageContent, isOutgoing)
|
return buildLocationTimelineItem(for: eventItemProxy, messageLikeContent, messageContent, locationMessageContent, isOutgoing)
|
||||||
|
case .gallery(let galleryMessageContent):
|
||||||
|
return buildGalleryTimelineItem(for: eventItemProxy, messageLikeContent, messageContent, galleryMessageContent, isOutgoing)
|
||||||
case .other:
|
case .other:
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
@@ -304,6 +306,29 @@ struct RoomTimelineItemFactory: RoomTimelineItemFactoryProtocol {
|
|||||||
encryptionAuthenticity: buildEncryptionAuthenticity(eventItemProxy.shieldState)))
|
encryptionAuthenticity: buildEncryptionAuthenticity(eventItemProxy.shieldState)))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private func buildGalleryTimelineItem(for eventItemProxy: EventTimelineItemProxy,
|
||||||
|
_ messageLikeContent: MsgLikeContent,
|
||||||
|
_ messageContent: MessageContent,
|
||||||
|
_ galleryMessageContent: GalleryMessageContent,
|
||||||
|
_ isOutgoing: Bool) -> RoomTimelineItemProtocol {
|
||||||
|
TextRoomTimelineItem(id: eventItemProxy.id,
|
||||||
|
timestamp: eventItemProxy.timestamp,
|
||||||
|
isOutgoing: isOutgoing,
|
||||||
|
isEditable: eventItemProxy.isEditable,
|
||||||
|
canBeRepliedTo: eventItemProxy.canBeRepliedTo,
|
||||||
|
shouldBoost: eventItemProxy.shouldBoost,
|
||||||
|
sender: eventItemProxy.sender,
|
||||||
|
content: .init(body: galleryMessageContent.body),
|
||||||
|
properties: .init(replyDetails: buildTimelineItemReplyDetails(messageLikeContent.inReplyTo),
|
||||||
|
isThreaded: messageLikeContent.threadRoot != nil,
|
||||||
|
threadSummary: buildTimelineItemThreadSummary(messageLikeContent.threadSummary),
|
||||||
|
isEdited: messageContent.isEdited,
|
||||||
|
reactions: buildAggregatedReactions(messageLikeContent.reactions),
|
||||||
|
deliveryStatus: eventItemProxy.deliveryStatus,
|
||||||
|
orderedReadReceipts: buildOrderedReadReceipts(eventItemProxy.readReceipts),
|
||||||
|
encryptionAuthenticity: buildEncryptionAuthenticity(eventItemProxy.shieldState)))
|
||||||
|
}
|
||||||
|
|
||||||
private func buildStickerTimelineItem(_ eventItemProxy: EventTimelineItemProxy,
|
private func buildStickerTimelineItem(_ eventItemProxy: EventTimelineItemProxy,
|
||||||
_ messageLikeContent: MsgLikeContent,
|
_ messageLikeContent: MsgLikeContent,
|
||||||
_ body: String,
|
_ body: String,
|
||||||
@@ -649,7 +674,7 @@ struct RoomTimelineItemFactory: RoomTimelineItemFactoryProtocol {
|
|||||||
return .notLoaded
|
return .notLoaded
|
||||||
case .pending:
|
case .pending:
|
||||||
return .loading
|
return .loading
|
||||||
case .ready(let senderID, let senderProfile, let content):
|
case .ready(let content, let senderID, let senderProfile):
|
||||||
let sender = buildTimelineItemSender(senderID: senderID, senderProfile: senderProfile)
|
let sender = buildTimelineItemSender(senderID: senderID, senderProfile: senderProfile)
|
||||||
|
|
||||||
let latestEventContent: TimelineEventContent = switch content {
|
let latestEventContent: TimelineEventContent = switch content {
|
||||||
@@ -858,13 +883,17 @@ struct RoomTimelineItemFactory: RoomTimelineItemFactoryProtocol {
|
|||||||
.video(buildVideoTimelineItemContent(content))
|
.video(buildVideoTimelineItemContent(content))
|
||||||
case .location(let content):
|
case .location(let content):
|
||||||
.location(buildLocationTimelineItemContent(content))
|
.location(buildLocationTimelineItemContent(content))
|
||||||
case .other, .none:
|
case .gallery(let content):
|
||||||
|
.text(.init(body: content.body))
|
||||||
|
case .other(_, let body):
|
||||||
|
.text(.init(body: body))
|
||||||
|
case .none:
|
||||||
.text(.init(body: L10n.commonUnsupportedEvent))
|
.text(.init(body: L10n.commonUnsupportedEvent))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private extension RepliedToEventDetails {
|
private extension EmbeddedEventDetails {
|
||||||
var isThreaded: Bool {
|
var isThreaded: Bool {
|
||||||
switch self {
|
switch self {
|
||||||
case .ready(let content, _, _):
|
case .ready(let content, _, _):
|
||||||
|
|||||||
@@ -104,7 +104,7 @@ class NotificationHandler {
|
|||||||
return .shouldDisplay
|
return .shouldDisplay
|
||||||
case .roomMessage(let messageType, _):
|
case .roomMessage(let messageType, _):
|
||||||
switch messageType {
|
switch messageType {
|
||||||
case .emote, .image, .audio, .video, .file, .notice, .text, .location:
|
case .emote, .image, .audio, .video, .file, .notice, .text, .location, .gallery:
|
||||||
return .shouldDisplay
|
return .shouldDisplay
|
||||||
case .other:
|
case .other:
|
||||||
return .unsupportedShouldDiscard
|
return .unsupportedShouldDiscard
|
||||||
|
|||||||
Reference in New Issue
Block a user