Files
GLEGram-iOS/submodules/LegacyComponents/Sources/TGModernGalleryScrollView.m
T
Leeksov 4647310322 GLEGram 12.5 — Initial public release
Based on Swiftgram 12.5 (Telegram iOS 12.5).
All GLEGram features ported and organized in GLEGram/ folder.

Features: Ghost Mode, Saved Deleted Messages, Content Protection Bypass,
Font Replacement, Fake Profile, Chat Export, Plugin System, and more.

See CHANGELOG_12.5.md for full details.
2026-04-06 09:48:12 +03:00

67 lines
1.6 KiB
Objective-C

#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