From ec20a3072fa8a683668bcd17cd68ceaebcc87cc9 Mon Sep 17 00:00:00 2001 From: Justin Mazzocchi <2831158+jzzocc@users.noreply.github.com> Date: Fri, 5 Feb 2021 20:47:20 -0800 Subject: [PATCH] Fix cancel follow request state --- Localizations/Localizable.strings | 1 + Views/UIKit/AccountHeaderView.swift | 11 ++++++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/Localizations/Localizable.strings b/Localizations/Localizable.strings index a7b426b..b3082de 100644 --- a/Localizations/Localizable.strings +++ b/Localizations/Localizable.strings @@ -25,6 +25,7 @@ "account.mute" = "Mute"; "account.reject-follow-request-button.accessibility-label" = "Reject follow request"; "account.request" = "Request"; +"account.request.cancel" = "Cancel follow request"; "account.statuses.post" = "Posts"; "account.statuses.toot" = "Toots"; "account.statuses-and-replies.post" = "Posts & Replies"; diff --git a/Views/UIKit/AccountHeaderView.swift b/Views/UIKit/AccountHeaderView.swift index a09502d..99b3a58 100644 --- a/Views/UIKit/AccountHeaderView.swift +++ b/Views/UIKit/AccountHeaderView.swift @@ -53,8 +53,13 @@ final class AccountHeaderView: UIView { accountViewModel.isLocked ? "account.request" : "account.follow", comment: ""), for: .normal) - followButton.isHidden = relationship.following - unfollowButton.isHidden = !relationship.following + followButton.isHidden = relationship.following || relationship.requested + unfollowButton.isHidden = !(relationship.following || relationship.requested) + unfollowButton.setTitle( + NSLocalizedString( + relationship.requested ? "account.request.cancel" : "account.unfollow", + comment: ""), + for: .normal) relationshipButtonsStackView.isHidden = false unavailableLabel.isHidden = !relationship.blockedBy @@ -269,7 +274,7 @@ private extension AccountHeaderView { guard let accountViewModel = self?.viewModel.accountViewModel else { return } let unfollowAction = UIAction( - title: NSLocalizedString("account.unfollow", comment: ""), + title: self?.unfollowButton.title(for: .normal) ?? "", image: UIImage(systemName: "person.badge.minus"), attributes: .destructive) { _ in accountViewModel.unfollow()