mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-12-23 14:45:21 +00:00
Various improvements
This commit is contained in:
23
submodules/TelegramCallsUI/Sources/VideoChatToasts.swift
Normal file
23
submodules/TelegramCallsUI/Sources/VideoChatToasts.swift
Normal file
@@ -0,0 +1,23 @@
|
||||
import Foundation
|
||||
import SwiftSignalKit
|
||||
import TelegramCore
|
||||
|
||||
enum VideoChatNotificationIcon {
|
||||
case peer(EnginePeer)
|
||||
case icon(String)
|
||||
}
|
||||
|
||||
extension VideoChatScreenComponent.View {
|
||||
func displayToast(icon: VideoChatNotificationIcon, text: String, duration: Int32) {
|
||||
let id = Int64.random(in: 0 ..< .max)
|
||||
|
||||
let expiresOn = Int32(CFAbsoluteTimeGetCurrent()) + duration
|
||||
self.toastMessages.append((id: id, icon: icon, text: text, expiresOn: expiresOn))
|
||||
self.state?.updated(transition: .spring(duration: 0.4))
|
||||
|
||||
Queue.mainQueue().after(Double(duration)) {
|
||||
self.toastMessages.removeAll(where: { $0.id == id })
|
||||
self.state?.updated(transition: .spring(duration: 0.4))
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user