Merge commit '7621e2f8dec938cf48181c8b10afc9b01f444e68' into beta

This commit is contained in:
Ilya Laktyushin
2025-12-06 02:17:48 +04:00
commit 8344b97e03
28070 changed files with 7995182 additions and 0 deletions
@@ -0,0 +1,66 @@
#import <LegacyComponents/TGModernGalleryScrollView.h>
@interface TGModernGalleryScrollView ()
{
bool _suspendBoundsUpdates;
}
@end
@implementation TGModernGalleryScrollView
- (instancetype)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self != nil)
{
self.showsHorizontalScrollIndicator = false;
self.showsVerticalScrollIndicator = false;
self.pagingEnabled = true;
self.clipsToBounds = false;
}
return self;
}
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
{
UIView *view = [super hitTest:point withEvent:event];
bool shouldScroll = true;
id<TGModernGalleryScrollViewDelegate> delegate = self.scrollDelegate;
if ([delegate respondsToSelector:@selector(scrollViewShouldScrollWithTouchAtPoint:)])
shouldScroll = [delegate scrollViewShouldScrollWithTouchAtPoint:point];
self.scrollEnabled = shouldScroll;
return view;
}
- (void)setBounds:(CGRect)bounds
{
[super setBounds:bounds];
if (!_suspendBoundsUpdates)
{
id<TGModernGalleryScrollViewDelegate> scrollDelegate = _scrollDelegate;
[scrollDelegate scrollViewBoundsChanged:bounds];
}
}
- (void)setFrameAndBoundsInTransaction:(CGRect)frame bounds:(CGRect)bounds
{
_suspendBoundsUpdates = true;
self.frame = frame;
self.bounds = bounds;
_suspendBoundsUpdates = false;
id<TGModernGalleryScrollViewDelegate> scrollDelegate = _scrollDelegate;
[scrollDelegate scrollViewBoundsChanged:bounds];
}
- (void)layoutSubviews
{
[super layoutSubviews];
}
@end