mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-12-23 06:35:51 +00:00
Comments update
This commit is contained in:
@@ -26,7 +26,7 @@ class ChatMessageInstantVideoItemNode: ChatMessageItemView {
|
||||
|
||||
private var selectionNode: ChatMessageSelectionNode?
|
||||
private var deliveryFailedNode: ChatMessageDeliveryFailedNode?
|
||||
private var shareButtonNode: HighlightableButtonNode?
|
||||
private var shareButtonNode: ChatMessageShareButton?
|
||||
|
||||
private var swipeToReplyNode: ChatMessageSwipeToReplyNode?
|
||||
private var swipeToReplyFeedback: HapticFeedback?
|
||||
@@ -360,28 +360,12 @@ class ChatMessageInstantVideoItemNode: ChatMessageItemView {
|
||||
|
||||
var updatedShareButtonBackground: UIImage?
|
||||
|
||||
var updatedShareButtonNode: HighlightableButtonNode?
|
||||
var updatedShareButtonNode: ChatMessageShareButton?
|
||||
if needShareButton {
|
||||
if currentShareButtonNode != nil {
|
||||
updatedShareButtonNode = currentShareButtonNode
|
||||
if item.presentationData.theme !== currentItem?.presentationData.theme {
|
||||
let graphics = PresentationResourcesChat.additionalGraphics(item.presentationData.theme.theme, wallpaper: item.presentationData.theme.wallpaper, bubbleCorners: item.presentationData.chatBubbleCorners)
|
||||
if item.message.id.peerId == item.context.account.peerId {
|
||||
updatedShareButtonBackground = graphics.chatBubbleNavigateButtonImage
|
||||
} else {
|
||||
updatedShareButtonBackground = graphics.chatBubbleShareButtonImage
|
||||
}
|
||||
}
|
||||
} else {
|
||||
let buttonNode = HighlightableButtonNode()
|
||||
let buttonIcon: UIImage?
|
||||
let graphics = PresentationResourcesChat.additionalGraphics(item.presentationData.theme.theme, wallpaper: item.presentationData.theme.wallpaper, bubbleCorners: item.presentationData.chatBubbleCorners)
|
||||
if item.message.id.peerId == item.context.account.peerId {
|
||||
buttonIcon = graphics.chatBubbleNavigateButtonImage
|
||||
} else {
|
||||
buttonIcon = graphics.chatBubbleShareButtonImage
|
||||
}
|
||||
buttonNode.setBackgroundImage(buttonIcon, for: [.normal])
|
||||
let buttonNode = ChatMessageShareButton()
|
||||
updatedShareButtonNode = buttonNode
|
||||
}
|
||||
}
|
||||
@@ -483,18 +467,13 @@ class ChatMessageInstantVideoItemNode: ChatMessageItemView {
|
||||
strongSelf.addSubnode(updatedShareButtonNode)
|
||||
updatedShareButtonNode.addTarget(strongSelf, action: #selector(strongSelf.shareButtonPressed), forControlEvents: .touchUpInside)
|
||||
}
|
||||
if let updatedShareButtonBackground = updatedShareButtonBackground {
|
||||
strongSelf.shareButtonNode?.setBackgroundImage(updatedShareButtonBackground, for: [.normal])
|
||||
}
|
||||
let buttonSize = updatedShareButtonNode.update(presentationData: item.presentationData, message: item.message, account: item.context.account)
|
||||
updatedShareButtonNode.frame = CGRect(origin: CGPoint(x: videoFrame.maxX - 7.0, y: videoFrame.maxY - 24.0 - buttonSize.height), size: buttonSize)
|
||||
} else if let shareButtonNode = strongSelf.shareButtonNode {
|
||||
shareButtonNode.removeFromSupernode()
|
||||
strongSelf.shareButtonNode = nil
|
||||
}
|
||||
|
||||
if let shareButtonNode = strongSelf.shareButtonNode {
|
||||
shareButtonNode.frame = CGRect(origin: CGPoint(x: videoFrame.maxX - 7.0, y: videoFrame.maxY - 54.0), size: CGSize(width: 29.0, height: 29.0))
|
||||
}
|
||||
|
||||
if let updatedReplyBackgroundNode = updatedReplyBackgroundNode {
|
||||
if strongSelf.replyBackgroundNode == nil {
|
||||
strongSelf.replyBackgroundNode = updatedReplyBackgroundNode
|
||||
@@ -760,6 +739,15 @@ class ChatMessageInstantVideoItemNode: ChatMessageItemView {
|
||||
|
||||
@objc func shareButtonPressed() {
|
||||
if let item = self.item {
|
||||
if let channel = item.message.peers[item.message.id.peerId] as? TelegramChannel, case .broadcast = channel.info {
|
||||
for attribute in item.message.attributes {
|
||||
if let _ = attribute as? ReplyThreadMessageAttribute {
|
||||
item.controllerInteraction.openMessageReplies(item.message.id)
|
||||
return
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if item.content.firstMessage.id.peerId == item.context.account.peerId {
|
||||
for attribute in item.content.firstMessage.attributes {
|
||||
if let attribute = attribute as? SourceReferenceMessageAttribute {
|
||||
|
||||
Reference in New Issue
Block a user