Remove download-placeholder (IOS-238)

This commit is contained in:
Nathan Mattes 2024-05-21 18:01:54 +02:00
parent 298886d3f5
commit 9e486a82e6
6 changed files with 10 additions and 27 deletions

View File

@ -75,8 +75,7 @@ extension ProfileCardView.ViewModel {
.sink { url in
view.avatarButton.avatarImageView.configure(
configuration: .init(
url: url,
placeholder: .placeholder(color: .systemGray3)
url: url
)
)
view.avatarButton.avatarImageView.configure(

View File

@ -43,7 +43,7 @@ public final class ProfileCardView: UIView, AXCustomContentProvider {
// avatar
public let avatarButtonBackgroundView = UIView()
public let avatarButton = AvatarButton()
public let avatarButton = AvatarButton(avatarPlaceholder: .placeholder(color: .systemGray3))
// author name
public let authorNameLabel = MetaLabel(style: .profileCardName)

View File

@ -115,9 +115,9 @@ extension ProfileHeaderView.ViewModel {
viewDidAppear
)
.sink { avatarImageURL, avatarImageEditing, isEditing, _ in
view.avatarButton.avatarImageView.image = avatarImageEditing
view.avatarButton.avatarImageView.configure(configuration: .init(
url: (!isEditing || avatarImageEditing == nil) ? avatarImageURL : nil,
placeholder: isEditing ? (avatarImageEditing ?? AvatarImageView.placeholder) : AvatarImageView.placeholder
url: (!isEditing || avatarImageEditing == nil) ? avatarImageURL : nil
))
}
.store(in: &disposeBag)

View File

@ -39,19 +39,13 @@ extension FLAnimatedImageView {
public func setImage(
url: URL?,
placeholder: UIImage? = nil,
scaleToSize: CGSize? = nil
) {
// cancel task
cancelTask()
// set image
guard let url else {
DispatchQueue.main.async { [weak self] in
self?.image = placeholder
}
return
}
guard let url else { return }
activeAvatarRequestURL = url
let avatarRequest = AF.request(url).publishData()
@ -81,9 +75,7 @@ extension FLAnimatedImageView {
}
}
case .failure:
DispatchQueue.main.async { [weak self] in
self?.image = placeholder
}
break
}
}
}

View File

@ -45,7 +45,7 @@ extension FamiliarFollowersDashboardView.ViewModel {
let borderWidth = min(1.5, UIFontMetrics.default.scaledValue(for: 1))
for (i, avatarURL) in avatarURLs.enumerated() {
let avatarButton = AvatarButton()
let avatarButton = AvatarButton(avatarPlaceholder: .placeholder(color: .systemGray3))
let origin = CGPoint(x: offset * CGFloat(i), y: 0)
let size = CGSize(width: dimension, height: dimension)
avatarButton.size = size
@ -53,8 +53,7 @@ extension FamiliarFollowersDashboardView.ViewModel {
view.avatarContainerView.addSubview(avatarButton)
avatarButton.avatarImageView.configure(
configuration: .init(
url: avatarURL,
placeholder: .placeholder(color: .systemGray3)
url: avatarURL
)
)
avatarButton.avatarImageView.configure(

View File

@ -57,21 +57,17 @@ extension AvatarImageView {
public struct Configuration {
public let url: URL?
public let placeholder: UIImage?
public init(
url: URL?,
placeholder: UIImage = AvatarImageView.placeholder
url: URL?
) {
self.url = url
self.placeholder = placeholder
}
public init(
image: UIImage
) {
self.url = nil
self.placeholder = image
}
}
@ -81,7 +77,6 @@ extension AvatarImageView {
self.configuration = configuration
guard let url = configuration.url else {
image = configuration.placeholder
return
}
@ -89,7 +84,6 @@ extension AvatarImageView {
case "gif":
setImage(
url: configuration.url,
placeholder: configuration.placeholder,
scaleToSize: imageViewSize
)
default:
@ -105,7 +99,6 @@ extension AvatarImageView {
af.setImage(
withURL: url,
placeholderImage: configuration.placeholder,
filter: filter
)
}