diff --git a/ios/Platform/Platform/Features/Reader/Views/ScrollViewDriver.swift b/ios/Platform/Platform/Features/Reader/Views/ScrollViewDriver.swift index 8c154cf..c4d72a0 100644 --- a/ios/Platform/Platform/Features/Reader/Views/ScrollViewDriver.swift +++ b/ios/Platform/Platform/Features/Reader/Views/ScrollViewDriver.swift @@ -78,11 +78,13 @@ struct ScrollViewDriver: UIViewRepresentable { } func startScrolling(in view: UIView) { - // Re-find scroll view if needed if scrollView == nil { findScrollView(from: view) } - guard scrollView != nil else { return } + guard let sv = scrollView else { return } + + // Signal scroll start — triggers tab bar minimize + originalDelegate?.scrollViewWillBeginDragging?(sv) let link = CADisplayLink(target: self, selector: #selector(tick)) link.preferredFrameRateRange = CAFrameRateRange(minimum: 30, maximum: 60) @@ -93,6 +95,12 @@ struct ScrollViewDriver: UIViewRepresentable { func stopScrolling() { displayLink?.invalidate() displayLink = nil + + // Signal scroll end — lets tab bar reappear + if let sv = scrollView { + originalDelegate?.scrollViewDidEndDragging?(sv, willDecelerate: false) + originalDelegate?.scrollViewDidEndDecelerating?(sv) + } } @objc private func tick(_ link: CADisplayLink) {