diff --git a/submodules/WebUI/Sources/WebAppController.swift b/submodules/WebUI/Sources/WebAppController.swift index 40e2f3246a..58a48b80f9 100644 --- a/submodules/WebUI/Sources/WebAppController.swift +++ b/submodules/WebUI/Sources/WebAppController.swift @@ -858,15 +858,17 @@ public final class WebAppController: ViewController, AttachmentContainable { } if previousLayout != nil && (previousLayout?.inputHeight ?? 0.0).isZero, let inputHeight = layout.inputHeight, inputHeight > 44.0, transition.isAnimated { - webView.scrollToActiveElement(layout: layout, completion: { [weak self] contentOffset in - self?.targetContentOffset = contentOffset - }, transition: transition) Queue.mainQueue().after(0.4, { if let inputHeight = self.validLayout?.0.inputHeight, inputHeight > 44.0 { + webView.scrollToActiveElement(layout: layout, completion: { [weak self] contentOffset in + let _ = self + // self?.targetContentOffset = contentOffset + }, transition: transition) + transition.updateFrame(view: webView, frame: webViewFrame) - Queue.mainQueue().after(0.1) { - self.targetContentOffset = nil - } +// Queue.mainQueue().after(0.1) { +// self.targetContentOffset = nil +// } } }) } else { diff --git a/submodules/WebUI/Sources/WebAppWebView.swift b/submodules/WebUI/Sources/WebAppWebView.swift index ad3ab346ab..e161952561 100644 --- a/submodules/WebUI/Sources/WebAppWebView.swift +++ b/submodules/WebUI/Sources/WebAppWebView.swift @@ -249,7 +249,7 @@ final class WebAppWebView: WKWebView { if let result = result as? CGFloat { Queue.mainQueue().async { let convertedY = result - self.scrollView.contentOffset.y - let viewportHeight = self.frame.height - (layout.inputHeight ?? 0.0) + 26.0 + let viewportHeight = self.frame.height if convertedY < 0.0 || (convertedY + 44.0) > viewportHeight { let targetOffset: CGFloat if convertedY < 0.0 {