Various fixes

This commit is contained in:
Ilya Laktyushin
2023-07-10 20:04:23 +02:00
parent 5fbd1b7c61
commit 0d69b86b92
9 changed files with 38 additions and 13 deletions

View File

@@ -8,6 +8,7 @@ import AccountContext
import TelegramPresentationData
import ChatPresentationInterfaceState
import MoreHeaderButton
import ContextUI
private extension MessageInputActionButtonComponent.Mode {
var iconName: String? {
@@ -45,6 +46,7 @@ public final class MessageInputActionButtonComponent: Component {
public let mode: Mode
public let action: (Mode, Action, Bool) -> Void
public let longPressAction: () -> Void
public let switchMediaInputMode: () -> Void
public let updateMediaCancelFraction: (CGFloat) -> Void
public let lockMediaRecording: () -> Void
@@ -60,6 +62,7 @@ public final class MessageInputActionButtonComponent: Component {
public init(
mode: Mode,
action: @escaping (Mode, Action, Bool) -> Void,
longPressAction: @escaping () -> Void,
switchMediaInputMode: @escaping () -> Void,
updateMediaCancelFraction: @escaping (CGFloat) -> Void,
lockMediaRecording: @escaping () -> Void,
@@ -74,6 +77,7 @@ public final class MessageInputActionButtonComponent: Component {
) {
self.mode = mode
self.action = action
self.longPressAction = longPressAction
self.switchMediaInputMode = switchMediaInputMode
self.updateMediaCancelFraction = updateMediaCancelFraction
self.lockMediaRecording = lockMediaRecording

View File

@@ -72,6 +72,7 @@ public final class MessageInputPanelComponent: Component {
public let presentController: (ViewController) -> Void
public let presentInGlobalOverlay: (ViewController) -> Void
public let sendMessageAction: () -> Void
public let sendMessageOptionsAction: () -> Void
public let sendStickerAction: (TelegramMediaFile) -> Void
public let setMediaRecordingActive: ((Bool, Bool, Bool) -> Void)?
public let lockMediaRecording: (() -> Void)?
@@ -113,6 +114,7 @@ public final class MessageInputPanelComponent: Component {
presentController: @escaping (ViewController) -> Void,
presentInGlobalOverlay: @escaping (ViewController) -> Void,
sendMessageAction: @escaping () -> Void,
sendMessageOptionsAction: @escaping () -> Void,
sendStickerAction: @escaping (TelegramMediaFile) -> Void,
setMediaRecordingActive: ((Bool, Bool, Bool) -> Void)?,
lockMediaRecording: (() -> Void)?,
@@ -153,6 +155,7 @@ public final class MessageInputPanelComponent: Component {
self.presentController = presentController
self.presentInGlobalOverlay = presentInGlobalOverlay
self.sendMessageAction = sendMessageAction
self.sendMessageOptionsAction = sendMessageOptionsAction
self.sendStickerAction = sendStickerAction
self.setMediaRecordingActive = setMediaRecordingActive
self.lockMediaRecording = lockMediaRecording
@@ -744,6 +747,7 @@ public final class MessageInputPanelComponent: Component {
break
}
},
longPressAction: {},
switchMediaInputMode: {
},
updateMediaCancelFraction: { _ in
@@ -922,6 +926,12 @@ public final class MessageInputPanelComponent: Component {
break
}
},
longPressAction: { [weak self] in
guard let self, let component = self.component else {
return
}
component.sendMessageOptionsAction()
},
switchMediaInputMode: { [weak self] in
guard let self else {
return