Merge commit '4e55e3aab0902379e2fa292582845bafdc76306a'

# Conflicts:
#	submodules/TelegramUI/Components/TextLoadingEffect/Sources/TextLoadingEffect.swift
This commit is contained in:
Isaac
2024-05-23 23:50:45 +04:00
94 changed files with 4226 additions and 885 deletions

View File

@@ -430,6 +430,7 @@ enum ChatTextInputPanelPasteData {
case video(Data)
case gif(Data)
case sticker(UIImage, Bool)
case animatedSticker(Data)
}
final class ChatTextViewForOverlayContent: UIView, ChatInputPanelViewForOverlayContent {
@@ -1515,6 +1516,8 @@ class ChatTextInputPanelNode: ChatInputPanelNode, ASEditableTextNodeDelegate, Ch
var displayMediaButton = true
if case let .customChatContents(customChatContents) = interfaceState.subject {
switch customChatContents.kind {
case .hashTagSearch:
break
case .quickReplyMessageInput:
break
case .businessLinkSetup:
@@ -1881,6 +1884,8 @@ class ChatTextInputPanelNode: ChatInputPanelNode, ASEditableTextNodeDelegate, Ch
}
if case let .customChatContents(customChatContents) = interfaceState.subject {
switch customChatContents.kind {
case .hashTagSearch:
placeholder = ""
case let .quickReplyMessageInput(_, shortcutType):
switch shortcutType {
case .generic:
@@ -1913,6 +1918,8 @@ class ChatTextInputPanelNode: ChatInputPanelNode, ASEditableTextNodeDelegate, Ch
if let interfaceState = self.presentationInterfaceState {
if case let .customChatContents(customChatContents) = interfaceState.subject {
switch customChatContents.kind {
case .hashTagSearch:
break
case .quickReplyMessageInput:
break
case .businessLinkSetup:
@@ -3691,6 +3698,8 @@ class ChatTextInputPanelNode: ChatInputPanelNode, ASEditableTextNodeDelegate, Ch
if case let .customChatContents(customChatContents) = presentationInterfaceState.subject {
switch customChatContents.kind {
case .hashTagSearch:
break
case .quickReplyMessageInput:
break
case .businessLinkSetup:
@@ -3809,6 +3818,8 @@ class ChatTextInputPanelNode: ChatInputPanelNode, ASEditableTextNodeDelegate, Ch
if let interfaceState = self.presentationInterfaceState {
if case let .customChatContents(customChatContents) = interfaceState.subject {
switch customChatContents.kind {
case .hashTagSearch:
break
case .quickReplyMessageInput:
break
case .businessLinkSetup:
@@ -3912,6 +3923,8 @@ class ChatTextInputPanelNode: ChatInputPanelNode, ASEditableTextNodeDelegate, Ch
var sendButtonHasApplyIcon = interfaceState.interfaceState.editMessage != nil
if case let .customChatContents(customChatContents) = interfaceState.subject {
switch customChatContents.kind {
case .hashTagSearch:
break
case .quickReplyMessageInput:
break
case .businessLinkSetup:
@@ -4397,6 +4410,9 @@ class ChatTextInputPanelNode: ChatInputPanelNode, ASEditableTextNodeDelegate, Ch
} else if let data = pasteboard.data(forPasteboardType: "public.mpeg-4") {
self.paste(.video(data))
return false
} else if let data = pasteboard.data(forPasteboardType: "public.heics") {
self.paste(.animatedSticker(data))
return false
} else {
var isPNG = false
var isMemoji = false