Various Improvements

This commit is contained in:
Ilya Laktyushin
2021-01-17 10:18:10 +03:00
parent fadd3abea6
commit fa125d0192
124 changed files with 12748 additions and 5704 deletions

View File

@@ -579,7 +579,7 @@ func contextMenuForChatPresentationInterfaceState(chatPresentationInterfaceState
if resourceAvailable, !message.containsSecretMedia {
var mediaReference: AnyMediaReference?
for media in message.media {
if let image = media as? TelegramMediaImage, let largest = largestImageRepresentation(image.representations) {
if let image = media as? TelegramMediaImage, let _ = largestImageRepresentation(image.representations) {
mediaReference = ImageMediaReference.standalone(media: image).abstract
break
} else if let file = media as? TelegramMediaFile, file.isVideo {
@@ -641,8 +641,15 @@ func contextMenuForChatPresentationInterfaceState(chatPresentationInterfaceState
})
})))
}
let isMigrated: Bool
if chatPresentationInterfaceState.renderedPeer?.peer is TelegramChannel && message.id.peerId.namespace == Namespaces.Peer.CloudGroup {
isMigrated = true
} else {
isMigrated = false
}
if data.canEdit && !isPinnedMessages {
if data.canEdit && !isPinnedMessages && !isMigrated {
actions.append(.action(ContextMenuActionItem(text: chatPresentationInterfaceState.strings.Conversation_MessageDialogEdit, icon: { theme in
return generateTintedImage(image: UIImage(bundleImageName: "Chat/Context Menu/Edit"), color: theme.actionSheet.primaryTextColor)
}, action: { c, f in
@@ -678,7 +685,7 @@ func contextMenuForChatPresentationInterfaceState(chatPresentationInterfaceState
}
}
if data.canPin, case .peer = chatPresentationInterfaceState.chatLocation {
if data.canPin && !isMigrated, case .peer = chatPresentationInterfaceState.chatLocation {
var pinnedSelectedMessageId: MessageId?
for message in messages {
if message.tags.contains(.pinned) {
@@ -744,7 +751,7 @@ func contextMenuForChatPresentationInterfaceState(chatPresentationInterfaceState
}
}
if let message = messages.first, message.id.namespace == Namespaces.Message.Cloud, let channel = message.peers[message.id.peerId] as? TelegramChannel, !(message.media.first is TelegramMediaAction), !isReplyThreadHead {
if let message = messages.first, message.id.namespace == Namespaces.Message.Cloud, let channel = message.peers[message.id.peerId] as? TelegramChannel, !(message.media.first is TelegramMediaAction), !isReplyThreadHead, !isMigrated {
actions.append(.action(ContextMenuActionItem(text: chatPresentationInterfaceState.strings.Conversation_ContextMenuCopyLink, icon: { theme in
return generateTintedImage(image: UIImage(bundleImageName: "Chat/Context Menu/Link"), color: theme.actionSheet.primaryTextColor)
}, action: { _, f in
@@ -850,7 +857,7 @@ func contextMenuForChatPresentationInterfaceState(chatPresentationInterfaceState
}
var clearCacheAsDelete = false
if message.id.peerId.namespace == Namespaces.Peer.CloudChannel {
if message.id.peerId.namespace == Namespaces.Peer.CloudChannel && !isMigrated {
var views: Int = 0
for attribute in message.attributes {
if let attribute = attribute as? ViewCountMessageAttribute {