mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-06-16 05:55:20 +00:00
Fix webpage transcription animation
This commit is contained in:
parent
7cb9f925bd
commit
3f3741ab89
@ -235,6 +235,7 @@ final class ChatMessageAttachedContentNode: ASDisplayNode {
|
|||||||
|
|
||||||
var openMedia: ((InteractiveMediaNodeActivateContent) -> Void)?
|
var openMedia: ((InteractiveMediaNodeActivateContent) -> Void)?
|
||||||
var activateAction: (() -> Void)?
|
var activateAction: (() -> Void)?
|
||||||
|
var requestUpdateLayout: (() -> Void)?
|
||||||
|
|
||||||
var visibility: ListViewItemNodeVisibility = .none {
|
var visibility: ListViewItemNodeVisibility = .none {
|
||||||
didSet {
|
didSet {
|
||||||
@ -837,7 +838,7 @@ final class ChatMessageAttachedContentNode: ASDisplayNode {
|
|||||||
strongSelf.theme = presentationData.theme
|
strongSelf.theme = presentationData.theme
|
||||||
|
|
||||||
strongSelf.lineNode.image = lineImage
|
strongSelf.lineNode.image = lineImage
|
||||||
strongSelf.lineNode.frame = CGRect(origin: CGPoint(x: 13.0, y: insets.top), size: CGSize(width: 2.0, height: adjustedLineHeight - insets.top - insets.bottom - 2.0))
|
animation.animator.updateFrame(layer: strongSelf.lineNode.layer, frame: CGRect(origin: CGPoint(x: 13.0, y: insets.top), size: CGSize(width: 2.0, height: adjustedLineHeight - insets.top - insets.bottom - 2.0)), completion: nil)
|
||||||
strongSelf.lineNode.isHidden = !displayLine
|
strongSelf.lineNode.isHidden = !displayLine
|
||||||
|
|
||||||
strongSelf.textNode.displaysAsynchronously = !isPreview
|
strongSelf.textNode.displaysAsynchronously = !isPreview
|
||||||
@ -931,6 +932,11 @@ final class ChatMessageAttachedContentNode: ASDisplayNode {
|
|||||||
strongSelf.openMedia?(.default)
|
strongSelf.openMedia?(.default)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
contentFileNode.requestUpdateLayout = { [weak strongSelf] _ in
|
||||||
|
if let strongSelf = strongSelf {
|
||||||
|
strongSelf.requestUpdateLayout?()
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if let (_, flags) = mediaAndFlags, flags.contains(.preferMediaBeforeText) {
|
if let (_, flags) = mediaAndFlags, flags.contains(.preferMediaBeforeText) {
|
||||||
contentFileNode.frame = CGRect(origin: CGPoint(x: insets.left, y: insets.top), size: contentFileSize)
|
contentFileNode.frame = CGRect(origin: CGPoint(x: insets.left, y: insets.top), size: contentFileSize)
|
||||||
|
@ -349,16 +349,21 @@ final class ChatMessageInteractiveFileNode: ASDisplayNode {
|
|||||||
|
|
||||||
var shouldBeginTranscription = false
|
var shouldBeginTranscription = false
|
||||||
var shouldExpandNow = false
|
var shouldExpandNow = false
|
||||||
if let result = transcribedText(message: message) {
|
|
||||||
|
if case .expanded = self.audioTranscriptionState {
|
||||||
shouldExpandNow = true
|
shouldExpandNow = true
|
||||||
|
} else {
|
||||||
if case let .success(_, isPending) = result {
|
if let result = transcribedText(message: message) {
|
||||||
shouldBeginTranscription = isPending
|
shouldExpandNow = true
|
||||||
|
|
||||||
|
if case let .success(_, isPending) = result {
|
||||||
|
shouldBeginTranscription = isPending
|
||||||
|
} else {
|
||||||
|
shouldBeginTranscription = true
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
shouldBeginTranscription = true
|
shouldBeginTranscription = true
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
shouldBeginTranscription = true
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if shouldBeginTranscription {
|
if shouldBeginTranscription {
|
||||||
|
@ -96,6 +96,11 @@ final class ChatMessageWebpageBubbleContentNode: ChatMessageBubbleContentNode {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
self.contentNode.requestUpdateLayout = { [weak self] in
|
||||||
|
if let strongSelf = self, let item = strongSelf.item {
|
||||||
|
let _ = item.controllerInteraction.requestMessageUpdate(item.message.id)
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
required init?(coder aDecoder: NSCoder) {
|
required init?(coder aDecoder: NSCoder) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user