mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-12-24 07:05:35 +00:00
Various improvements
This commit is contained in:
@@ -856,6 +856,11 @@ public class ChatMessageStickerItemNode: ChatMessageItemView {
|
||||
maxContentWidth = max(maxContentWidth, minWidth)
|
||||
actionButtonsFinalize = buttonsLayout
|
||||
} else if incoming, let attribute = item.message.attributes.first(where: { $0 is SuggestedPostMessageAttribute }) as? SuggestedPostMessageAttribute, attribute.state == nil {
|
||||
var canApprove = true
|
||||
if let peer = item.message.peers[item.message.id.peerId] as? TelegramChannel, peer.isMonoForum, let linkedMonoforumId = peer.linkedMonoforumId, let mainChannel = item.message.peers[linkedMonoforumId] as? TelegramChannel, mainChannel.hasPermission(.manageDirect), !mainChannel.hasPermission(.sendSomething) {
|
||||
canApprove = false
|
||||
}
|
||||
|
||||
//TODO:localize
|
||||
var buttonDeclineValue: UInt8 = 0
|
||||
let buttonDecline = MemoryBuffer(data: Data(bytes: &buttonDeclineValue, count: 1))
|
||||
@@ -864,10 +869,19 @@ public class ChatMessageStickerItemNode: ChatMessageItemView {
|
||||
var buttonSuggestChangesValue: UInt8 = 2
|
||||
let buttonSuggestChanges = MemoryBuffer(data: Data(bytes: &buttonSuggestChangesValue, count: 1))
|
||||
|
||||
let customIcons: [MemoryBuffer: ChatMessageActionButtonsNode.CustomIcon] = [
|
||||
buttonDecline: .suggestedPostReject,
|
||||
buttonApprove: .suggestedPostApprove,
|
||||
buttonSuggestChanges: .suggestedPostEdit
|
||||
let customInfos: [MemoryBuffer: ChatMessageActionButtonsNode.CustomInfo] = [
|
||||
buttonDecline: ChatMessageActionButtonsNode.CustomInfo(
|
||||
isEnabled: true,
|
||||
icon: .suggestedPostReject
|
||||
),
|
||||
buttonApprove: ChatMessageActionButtonsNode.CustomInfo(
|
||||
isEnabled: canApprove,
|
||||
icon: .suggestedPostApprove
|
||||
),
|
||||
buttonSuggestChanges: ChatMessageActionButtonsNode.CustomInfo(
|
||||
isEnabled: canApprove,
|
||||
icon: .suggestedPostEdit
|
||||
)
|
||||
]
|
||||
|
||||
let (minWidth, buttonsLayout) = actionButtonsLayout(
|
||||
@@ -888,7 +902,7 @@ public class ChatMessageStickerItemNode: ChatMessageItemView {
|
||||
],
|
||||
flags: [],
|
||||
placeholder: nil
|
||||
), customIcons, item.message, baseWidth)
|
||||
), customInfos, item.message, baseWidth)
|
||||
maxContentWidth = max(maxContentWidth, minWidth)
|
||||
actionButtonsFinalize = buttonsLayout
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user