From f836ba1f097ed6df4c55df2bc6d81aa50820382c Mon Sep 17 00:00:00 2001 From: Ilya Laktyushin Date: Fri, 25 Sep 2020 20:09:42 +0300 Subject: [PATCH] Fix search loading placeholders --- .../ChatListUI/Sources/ChatListSearchListPaneNode.swift | 9 ++++++--- .../Sources/ListMessageSnippetItemNode.swift | 2 +- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/submodules/ChatListUI/Sources/ChatListSearchListPaneNode.swift b/submodules/ChatListUI/Sources/ChatListSearchListPaneNode.swift index e6458be46f..c7618f0e20 100644 --- a/submodules/ChatListUI/Sources/ChatListSearchListPaneNode.swift +++ b/submodules/ChatListUI/Sources/ChatListSearchListPaneNode.swift @@ -2205,7 +2205,8 @@ private final class ChatListSearchShimmerNode: ASDisplayNode { let peer1 = TelegramUser(id: PeerId(namespace: Namespaces.Peer.CloudUser, id: 1), accessHash: nil, firstName: "FirstName", lastName: nil, username: nil, phone: nil, photo: [], botInfo: nil, restrictionInfo: nil, flags: []) let timestamp1: Int32 = 100000 - let peers = SimpleDictionary() + var peers = SimpleDictionary() + peers[peer1.id] = peer1 let interaction = ChatListNodeInteraction(activateSearch: {}, peerSelected: { _, _ in }, disabledPeerSelected: { _ in }, togglePeerSelected: { _ in }, additionalCategorySelected: { _ in }, messageSelected: { _, _, _ in}, groupSelected: { _ in }, addContact: { _ in }, setPeerIdWithRevealedOptions: { _, _ in }, setItemPinned: { _, _ in }, setPeerMuted: { _, _ in }, deletePeer: { _, _ in }, updatePeerGrouping: { _, _ in }, togglePeerMarkedUnread: { _, _ in}, toggleArchivedFolderHiddenByDefault: {}, hidePsa: { _ in }, activateChatPreview: { _, _, gesture in gesture?.cancel() @@ -2313,7 +2314,9 @@ private final class ChatListSearchShimmerNode: ASDisplayNode { context.setFillColor(presentationData.theme.chatList.itemSeparatorColor.cgColor) context.fill(itemNode.separatorNode.frame.offsetBy(dx: 0.0, dy: currentY)) } else if let itemNode = itemNodes[sampleIndex] as? ListMessageFileItemNode { + var isVoice = false if let media = itemNode.currentMedia as? TelegramMediaFile { + isVoice = media.isVoice if media.isMusic || media.isVoice { context.fillEllipse(in: CGRect(x: 12.0, y: currentY + 12.0, width: 40.0, height: 40.0)) } else { @@ -2324,10 +2327,10 @@ private final class ChatListSearchShimmerNode: ASDisplayNode { } let titleFrame = itemNode.titleNode.frame.offsetBy(dx: 0.0, dy: currentY) - fillLabelPlaceholderRect(origin: CGPoint(x: titleFrame.minX, y: floor(titleFrame.midY - fakeLabelPlaceholderHeight / 2.0)), width: 60.0) + fillLabelPlaceholderRect(origin: CGPoint(x: titleFrame.minX, y: floor(titleFrame.midY - fakeLabelPlaceholderHeight / 2.0)), width: isVoice ? 240.0 : 60.0) let descriptionFrame = itemNode.descriptionNode.frame.offsetBy(dx: 0.0, dy: currentY) - fillLabelPlaceholderRect(origin: CGPoint(x: descriptionFrame.minX, y: floor(descriptionFrame.midY - fakeLabelPlaceholderHeight / 2.0)), width: 240.0) + fillLabelPlaceholderRect(origin: CGPoint(x: descriptionFrame.minX, y: floor(descriptionFrame.midY - fakeLabelPlaceholderHeight / 2.0)), width: isVoice ? 60.0 : 240.0) let dateFrame = itemNode.dateNode.frame.offsetBy(dx: 0.0, dy: currentY) fillLabelPlaceholderRect(origin: CGPoint(x: dateFrame.maxX - 30.0, y: dateFrame.minY), width: 30.0) diff --git a/submodules/ListMessageItem/Sources/ListMessageSnippetItemNode.swift b/submodules/ListMessageItem/Sources/ListMessageSnippetItemNode.swift index d473654286..986948b3ed 100644 --- a/submodules/ListMessageItem/Sources/ListMessageSnippetItemNode.swift +++ b/submodules/ListMessageItem/Sources/ListMessageSnippetItemNode.swift @@ -374,7 +374,7 @@ public final class ListMessageSnippetItemNode: ListMessageNode { let (messageTextUrl, _) = parseUrl(url: item.message.text, wasConcealed: false) if messageTextUrl != rawUrlString, !item.isGlobalSearchResult { - mutableDescriptionText.append(NSAttributedString(string: item.message.text + "\n", font: descriptionFont, textColor: item.presentationData.theme.theme.list.itemSecondaryTextColor)) + mutableDescriptionText.append(NSAttributedString(string: item.message.text + "\n", font: descriptionFont, textColor: item.presentationData.theme.theme.list.itemSecondaryTextColor)) } let urlAttributedString = NSMutableAttributedString()