Skip to content

Commit bece039

Browse files
added priority for channel header loading requests
1 parent bc857d6 commit bece039

File tree

4 files changed

+8
-3
lines changed

4 files changed

+8
-3
lines changed

DemoAppSwiftUI/LoginView.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ struct LoginView: View {
3434
DemoUserView(user: user)
3535
}
3636
.padding(.vertical, 4)
37+
.animation(nil)
3738
}
3839
.listStyle(.plain)
3940

Sources/StreamChatSwiftUI/ChatChannelList/ChannelHeaderLoader.swift

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,9 @@ open class ChannelHeaderLoader: ObservableObject {
105105
guard let self = self else { return }
106106
switch result {
107107
case let .success(image):
108-
self.loadedImages[channel.cid.id] = image
108+
DispatchQueue.main.async {
109+
self.loadedImages[channel.cid.id] = image
110+
}
109111
case let .failure(error):
110112
log.error("error loading image: \(error.localizedDescription)")
111113
}

Sources/StreamChatSwiftUI/Utils/NukeImageLoader.swift

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ open class NukeImageLoader: ImageLoading {
1414
open func loadImage(
1515
using urlRequest: URLRequest,
1616
cachingKey: String?,
17+
priority: ImageRequest.Priority = .normal,
1718
completion: @escaping ((Result<UIImage, Error>) -> Void)
1819
) {
1920
var userInfo: [ImageRequest.UserInfoKey: Any]?
@@ -51,12 +52,13 @@ open class NukeImageLoader: ImageLoading {
5152
var placeholderIndex = 0
5253

5354
let thumbnailUrl = imageCDN.thumbnailURL(originalURL: avatarUrl, preferredSize: .avatarThumbnailSize)
54-
let imageRequest = imageCDN.urlRequest(forImage: thumbnailUrl)
55+
var imageRequest = imageCDN.urlRequest(forImage: thumbnailUrl)
56+
imageRequest.timeoutInterval = 8
5557
let cachingKey = imageCDN.cachingKey(forImage: avatarUrl)
5658

5759
group.enter()
5860

59-
loadImage(using: imageRequest, cachingKey: cachingKey) { result in
61+
loadImage(using: imageRequest, cachingKey: cachingKey, priority: .low) { result in
6062
switch result {
6163
case let .success(image):
6264
images.append(image)

0 commit comments

Comments
 (0)