Skip to content

Commit ec478f5

Browse files
Matthieu-dglPhilippeWeidmann
authored andcommitted
feat: Optimization
1 parent 9a54cbb commit ec478f5

File tree

3 files changed

+5
-19
lines changed

3 files changed

+5
-19
lines changed

Mail/Views/Thread/Message/MessageView.swift

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,6 @@ struct MessageView: View {
4141

4242
@ObservedRealmObject var message: Message
4343

44-
private let isSingleMessage: Bool
45-
4644
private var isRemoteContentBlocked: Bool {
4745
return (UserDefaults.shared.displayExternalContent == .askMe || message.folder?.role == .spam)
4846
&& !message.localSafeDisplay
@@ -52,20 +50,14 @@ struct MessageView: View {
5250
threadForcedExpansion[message.uid] == .expanded
5351
}
5452

55-
init(threadForcedExpansion: Binding<[String: MessageExpansionType]>, message: Message, isSingleMessage: Bool) {
56-
_threadForcedExpansion = threadForcedExpansion
57-
self.message = message
58-
self.isSingleMessage = isSingleMessage
59-
}
60-
6153
var body: some View {
6254
VStack(spacing: 0) {
6355
MessageHeaderView(
6456
message: message,
6557
isMessageExpanded: Binding(get: {
6658
isMessageExpanded
6759
}, set: { newValue in
68-
guard !isSingleMessage else { return }
60+
guard threadForcedExpansion.count > 1 else { return }
6961
threadForcedExpansion[message.uid] = newValue ? .expanded : .collapsed
7062
})
7163
)
@@ -106,16 +98,14 @@ struct MessageView: View {
10698
#Preview("Message collapsed", traits: .sizeThatFitsLayout) {
10799
MessageView(
108100
threadForcedExpansion: .constant([PreviewHelper.sampleMessage.uid: .collapsed]),
109-
message: PreviewHelper.sampleMessage,
110-
isSingleMessage: true
101+
message: PreviewHelper.sampleMessage
111102
)
112103
}
113104

114105
@available(iOS 17.0, *)
115106
#Preview("Message expanded", traits: .sizeThatFitsLayout) {
116107
MessageView(
117108
threadForcedExpansion: .constant([PreviewHelper.sampleMessage.uid: .expanded]),
118-
message: PreviewHelper.sampleMessage,
119-
isSingleMessage: false
109+
message: PreviewHelper.sampleMessage
120110
)
121111
}

Mail/Views/Thread/MessageListView.swift

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -49,11 +49,7 @@ struct MessageListView: View {
4949
}
5050
} else if messageExpansion[message.uid] != .superCollapsed {
5151
VStack(spacing: 0) {
52-
MessageView(
53-
threadForcedExpansion: $messageExpansion,
54-
message: message,
55-
isSingleMessage: messages.count == 1
56-
)
52+
MessageView(threadForcedExpansion: $messageExpansion, message: message)
5753
if divider(for: message) {
5854
IKDivider(type: .full)
5955
}

MailNotificationContentExtension/NotificationViewController.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ class NotificationViewController: UIViewController, UNNotificationContentExtensi
9393

9494
let messageWorker = MessagesWorker(mailboxManager: mailboxManager)
9595
let messageView = ScrollView {
96-
MessageView(threadForcedExpansion: .constant([messageUid: .expanded]), message: message, isSingleMessage: true)
96+
MessageView(threadForcedExpansion: .constant([messageUid: .expanded]), message: message)
9797
.environment(\.isMessageInteractive, false)
9898
.environment(\.currentUser, MandatoryEnvironmentContainer(value: currentUser))
9999
.environmentObject(mailboxManager)

0 commit comments

Comments
 (0)