mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-06-15 21:45:19 +00:00
35 lines
1.7 KiB
Swift
35 lines
1.7 KiB
Swift
import Foundation
|
|
import Postbox
|
|
import SwiftSignalKit
|
|
import TelegramCore
|
|
|
|
public enum GalleryControllerItemSource {
|
|
case peerMessagesAtId(messageId: MessageId, chatLocation: ChatLocation, chatLocationContextHolder: Atomic<ChatLocationContextHolder?>)
|
|
case standaloneMessage(Message)
|
|
case custom(messages: Signal<([Message], Int32, Bool), NoError>, messageId: MessageId, loadMore: (() -> Void)?)
|
|
}
|
|
|
|
public final class GalleryControllerActionInteraction {
|
|
public let openUrl: (String, Bool) -> Void
|
|
public let openUrlIn: (String) -> Void
|
|
public let openPeerMention: (String) -> Void
|
|
public let openPeer: (PeerId) -> Void
|
|
public let openHashtag: (String?, String) -> Void
|
|
public let openBotCommand: (String) -> Void
|
|
public let addContact: (String) -> Void
|
|
public let storeMediaPlaybackState: (MessageId, Double?) -> Void
|
|
public let editMedia: (MessageId) -> Void
|
|
|
|
public init(openUrl: @escaping (String, Bool) -> Void, openUrlIn: @escaping (String) -> Void, openPeerMention: @escaping (String) -> Void, openPeer: @escaping (PeerId) -> Void, openHashtag: @escaping (String?, String) -> Void, openBotCommand: @escaping (String) -> Void, addContact: @escaping (String) -> Void, storeMediaPlaybackState: @escaping (MessageId, Double?) -> Void, editMedia: @escaping (MessageId) -> Void) {
|
|
self.openUrl = openUrl
|
|
self.openUrlIn = openUrlIn
|
|
self.openPeerMention = openPeerMention
|
|
self.openPeer = openPeer
|
|
self.openHashtag = openHashtag
|
|
self.openBotCommand = openBotCommand
|
|
self.addContact = addContact
|
|
self.storeMediaPlaybackState = storeMediaPlaybackState
|
|
self.editMedia = editMedia
|
|
}
|
|
}
|