Various Improvements

This commit is contained in:
Ilya Laktyushin
2021-08-13 22:38:08 +03:00
parent dfc224aab0
commit c7faf75032
12 changed files with 105 additions and 48 deletions

View File

@@ -1,7 +1,8 @@
import Foundation
import Display
import Postbox
import SwiftSignalKit
import Postbox
import TelegramCore
public struct ChatListNodePeersFilter: OptionSet {
public var rawValue: Int32
@@ -40,9 +41,9 @@ public final class PeerSelectionControllerParams {
public let createNewGroup: (() -> Void)?
public let pretendPresentedInModal: Bool
public let multipleSelection: Bool
public let forwardedMessagesCount: Int
public let forwardedMessageIds: [EngineMessage.Id]
public init(context: AccountContext, filter: ChatListNodePeersFilter = [.onlyWriteable], hasChatListSelector: Bool = true, hasContactSelector: Bool = true, hasGlobalSearch: Bool = true, title: String? = nil, attemptSelection: ((Peer) -> Void)? = nil, createNewGroup: (() -> Void)? = nil, pretendPresentedInModal: Bool = false, multipleSelection: Bool = false, forwardedMessagesCount: Int = 0) {
public init(context: AccountContext, filter: ChatListNodePeersFilter = [.onlyWriteable], hasChatListSelector: Bool = true, hasContactSelector: Bool = true, hasGlobalSearch: Bool = true, title: String? = nil, attemptSelection: ((Peer) -> Void)? = nil, createNewGroup: (() -> Void)? = nil, pretendPresentedInModal: Bool = false, multipleSelection: Bool = false, forwardedMessageIds: [EngineMessage.Id] = []) {
self.context = context
self.filter = filter
self.hasChatListSelector = hasChatListSelector
@@ -53,7 +54,7 @@ public final class PeerSelectionControllerParams {
self.createNewGroup = createNewGroup
self.pretendPresentedInModal = pretendPresentedInModal
self.multipleSelection = multipleSelection
self.forwardedMessagesCount = forwardedMessagesCount
self.forwardedMessageIds = forwardedMessageIds
}
}
@@ -65,7 +66,7 @@ public enum PeerSelectionControllerSendMode {
public protocol PeerSelectionController: ViewController {
var peerSelected: ((Peer) -> Void)? { get set }
var multiplePeersSelected: (([Peer], [PeerId: Peer], NSAttributedString, PeerSelectionControllerSendMode) -> Void)? { get set }
var multiplePeersSelected: (([Peer], [PeerId: Peer], NSAttributedString, PeerSelectionControllerSendMode, Bool) -> Void)? { get set }
var inProgress: Bool { get set }
var customDismiss: (() -> Void)? { get set }
}