mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-07-16 08:19:23 +00:00

git-subtree-dir: submodules/TelegramUI git-subtree-mainline: 5c1613d1048026b9e00a6ce753775cef87eb53fa git-subtree-split: fa3ac0b61a27c8dd3296518a15891a6f9750cbf2
33 lines
1.5 KiB
Swift
33 lines
1.5 KiB
Swift
import Foundation
|
|
import UIKit
|
|
|
|
enum PeerMediaCollectionNavigationButtonAction {
|
|
case beginMessageSelection
|
|
case cancelMessageSelection
|
|
}
|
|
|
|
struct PeerMediaCollectionNavigationButton: Equatable {
|
|
let action: PeerMediaCollectionNavigationButtonAction
|
|
let buttonItem: UIBarButtonItem
|
|
|
|
static func ==(lhs: PeerMediaCollectionNavigationButton, rhs: PeerMediaCollectionNavigationButton) -> Bool {
|
|
return lhs.action == rhs.action
|
|
}
|
|
}
|
|
|
|
func rightNavigationButtonForPeerMediaCollectionInterfaceState(_ interfaceState: PeerMediaCollectionInterfaceState, currentButton: PeerMediaCollectionNavigationButton?, target: Any?, selector: Selector?) -> PeerMediaCollectionNavigationButton? {
|
|
if let _ = interfaceState.selectionState {
|
|
if let currentButton = currentButton, currentButton.action == .cancelMessageSelection {
|
|
return currentButton
|
|
} else {
|
|
return PeerMediaCollectionNavigationButton(action: .cancelMessageSelection, buttonItem: UIBarButtonItem(title: interfaceState.strings.Common_Cancel, style: .plain, target: target, action: selector))
|
|
}
|
|
} else {
|
|
if let currentButton = currentButton, currentButton.action == .beginMessageSelection {
|
|
return currentButton
|
|
} else {
|
|
return PeerMediaCollectionNavigationButton(action: .beginMessageSelection, buttonItem: UIBarButtonItem(title: interfaceState.strings.Common_Select, style: .plain, target: target, action: selector))
|
|
}
|
|
}
|
|
}
|