diff --git a/submodules/ChatListUI/Sources/ChatListSearchContainerNode.swift b/submodules/ChatListUI/Sources/ChatListSearchContainerNode.swift index a9bc667784..7080ed6394 100644 --- a/submodules/ChatListUI/Sources/ChatListSearchContainerNode.swift +++ b/submodules/ChatListUI/Sources/ChatListSearchContainerNode.swift @@ -583,7 +583,7 @@ public final class ChatListSearchContainerNode: SearchDisplayControllerContentNo if let suggestedFilters = self.suggestedFilters, !suggestedFilters.isEmpty { filters = suggestedFilters } else { - filters = [.chats, .media, .downloads, .links, .files, .music, .voice] + filters = defaultAvailableSearchPanes(hasDownloads: self.hasDownloads).map(\.filter) } let overflowInset: CGFloat = 20.0 @@ -844,7 +844,7 @@ public final class ChatListSearchContainerNode: SearchDisplayControllerContentNo strongSelf.context.fetchManager.raisePriority(resourceId: downloadResource.id) - Queue.mainQueue().after(0.1, { + Queue.mainQueue().after(0.2, { f(.default) }) }))) @@ -860,7 +860,7 @@ public final class ChatListSearchContainerNode: SearchDisplayControllerContentNo strongSelf.context.fetchManager.cancelInteractiveFetches(resourceId: downloadResource.id) - f(.default) + f(.dismissWithoutContent) }))) } diff --git a/submodules/ChatListUI/Sources/ChatListSearchListPaneNode.swift b/submodules/ChatListUI/Sources/ChatListSearchListPaneNode.swift index 01900a43ab..8239ca6337 100644 --- a/submodules/ChatListUI/Sources/ChatListSearchListPaneNode.swift +++ b/submodules/ChatListUI/Sources/ChatListSearchListPaneNode.swift @@ -1708,8 +1708,10 @@ final class ChatListSearchListPaneNode: ASDisplayNode, ChatListSearchPaneNode { }) }) strongSelf.currentEntries = newEntries - if key == .downloads, !firstTime, !"".isEmpty { - transition.animated = true + if strongSelf.key == .downloads { + if !firstTime, !"".isEmpty { + transition.animated = true + } } strongSelf.enqueueTransition(transition, firstTime: firstTime) @@ -1959,9 +1961,6 @@ final class ChatListSearchListPaneNode: ASDisplayNode, ChatListSearchPaneNode { self.recentDisposable.dispose() self.updatedRecentPeersDisposable.dispose() self.deletedMessagesDisposable?.dispose() - if self.key == .downloads { - print("downloads") - } } override func didLoad() { @@ -2416,6 +2415,11 @@ final class ChatListSearchListPaneNode: ASDisplayNode, ChatListSearchPaneNode { options.insert(.AnimateInsertion) } + if self.key == .downloads { + options.insert(.PreferSynchronousDrawing) + options.insert(.PreferSynchronousResourceLoading) + } + self.listNode.transaction(deleteIndices: transition.deletions, insertIndicesAndItems: transition.insertions, updateIndicesAndItems: transition.updates, options: options, updateSizeAndInsets: nil, updateOpaqueState: nil, completion: { [weak self] _ in if let strongSelf = self { let searchOptions = strongSelf.searchOptionsValue diff --git a/submodules/TelegramCallsUI/Sources/Components/MediaStreamComponent.swift b/submodules/TelegramCallsUI/Sources/Components/MediaStreamComponent.swift index 9b9c46231f..b9e42f13c9 100644 --- a/submodules/TelegramCallsUI/Sources/Components/MediaStreamComponent.swift +++ b/submodules/TelegramCallsUI/Sources/Components/MediaStreamComponent.swift @@ -851,12 +851,6 @@ public final class MediaStreamComponentController: ViewControllerComponentContai fatalError("init(coder:) has not been implemented") } - deinit { - if let initialOrientation = self.initialOrientation { - self.call.accountContext.sharedContext.applicationBindings.forceOrientation(initialOrientation) - } - } - override public func viewDidAppear(_ animated: Bool) { super.viewDidAppear(animated) @@ -883,6 +877,11 @@ public final class MediaStreamComponentController: ViewControllerComponentContai DispatchQueue.main.async { self.onViewDidDisappear?() } + + if let initialOrientation = self.initialOrientation { + self.initialOrientation = nil + self.call.accountContext.sharedContext.applicationBindings.forceOrientation(initialOrientation) + } } public func dismiss(closing: Bool, manual: Bool) {