From 895927cc0421decd6a135604dd86a7f6c7eb1d37 Mon Sep 17 00:00:00 2001 From: Ali <> Date: Thu, 5 Aug 2021 12:58:22 +0200 Subject: [PATCH] Fix more warnings --- .../TelegramUI/Sources/ChatController.swift | 9 +- .../Sources/ChatControllerNode.swift | 11 +- .../Sources/ChatHistoryListNode.swift | 5 +- .../TelegramUI/Sources/ChatHistoryNode.swift | 2 +- .../ChatHistorySearchContainerNode.swift | 19 -- .../Sources/ChatHistoryViewForLocation.swift | 2 +- .../Sources/ChatMediaInputNode.swift | 6 +- .../ChatMessageInstantVideoItemNode.swift | 2 - .../ChatPinnedMessageTitlePanelNode.swift | 19 +- .../ChatRecentActionsControllerNode.swift | 1 - .../ChatRecentActionsFilterController.swift | 26 --- ...ChatSecretAutoremoveTimerActionSheet.swift | 1 - ...SendMessageActionSheetControllerNode.swift | 1 - .../Sources/CreateGroupController.swift | 23 +-- .../Sources/DeviceContactDataManager.swift | 189 ++---------------- .../Sources/DocumentPreviewController.swift | 20 -- .../Sources/DrawingStickersScreen.swift | 28 +-- .../Sources/FeaturedStickersScreen.swift | 11 +- .../Sources/FetchVideoMediaResource.swift | 3 - .../Sources/HashtagChatInputPanelItem.swift | 8 +- ...textResultsChatInputContextPanelNode.swift | 2 +- .../Sources/HorizontalStickerGridItem.swift | 6 +- .../TelegramUI/Sources/LegacyCamera.swift | 2 +- .../LegacyInstantVideoController.swift | 2 +- .../Sources/ManagedAudioRecorder.swift | 4 +- .../Sources/MentionChatInputPanelItem.swift | 2 +- .../PeerInfoScreenLabeledValueItem.swift | 10 +- .../PeerInfoGroupsInCommonPaneNode.swift | 2 +- .../Sources/PeerInfo/PeerInfoData.swift | 17 +- .../PeerInfo/PeerInfoPaneContainerNode.swift | 13 +- .../Sources/PeerInfo/PeerInfoScreen.swift | 25 +-- .../Sources/PeerMessagesMediaPlaylist.swift | 14 -- .../Sources/PeerSelectionControllerNode.swift | 5 +- .../PeerSelectionTextInputPanelNode.swift | 19 +- .../Sources/ShareExtensionContext.swift | 2 +- .../Sources/SharedAccountContext.swift | 4 +- .../Sources/SpotlightContacts.swift | 2 +- .../StickersChatInputContextPanelItem.swift | 2 +- .../TelegramUI/Sources/TonePlayer.swift | 1 - .../Sources/WallpaperUploadManager.swift | 2 +- 40 files changed, 83 insertions(+), 439 deletions(-) diff --git a/submodules/TelegramUI/Sources/ChatController.swift b/submodules/TelegramUI/Sources/ChatController.swift index f192cd8395..10ac5efc37 100644 --- a/submodules/TelegramUI/Sources/ChatController.swift +++ b/submodules/TelegramUI/Sources/ChatController.swift @@ -4239,7 +4239,7 @@ public final class ChatControllerImpl: TelegramBaseController, ChatController, G return message } |> distinctUntilChanged - case let .replyThread(replyThreadMessage): + case .replyThread: return .single(nil) } return topPinnedMessage @@ -7078,7 +7078,7 @@ public final class ChatControllerImpl: TelegramBaseController, ChatController, G return } if let navigationController = strongSelf.effectiveNavigationController { - ApplicationSpecificNotice.incrementNextChatSuggestionTip(accountManager: strongSelf.context.sharedContext.accountManager).start() + let _ = ApplicationSpecificNotice.incrementNextChatSuggestionTip(accountManager: strongSelf.context.sharedContext.accountManager).start() let snapshotState = strongSelf.chatDisplayNode.prepareSnapshotState( titleViewSnapshotState: strongSelf.chatTitleView?.prepareSnapshotState(), @@ -7219,7 +7219,7 @@ public final class ChatControllerImpl: TelegramBaseController, ChatController, G } } self.tempVoicePlaylistItemChanged = { [weak self] previousItem, currentItem in - guard let strongSelf = self, case let .peer(peerId) = strongSelf.chatLocation else { + guard let strongSelf = self, case .peer = strongSelf.chatLocation else { return } @@ -10481,7 +10481,6 @@ public final class ChatControllerImpl: TelegramBaseController, ChatController, G guard let strongSelf = self else { return } - let complete = results.completed strongSelf.updateChatPresentationInterfaceState(animated: true, interactive: true, { current in if let data = current.search, let previousResultsState = data.resultsState { let messageIndices = results.messages.map({ $0.index }).sorted() @@ -11398,7 +11397,6 @@ public final class ChatControllerImpl: TelegramBaseController, ChatController, G cancelImpl = { [weak self] in self?.resolvePeerByNameDisposable?.set(nil) } - let account = self.context.account disposable.set((resolveSignal |> take(1) |> mapToSignal { peer -> Signal in @@ -11427,7 +11425,6 @@ public final class ChatControllerImpl: TelegramBaseController, ChatController, G if self.resolvePeerByNameDisposable == nil { self.resolvePeerByNameDisposable = MetaDisposable() } - let account = self.context.account var resolveSignal: Signal if let peerName = peerName { resolveSignal = self.context.engine.peers.resolvePeerByName(name: peerName) diff --git a/submodules/TelegramUI/Sources/ChatControllerNode.swift b/submodules/TelegramUI/Sources/ChatControllerNode.swift index c2feb9e879..be6fdc9612 100644 --- a/submodules/TelegramUI/Sources/ChatControllerNode.swift +++ b/submodules/TelegramUI/Sources/ChatControllerNode.swift @@ -820,9 +820,6 @@ class ChatControllerNode: ASDisplayNode, UIScrollViewDelegate { insets = layout.insets(options: [.input]) } - let statusBarHeight = layout.insets(options: [.statusBar]).top - - if case .overlay = self.chatPresentationInterfaceState.mode { insets.top = 44.0 } else { @@ -1152,7 +1149,7 @@ class ChatControllerNode: ASDisplayNode, UIScrollViewDelegate { } var displayTopDimNode = false - var ensureTopInsetForOverlayHighlightedItems: CGFloat? + let ensureTopInsetForOverlayHighlightedItems: CGFloat? = nil var expandTopDimNode = false if case let .media(_, expanded) = self.chatPresentationInterfaceState.inputMode, expanded != nil { displayTopDimNode = true @@ -1168,7 +1165,6 @@ class ChatControllerNode: ASDisplayNode, UIScrollViewDelegate { topInset -= UIScreenPixel } } - let topFrame = CGRect(origin: CGPoint(x: 0.0, y: 0.0), size: CGSize(width: layout.size.width, height: max(0.0, topInset))) let inputPanelOrigin = layout.size.height - insets.bottom - bottomOverflowOffset - inputPanelsHeight @@ -1286,11 +1282,6 @@ class ChatControllerNode: ASDisplayNode, UIScrollViewDelegate { let inputContextPanelsFrame = CGRect(origin: CGPoint(x: 0.0, y: insets.top), size: CGSize(width: layout.size.width, height: max(0.0, layout.size.height - insets.bottom - inputPanelsHeight - insets.top))) let inputContextPanelsOverMainPanelFrame = CGRect(origin: CGPoint(x: 0.0, y: insets.top), size: CGSize(width: layout.size.width, height: max(0.0, layout.size.height - insets.bottom - (inputPanelSize == nil ? CGFloat(0.0) : inputPanelSize!.height) - insets.top))) - if transition.isAnimated, let derivedLayoutState = self.derivedLayoutState { - let offset = derivedLayoutState.inputContextPanelsOverMainPanelFrame.maxY - inputContextPanelsOverMainPanelFrame.maxY - //transition.animateOffsetAdditive(node: self.inputContextPanelContainer, offset: -offset) - } - if let inputContextPanelNode = self.inputContextPanelNode { let panelFrame = inputContextPanelNode.placement == .overTextInput ? inputContextPanelsOverMainPanelFrame : inputContextPanelsFrame if immediatelyLayoutInputContextPanelAndAnimateAppearance { diff --git a/submodules/TelegramUI/Sources/ChatHistoryListNode.swift b/submodules/TelegramUI/Sources/ChatHistoryListNode.swift index 52872c42e7..ca9df5f270 100644 --- a/submodules/TelegramUI/Sources/ChatHistoryListNode.swift +++ b/submodules/TelegramUI/Sources/ChatHistoryListNode.swift @@ -1094,7 +1094,6 @@ public final class ChatHistoryListNode: ListView, ChatHistoryNode { let previousTheme = strongSelf.currentPresentationData.theme let previousStrings = strongSelf.currentPresentationData.strings let previousWallpaper = strongSelf.currentPresentationData.theme.wallpaper - let previousDisableAnimations = strongSelf.currentPresentationData.disableAnimations let previousAnimatedEmojiScale = strongSelf.currentPresentationData.animatedEmojiScale let animatedEmojiConfig = ChatHistoryAnimatedEmojiConfiguration.with(appConfiguration: appConfiguration) @@ -1311,8 +1310,6 @@ public final class ChatHistoryListNode: ListView, ChatHistoryNode { var messageIdsWithUnsupportedMedia: [MessageId] = [] var messageIdsWithRefreshMedia: [MessageId] = [] var messageIdsWithUnseenPersonalMention: [MessageId] = [] - var messagesWithPreloadableMediaToEarlier: [(Message, Media)] = [] - var messagesWithPreloadableMediaToLater: [(Message, Media)] = [] if indexRange.0 <= indexRange.1 { for i in (indexRange.0 ... indexRange.1) { @@ -1593,7 +1590,7 @@ public final class ChatHistoryListNode: ListView, ChatHistoryNode { } else if case let .MessageGroupEntry(_, messages, _) = entry { currentMessage = messages.first?.0 } - if let message = currentMessage, let anchorMessage = self.anchorMessageInCurrentHistoryView() { + if let message = currentMessage, let _ = self.anchorMessageInCurrentHistoryView() { self.chatHistoryLocationValue = ChatHistoryLocationInput(content: .Scroll(index: .message(message.index), anchorIndex: .message(message.index), sourceIndex: .upperBound, scrollPosition: .bottom(0.0), animated: true, highlight: false), id: self.takeNextHistoryLocationId()) } } diff --git a/submodules/TelegramUI/Sources/ChatHistoryNode.swift b/submodules/TelegramUI/Sources/ChatHistoryNode.swift index 094effabed..66fe663f10 100644 --- a/submodules/TelegramUI/Sources/ChatHistoryNode.swift +++ b/submodules/TelegramUI/Sources/ChatHistoryNode.swift @@ -22,7 +22,7 @@ public enum ChatHistoryNodeLoadState: Equatable { case messages } -public protocol ChatHistoryNode: class { +public protocol ChatHistoryNode: AnyObject { var historyState: ValuePromise { get } var preloadPages: Bool { get set } diff --git a/submodules/TelegramUI/Sources/ChatHistorySearchContainerNode.swift b/submodules/TelegramUI/Sources/ChatHistorySearchContainerNode.swift index c9fb9f748a..d26c8246e4 100644 --- a/submodules/TelegramUI/Sources/ChatHistorySearchContainerNode.swift +++ b/submodules/TelegramUI/Sources/ChatHistorySearchContainerNode.swift @@ -14,27 +14,8 @@ import ListMessageItem private enum ChatHistorySearchEntryStableId: Hashable { case messageId(MessageId) - - static func ==(lhs: ChatHistorySearchEntryStableId, rhs: ChatHistorySearchEntryStableId) -> Bool { - switch lhs { - case let .messageId(messageId): - if case .messageId(messageId) = rhs { - return true - } else { - return false - } - } - } - - var hashValue: Int { - switch self { - case let .messageId(messageId): - return messageId.hashValue - } - } } - private enum ChatHistorySearchEntry: Comparable, Identifiable { case message(Message, PresentationTheme, PresentationStrings, PresentationDateTimeFormat, PresentationFontSize) diff --git a/submodules/TelegramUI/Sources/ChatHistoryViewForLocation.swift b/submodules/TelegramUI/Sources/ChatHistoryViewForLocation.swift index 612fb3f74a..5e35e755f6 100644 --- a/submodules/TelegramUI/Sources/ChatHistoryViewForLocation.swift +++ b/submodules/TelegramUI/Sources/ChatHistoryViewForLocation.swift @@ -223,7 +223,7 @@ func chatHistoryViewForLocation(_ location: ChatHistoryLocationInput, context: A return .HistoryView(view: view, type: reportUpdateType, scrollPosition: .index(index: anchorIndex, position: .center(.bottom), directionHint: .Down, animated: false, highlight: highlight), flashIndicators: false, originalScrollPosition: nil, initialData: ChatHistoryCombinedInitialData(initialData: initialData, buttonKeyboardMessage: view.topTaggedMessages.first, cachedData: cachedData, cachedDataMessages: cachedDataMessages, readStateData: readStateData), id: location.id) } } - case let .Navigation(index, anchorIndex, count, highlight): + case let .Navigation(index, anchorIndex, count, _): var first = true return account.viewTracker.aroundMessageHistoryViewForLocation(context.chatLocationInput(for: chatLocation, contextHolder: chatLocationContextHolder), index: index, anchorIndex: anchorIndex, count: count, ignoreRelatedChats: ignoreRelatedChats, fixedCombinedReadStates: fixedCombinedReadStates, tagMask: tagMask, appendMessagesFromTheSameGroup: appendMessagesFromTheSameGroup, orderStatistics: orderStatistics, additionalData: additionalData) |> map { view, updateType, initialData -> ChatHistoryViewUpdate in let (cachedData, cachedDataMessages, readStateData) = extractAdditionalData(view: view, chatLocation: chatLocation) diff --git a/submodules/TelegramUI/Sources/ChatMediaInputNode.swift b/submodules/TelegramUI/Sources/ChatMediaInputNode.swift index c20077f39a..c7e4cf9cd5 100644 --- a/submodules/TelegramUI/Sources/ChatMediaInputNode.swift +++ b/submodules/TelegramUI/Sources/ChatMediaInputNode.swift @@ -1689,8 +1689,8 @@ final class ChatMediaInputNode: ChatInputNode { searchContainerNode.frame = containerFrame searchContainerNode.updateLayout(size: containerFrame.size, leftInset: leftInset, rightInset: rightInset, bottomInset: bottomInset, inputHeight: inputHeight, deviceMetrics: deviceMetrics, transition: .immediate) var placeholderNode: PaneSearchBarPlaceholderNode? - var anchorTop = CGPoint(x: 0.0, y: 0.0) - var anchorTopView: UIView = self.view + let anchorTop = CGPoint(x: 0.0, y: 0.0) + let anchorTopView: UIView = self.view if let searchMode = searchMode { switch searchMode { case .gif: @@ -2025,7 +2025,7 @@ final class ChatMediaInputNode: ChatInputNode { collectionListPanelOffset = 0.0 } - var listPanelOffset = collectionListPanelOffset * 2.0 + let listPanelOffset = collectionListPanelOffset * 2.0 self.updateAppearanceTransition(transition: transition) transition.updateFrame(node: self.collectionListPanel, frame: CGRect(origin: CGPoint(x: 0.0, y: listPanelOffset), size: self.collectionListPanel.bounds.size)) diff --git a/submodules/TelegramUI/Sources/ChatMessageInstantVideoItemNode.swift b/submodules/TelegramUI/Sources/ChatMessageInstantVideoItemNode.swift index 69be62c976..8f96ccbaf6 100644 --- a/submodules/TelegramUI/Sources/ChatMessageInstantVideoItemNode.swift +++ b/submodules/TelegramUI/Sources/ChatMessageInstantVideoItemNode.swift @@ -390,7 +390,6 @@ class ChatMessageInstantVideoItemNode: ChatMessageItemView, UIGestureRecognizerD var viaBotApply: (TextNodeLayout, () -> TextNode)? var replyInfoApply: (CGSize, () -> ChatMessageReplyInfoNode)? var updatedReplyBackgroundNode: NavigationBackgroundNode? - var replyBackgroundImage: UIImage? var replyMarkup: ReplyMarkupMessageAttribute? let availableWidth = max(60.0, params.width - params.leftInset - params.rightInset - normalDisplaySize.width - 20.0 - layoutConstants.bubble.edgeInset * 2.0 - avatarInset - layoutConstants.bubble.contentInsets.left) @@ -489,7 +488,6 @@ class ChatMessageInstantVideoItemNode: ChatMessageItemView, UIGestureRecognizerD var forwardInfoSizeApply: (CGSize, (CGFloat) -> ChatMessageForwardInfoNode)? var updatedForwardBackgroundNode: NavigationBackgroundNode? - var forwardBackgroundImage: UIImage? if !ignoreForward, let forwardInfo = item.message.forwardInfo { let forwardPsaType = forwardInfo.psaType diff --git a/submodules/TelegramUI/Sources/ChatPinnedMessageTitlePanelNode.swift b/submodules/TelegramUI/Sources/ChatPinnedMessageTitlePanelNode.swift index 9fffe16a45..a895fb85fc 100644 --- a/submodules/TelegramUI/Sources/ChatPinnedMessageTitlePanelNode.swift +++ b/submodules/TelegramUI/Sources/ChatPinnedMessageTitlePanelNode.swift @@ -327,24 +327,7 @@ final class ChatPinnedMessageTitlePanelNode: ChatTitleAccessoryPanelNode { if let animation = animation { animationTransition = .animated(duration: 0.2, curve: .easeInOut) - if false, let copyView = self.contentContainer.view.snapshotView(afterScreenUpdates: false) { - let offset: CGFloat - switch animation { - case .slideToTop: - offset = -40.0 - case .slideToBottom: - offset = 40.0 - } - - copyView.frame = self.contentContainer.frame - self.clippingContainer.view.addSubview(copyView) - copyView.layer.animatePosition(from: CGPoint(), to: CGPoint(x: 0.0, y: offset), duration: 0.2, removeOnCompletion: false, additive: true) - copyView.layer.animateAlpha(from: 1.0, to: 0.0, duration: 0.2, removeOnCompletion: false, completion: { [weak copyView] _ in - copyView?.removeFromSuperview() - }) - self.contentContainer.layer.animatePosition(from: CGPoint(x: 0.0, y: -offset), to: CGPoint(), duration: 0.2, additive: true) - self.contentContainer.layer.animateAlpha(from: 0.0, to: 1.0, duration: 0.2) - } else if let copyView = self.textNode.view.snapshotView(afterScreenUpdates: false) { + if let copyView = self.textNode.view.snapshotView(afterScreenUpdates: false) { let offset: CGFloat switch animation { case .slideToTop: diff --git a/submodules/TelegramUI/Sources/ChatRecentActionsControllerNode.swift b/submodules/TelegramUI/Sources/ChatRecentActionsControllerNode.swift index ce85ec7d92..4b233555f4 100644 --- a/submodules/TelegramUI/Sources/ChatRecentActionsControllerNode.swift +++ b/submodules/TelegramUI/Sources/ChatRecentActionsControllerNode.swift @@ -781,7 +781,6 @@ final class ChatRecentActionsControllerNode: ViewControllerTracingNode { } private func openPeerMention(_ name: String) { - let postbox = self.context.account.postbox self.navigationActionDisposable.set((self.context.engine.peers.resolvePeerByName(name: name, ageLimit: 10) |> take(1) |> deliverOnMainQueue).start(next: { [weak self] peer in diff --git a/submodules/TelegramUI/Sources/ChatRecentActionsFilterController.swift b/submodules/TelegramUI/Sources/ChatRecentActionsFilterController.swift index 3c4606e7e3..4318cfcf24 100644 --- a/submodules/TelegramUI/Sources/ChatRecentActionsFilterController.swift +++ b/submodules/TelegramUI/Sources/ChatRecentActionsFilterController.swift @@ -36,32 +36,6 @@ private enum ChatRecentActionsFilterSection: Int32 { private enum ChatRecentActionsFilterEntryStableId: Hashable { case index(Int32) case peer(PeerId) - - var hashValue: Int { - switch self { - case let .index(index): - return index.hashValue - case let .peer(peerId): - return peerId.hashValue - } - } - - static func ==(lhs: ChatRecentActionsFilterEntryStableId, rhs: ChatRecentActionsFilterEntryStableId) -> Bool { - switch lhs { - case let .index(index): - if case .index(index) = rhs { - return true - } else { - return false - } - case let .peer(peerId): - if case .peer(peerId) = rhs { - return true - } else { - return false - } - } - } } private enum ChatRecentActionsFilterEntry: ItemListNodeEntry { diff --git a/submodules/TelegramUI/Sources/ChatSecretAutoremoveTimerActionSheet.swift b/submodules/TelegramUI/Sources/ChatSecretAutoremoveTimerActionSheet.swift index 5dbe277004..c1bc4e7f40 100644 --- a/submodules/TelegramUI/Sources/ChatSecretAutoremoveTimerActionSheet.swift +++ b/submodules/TelegramUI/Sources/ChatSecretAutoremoveTimerActionSheet.swift @@ -19,7 +19,6 @@ final class ChatSecretAutoremoveTimerActionSheetController: ActionSheetControlle init(context: AccountContext, currentValue: Int32, availableValues: [Int32]? = nil, applyValue: @escaping (Int32) -> Void) { let presentationData = context.sharedContext.currentPresentationData.with { $0 } - let theme = presentationData.theme let strings = presentationData.strings super.init(theme: ActionSheetControllerTheme(presentationData: presentationData)) diff --git a/submodules/TelegramUI/Sources/ChatSendMessageActionSheetControllerNode.swift b/submodules/TelegramUI/Sources/ChatSendMessageActionSheetControllerNode.swift index ac6881df7c..dac19b9c0f 100644 --- a/submodules/TelegramUI/Sources/ChatSendMessageActionSheetControllerNode.swift +++ b/submodules/TelegramUI/Sources/ChatSendMessageActionSheetControllerNode.swift @@ -370,7 +370,6 @@ final class ChatSendMessageActionSheetControllerNode: ViewControllerTracingNode, let outgoing: PresentationThemeBubbleColorComponents = self.presentationData.chatWallpaper.isEmpty ? self.presentationData.theme.chat.message.outgoing.bubble.withoutWallpaper : self.presentationData.theme.chat.message.outgoing.bubble.withWallpaper let maxCornerRadius = self.presentationData.chatBubbleCorners.mainRadius - let minCornerRadius = self.presentationData.chatBubbleCorners.auxiliaryRadius self.messageBackgroundNode.image = messageBubbleImage(maxCornerRadius: maxCornerRadius, minCornerRadius: maxCornerRadius, incoming: false, fillColor: outgoing.gradientFill, strokeColor: outgoing.fill == outgoing.gradientFill ? outgoing.stroke : .clear, neighbors: .none, theme: self.presentationData.theme.chat, wallpaper: self.presentationData.chatWallpaper, knockout: false) for node in self.contentNodes { diff --git a/submodules/TelegramUI/Sources/CreateGroupController.swift b/submodules/TelegramUI/Sources/CreateGroupController.swift index 56219133fd..b3f79558bd 100644 --- a/submodules/TelegramUI/Sources/CreateGroupController.swift +++ b/submodules/TelegramUI/Sources/CreateGroupController.swift @@ -232,32 +232,32 @@ private enum CreateGroupEntry: ItemListNodeEntry { func item(presentationData: ItemListPresentationData, arguments: Any) -> ListViewItem { let arguments = arguments as! CreateGroupArguments switch self { - case let .groupInfo(theme, strings, dateTimeFormat, peer, state, avatar): + case let .groupInfo(_, _, dateTimeFormat, peer, state, avatar): return ItemListAvatarAndNameInfoItem(accountContext: arguments.context, presentationData: presentationData, dateTimeFormat: dateTimeFormat, mode: .editSettings, peer: peer, presence: nil, cachedData: nil, state: state, sectionId: ItemListSectionId(self.section), style: .blocks(withTopInset: false, withExtendedBottomInset: false), editingNameUpdated: { editingName in arguments.updateEditingName(editingName) }, avatarTapped: { arguments.changeProfilePhoto() }, updatingImage: avatar, tag: CreateGroupEntryTag.info) - case let .setProfilePhoto(theme, text): + case let .setProfilePhoto(_, text): return ItemListActionItem(presentationData: presentationData, title: text, kind: .generic, alignment: .natural, sectionId: ItemListSectionId(self.section), style: .blocks, action: { arguments.changeProfilePhoto() }) - case let .member(_, theme, strings, dateTimeFormat, nameDisplayOrder, peer, presence): + case let .member(_, _, _, dateTimeFormat, nameDisplayOrder, peer, presence): return ItemListPeerItem(presentationData: presentationData, dateTimeFormat: dateTimeFormat, nameDisplayOrder: nameDisplayOrder, context: arguments.context, peer: peer, presence: presence, text: .presence, label: .none, editing: ItemListPeerItemEditing(editable: false, editing: false, revealed: false), switchValue: nil, enabled: true, selectable: true, sectionId: self.section, action: nil, setPeerIdWithRevealedOptions: { _, _ in }, removePeer: { _ in }) - case let .locationHeader(theme, title): + case let .locationHeader(_, title): return ItemListSectionHeaderItem(presentationData: presentationData, text: title, sectionId: self.section) case let .location(theme, location): let imageSignal = chatMapSnapshotImage(account: arguments.context.account, resource: MapSnapshotMediaResource(latitude: location.latitude, longitude: location.longitude, width: 90, height: 90)) return ItemListAddressItem(theme: theme, label: "", text: location.address.replacingOccurrences(of: ", ", with: "\n"), imageSignal: imageSignal, selected: nil, sectionId: self.section, style: .blocks, action: nil) - case let .changeLocation(theme, text): + case let .changeLocation(_, text): return ItemListActionItem(presentationData: presentationData, title: text, kind: .generic, alignment: .natural, sectionId: ItemListSectionId(self.section), style: .blocks, action: { arguments.changeLocation() }) - case let .locationInfo(theme, text): + case let .locationInfo(_, text): return ItemListTextItem(presentationData: presentationData, text: .plain(text), sectionId: self.section) - case let .venueHeader(theme, title): + case let .venueHeader(_, title): return ItemListSectionHeaderItem(presentationData: presentationData, text: title, sectionId: self.section) - case let .venue(_, theme, venue): + case let .venue(_, _, venue): return ItemListVenueItem(presentationData: presentationData, account: arguments.context.account, venue: venue, sectionId: self.section, style: .blocks, action: { arguments.updateWithVenue(venue) }) @@ -375,7 +375,6 @@ public func createGroupControllerImpl(context: AccountContext, peerIds: [PeerId] var presentControllerImpl: ((ViewController, Any?) -> Void)? var pushImpl: ((ViewController) -> Void)? var endEditingImpl: (() -> Void)? - var clearHighlightImpl: (() -> Void)? var ensureItemVisibleImpl: ((CreateGroupEntryTag, Bool) -> Void)? let actionsDisposable = DisposableSet() @@ -777,7 +776,7 @@ public func createGroupControllerImpl(context: AccountContext, peerIds: [PeerId] updateState { current in var current = current if current.editingName.isEmpty || current.nameSetFromVenue { - current.editingName = .title(title: venueData.title ?? "", type: .group) + current.editingName = .title(title: venueData.title, type: .group) current.nameSetFromVenue = true } current.location = PeerGeoLocation(latitude: venue.latitude, longitude: venue.longitude, address: presentationData.strings.Map_Locating + "\n\n") @@ -846,9 +845,6 @@ public func createGroupControllerImpl(context: AccountContext, peerIds: [PeerId] [weak controller] in controller?.view.endEditing(true) } - clearHighlightImpl = { [weak controller] in - controller?.clearItemNodesHighlight(animated: true) - } ensureItemVisibleImpl = { [weak controller] targetTag, animated in controller?.afterLayout({ guard let controller = controller else { @@ -856,7 +852,6 @@ public func createGroupControllerImpl(context: AccountContext, peerIds: [PeerId] } var resultItemNode: ListViewItemNode? - let state = stateValue.with({ $0 }) let _ = controller.frameForItemNode({ itemNode in if let itemNode = itemNode as? ItemListItemNode { if let tag = itemNode.tag, tag.isEqual(to: targetTag) { diff --git a/submodules/TelegramUI/Sources/DeviceContactDataManager.swift b/submodules/TelegramUI/Sources/DeviceContactDataManager.swift index 508978d238..c4bcab957c 100644 --- a/submodules/TelegramUI/Sources/DeviceContactDataManager.swift +++ b/submodules/TelegramUI/Sources/DeviceContactDataManager.swift @@ -3,7 +3,6 @@ import SwiftSignalKit import Postbox import TelegramCore import Contacts -import AddressBook import TelegramUIPreferences import DeviceAccess import AccountContext @@ -308,157 +307,6 @@ private final class DeviceContactDataModernContext: DeviceContactDataContext { } } -private func withAddressBook(_ f: (ABAddressBook) -> Void) { - let addressBookRef = ABAddressBookCreateWithOptions(nil, nil) - - if let addressBook = addressBookRef?.takeRetainedValue() { - f(addressBook) - } -} - -private final class DeviceContactDataLegacyContext: DeviceContactDataContext { - var currentContacts: [DeviceContactStableId: DeviceContactBasicData] = [:] - - init(queue: Queue, updated: @escaping ([DeviceContactStableId: DeviceContactBasicData]) -> Void) { - self.currentContacts = self.retrieveContacts() - updated(self.currentContacts) - /*let handle = NotificationCenter.default.addObserver(forName: NSNotification.Name.CNContactStoreDidChange, object: nil, queue: nil, using: { [weak self] _ in - queue.async { - guard let strongSelf = self else { - return - } - let contacts = strongSelf.retrieveContacts() - if strongSelf.currentContacts != contacts { - strongSelf.currentContacts = contacts - updated(strongSelf.currentContacts) - } - } - })*/ - //self.updateHandle = handle - } - - deinit { - /*if let updateHandle = updateHandle { - NotificationCenter.default.removeObserver(updateHandle) - }*/ - } - - private func retrieveContacts() -> [DeviceContactStableId: DeviceContactBasicData] { - var result: [DeviceContactStableId: DeviceContactBasicData] = [:] - withAddressBook { addressBook in - guard let peopleRef = ABAddressBookCopyArrayOfAllPeople(addressBook)?.takeRetainedValue() else { - return - } - - for recordRef in peopleRef as NSArray { - let record = recordRef as ABRecord - let (stableId, basicData) = DeviceContactDataLegacyContext.parseContact(record) - result[stableId] = basicData - } - } - return result - } - - private func getContactById(stableId: String) -> ABRecord? { - let recordId: ABRecordID - if stableId.hasPrefix("ab-"), let idValue = Int(String(stableId[stableId.index(stableId.startIndex, offsetBy: 3)])) { - recordId = Int32(clamping: idValue) - } else { - return nil - } - - var result: ABRecord? - withAddressBook { addressBook in - result = ABAddressBookGetPersonWithRecordID(addressBook, recordId)?.takeUnretainedValue() - } - return result - } - - private static func parseContact(_ contact: ABRecord) -> (DeviceContactStableId, DeviceContactBasicData) { - let stableId = "ab-\(ABRecordGetRecordID(contact))" - var firstName = "" - var lastName = "" - if let value = ABRecordCopyValue(contact, kABPersonFirstNameProperty)?.takeRetainedValue() { - firstName = value as! CFString as String - } - if let value = ABRecordCopyValue(contact, kABPersonLastNameProperty)?.takeRetainedValue() { - lastName = value as! CFString as String - } - - var phoneNumbers: [DeviceContactPhoneNumberData] = [] - if let value = ABRecordCopyValue(contact, kABPersonPhoneProperty)?.takeRetainedValue() { - let phones = value as ABMultiValue - let count = ABMultiValueGetCount(phones) - for i in 0 ..< count { - if let phoneRef = ABMultiValueCopyValueAtIndex(phones, i)?.takeRetainedValue() { - let phone = phoneRef as! CFString as String - var label = "" - if let labelRef = ABMultiValueCopyLabelAtIndex(phones, i)?.takeRetainedValue() { - label = labelRef as String - } - phoneNumbers.append(DeviceContactPhoneNumberData(label: label, value: phone)) - } - } - } - - return (stableId, DeviceContactBasicData(firstName: firstName, lastName: lastName, phoneNumbers: phoneNumbers)) - } - - func personNameDisplayOrder() -> PresentationPersonNameOrder { - if ABPersonGetCompositeNameFormat() == kABPersonCompositeNameFormatFirstNameFirst { - return .firstLast - } else { - return .lastFirst - } - } - - func getExtendedContactData(stableId: DeviceContactStableId) -> DeviceContactExtendedData? { - if let contact = self.getContactById(stableId: stableId) { - let basicData = DeviceContactDataLegacyContext.parseContact(contact).1 - return DeviceContactExtendedData(basicData: basicData, middleName: "", prefix: "", suffix: "", organization: "", jobTitle: "", department: "", emailAddresses: [], urls: [], addresses: [], birthdayDate: nil, socialProfiles: [], instantMessagingProfiles: [], note: "") - } else { - return nil - } - } - - func appendContactData(_ contactData: DeviceContactExtendedData, to stableId: DeviceContactStableId) -> DeviceContactExtendedData? { - return nil - } - - func appendPhoneNumber(_ phoneNumber: DeviceContactPhoneNumberData, to stableId: DeviceContactStableId) -> DeviceContactExtendedData? { - return nil - } - - func createContactWithData(_ contactData: DeviceContactExtendedData) -> (DeviceContactStableId, DeviceContactExtendedData)? { - var result: (DeviceContactStableId, DeviceContactExtendedData)? - withAddressBook { addressBook in - let contact = ABPersonCreate()?.takeRetainedValue() - ABRecordSetValue(contact, kABPersonFirstNameProperty, contactData.basicData.firstName as CFString, nil) - ABRecordSetValue(contact, kABPersonLastNameProperty, contactData.basicData.lastName as CFString, nil) - - let phones = ABMultiValueCreateMutable(ABPropertyType(kABMultiStringPropertyType))?.takeRetainedValue() - for phone in contactData.basicData.phoneNumbers { - ABMultiValueAddValueAndLabel(phones, phone.value as CFString, phone.label as CFString, nil) - } - ABRecordSetValue(contact, kABPersonPhoneProperty, phones, nil) - - if ABAddressBookAddRecord(addressBook, contact, nil) { - ABAddressBookSave(addressBook, nil) - - let stableId = "ab-\(ABRecordGetRecordID(contact))" - if let contact = self.getContactById(stableId: stableId) { - let parsedContact = DeviceContactDataLegacyContext.parseContact(contact).1 - result = (stableId, DeviceContactExtendedData(basicData: parsedContact, middleName: "", prefix: "", suffix: "", organization: "", jobTitle: "", department: "", emailAddresses: [], urls: [], addresses: [], birthdayDate: nil, socialProfiles: [], instantMessagingProfiles: [], note: "")) - } - } - } - return result - } - - func deleteContactWithAppSpecificReference(peerId: PeerId) { - } -} - private final class ExtendedContactDataContext { var value: DeviceContactExtendedData? let subscribers = Bag<(DeviceContactExtendedData) -> Void>() @@ -507,30 +355,19 @@ private final class DeviceContactDataManagerPrivateImpl { } strongSelf.accessInitialized = true if authorizationStatus == .allowed { - if #available(iOSApplicationExtension 9.0, iOS 9.0, *) { - let dataContext = DeviceContactDataModernContext(queue: strongSelf.queue, updated: { stableIdToBasicContactData in - guard let strongSelf = self else { - return - } - strongSelf.updateAll(stableIdToBasicContactData) - }, appSpecificReferencesUpdated: { appSpecificReferences in - guard let strongSelf = self else { - return - } - strongSelf.updateAppSpecificReferences(appSpecificReferences: appSpecificReferences) - }) - strongSelf.dataContext = dataContext - strongSelf.personNameDisplayOrder.set(dataContext.personNameDisplayOrder()) - } else { - let dataContext = DeviceContactDataLegacyContext(queue: strongSelf.queue, updated: { stableIdToBasicContactData in - guard let strongSelf = self else { - return - } - strongSelf.updateAll(stableIdToBasicContactData) - }) - strongSelf.dataContext = dataContext - strongSelf.personNameDisplayOrder.set(dataContext.personNameDisplayOrder()) - } + let dataContext = DeviceContactDataModernContext(queue: strongSelf.queue, updated: { stableIdToBasicContactData in + guard let strongSelf = self else { + return + } + strongSelf.updateAll(stableIdToBasicContactData) + }, appSpecificReferencesUpdated: { appSpecificReferences in + guard let strongSelf = self else { + return + } + strongSelf.updateAppSpecificReferences(appSpecificReferences: appSpecificReferences) + }) + strongSelf.dataContext = dataContext + strongSelf.personNameDisplayOrder.set(dataContext.personNameDisplayOrder()) } else { strongSelf.updateAll([:]) } diff --git a/submodules/TelegramUI/Sources/DocumentPreviewController.swift b/submodules/TelegramUI/Sources/DocumentPreviewController.swift index e18a9d7fa9..186561cdd0 100644 --- a/submodules/TelegramUI/Sources/DocumentPreviewController.swift +++ b/submodules/TelegramUI/Sources/DocumentPreviewController.swift @@ -125,26 +125,6 @@ final class CompactDocumentPreviewController: QLPreviewController, QLPreviewCont self.delegate = self self.dataSource = self - /*self.navigationBar.barTintColor = theme.rootController.navigationBar.backgroundColor - self.navigationBar.tintColor = theme.rootController.navigationBar.accentTextColor - self.navigationBar.shadowImage = generateImage(CGSize(width: 1.0, height: 1.0), rotatedContext: { size, context in - context.clear(CGRect(origin: CGPoint(), size: size)) - context.setFillColor(theme.rootController.navigationBar.separatorColor.cgColor) - context.fill(CGRect(origin: CGPoint(), size: CGSize(width: 1.0, height: UIScreenPixel))) - }) - self.navigationBar.isTranslucent = false - self.navigationBar.titleTextAttributes = [NSAttributedString.Key.font: Font.semibold(17.0), NSAttributedString.Key.foregroundColor: theme.rootController.navigationBar.primaryTextColor] - controller.navigationItem.setLeftBarButton(UIBarButtonItem(title: strings.Common_Cancel, style: .plain, target: self, action: #selector(self.cancelPressed)), animated: false) - self.setViewControllers([controller], animated: false)*/ - - var pathExtension: String? - if let fileName = self.file.fileName { - let pathExtensionCandidate = (fileName as NSString).pathExtension - if !pathExtensionCandidate.isEmpty { - pathExtension = pathExtensionCandidate - } - } - if let path = self.postbox.mediaBox.completedResourcePath(self.file.resource) { var updatedPath = path if let fileName = self.file.fileName { diff --git a/submodules/TelegramUI/Sources/DrawingStickersScreen.swift b/submodules/TelegramUI/Sources/DrawingStickersScreen.swift index 051f603f4f..340b957869 100644 --- a/submodules/TelegramUI/Sources/DrawingStickersScreen.swift +++ b/submodules/TelegramUI/Sources/DrawingStickersScreen.swift @@ -262,12 +262,7 @@ private final class DrawingStickersScreenNode: ViewControllerTracingNode { } }, navigateBackToStickers: { }, setGifMode: { _ in - }, openSettings: { [weak self] in - if let strongSelf = self { -// let controller = installedStickerPacksController(context: context, mode: .modal) -// controller.navigationPresentation = .modal -// strongSelf.controllerInteraction.navigationController()?.pushViewController(controller) - } + }, openSettings: { }, toggleSearch: { [weak self] value, searchMode, query in if let strongSelf = self { if let searchMode = searchMode, value { @@ -379,13 +374,8 @@ private final class DrawingStickersScreenNode: ViewControllerTracingNode { } }, navigateBackToStickers: { }, setGifMode: { _ in - }, openSettings: { [weak self] in - if let strongSelf = self { - // let controller = installedStickerPacksController(context: context, mode: .modal) - // controller.navigationPresentation = .modal - // strongSelf.controllerInteraction.navigationController()?.pushViewController(controller) - } - }, toggleSearch: { [weak self] value, searchMode, query in + }, openSettings: { + }, toggleSearch: { [weak self] value, searchMode, query in if let strongSelf = self { if let searchMode = searchMode, value { var searchContainerNode: PaneSearchContainerNode? @@ -967,14 +957,14 @@ private final class DrawingStickersScreenNode: ViewControllerTracingNode { } func updateLayout(width: CGFloat, topInset: CGFloat, leftInset: CGFloat, rightInset: CGFloat, bottomInset: CGFloat, standardInputHeight: CGFloat, inputHeight: CGFloat, maximumHeight: CGFloat, inputPanelHeight: CGFloat, transition: ContainedViewLayoutTransition, deviceMetrics: DeviceMetrics, isVisible: Bool) -> (CGFloat, CGFloat) { - var searchMode: ChatMediaInputSearchMode? + let searchMode: ChatMediaInputSearchMode? = nil - var displaySearch = false + let displaySearch = false let separatorHeight = max(UIScreenPixel, 1.0 - UIScreenPixel) let topPanelHeight: CGFloat = 56.0 let panelHeight: CGFloat - var isExpanded: Bool = true + let isExpanded: Bool = true // switch expanded { // case .content: panelHeight = maximumHeight @@ -1006,8 +996,8 @@ private final class DrawingStickersScreenNode: ViewControllerTracingNode { searchContainerNode.frame = containerFrame searchContainerNode.updateLayout(size: containerFrame.size, leftInset: leftInset, rightInset: rightInset, bottomInset: bottomInset, inputHeight: inputHeight, deviceMetrics: deviceMetrics, transition: .immediate) var placeholderNode: PaneSearchBarPlaceholderNode? - var anchorTop = CGPoint(x: 0.0, y: 0.0) - var anchorTopView: UIView = self.view + let anchorTop = CGPoint(x: 0.0, y: 0.0) + let anchorTopView: UIView = self.view if let searchMode = searchMode { switch searchMode { case .sticker: @@ -1022,7 +1012,7 @@ private final class DrawingStickersScreenNode: ViewControllerTracingNode { } if let placeholderNode = placeholderNode { - searchContainerNode.animateIn(from: placeholderNode, anchorTop: anchorTop, anhorTopView: anchorTopView, transition: transition, completion: { [weak self] in + searchContainerNode.animateIn(from: placeholderNode, anchorTop: anchorTop, anhorTopView: anchorTopView, transition: transition, completion: { }) } } diff --git a/submodules/TelegramUI/Sources/FeaturedStickersScreen.swift b/submodules/TelegramUI/Sources/FeaturedStickersScreen.swift index c69f746e39..4025f3ecc8 100644 --- a/submodules/TelegramUI/Sources/FeaturedStickersScreen.swift +++ b/submodules/TelegramUI/Sources/FeaturedStickersScreen.swift @@ -295,7 +295,6 @@ private final class FeaturedStickersScreenNode: ViewControllerTracingNode { guard let strongSelf = self, let info = info as? StickerPackCollectionInfo else { return } - let account = strongSelf.context.account if install { let _ = strongSelf.context.engine.stickers.addStickerPackInteractively(info: info, items: []).start() } else { @@ -593,14 +592,7 @@ private final class FeaturedStickersScreenNode: ViewControllerTracingNode { return controller } return nil - }, updateContent: { [weak self] content in - if let strongSelf = self { - var item: StickerPreviewPeekItem? - if let content = content as? StickerPreviewPeekContent { - item = content.item - } - //strongSelf.updatePreviewingItem(item: item, animated: true) - } + }, updateContent: { _ in })) } @@ -1095,7 +1087,6 @@ private final class FeaturedPaneSearchContentNode: ASDisplayNode { guard let strongSelf = self else { return } - let account = strongSelf.context.account if install { let _ = strongSelf.context.engine.stickers.addStickerPackInteractively(info: info, items: []).start() } else { diff --git a/submodules/TelegramUI/Sources/FetchVideoMediaResource.swift b/submodules/TelegramUI/Sources/FetchVideoMediaResource.swift index a9b3b6855a..99d89c1a8e 100644 --- a/submodules/TelegramUI/Sources/FetchVideoMediaResource.swift +++ b/submodules/TelegramUI/Sources/FetchVideoMediaResource.swift @@ -214,7 +214,6 @@ public func fetchVideoLibraryMediaResource(account: Account, resource: VideoLibr } |> castError(MediaResourceDataFetchError.self) |> mapToSignal { appConfiguration -> Signal in - let config = VideoConversionConfiguration.with(appConfiguration: appConfiguration) let signal = Signal { subscriber in subscriber.putNext(.reset) let fetchResult = PHAsset.fetchAssets(withLocalIdentifiers: [resource.localIdentifier], options: nil) @@ -328,7 +327,6 @@ func fetchLocalFileVideoMediaResource(account: Account, resource: LocalFileVideo } |> castError(MediaResourceDataFetchError.self) |> mapToSignal { appConfiguration -> Signal in - let config = VideoConversionConfiguration.with(appConfiguration: appConfiguration) let signal = Signal { subscriber in subscriber.putNext(.reset) @@ -522,7 +520,6 @@ func fetchLocalFileGifMediaResource(resource: LocalFileGifMediaResource) -> Sign let disposable = MetaDisposable() if let data = try? Data(contentsOf: URL(fileURLWithPath: resource.path), options: Data.ReadingOptions.mappedIfSafe) { - let updatedSize = Atomic(value: 0) let signal = TGGifConverter.convertGif(toMp4: data)! let signalDisposable = signal.start(next: { next in if let result = next as? NSDictionary, let path = result["path"] as? String { diff --git a/submodules/TelegramUI/Sources/HashtagChatInputPanelItem.swift b/submodules/TelegramUI/Sources/HashtagChatInputPanelItem.swift index d2b0ed9670..e3279bc37a 100644 --- a/submodules/TelegramUI/Sources/HashtagChatInputPanelItem.swift +++ b/submodules/TelegramUI/Sources/HashtagChatInputPanelItem.swift @@ -149,7 +149,6 @@ final class HashtagChatInputPanelItemNode: ListViewItemNode { let baseWidth = params.width - params.leftInset - params.rightInset let leftInset: CGFloat = 15.0 + params.leftInset - let rightInset: CGFloat = 10.0 + params.rightInset let (textLayout, textApply) = makeTextLayout(TextNodeLayoutArguments(attributedString: NSAttributedString(string: "#\(item.text)", font: textFont, textColor: item.presentationData.theme.list.itemPrimaryTextColor), backgroundColor: nil, maximumNumberOfLines: 1, truncationType: .end, constrainedSize: CGSize(width: baseWidth, height: 100.0), alignment: .natural, cutout: nil, insets: UIEdgeInsets())) @@ -186,7 +185,7 @@ final class HashtagChatInputPanelItemNode: ListViewItemNode { } func updateRevealOffset(offset: CGFloat, transition: ContainedViewLayoutTransition) { - if let (size, leftInset, rightInset) = self.validLayout { + if let (_, leftInset, _) = self.validLayout { transition.updateFrameAdditive(node: self.textNode, frame: CGRect(origin: CGPoint(x: min(offset, 0.0) + 15.0 + leftInset, y: self.textNode.frame.minY), size: self.textNode.frame.size)) } } @@ -194,7 +193,7 @@ final class HashtagChatInputPanelItemNode: ListViewItemNode { override func setHighlighted(_ highlighted: Bool, at point: CGPoint, animated: Bool) { super.setHighlighted(highlighted, at: point, animated: animated) - if let revealNode = self.revealNode, self.revealOffset != 0 { + if let _ = self.revealNode, self.revealOffset != 0 { return } @@ -225,7 +224,6 @@ final class HashtagChatInputPanelItemNode: ListViewItemNode { if self.revealOptions == options { return } - let previousOptions = self.revealOptions let wasEmpty = self.revealOptions.isEmpty self.revealOptions = options let isEmpty = options.isEmpty @@ -374,7 +372,7 @@ final class HashtagChatInputPanelItemNode: ListViewItemNode { private func updateRevealOffsetInternal(offset: CGFloat, transition: ContainedViewLayoutTransition) { self.revealOffset = offset - guard let (size, leftInset, rightInset) = self.validLayout else { + guard let (size, _, rightInset) = self.validLayout else { return } diff --git a/submodules/TelegramUI/Sources/HorizontalListContextResultsChatInputContextPanelNode.swift b/submodules/TelegramUI/Sources/HorizontalListContextResultsChatInputContextPanelNode.swift index be66ae6644..14f0660861 100644 --- a/submodules/TelegramUI/Sources/HorizontalListContextResultsChatInputContextPanelNode.swift +++ b/submodules/TelegramUI/Sources/HorizontalListContextResultsChatInputContextPanelNode.swift @@ -191,7 +191,7 @@ final class HorizontalListContextResultsChatInputContextPanelNode: ChatInputCont return generateTintedImage(image: UIImage(bundleImageName: "Chat/Context Menu/Resend"), color: theme.actionSheet.primaryTextColor) }, action: { _, f in f(.default) - item.resultSelected(item.result, itemNode, itemNode.bounds) + let _ = item.resultSelected(item.result, itemNode, itemNode.bounds) }))) selectedItemNodeAndContent = (itemNode, ChatContextResultPeekContent(account: item.account, contextResult: item.result, menu: menuItems)) } diff --git a/submodules/TelegramUI/Sources/HorizontalStickerGridItem.swift b/submodules/TelegramUI/Sources/HorizontalStickerGridItem.swift index fce7434361..1da6c74a9c 100755 --- a/submodules/TelegramUI/Sources/HorizontalStickerGridItem.swift +++ b/submodules/TelegramUI/Sources/HorizontalStickerGridItem.swift @@ -225,10 +225,8 @@ final class HorizontalStickerGridItemNode: GridItemNode { } func updatePreviewing(animated: Bool) { - var isPreviewing = false - if let (_, item, _) = self.currentState { - //isPreviewing = item.isPreviewed(self.stickerItem) - } + let isPreviewing = false + if self.currentIsPreviewing != isPreviewing { self.currentIsPreviewing = isPreviewing diff --git a/submodules/TelegramUI/Sources/LegacyCamera.swift b/submodules/TelegramUI/Sources/LegacyCamera.swift index d687b115fd..b74f6e4d8d 100644 --- a/submodules/TelegramUI/Sources/LegacyCamera.swift +++ b/submodules/TelegramUI/Sources/LegacyCamera.swift @@ -217,7 +217,7 @@ func presentedLegacyShortcutCamera(context: AccountContext, saveCapturedMedia: B legacyController?.dismiss() } - controller.finishedWithResults = { [weak controller, weak parentController, weak legacyController] overlayController, selectionContext, editingContext, currentItem, _, _ in + controller.finishedWithResults = { [weak parentController] overlayController, selectionContext, editingContext, currentItem, _, _ in if let selectionContext = selectionContext, let editingContext = editingContext { let nativeGenerator = legacyAssetPickerItemGenerator() let signals = TGCameraController.resultSignals(for: selectionContext, editingContext: editingContext, currentItem: currentItem, storeAssets: saveCapturedMedia, saveEditedPhotos: saveEditedPhotos, descriptionGenerator: { _1, _2, _3, _4 in diff --git a/submodules/TelegramUI/Sources/LegacyInstantVideoController.swift b/submodules/TelegramUI/Sources/LegacyInstantVideoController.swift index 85f3fda22d..7018299088 100644 --- a/submodules/TelegramUI/Sources/LegacyInstantVideoController.swift +++ b/submodules/TelegramUI/Sources/LegacyInstantVideoController.swift @@ -197,7 +197,7 @@ func legacyInstantVideoController(theme: PresentationTheme, panelFrame: CGRect, finalDuration = adjustments.trimEndValue - adjustments.trimStartValue } - let adjustmentsData = MemoryBuffer(data: NSKeyedArchiver.archivedData(withRootObject: adjustments.dictionary())) + let adjustmentsData = MemoryBuffer(data: NSKeyedArchiver.archivedData(withRootObject: adjustments.dictionary()!)) let digest = MemoryBuffer(data: adjustmentsData.md5Digest()) resourceAdjustments = VideoMediaResourceAdjustments(data: adjustmentsData, digest: digest) } diff --git a/submodules/TelegramUI/Sources/ManagedAudioRecorder.swift b/submodules/TelegramUI/Sources/ManagedAudioRecorder.swift index 73a70d40ec..8e806c494d 100644 --- a/submodules/TelegramUI/Sources/ManagedAudioRecorder.swift +++ b/submodules/TelegramUI/Sources/ManagedAudioRecorder.swift @@ -595,8 +595,8 @@ final class ManagedAudioRecorderContext { func takeData() -> RecordedAudioData? { if self.oggWriter.writeFrame(nil, frameByteCount: 0) { - var scaledSamplesMemory = malloc(100 * 2)! - var scaledSamples: UnsafeMutablePointer = scaledSamplesMemory.assumingMemoryBound(to: Int16.self) + let scaledSamplesMemory = malloc(100 * 2)! + let scaledSamples: UnsafeMutablePointer = scaledSamplesMemory.assumingMemoryBound(to: Int16.self) defer { free(scaledSamplesMemory) } diff --git a/submodules/TelegramUI/Sources/MentionChatInputPanelItem.swift b/submodules/TelegramUI/Sources/MentionChatInputPanelItem.swift index 3c3373f2fa..d7c4606ef0 100644 --- a/submodules/TelegramUI/Sources/MentionChatInputPanelItem.swift +++ b/submodules/TelegramUI/Sources/MentionChatInputPanelItem.swift @@ -228,7 +228,7 @@ final class MentionChatInputPanelItemNode: ListViewItemNode { } func updateRevealOffset(offset: CGFloat, transition: ContainedViewLayoutTransition) { - if let (size, leftInset, _) = self.validLayout { + if let (_, leftInset, _) = self.validLayout { transition.updateFrameAdditive(node: self.avatarNode, frame: CGRect(origin: CGPoint(x: min(offset, 0.0) + 12.0 + leftInset, y: self.avatarNode.frame.minY), size: self.avatarNode.frame.size)) transition.updateFrameAdditive(node: self.textNode, frame: CGRect(origin: CGPoint(x: min(offset, 0.0) + 55.0 + leftInset, y: self.textNode.frame.minY), size: self.textNode.frame.size)) } diff --git a/submodules/TelegramUI/Sources/PeerInfo/ListItems/PeerInfoScreenLabeledValueItem.swift b/submodules/TelegramUI/Sources/PeerInfo/ListItems/PeerInfoScreenLabeledValueItem.swift index 777ff43130..f3f7d8bcc2 100644 --- a/submodules/TelegramUI/Sources/PeerInfo/ListItems/PeerInfoScreenLabeledValueItem.swift +++ b/submodules/TelegramUI/Sources/PeerInfo/ListItems/PeerInfoScreenLabeledValueItem.swift @@ -224,11 +224,11 @@ private final class PeerInfoScreenLabeledValueItemNode: PeerInfoScreenItemNode { } else { let fontSize: CGFloat = 17.0 - var baseFont = Font.regular(fontSize) - var linkFont = baseFont - var boldFont = Font.medium(fontSize) - var italicFont = Font.italic(fontSize) - var boldItalicFont = Font.semiboldItalic(fontSize) + let baseFont = Font.regular(fontSize) + let linkFont = baseFont + let boldFont = Font.medium(fontSize) + let italicFont = Font.italic(fontSize) + let boldItalicFont = Font.semiboldItalic(fontSize) let titleFixedFont = Font.monospace(fontSize) let entities = generateTextEntities(item.text, enabledTypes: enabledEntities) diff --git a/submodules/TelegramUI/Sources/PeerInfo/Panes/PeerInfoGroupsInCommonPaneNode.swift b/submodules/TelegramUI/Sources/PeerInfo/Panes/PeerInfoGroupsInCommonPaneNode.swift index 1fb029429a..8384900f4a 100644 --- a/submodules/TelegramUI/Sources/PeerInfo/Panes/PeerInfoGroupsInCommonPaneNode.swift +++ b/submodules/TelegramUI/Sources/PeerInfo/Panes/PeerInfoGroupsInCommonPaneNode.swift @@ -179,7 +179,7 @@ final class PeerInfoGroupsInCommonPaneNode: ASDisplayNode, PeerInfoPaneNode { } private func dequeueTransaction() { - guard let (layout, _, _) = self.currentParams, let transaction = self.enqueuedTransactions.first else { + guard let _ = self.currentParams, let transaction = self.enqueuedTransactions.first else { return } diff --git a/submodules/TelegramUI/Sources/PeerInfo/PeerInfoData.swift b/submodules/TelegramUI/Sources/PeerInfo/PeerInfoData.swift index 676828b575..bfe3e5513e 100644 --- a/submodules/TelegramUI/Sources/PeerInfo/PeerInfoData.swift +++ b/submodules/TelegramUI/Sources/PeerInfo/PeerInfoData.swift @@ -408,7 +408,6 @@ func peerInfoScreenSettingsData(context: AccountContext, peerId: PeerId, account let proxySettings: ProxySettings = sharedPreferences.entries[SharedDataKeys.proxySettings] as? ProxySettings ?? ProxySettings.defaultSettings let inAppNotificationSettings: InAppNotificationSettings = sharedPreferences.entries[ApplicationSpecificSharedDataKeys.inAppNotificationSettings] as? InAppNotificationSettings ?? InAppNotificationSettings.defaultSettings - let experimentalUISettings: ExperimentalUISettings = sharedPreferences.entries[ApplicationSpecificSharedDataKeys.experimentalUISettings] as? ExperimentalUISettings ?? ExperimentalUISettings.defaultSettings let unreadTrendingStickerPacks = featuredStickerPacks.reduce(0, { count, item -> Int in return item.unread ? count + 1 : count @@ -644,7 +643,7 @@ func peerInfoScreenData(context: AccountContext, peerId: PeerId, strings: Presen if currentInvitationsContext == nil { var canManageInvitations = false - if let channel = peerViewMainPeer(peerView) as? TelegramChannel, let cachedData = peerView.cachedData as? CachedChannelData, channel.flags.contains(.isCreator) || (channel.adminRights?.rights.contains(.canInviteUsers) == true) { + if let channel = peerViewMainPeer(peerView) as? TelegramChannel, let _ = peerView.cachedData as? CachedChannelData, channel.flags.contains(.isCreator) || (channel.adminRights?.rights.contains(.canInviteUsers) == true) { canManageInvitations = true } if canManageInvitations { @@ -1063,11 +1062,7 @@ func peerInfoHeaderButtons(peer: Peer?, cachedData: CachedPeerData?, isOpenedFro result.append(.more) } } else if let group = peer as? TelegramGroup { - var canEditGroupInfo = false - var canEditMembers = false var canAddMembers = false - var isPublic = false - var isCreator = false var hasVoiceChat = false var canStartVoiceChat = false @@ -1081,21 +1076,13 @@ func peerInfoHeaderButtons(peer: Peer?, cachedData: CachedPeerData?, isOpenedFro canStartVoiceChat = true } } - - if case .creator = group.role { - isCreator = true - } + switch group.role { case .admin, .creator: - canEditGroupInfo = true - canEditMembers = true canAddMembers = true case .member: break } - if !group.hasBannedPermission(.banChangeInfo) { - canEditGroupInfo = true - } if !group.hasBannedPermission(.banAddMembers) { canAddMembers = true } diff --git a/submodules/TelegramUI/Sources/PeerInfo/PeerInfoPaneContainerNode.swift b/submodules/TelegramUI/Sources/PeerInfo/PeerInfoPaneContainerNode.swift index 8d8a84b24f..3ef709dae0 100644 --- a/submodules/TelegramUI/Sources/PeerInfo/PeerInfoPaneContainerNode.swift +++ b/submodules/TelegramUI/Sources/PeerInfo/PeerInfoPaneContainerNode.swift @@ -38,7 +38,7 @@ final class PeerInfoPaneWrapper { } func update(size: CGSize, sideInset: CGFloat, bottomInset: CGFloat, visibleHeight: CGFloat, isScrollingLockedAtTop: Bool, expandProgress: CGFloat, presentationData: PresentationData, synchronous: Bool, transition: ContainedViewLayoutTransition) { - if let (currentSize, currentSideInset, currentBottomInset, visibleHeight, currentIsScrollingLockedAtTop, currentExpandProgress, currentPresentationData) = self.appliedParams { + if let (currentSize, currentSideInset, currentBottomInset, _, currentIsScrollingLockedAtTop, currentExpandProgress, currentPresentationData) = self.appliedParams { if currentSize == size && currentSideInset == sideInset && currentBottomInset == bottomInset, currentIsScrollingLockedAtTop == isScrollingLockedAtTop && currentExpandProgress == expandProgress && currentPresentationData === presentationData { return } @@ -180,11 +180,9 @@ final class PeerInfoPaneTabsContainerNode: ASDisplayNode { self.currentParams = (paneList, selectedPane, presentationData) for specifier in paneList { let paneNode: PeerInfoPaneTabsContainerPaneNode - var wasAdded = false if let current = self.paneNodes[specifier.key] { paneNode = current } else { - wasAdded = true paneNode = PeerInfoPaneTabsContainerPaneNode(pressed: { [weak self] in self?.paneSelected(specifier.key) }) @@ -597,7 +595,6 @@ final class PeerInfoPaneContainerNode: ASDisplayNode, UIGestureRecognizerDelegat directionIsToRight = translation.x > size.width / 2.0 } } - var updated = false if let directionIsToRight = directionIsToRight { var updatedIndex = currentIndex if directionIsToRight { @@ -608,7 +605,6 @@ final class PeerInfoPaneContainerNode: ASDisplayNode, UIGestureRecognizerDelegat let switchToKey = availablePanes[updatedIndex] if switchToKey != self.currentPaneKey && self.currentPanes[switchToKey] != nil{ self.currentPaneKey = switchToKey - updated = true } } self.transitionFraction = 0.0 @@ -787,8 +783,7 @@ final class PeerInfoPaneContainerNode: ASDisplayNode, UIGestureRecognizerDelegat var paneSwitchAnimationOffset: CGFloat = 0.0 var updatedCurrentIndex = currentIndex - var animatePaneTransitionOffset: CGFloat? - if let pendingSwitchToPaneKey = self.pendingSwitchToPaneKey, let pane = self.currentPanes[pendingSwitchToPaneKey] { + if let pendingSwitchToPaneKey = self.pendingSwitchToPaneKey, let _ = self.currentPanes[pendingSwitchToPaneKey] { self.pendingSwitchToPaneKey = nil previousPaneKey = self.currentPaneKey self.currentPaneKey = pendingSwitchToPaneKey @@ -821,7 +816,7 @@ final class PeerInfoPaneContainerNode: ASDisplayNode, UIGestureRecognizerDelegat return } pane.isAnimatingOut = false - if let (size, sideInset, bottomInset, visibleHeight, expansionFraction, presentationData, data) = strongSelf.currentParams { + if let (_, _, _, _, _, _, data) = strongSelf.currentParams { if let availablePanes = data?.availablePanes, let currentPaneKey = strongSelf.currentPaneKey, let currentIndex = availablePanes.firstIndex(of: currentPaneKey), let paneIndex = availablePanes.firstIndex(of: key), abs(paneIndex - currentIndex) <= 1 { } else { if let pane = strongSelf.currentPanes.removeValue(forKey: key) { @@ -838,7 +833,7 @@ final class PeerInfoPaneContainerNode: ASDisplayNode, UIGestureRecognizerDelegat transition.animateFrame(node: pane.node, from: paneFrame, to: paneFrame.offsetBy(dx: -paneSwitchAnimationOffset, dy: 0.0), completion: isAnimatingOut ? nil : { _ in paneCompletion() }) - } else if let previousPaneKey = previousPaneKey, key == self.currentPaneKey { + } else if let _ = previousPaneKey, key == self.currentPaneKey { pane.node.frame = adjustedFrame let isAnimatingOut = pane.isAnimatingOut pane.isAnimatingOut = true diff --git a/submodules/TelegramUI/Sources/PeerInfo/PeerInfoScreen.swift b/submodules/TelegramUI/Sources/PeerInfo/PeerInfoScreen.swift index cd13d41ad4..49229347a9 100644 --- a/submodules/TelegramUI/Sources/PeerInfo/PeerInfoScreen.swift +++ b/submodules/TelegramUI/Sources/PeerInfo/PeerInfoScreen.swift @@ -61,7 +61,7 @@ import TelegramCallsUI import PeerInfoAvatarListNode import PasswordSetupUI -protocol PeerInfoScreenItem: class { +protocol PeerInfoScreenItem: AnyObject { var id: AnyHashable { get } func node() -> PeerInfoScreenItemNode } @@ -1188,7 +1188,6 @@ private func editingItems(data: PeerInfoScreenData?, context: AccountContext, pr let ItemDiscussionGroup = 3 let ItemSignMessages = 4 let ItemSignMessagesHelp = 5 - let ItemAutoremove = 6 if channel.flags.contains(.isCreator) { let linkText: String @@ -1261,7 +1260,6 @@ private func editingItems(data: PeerInfoScreenData?, context: AccountContext, pr let ItemLocationHeader = 110 let ItemLocation = 111 let ItemLocationSetup = 112 - let ItemAutoremove = 113 let ItemDeleteGroup = 114 let isCreator = channel.flags.contains(.isCreator) @@ -1399,7 +1397,6 @@ private func editingItems(data: PeerInfoScreenData?, context: AccountContext, pr let ItemPreHistory = 103 let ItemPermissions = 104 let ItemAdmins = 105 - let ItemAutoremove = 106 var canViewAdminsAndBanned = false @@ -3077,7 +3074,7 @@ private final class PeerInfoScreenNode: ViewControllerTracingNode, UIScrollViewD } var storedState: MediaPlaybackStoredState? if let timestamp = timestamp { - storedState = MediaPlaybackStoredState(timestamp: timestamp, playbackRate: AudioPlaybackRate(playbackRate) ?? .x1) + storedState = MediaPlaybackStoredState(timestamp: timestamp, playbackRate: AudioPlaybackRate(playbackRate)) } let _ = updateMediaPlaybackStoredStateInteractively(postbox: strongSelf.context.account.postbox, messageId: messageId, state: storedState).start() }, editMedia: { [weak self] messageId, snapshots, transitionCompletion in @@ -3128,7 +3125,7 @@ private final class PeerInfoScreenNode: ViewControllerTracingNode, UIScrollViewD } }) }), centralItemUpdated: { [weak self] messageId in - self?.paneContainerNode.requestExpandTabs?() + let _ = self?.paneContainerNode.requestExpandTabs?() self?.paneContainerNode.currentPane?.node.ensureMessageIsVisible(id: messageId) })) } @@ -3159,7 +3156,7 @@ private final class PeerInfoScreenNode: ViewControllerTracingNode, UIScrollViewD break } }, sendFile: nil, - sendSticker: { [weak self] f, sourceNode, sourceRect in + sendSticker: { f, sourceNode, sourceRect in return false }, requestMessageActionUrlAuth: nil, joinVoiceChat: { peerId, invite, call in @@ -3270,7 +3267,6 @@ private final class PeerInfoScreenNode: ViewControllerTracingNode, UIScrollViewD cancelImpl = { [weak self] in self?.resolvePeerByNameDisposable?.set(nil) } - let account = self.context.account disposable.set((resolveSignal |> take(1) |> mapToSignal { peer -> Signal in @@ -3297,7 +3293,6 @@ private final class PeerInfoScreenNode: ViewControllerTracingNode, UIScrollViewD if self.resolvePeerByNameDisposable == nil { self.resolvePeerByNameDisposable = MetaDisposable() } - let account = self.context.account var resolveSignal: Signal if let peerName = peerName { resolveSignal = self.context.engine.peers.resolvePeerByName(name: peerName) @@ -6592,16 +6587,6 @@ public final class PeerInfoScreenImpl: ViewController, PeerInfoScreen { drawPeerAvatarLetters(context: context, size: CGSize(width: size.width - inset * 2.0, height: size.height - inset * 2.0), font: avatarFont, letters: displayLetters, peerId: primary.1.id) })?.withRenderingMode(.alwaysOriginal) - let selectedImage = generateImage(size, rotatedContext: { size, context in - context.clear(CGRect(origin: CGPoint(), size: size)) - context.translateBy(x: inset, y: inset) - drawPeerAvatarLetters(context: context, size: CGSize(width: size.width - inset * 2.0, height: size.height - inset * 2.0), font: avatarFont, letters: displayLetters, peerId: primary.1.id) - context.translateBy(x: -inset, y: -inset) - context.setLineWidth(1.0) - context.setStrokeColor(primary.2.rootController.tabBar.selectedIconColor.cgColor) - context.strokeEllipse(in: CGRect(x: 1.0, y: 1.0, width: 27.0, height: 27.0)) - })?.withRenderingMode(.alwaysOriginal) - subscriber.putNext(image.flatMap { ($0, $0) }) subscriber.putCompletion() return EmptyDisposable @@ -7036,7 +7021,7 @@ private final class PeerInfoNavigationTransitionNode: ASDisplayNode, CustomNavig transition.updateAlpha(node: self.headerNode.navigationButtonContainer, alpha: (1.0 - fraction)) - if case let .animated(duration, _) = transition, (bottomNavigationBar.additionalContentNode.alpha.isZero || bottomNavigationBar.additionalContentNode.alpha == 1.0) { + if case .animated = transition, (bottomNavigationBar.additionalContentNode.alpha.isZero || bottomNavigationBar.additionalContentNode.alpha == 1.0) { bottomNavigationBar.additionalContentNode.alpha = fraction if fraction.isZero { bottomNavigationBar.additionalContentNode.layer.animateAlpha(from: 1.0, to: 0.0, duration: 0.15) diff --git a/submodules/TelegramUI/Sources/PeerMessagesMediaPlaylist.swift b/submodules/TelegramUI/Sources/PeerMessagesMediaPlaylist.swift index aaa02a6c6a..a53e1eb2eb 100644 --- a/submodules/TelegramUI/Sources/PeerMessagesMediaPlaylist.swift +++ b/submodules/TelegramUI/Sources/PeerMessagesMediaPlaylist.swift @@ -29,14 +29,6 @@ private enum PeerMessagesMediaPlaylistNavigation { struct MessageMediaPlaylistItemStableId: Hashable { let stableId: UInt32 - - var hashValue: Int { - return self.stableId.hashValue - } - - static func ==(lhs: MessageMediaPlaylistItemStableId, rhs: MessageMediaPlaylistItemStableId) -> Bool { - return lhs.stableId == rhs.stableId - } } private func extractFileMedia(_ message: Message) -> TelegramMediaFile? { @@ -736,12 +728,6 @@ final class PeerMessagesMediaPlaylist: SharedMediaPlaylist { } if case .all = looping { - let viewIndex: HistoryViewInputAnchor - if case .earlier = navigation { - viewIndex = .upperBound - } else { - viewIndex = .lowerBound - } return .single((nil, messages.count, false)) } else { if hasMore { diff --git a/submodules/TelegramUI/Sources/PeerSelectionControllerNode.swift b/submodules/TelegramUI/Sources/PeerSelectionControllerNode.swift index c599ae7588..d2eb9bf39a 100644 --- a/submodules/TelegramUI/Sources/PeerSelectionControllerNode.swift +++ b/submodules/TelegramUI/Sources/PeerSelectionControllerNode.swift @@ -286,10 +286,7 @@ final class PeerSelectionControllerNode: ASDisplayNode { guard let textInputNode = textInputPanelNode.textInputNode else { return } - let controller = ChatSendMessageActionSheetController(context: strongSelf.context, interfaceState: strongSelf.presentationInterfaceState, gesture: gesture, sourceSendButton: node, textInputNode: textInputNode, completion: { [weak self] in - if let strongSelf = self { -// strongSelf.supportedOrientations = previousSupportedOrientations - } + let controller = ChatSendMessageActionSheetController(context: strongSelf.context, interfaceState: strongSelf.presentationInterfaceState, gesture: gesture, sourceSendButton: node, textInputNode: textInputNode, completion: { }, sendMessage: { [weak textInputPanelNode] silently in textInputPanelNode?.sendMessage(silently ? .silent : .generic) }, schedule: { [weak textInputPanelNode] in diff --git a/submodules/TelegramUI/Sources/PeerSelectionTextInputPanelNode.swift b/submodules/TelegramUI/Sources/PeerSelectionTextInputPanelNode.swift index 85638d8729..cfd7f85ebd 100644 --- a/submodules/TelegramUI/Sources/PeerSelectionTextInputPanelNode.swift +++ b/submodules/TelegramUI/Sources/PeerSelectionTextInputPanelNode.swift @@ -394,9 +394,7 @@ class PeerSelectionTextInputPanelNode: ChatInputPanelNode, ASEditableTextNodeDel self.validLayout = (width, leftInset, rightInset, additionalSideInsets, maxHeight, metrics, isSecondary) var transition = transition - var additionalOffset: CGFloat = 0.0 if let previousAdditionalSideInsets = previousAdditionalSideInsets, previousAdditionalSideInsets.right != additionalSideInsets.right { - additionalOffset = (previousAdditionalSideInsets.right - additionalSideInsets.right) / 3.0 if case .animated = transition { transition = .animated(duration: 0.2, curve: .easeInOut) @@ -520,19 +518,13 @@ class PeerSelectionTextInputPanelNode: ChatInputPanelNode, ASEditableTextNodeDel textFieldMinHeight = calclulateTextFieldMinHeight(presentationInterfaceState, metrics: metrics) } let minimalHeight: CGFloat = 14.0 + textFieldMinHeight - let minimalInputHeight: CGFloat = 2.0 + textFieldMinHeight - - var animatedTransition = true - if case .immediate = transition { - animatedTransition = false - } let baseWidth = width - leftInset - rightInset - let (accessoryButtonsWidth, textFieldHeight) = self.calculateTextFieldMetrics(width: baseWidth, maxHeight: maxHeight, metrics: metrics) + let (_, textFieldHeight) = self.calculateTextFieldMetrics(width: baseWidth, maxHeight: maxHeight, metrics: metrics) let panelHeight = self.panelHeight(textFieldHeight: textFieldHeight, metrics: metrics) - var composeButtonsOffset: CGFloat = 0.0 - var textInputBackgroundWidthOffset: CGFloat = 0.0 + let composeButtonsOffset: CGFloat = 0.0 + let textInputBackgroundWidthOffset: CGFloat = 0.0 self.updateCounterTextNode(transition: transition) @@ -542,8 +534,7 @@ class PeerSelectionTextInputPanelNode: ChatInputPanelNode, ASEditableTextNodeDel if let presentationInterfaceState = self.presentationInterfaceState { self.actionButtons.updateLayout(size: CGSize(width: 44.0, height: minimalHeight), transition: transition, interfaceState: presentationInterfaceState) } - - let searchLayoutClearButtonSize = CGSize(width: 44.0, height: minimalHeight) + var textFieldInsets = self.textFieldInsets(metrics: metrics) if additionalSideInsets.right > 0.0 { textFieldInsets.right += additionalSideInsets.right / 3.0 @@ -619,7 +610,7 @@ class PeerSelectionTextInputPanelNode: ChatInputPanelNode, ASEditableTextNodeDel } if let (width, leftInset, rightInset, _, maxHeight, metrics, _) = self.validLayout { - var composeButtonsOffset: CGFloat = 0.0 + let composeButtonsOffset: CGFloat = 0.0 let (_, textFieldHeight) = self.calculateTextFieldMetrics(width: width - leftInset - rightInset, maxHeight: maxHeight, metrics: metrics) let panelHeight = self.panelHeight(textFieldHeight: textFieldHeight, metrics: metrics) diff --git a/submodules/TelegramUI/Sources/ShareExtensionContext.swift b/submodules/TelegramUI/Sources/ShareExtensionContext.swift index 4d9c7abe63..7db09e7585 100644 --- a/submodules/TelegramUI/Sources/ShareExtensionContext.swift +++ b/submodules/TelegramUI/Sources/ShareExtensionContext.swift @@ -951,7 +951,7 @@ public class ShareRootControllerImpl { strongSelf.mainWindow?.present(controller, on: .root) } else { let presentationData = internalContext.sharedContext.currentPresentationData.with { $0 } - if let user = peer as? TelegramUser { + if let _ = peer as? TelegramUser { let text: String switch result { case .allowed: diff --git a/submodules/TelegramUI/Sources/SharedAccountContext.swift b/submodules/TelegramUI/Sources/SharedAccountContext.swift index 8aec63ba38..b6fd0e5700 100644 --- a/submodules/TelegramUI/Sources/SharedAccountContext.swift +++ b/submodules/TelegramUI/Sources/SharedAccountContext.swift @@ -1132,7 +1132,7 @@ public final class SharedAccountContextImpl: SharedAccountContext { if !found { let controllerParams = LocationViewParams(sendLiveLocation: { location in - let outMessage: EnqueueMessage = .message(text: "", attributes: [], mediaReference: .standalone(media: location), replyToMessageId: nil, localGroupingKey: nil, correlationId: nil) + //let outMessage: EnqueueMessage = .message(text: "", attributes: [], mediaReference: .standalone(media: location), replyToMessageId: nil, localGroupingKey: nil, correlationId: nil) // params.enqueueMessage(outMessage) }, stopLiveLocation: { messageId in if let messageId = messageId { @@ -1376,7 +1376,7 @@ public final class SharedAccountContextImpl: SharedAccountContext { let controller = generator(legacyController.context) legacyController.bind(controller: controller) legacyController.deferScreenEdgeGestures = [.top] - controller.selectionBlock = { [weak legacyController, weak controller] asset, _ in + controller.selectionBlock = { [weak legacyController] asset, _ in if let asset = asset { let _ = (fetchPhotoLibraryImage(localIdentifier: asset.backingAsset.localIdentifier, thumbnail: false) |> deliverOnMainQueue).start(next: { imageAndFlag in diff --git a/submodules/TelegramUI/Sources/SpotlightContacts.swift b/submodules/TelegramUI/Sources/SpotlightContacts.swift index a618da2ec4..d1e97aeb19 100644 --- a/submodules/TelegramUI/Sources/SpotlightContacts.swift +++ b/submodules/TelegramUI/Sources/SpotlightContacts.swift @@ -90,7 +90,7 @@ private final class SpotlightIndexStorage { func update(items: [PeerId: SpotlightIndexStorageItem]) { let validPeerIds = Set(items.keys) var removePeerIds: [PeerId] = [] - for (peerId, item) in self.items { + for (peerId, _) in self.items { if !validPeerIds.contains(peerId) { removePeerIds.append(peerId) } diff --git a/submodules/TelegramUI/Sources/StickersChatInputContextPanelItem.swift b/submodules/TelegramUI/Sources/StickersChatInputContextPanelItem.swift index e850e9e665..23aec1d1db 100644 --- a/submodules/TelegramUI/Sources/StickersChatInputContextPanelItem.swift +++ b/submodules/TelegramUI/Sources/StickersChatInputContextPanelItem.swift @@ -125,7 +125,7 @@ final class StickersChatInputContextPanelItemNode: ListViewItemNode { for i in 0 ..< self.nodes.count { if self.nodes[i].frame.contains(location) { let file = item.files[i] - item.interfaceInteraction.sendSticker(.standalone(media: file), true, self.nodes[i], self.nodes[i].bounds) + let _ = item.interfaceInteraction.sendSticker(.standalone(media: file), true, self.nodes[i], self.nodes[i].bounds) break } } diff --git a/submodules/TelegramUI/Sources/TonePlayer.swift b/submodules/TelegramUI/Sources/TonePlayer.swift index 553cc62e39..ff5bebc67a 100644 --- a/submodules/TelegramUI/Sources/TonePlayer.swift +++ b/submodules/TelegramUI/Sources/TonePlayer.swift @@ -45,7 +45,6 @@ private final class TonePlayerContext { func start() { do { - let currentVolume = AVAudioSession.sharedInstance().outputVolume //let gainFactor = max(0.1, min(1.5, self.initialVolume / currentVolume)) try self.audioEngine.start() diff --git a/submodules/TelegramUI/Sources/WallpaperUploadManager.swift b/submodules/TelegramUI/Sources/WallpaperUploadManager.swift index c7f6af8c19..af4adbb5ca 100644 --- a/submodules/TelegramUI/Sources/WallpaperUploadManager.swift +++ b/submodules/TelegramUI/Sources/WallpaperUploadManager.swift @@ -105,7 +105,7 @@ final class WallpaperUploadManagerImpl: WallpaperUploadManager { } let autoNightModeTriggered = presentationData.autoNightModeTriggered - disposable.set(uploadSignal.start(next: { [weak self] status in + disposable.set(uploadSignal.start(next: { status in if case let .complete(wallpaper) = status { let updateWallpaper: (TelegramWallpaper) -> Void = { wallpaper in if let resource = wallpaper.mainResource {