Various fixes

This commit is contained in:
Ilya Laktyushin 2022-04-18 20:11:55 +04:00
parent ff2dad403c
commit 1f7685b9fb
2 changed files with 8 additions and 7 deletions

View File

@ -209,18 +209,18 @@ final class AttachmentContainer: ASDisplayNode, UIGestureRecognizerDelegate {
if case let .known(value) = visibleContentOffset, value <= epsilon {
if let scrollView = scrollView {
scrollView.bounces = false
scrollView.setContentOffset(CGPoint(x: 0.0, y: 0.0), animated: false)
scrollView.setContentOffset(CGPoint(x: scrollView.contentOffset.x, y: 0.0), animated: false)
}
} else if let scrollView = scrollView, contentOffset <= -scrollView.contentInset.top + epsilon {
scrollView.bounces = false
scrollView.setContentOffset(CGPoint(x: 0.0, y: -scrollView.contentInset.top), animated: false)
scrollView.setContentOffset(CGPoint(x: scrollView.contentOffset.x, y: -scrollView.contentInset.top), animated: false)
} else if let scrollView = scrollView {
translation = panOffset
currentOffset = topInset + translation
if self.isExpanded {
recognizer.setTranslation(CGPoint(), in: self.view)
} else if currentOffset > 0.0 {
scrollView.setContentOffset(CGPoint(x: 0.0, y: -scrollView.contentInset.top), animated: false)
scrollView.setContentOffset(CGPoint(x: scrollView.contentOffset.x, y: -scrollView.contentInset.top), animated: false)
}
}
@ -287,7 +287,7 @@ final class AttachmentContainer: ASDisplayNode, UIGestureRecognizerDelegate {
if let listNode = listNode {
listNode.scroller.setContentOffset(CGPoint(), animated: false)
} else if let scrollView = scrollView {
scrollView.setContentOffset(CGPoint(x: 0.0, y: -scrollView.contentInset.top), animated: false)
scrollView.setContentOffset(CGPoint(x: scrollView.contentOffset.x, y: -scrollView.contentInset.top), animated: false)
}
let distance = topInset - offset
@ -318,9 +318,9 @@ final class AttachmentContainer: ASDisplayNode, UIGestureRecognizerDelegate {
if let listNode = listNode {
listNode.scroller.setContentOffset(CGPoint(), animated: false)
} else if let scrollView = scrollView {
scrollView.setContentOffset(CGPoint(x: 0.0, y: -scrollView.contentInset.top), animated: false)
scrollView.setContentOffset(CGPoint(x: scrollView.contentOffset.x, y: -scrollView.contentInset.top), animated: false)
Queue.mainQueue().after(0.01, {
scrollView.setContentOffset(CGPoint(x: 0.0, y: -scrollView.contentInset.top), animated: false)
scrollView.setContentOffset(CGPoint(x: scrollView.contentOffset.x, y: -scrollView.contentInset.top), animated: false)
})
}

View File

@ -127,7 +127,6 @@
return;
}
__block id result = nil;
[_queue dispatch:^
{
TGMemoryImageCacheItem *item = _cache[key];
@ -139,6 +138,8 @@
*attributes = item.attributes;
completion(item.object);
} else {
completion(nil);
}
}];
}