mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-06-16 05:55:20 +00:00
Various fixes
This commit is contained in:
parent
1ef71d2f46
commit
83364952d0
@ -257,6 +257,7 @@ private final class CameraContext {
|
||||
|
||||
mainDeviceContext.output.markPositionChange(position: targetPosition)
|
||||
} else {
|
||||
self.session.session.stopRunning()
|
||||
self.configure {
|
||||
let isRoundVideo = self.initialConfiguration.isRoundVideo
|
||||
self.mainDeviceContext?.invalidate(switchAudio: !isRoundVideo)
|
||||
@ -284,6 +285,7 @@ private final class CameraContext {
|
||||
self.modeChange = .none
|
||||
}
|
||||
}
|
||||
self.session.session.startRunning()
|
||||
}
|
||||
}
|
||||
|
||||
@ -320,6 +322,7 @@ private final class CameraContext {
|
||||
self.modeChange = .dualCamera
|
||||
}
|
||||
|
||||
self.session.session.stopRunning()
|
||||
if enabled {
|
||||
self.configure {
|
||||
self.mainDeviceContext?.invalidate()
|
||||
@ -432,6 +435,7 @@ private final class CameraContext {
|
||||
self?.detectedCodesPipe.putNext(codes)
|
||||
}
|
||||
}
|
||||
self.session.session.startRunning()
|
||||
|
||||
if change {
|
||||
if #available(iOS 13.0, *), let previewView = self.simplePreviewView {
|
||||
|
@ -2246,6 +2246,9 @@ public final class WebAppController: ViewController, AttachmentContainable {
|
||||
self?.startDownload(url: url, fileName: fileName, fileSize: fileSize, isMedia: isMedia)
|
||||
})
|
||||
], parseMarkdown: true)
|
||||
alertController.dismissed = { [weak self] byOutsideTap in
|
||||
self?.webView?.sendEvent(name: "file_download_requested", data: "{status: \"cancelled\"}")
|
||||
}
|
||||
controller.present(alertController, in: .window(.root))
|
||||
})
|
||||
}
|
||||
@ -2447,6 +2450,9 @@ public final class WebAppController: ViewController, AttachmentContainable {
|
||||
}
|
||||
}
|
||||
)
|
||||
alertController.dismissed = { [weak self] byOutsideTap in
|
||||
self?.webView?.sendEvent(name: "emoji_status_access_requested", data: "{status: \"cancelled\"}")
|
||||
}
|
||||
controller.present(alertController, in: .window(.root))
|
||||
})
|
||||
}
|
||||
@ -2477,7 +2483,22 @@ public final class WebAppController: ViewController, AttachmentContainable {
|
||||
guard let self else {
|
||||
return
|
||||
}
|
||||
if result {
|
||||
if result, let controller {
|
||||
let context = self.context
|
||||
if !context.isPremium {
|
||||
var replaceImpl: ((ViewController) -> Void)?
|
||||
let demoController = context.sharedContext.makePremiumDemoController(context: context, subject: .emojiStatus, forceDark: false, action: {
|
||||
let controller = context.sharedContext.makePremiumIntroController(context: context, source: .animatedEmoji, forceDark: false, dismissed: nil)
|
||||
replaceImpl?(controller)
|
||||
}, dismissed: nil)
|
||||
replaceImpl = { [weak demoController] c in
|
||||
demoController?.replace(with: c)
|
||||
}
|
||||
controller.parentController()?.push(demoController)
|
||||
self.webView?.sendEvent(name: "emoji_status_failed", data: "{error: \"USER_DECLINED\"}")
|
||||
return
|
||||
}
|
||||
|
||||
let _ = (self.context.engine.accountData.setEmojiStatus(file: file, expirationDate: expirationDate)
|
||||
|> deliverOnMainQueue).start(completed: { [weak self] in
|
||||
self?.webView?.sendEvent(name: "emoji_status_set", data: nil)
|
||||
@ -2494,7 +2515,7 @@ public final class WebAppController: ViewController, AttachmentContainable {
|
||||
return true
|
||||
}
|
||||
)
|
||||
controller?.present(resultController, in: .window(.root))
|
||||
controller.present(resultController, in: .window(.root))
|
||||
} else {
|
||||
self.webView?.sendEvent(name: "emoji_status_failed", data: "{error: \"USER_DECLINED\"}")
|
||||
}
|
||||
|
@ -154,7 +154,24 @@ private final class SheetContent: CombinedComponent {
|
||||
break
|
||||
}
|
||||
case let .externalReference(reference):
|
||||
let _ = reference
|
||||
switch reference.message {
|
||||
case let .auto(textValue, entitiesValue, _):
|
||||
text = textValue
|
||||
entities = entitiesValue
|
||||
case let .text(textValue, entitiesValue, disableUrlPreview, previewParameters, _):
|
||||
text = textValue
|
||||
entities = entitiesValue
|
||||
let _ = disableUrlPreview
|
||||
let _ = previewParameters
|
||||
case let .contact(contact, _):
|
||||
media = [contact]
|
||||
case let .mapLocation(map, _):
|
||||
media = [map]
|
||||
case let .invoice(invoice, _):
|
||||
media = [invoice]
|
||||
default:
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
let messageItem = PeerNameColorChatPreviewItem.MessageItem(
|
||||
|
Loading…
x
Reference in New Issue
Block a user