mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-08-02 00:17:02 +00:00
Fix return to app after web view
This commit is contained in:
parent
39f8d13700
commit
03e9a1e313
@ -11,6 +11,7 @@ import ChatListUI
|
|||||||
import PeerAvatarGalleryUI
|
import PeerAvatarGalleryUI
|
||||||
import SettingsUI
|
import SettingsUI
|
||||||
import ChatPresentationInterfaceState
|
import ChatPresentationInterfaceState
|
||||||
|
import AttachmentUI
|
||||||
|
|
||||||
public func navigateToChatControllerImpl(_ params: NavigateToChatControllerParams) {
|
public func navigateToChatControllerImpl(_ params: NavigateToChatControllerParams) {
|
||||||
var found = false
|
var found = false
|
||||||
@ -21,6 +22,7 @@ public func navigateToChatControllerImpl(_ params: NavigateToChatControllerParam
|
|||||||
if let updateTextInputState = params.updateTextInputState {
|
if let updateTextInputState = params.updateTextInputState {
|
||||||
controller.updateTextInputState(updateTextInputState)
|
controller.updateTextInputState(updateTextInputState)
|
||||||
}
|
}
|
||||||
|
var popAndComplete = true
|
||||||
if let subject = params.subject, case let .message(messageSubject, _, timecode) = subject {
|
if let subject = params.subject, case let .message(messageSubject, _, timecode) = subject {
|
||||||
if case let .id(messageId) = messageSubject {
|
if case let .id(messageId) = messageSubject {
|
||||||
let navigationController = params.navigationController
|
let navigationController = params.navigationController
|
||||||
@ -33,22 +35,24 @@ public func navigateToChatControllerImpl(_ params: NavigateToChatControllerParam
|
|||||||
(navigationController?.viewControllers.last as? ViewController)?.present(c, in: .window(.root), with: a)
|
(navigationController?.viewControllers.last as? ViewController)?.present(c, in: .window(.root), with: a)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
popAndComplete = false
|
||||||
} else if params.scrollToEndIfExists && isFirst {
|
} else if params.scrollToEndIfExists && isFirst {
|
||||||
controller.scrollToEndOfHistory()
|
controller.scrollToEndOfHistory()
|
||||||
let _ = params.navigationController.popToViewController(controller, animated: params.animated)
|
|
||||||
params.completion(controller)
|
|
||||||
} else if let search = params.activateMessageSearch {
|
} else if let search = params.activateMessageSearch {
|
||||||
controller.activateSearch(domain: search.0, query: search.1)
|
controller.activateSearch(domain: search.0, query: search.1)
|
||||||
let _ = params.navigationController.popToViewController(controller, animated: params.animated)
|
|
||||||
params.completion(controller)
|
|
||||||
} else if let reportReason = params.reportReason {
|
} else if let reportReason = params.reportReason {
|
||||||
controller.beginReportSelection(reason: reportReason)
|
controller.beginReportSelection(reason: reportReason)
|
||||||
let _ = params.navigationController.popToViewController(controller, animated: params.animated)
|
}
|
||||||
params.completion(controller)
|
|
||||||
|
if popAndComplete {
|
||||||
|
if let _ = params.navigationController.viewControllers.last as? AttachmentController, let controller = params.navigationController.viewControllers[params.navigationController.viewControllers.count - 2] as? ChatControllerImpl, controller.chatLocation == params.chatLocation {
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
let _ = params.navigationController.popToViewController(controller, animated: params.animated)
|
let _ = params.navigationController.popToViewController(controller, animated: params.animated)
|
||||||
|
}
|
||||||
params.completion(controller)
|
params.completion(controller)
|
||||||
}
|
}
|
||||||
|
|
||||||
controller.purposefulAction = params.purposefulAction
|
controller.purposefulAction = params.purposefulAction
|
||||||
if params.activateInput {
|
if params.activateInput {
|
||||||
controller.activateInput()
|
controller.activateInput()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user