From d8d72647720538a36df45c8930ecb5ddcc497055 Mon Sep 17 00:00:00 2001 From: Isaac <> Date: Wed, 14 Aug 2024 23:52:04 +0800 Subject: [PATCH] Various improvements --- .../Sources/ChatMessageAnimatedStickerItemNode.swift | 2 +- .../Sources/ChatMessageBubbleItemNode.swift | 2 +- .../Sources/ChatMessageItemImpl.swift | 9 ++++++++- .../Sources/ChatMessageStickerItemNode.swift | 2 +- .../Sources/ChatSendStarsScreen.swift | 6 +++--- 5 files changed, 14 insertions(+), 7 deletions(-) diff --git a/submodules/TelegramUI/Components/Chat/ChatMessageAnimatedStickerItemNode/Sources/ChatMessageAnimatedStickerItemNode.swift b/submodules/TelegramUI/Components/Chat/ChatMessageAnimatedStickerItemNode/Sources/ChatMessageAnimatedStickerItemNode.swift index d7174c1811..d43450b988 100644 --- a/submodules/TelegramUI/Components/Chat/ChatMessageAnimatedStickerItemNode/Sources/ChatMessageAnimatedStickerItemNode.swift +++ b/submodules/TelegramUI/Components/Chat/ChatMessageAnimatedStickerItemNode/Sources/ChatMessageAnimatedStickerItemNode.swift @@ -843,7 +843,7 @@ public class ChatMessageAnimatedStickerItemNode: ChatMessageItemView { if peerId != item.context.account.peerId { if peerId.isGroupOrChannel && item.message.author != nil { if let peer = item.message.peers[item.message.id.peerId] as? TelegramChannel, case let .broadcast(info) = peer.info { - if item.message.author?.id != peer.id, info.flags.contains(.messagesShouldHaveProfiles) { + if info.flags.contains(.messagesShouldHaveProfiles) { hasAvatar = incoming } } else { diff --git a/submodules/TelegramUI/Components/Chat/ChatMessageBubbleItemNode/Sources/ChatMessageBubbleItemNode.swift b/submodules/TelegramUI/Components/Chat/ChatMessageBubbleItemNode/Sources/ChatMessageBubbleItemNode.swift index 6834eb6632..168967f9a0 100644 --- a/submodules/TelegramUI/Components/Chat/ChatMessageBubbleItemNode/Sources/ChatMessageBubbleItemNode.swift +++ b/submodules/TelegramUI/Components/Chat/ChatMessageBubbleItemNode/Sources/ChatMessageBubbleItemNode.swift @@ -1550,7 +1550,7 @@ public class ChatMessageBubbleItemNode: ChatMessageItemView, ChatMessagePreviewI } } - if let channel = firstMessage.peers[firstMessage.id.peerId] as? TelegramChannel, case let .broadcast(info) = channel.info, firstMessage.author?.id != channel.id { + if let channel = firstMessage.peers[firstMessage.id.peerId] as? TelegramChannel, case let .broadcast(info) = channel.info { if info.flags.contains(.messagesShouldHaveProfiles) { var allowAuthor = incoming overrideEffectiveAuthor = true diff --git a/submodules/TelegramUI/Components/Chat/ChatMessageItemImpl/Sources/ChatMessageItemImpl.swift b/submodules/TelegramUI/Components/Chat/ChatMessageItemImpl/Sources/ChatMessageItemImpl.swift index f7519dfeb3..465993c444 100644 --- a/submodules/TelegramUI/Components/Chat/ChatMessageItemImpl/Sources/ChatMessageItemImpl.swift +++ b/submodules/TelegramUI/Components/Chat/ChatMessageItemImpl/Sources/ChatMessageItemImpl.swift @@ -75,6 +75,13 @@ private func messagesShouldBeMerged(accountPeerId: PeerId, _ lhs: Message, _ rhs } } + if let channel = lhs.peers[lhs.id.peerId] as? TelegramChannel, case let .broadcast(info) = channel.info { + if info.flags.contains(.messagesShouldHaveProfiles) { + lhsEffectiveAuthor = lhs.author + rhsEffectiveAuthor = rhs.author + } + } + var sameChat = true if lhs.id.peerId != rhs.id.peerId { sameChat = false @@ -344,7 +351,7 @@ public final class ChatMessageItemImpl: ChatMessageItem, CustomStringConvertible if !hasActionMedia { if !isBroadcastChannel { hasAvatar = true - } else if let channel = message.peers[message.id.peerId] as? TelegramChannel, case let .broadcast(info) = channel.info, message.author?.id != channel.id { + } else if let channel = message.peers[message.id.peerId] as? TelegramChannel, case let .broadcast(info) = channel.info { if info.flags.contains(.messagesShouldHaveProfiles) { hasAvatar = true effectiveAuthor = message.author diff --git a/submodules/TelegramUI/Components/Chat/ChatMessageStickerItemNode/Sources/ChatMessageStickerItemNode.swift b/submodules/TelegramUI/Components/Chat/ChatMessageStickerItemNode/Sources/ChatMessageStickerItemNode.swift index 22acccccf2..c63976ce11 100644 --- a/submodules/TelegramUI/Components/Chat/ChatMessageStickerItemNode/Sources/ChatMessageStickerItemNode.swift +++ b/submodules/TelegramUI/Components/Chat/ChatMessageStickerItemNode/Sources/ChatMessageStickerItemNode.swift @@ -465,7 +465,7 @@ public class ChatMessageStickerItemNode: ChatMessageItemView { if !peerId.isRepliesOrSavedMessages(accountPeerId: item.context.account.peerId) { if peerId.isGroupOrChannel && item.message.author != nil { if let peer = item.message.peers[item.message.id.peerId] as? TelegramChannel, case let .broadcast(info) = peer.info { - if item.message.author?.id != peer.id, info.flags.contains(.messagesShouldHaveProfiles) { + if info.flags.contains(.messagesShouldHaveProfiles) { hasAvatar = incoming } } else { diff --git a/submodules/TelegramUI/Components/Chat/ChatSendStarsScreen/Sources/ChatSendStarsScreen.swift b/submodules/TelegramUI/Components/Chat/ChatSendStarsScreen/Sources/ChatSendStarsScreen.swift index 8c439cdeed..21f3a4b461 100644 --- a/submodules/TelegramUI/Components/Chat/ChatSendStarsScreen/Sources/ChatSendStarsScreen.swift +++ b/submodules/TelegramUI/Components/Chat/ChatSendStarsScreen/Sources/ChatSendStarsScreen.swift @@ -1684,10 +1684,10 @@ private final class ChatSendStarsScreenComponent: Component { self.topPeerItems[topPeer.id] = itemView } - var itemCountString = "\(topPeer.count)" - if topPeer.isMy && myCountAddition != 0 && topPeer.count > myCountAddition { + let itemCountString = "\(topPeer.count)" + /*if topPeer.isMy && myCountAddition != 0 && topPeer.count > myCountAddition { itemCountString = "\(topPeer.count - myCountAddition) +\(myCountAddition)" - } + }*/ let itemSize = itemView.update( transition: .immediate,