diff --git a/submodules/TelegramUI/Sources/OpenResolvedUrl.swift b/submodules/TelegramUI/Sources/OpenResolvedUrl.swift index 1dc61745de..d967221589 100644 --- a/submodules/TelegramUI/Sources/OpenResolvedUrl.swift +++ b/submodules/TelegramUI/Sources/OpenResolvedUrl.swift @@ -481,7 +481,7 @@ func openResolvedUrlImpl(_ resolvedUrl: ResolvedUrl, context: AccountContext, ur } case .importStickers: dismissInput() - if let navigationController = navigationController, let data = UIPasteboard.general.data(forPasteboardType: "org.telegram.third-party.stickerpack"), let stickerPack = ImportStickerPack(data: data) { + if let navigationController = navigationController, let data = UIPasteboard.general.data(forPasteboardType: "org.telegram.third-party.stickerpack"), let stickerPack = ImportStickerPack(data: data), !stickerPack.stickers.isEmpty { for controller in navigationController.overlayControllers { if controller is ImportStickerPackController { controller.dismiss() diff --git a/submodules/TelegramUI/Sources/PeerInfo/ListItems/PeerInfoScreenInfoItem.swift b/submodules/TelegramUI/Sources/PeerInfo/ListItems/PeerInfoScreenInfoItem.swift index 5598f56e06..9c345239af 100644 --- a/submodules/TelegramUI/Sources/PeerInfo/ListItems/PeerInfoScreenInfoItem.swift +++ b/submodules/TelegramUI/Sources/PeerInfo/ListItems/PeerInfoScreenInfoItem.swift @@ -61,7 +61,7 @@ private final class PeerInfoScreenInfoItemNode: PeerInfoScreenItemNode { self.bottomSeparatorNode.backgroundColor = presentationData.theme.list.itemBlocksSeparatorColor - let infoItem = InfoListItem(presentationData: ItemListPresentationData(presentationData), title: item.title, text: item.text, style: .plain, linkAction: { link in + let infoItem = InfoListItem(presentationData: ItemListPresentationData(presentationData), title: item.title, text: item.text, style: .blocks, linkAction: { link in item.linkAction?(link) }, closeAction: nil) let params = ListViewItemLayoutParams(width: width, leftInset: safeInsets.left, rightInset: safeInsets.right, availableHeight: 1000.0) diff --git a/submodules/TelegramUI/Sources/PeerInfo/PeerInfoData.swift b/submodules/TelegramUI/Sources/PeerInfo/PeerInfoData.swift index f54a5f3f96..26f7db83e3 100644 --- a/submodules/TelegramUI/Sources/PeerInfo/PeerInfoData.swift +++ b/submodules/TelegramUI/Sources/PeerInfo/PeerInfoData.swift @@ -951,14 +951,14 @@ func peerInfoHeaderButtonIsHiddenWhileExpanded(buttonKey: PeerInfoHeaderButtonKe var hiddenWhileExpanded = false if isOpenedFromChat { switch buttonKey { - case .message, .search, .videoCall, .addMember: + case .message, .search, .videoCall, .addMember, .leave, .discussion: hiddenWhileExpanded = true default: hiddenWhileExpanded = false } } else { switch buttonKey { - case .search, .call, .videoCall, .addMember: + case .search, .call, .videoCall, .addMember, .leave, .discussion: hiddenWhileExpanded = true default: hiddenWhileExpanded = false @@ -1011,7 +1011,7 @@ func peerInfoHeaderButtons(peer: Peer?, cachedData: CachedPeerData?, isOpenedFro if channel.flags.contains(.hasVoiceChat) { hasVoiceChat = true } - if channel.flags.contains(.isCreator) || channel.hasPermission(.manageCalls) { + if channel.flags.contains(.isCreator) { displayMore = true } switch channel.info { @@ -1118,6 +1118,9 @@ func peerInfoHeaderButtons(peer: Peer?, cachedData: CachedPeerData?, isOpenedFro } if isExpanded && result.count > 3 { result = result.filter { !peerInfoHeaderButtonIsHiddenWhileExpanded(buttonKey: $0, isOpenedFromChat: isOpenedFromChat) } + if !result.contains(.more) { + result.append(.more) + } } return result } diff --git a/submodules/TelegramUI/Sources/PeerInfo/PeerInfoScreen.swift b/submodules/TelegramUI/Sources/PeerInfo/PeerInfoScreen.swift index b1afe3a05d..061a8e7ac9 100644 --- a/submodules/TelegramUI/Sources/PeerInfo/PeerInfoScreen.swift +++ b/submodules/TelegramUI/Sources/PeerInfo/PeerInfoScreen.swift @@ -3687,7 +3687,7 @@ private final class PeerInfoScreenNode: ViewControllerTracingNode, UIScrollViewD self?.openDeletePeer() }))) } else { - if !headerButtons.contains(.leave) { + if filteredButtons.contains(.leave) { if case .member = channel.participationStatus { if !items.isEmpty { items.append(.separator)