Various fixes

This commit is contained in:
Ilya Laktyushin
2024-10-25 03:04:39 +04:00
parent 2a95f774e3
commit 2fa059477c
5 changed files with 113 additions and 15 deletions

View File

@@ -865,6 +865,28 @@ final class StorageUsageScreenComponent: Component {
self.keepScreenActiveDisposable?.dispose()
}
override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
guard let result = super.hitTest(point, with: event) else {
return nil
}
var currentParent: UIView? = result
while true {
if currentParent == nil || currentParent === self {
break
}
if let scrollView = currentParent as? UIScrollView {
if scrollView === self.scrollView {
break
}
if scrollView.isDecelerating && scrollView.contentOffset.y < -scrollView.contentInset.top {
return self.scrollView
}
}
currentParent = currentParent?.superview
}
return result
}
func scrollViewWillBeginDragging(_ scrollView: UIScrollView) {
self.enableVelocityTracking = true
}