mirror of
https://github.com/faroukbmiled/RyukGram.git
synced 2026-07-30 16:08:57 +02:00
modded scinsta with additional features and fixes for recent instagram version
This commit is contained in:
+103
@@ -0,0 +1,103 @@
|
||||
//
|
||||
// JGProgressHUDIndicatorView.m
|
||||
// JGProgressHUD
|
||||
//
|
||||
// Created by Jonas Gessner on 20.7.14.
|
||||
// Copyright (c) 2014 Jonas Gessner. All rights reserved.
|
||||
//
|
||||
|
||||
#import "JGProgressHUDIndicatorView.h"
|
||||
#import "JGProgressHUD.h"
|
||||
|
||||
@interface JGProgressHUDIndicatorView () {
|
||||
BOOL _accessibilityUpdateScheduled;
|
||||
}
|
||||
|
||||
+ (void)runBlock:(void (^)(void))block;
|
||||
|
||||
@end
|
||||
|
||||
static void runOnNextRunLoop(void (^block)(void)) {
|
||||
[[NSRunLoop currentRunLoop] performSelector:@selector(runBlock:) target:[JGProgressHUDIndicatorView class] argument:(id)block order:0 modes:@[NSRunLoopCommonModes]];
|
||||
}
|
||||
|
||||
@implementation JGProgressHUDIndicatorView
|
||||
|
||||
#pragma mark - Initializers
|
||||
|
||||
- (instancetype)initWithFrame:(CGRect __unused)frame {
|
||||
return [self init];
|
||||
}
|
||||
|
||||
- (instancetype)init {
|
||||
return [self initWithContentView:nil];
|
||||
}
|
||||
|
||||
- (instancetype)initWithContentView:(UIView *)contentView {
|
||||
self = [super initWithFrame:(contentView ? contentView.frame : CGRectMake(0.0, 0.0, 50.0, 50.0))];
|
||||
if (self) {
|
||||
self.opaque = NO;
|
||||
self.backgroundColor = [UIColor clearColor];
|
||||
|
||||
self.isAccessibilityElement = YES;
|
||||
[self setNeedsAccessibilityUpdate];
|
||||
|
||||
if (contentView) {
|
||||
_contentView = contentView;
|
||||
|
||||
[self addSubview:self.contentView];
|
||||
}
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
#pragma mark - Setup
|
||||
|
||||
- (void)setUpForHUDStyle:(JGProgressHUDStyle)style vibrancyEnabled:(BOOL)vibrancyEnabled {}
|
||||
|
||||
#pragma mark - Accessibility
|
||||
|
||||
+ (void)runBlock:(void (^)(void))block {
|
||||
if (block != nil) {
|
||||
block();
|
||||
}
|
||||
}
|
||||
|
||||
- (void)setNeedsAccessibilityUpdate {
|
||||
if (!_accessibilityUpdateScheduled) {
|
||||
_accessibilityUpdateScheduled = YES;
|
||||
|
||||
runOnNextRunLoop(^{
|
||||
[self updateAccessibilityIfNeeded];
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
- (void)updateAccessibilityIfNeeded {
|
||||
if (_accessibilityUpdateScheduled) {
|
||||
[self updateAccessibility];
|
||||
_accessibilityUpdateScheduled = NO;
|
||||
}
|
||||
}
|
||||
|
||||
- (void)updateAccessibility {
|
||||
self.accessibilityLabel = [NSLocalizedString(@"Loading",) stringByAppendingFormat:@" %.f %%", self.progress];
|
||||
}
|
||||
|
||||
#pragma mark - Getters & Setters
|
||||
|
||||
- (void)setProgress:(float)progress {
|
||||
[self setProgress:progress animated:NO];
|
||||
}
|
||||
|
||||
- (void)setProgress:(float)progress animated:(__unused BOOL)animated {
|
||||
if (fequal(self.progress, progress)) {
|
||||
return;
|
||||
}
|
||||
|
||||
_progress = progress;
|
||||
|
||||
[self setNeedsAccessibilityUpdate];
|
||||
}
|
||||
|
||||
@end
|
||||
Reference in New Issue
Block a user