mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-12-22 22:25:57 +00:00
Dismiss context menu when message gets deleted
This commit is contained in:
@@ -3,6 +3,7 @@ import UIKit
|
||||
import Display
|
||||
import ContextUI
|
||||
import Postbox
|
||||
import SwiftSignalKit
|
||||
|
||||
final class ChatMessageContextExtractedContentSource: ContextExtractedContentSource {
|
||||
let keepInPlace: Bool = false
|
||||
@@ -10,11 +11,29 @@ final class ChatMessageContextExtractedContentSource: ContextExtractedContentSou
|
||||
let blurBackground: Bool = true
|
||||
|
||||
private weak var chatNode: ChatControllerNode?
|
||||
private let postbox: Postbox
|
||||
private let message: Message
|
||||
private let selectAll: Bool
|
||||
|
||||
init(chatNode: ChatControllerNode, message: Message, selectAll: Bool) {
|
||||
var shouldBeDismissed: Signal<Bool, NoError> {
|
||||
let viewKey = PostboxViewKey.messages(Set([self.message.id]))
|
||||
return self.postbox.combinedView(keys: [viewKey])
|
||||
|> map { views -> Bool in
|
||||
guard let view = views.views[viewKey] as? MessagesView else {
|
||||
return false
|
||||
}
|
||||
if view.messages.isEmpty {
|
||||
return true
|
||||
} else {
|
||||
return false
|
||||
}
|
||||
}
|
||||
|> distinctUntilChanged
|
||||
}
|
||||
|
||||
init(chatNode: ChatControllerNode, postbox: Postbox, message: Message, selectAll: Bool) {
|
||||
self.chatNode = chatNode
|
||||
self.postbox = postbox
|
||||
self.message = message
|
||||
self.selectAll = selectAll
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user