diff --git a/submodules/Display/Display/Navigation/NavigationModalContainer.swift b/submodules/Display/Display/Navigation/NavigationModalContainer.swift index 2586e9474f..29703b4222 100644 --- a/submodules/Display/Display/Navigation/NavigationModalContainer.swift +++ b/submodules/Display/Display/Navigation/NavigationModalContainer.swift @@ -467,6 +467,11 @@ final class NavigationModalContainer: ASDisplayNode, UIScrollViewDelegate, UIGes } currentParent = currentParent?.superview } + if let controller = self.container.controllers.last { + if controller.view.disablesInteractiveModalDismiss { + enableScrolling = false + } + } self.isInteractiveDimissEnabled = enableScrolling if let layout = self.validLayout { if layout.inputHeight != nil && layout.inputHeight != 0.0 { diff --git a/submodules/LegacyMediaPickerUI/Sources/LegacyImagePicker.swift b/submodules/LegacyMediaPickerUI/Sources/LegacyImagePicker.swift index c2ec39a117..00b799c30c 100644 --- a/submodules/LegacyMediaPickerUI/Sources/LegacyImagePicker.swift +++ b/submodules/LegacyMediaPickerUI/Sources/LegacyImagePicker.swift @@ -18,6 +18,12 @@ private final class LegacyImagePickerController: LegacyController, TGLegacyCamer fatalError("init(coder:) has not been implemented") } + override func viewDidLoad() { + super.viewDidLoad() + + self.view.disablesInteractiveModalDismiss = true + } + func legacyCameraControllerCompletedWithNoResult() { self.completion(nil) } diff --git a/submodules/TelegramUI/TelegramUI/ChatController.swift b/submodules/TelegramUI/TelegramUI/ChatController.swift index f403db6a56..c261403d4c 100644 --- a/submodules/TelegramUI/TelegramUI/ChatController.swift +++ b/submodules/TelegramUI/TelegramUI/ChatController.swift @@ -5705,6 +5705,7 @@ public final class ChatControllerImpl: TelegramBaseController, ChatController, G legacyController.statusBar.statusBarStyle = strongSelf.presentationData.theme.rootController.statusBarStyle.style legacyController.controllerLoaded = { [weak legacyController] in legacyController?.view.disablesInteractiveTransitionGestureRecognizer = true + legacyController?.view.disablesInteractiveModalDismiss = true } let controller = generator(legacyController.context) legacyController.bind(controller: controller)