mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-12-22 22:25:57 +00:00
Reaction improvements
This commit is contained in:
@@ -63,18 +63,23 @@ final class ChatMessageWebpageBubbleContentNode: ChatMessageBubbleContentNode {
|
||||
}
|
||||
self.contentNode.activateAction = { [weak self] in
|
||||
if let strongSelf = self, let item = strongSelf.item {
|
||||
if let adAttribute = item.message.adAttribute, let author = item.message.author {
|
||||
let navigationData: ChatControllerInteractionNavigateToPeer
|
||||
if let bot = author as? TelegramUser, bot.botInfo != nil, let startParam = adAttribute.startParam {
|
||||
navigationData = .withBotStartPayload(ChatControllerInitialBotStart(payload: startParam, behavior: .interactive))
|
||||
} else {
|
||||
var subject: ChatControllerSubject?
|
||||
if let messageId = adAttribute.messageId {
|
||||
subject = .message(id: .id(messageId), highlight: true, timecode: nil)
|
||||
if let adAttribute = item.message.adAttribute {
|
||||
switch adAttribute.target {
|
||||
case let .peer(id, messageId, startParam):
|
||||
let navigationData: ChatControllerInteractionNavigateToPeer
|
||||
if let bot = item.message.author as? TelegramUser, bot.botInfo != nil, let startParam = startParam {
|
||||
navigationData = .withBotStartPayload(ChatControllerInitialBotStart(payload: startParam, behavior: .interactive))
|
||||
} else {
|
||||
var subject: ChatControllerSubject?
|
||||
if let messageId = messageId {
|
||||
subject = .message(id: .id(messageId), highlight: true, timecode: nil)
|
||||
}
|
||||
navigationData = .chat(textInputState: nil, subject: subject, peekData: nil)
|
||||
}
|
||||
navigationData = .chat(textInputState: nil, subject: subject, peekData: nil)
|
||||
item.controllerInteraction.openPeer(id, navigationData, nil)
|
||||
case let .join(_, joinHash):
|
||||
item.controllerInteraction.openJoinLink(joinHash)
|
||||
}
|
||||
item.controllerInteraction.openPeer(author.id, navigationData, nil)
|
||||
} else {
|
||||
var webPageContent: TelegramMediaWebpageLoadedContent?
|
||||
for media in item.message.media {
|
||||
@@ -342,13 +347,13 @@ final class ChatMessageWebpageBubbleContentNode: ChatMessageBubbleContentNode {
|
||||
if let author = item.message.author as? TelegramUser, author.botInfo != nil {
|
||||
actionTitle = item.presentationData.strings.Conversation_ViewBot
|
||||
} else if let author = item.message.author as? TelegramChannel, case .group = author.info {
|
||||
if adAttribute.messageId != nil {
|
||||
if case let .peer(_, messageId, _) = adAttribute.target, messageId != nil {
|
||||
actionTitle = item.presentationData.strings.Conversation_ViewPost
|
||||
} else {
|
||||
actionTitle = item.presentationData.strings.Conversation_ViewGroup
|
||||
}
|
||||
} else {
|
||||
if adAttribute.messageId != nil {
|
||||
if case let .peer(_, messageId, _) = adAttribute.target, messageId != nil {
|
||||
actionTitle = item.presentationData.strings.Conversation_ViewMessage
|
||||
} else {
|
||||
actionTitle = item.presentationData.strings.Conversation_ViewChannel
|
||||
|
||||
Reference in New Issue
Block a user