mirror of
https://github.com/arichornlover/uYouEnhanced.git
synced 2026-04-07 06:29:24 +00:00
917 lines
51 KiB
Text
917 lines
51 KiB
Text
#import "Tweaks/YouTubeHeader/YTSettingsViewController.h"
|
|
#import "Tweaks/YouTubeHeader/YTSearchableSettingsViewController.h"
|
|
#import "Tweaks/YouTubeHeader/YTSettingsSectionItem.h"
|
|
#import "Tweaks/YouTubeHeader/YTSettingsSectionItemManager.h"
|
|
#import "Tweaks/YouTubeHeader/YTUIUtils.h"
|
|
#import "Tweaks/YouTubeHeader/YTSettingsPickerViewController.h"
|
|
#import "Header.h"
|
|
|
|
static BOOL IsEnabled(NSString *key) {
|
|
return [[NSUserDefaults standardUserDefaults] boolForKey:key];
|
|
}
|
|
static int GetSelection(NSString *key) {
|
|
return [[NSUserDefaults standardUserDefaults] integerForKey:key];
|
|
}
|
|
static int colorContrastMode() {
|
|
return [[NSUserDefaults standardUserDefaults] integerForKey:@"lcmColor"];
|
|
}
|
|
static int appVersionSpoofer() {
|
|
return [[NSUserDefaults standardUserDefaults] integerForKey:@"versionSpoofer"];
|
|
}
|
|
static const NSInteger uYouPlusSection = 500;
|
|
|
|
@interface YTSettingsSectionItemManager (uYouPlus)
|
|
- (void)updateTweakSectionWithEntry:(id)entry;
|
|
@end
|
|
|
|
extern NSBundle *uYouPlusBundle();
|
|
|
|
// Settings
|
|
%hook YTAppSettingsPresentationData
|
|
+ (NSArray *)settingsCategoryOrder {
|
|
NSArray *order = %orig;
|
|
NSMutableArray *mutableOrder = [order mutableCopy];
|
|
NSUInteger insertIndex = [order indexOfObject:@(1)];
|
|
if (insertIndex != NSNotFound)
|
|
[mutableOrder insertObject:@(uYouPlusSection) atIndex:insertIndex + 1];
|
|
return mutableOrder;
|
|
}
|
|
%end
|
|
|
|
%hook YTSettingsSectionController
|
|
- (void)setSelectedItem:(NSUInteger)selectedItem {
|
|
if (selectedItem != NSNotFound) %orig;
|
|
}
|
|
%end
|
|
|
|
%hook YTSettingsSectionItemManager
|
|
%new(v@:@)
|
|
- (void)updateTweakSectionWithEntry:(id)entry {
|
|
NSMutableArray *sectionItems = [NSMutableArray array];
|
|
NSBundle *tweakBundle = uYouPlusBundle();
|
|
Class YTSettingsSectionItemClass = %c(YTSettingsSectionItem);
|
|
YTSettingsViewController *settingsViewController = [self valueForKey:@"_settingsViewControllerDelegate"];
|
|
|
|
YTSettingsSectionItem *version = [%c(YTSettingsSectionItem)
|
|
itemWithTitle:[NSString stringWithFormat:LOC(@"VERSION"), @(OS_STRINGIFY(TWEAK_VERSION))]
|
|
titleDescription:LOC(@"VERSION_CHECK")
|
|
accessibilityIdentifier:nil
|
|
detailTextBlock:nil
|
|
selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
return [%c(YTUIUtils) openURL:[NSURL URLWithString:@"https://github.com/arichorn/uYouPlusExtra/releases/latest"]];
|
|
}];
|
|
[sectionItems addObject:version];
|
|
|
|
# pragma mark - VideoPlayer
|
|
YTSettingsSectionItem *videoPlayerGroup = [YTSettingsSectionItemClass itemWithTitle:LOC(@"VIDEO_PLAYER_OPTIONS") accessibilityIdentifier:nil detailTextBlock:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
NSArray <YTSettingsSectionItem *> *rows = @[
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"AUTO_FULLSCREEN")
|
|
titleDescription:LOC(@"AUTO_FULLSCREEN_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"autoFull_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"autoFull_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"SNAP_TO_CHAPTER")
|
|
titleDescription:LOC(@"SNAP_TO_CHAPTER_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"snapToChapter_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"snapToChapter_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"PINCH_TO_ZOOM")
|
|
titleDescription:LOC(@"PINCH_TO_ZOOM_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"pinchToZoom_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"pinchToZoom_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"YT_MINIPLAYER")
|
|
titleDescription:LOC(@"YT_MINIPLAYER_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"ytMiniPlayer_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"ytMiniPlayer_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"STOCK_VOLUME_HUD")
|
|
titleDescription:LOC(@"STOCK_VOLUME_HUD_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"stockVolumeHUD_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"stockVolumeHUD_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
];
|
|
YTSettingsPickerViewController *picker = [[%c(YTSettingsPickerViewController) alloc] initWithNavTitle:LOC(@"VIDEO_PLAYER_OPTIONS") pickerSectionTitle:nil rows:rows selectedItemIndex:NSNotFound parentResponder:[self parentResponder]];
|
|
[settingsViewController pushViewController:picker];
|
|
return YES;
|
|
}];
|
|
[sectionItems addObject:videoPlayerGroup];
|
|
|
|
# pragma mark - Video Controls Overlay Options
|
|
YTSettingsSectionItem *videoControlOverlayGroup = [YTSettingsSectionItemClass itemWithTitle:LOC(@"VIDEO_CONTROLS_OVERLAY_OPTIONS") accessibilityIdentifier:nil detailTextBlock:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
NSArray <YTSettingsSectionItem *> *rows = @[
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_AUTOPLAY_SWITCH")
|
|
titleDescription:LOC(@"HIDE_AUTOPLAY_SWITCH_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"hideAutoplaySwitch_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hideAutoplaySwitch_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_SUBTITLES_BUTTON")
|
|
titleDescription:LOC(@"HIDE_SUBTITLES_BUTTON_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"hideCC_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hideCC_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_HUD_MESSAGES")
|
|
titleDescription:LOC(@"HIDE_HUD_MESSAGES_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"hideHUD_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hideHUD_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_PAID_PROMOTION_CARDS")
|
|
titleDescription:LOC(@"HIDE_PAID_PROMOTION_CARDS_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"hidePaidPromotionCard_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hidePaidPromotionCard_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_CHANNEL_WATERMARK")
|
|
titleDescription:LOC(@"HIDE_CHANNEL_WATERMARK_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"hideChannelWatermark_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hideChannelWatermark_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_PREVIOUS_AND_NEXT_BUTTON")
|
|
titleDescription:LOC(@"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"hidePreviousAndNextButton_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hidePreviousAndNextButton_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"REPLACE_PREVIOUS_NEXT_BUTTON")
|
|
titleDescription:LOC(@"REPLACE_PREVIOUS_NEXT_BUTTON_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"replacePreviousAndNextButton_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"replacePreviousAndNextButton_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_HOVER_CARD")
|
|
titleDescription:LOC(@"HIDE_HOVER_CARD_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"hideHoverCards_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hideHoverCards_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_RIGHT_PANEL")
|
|
titleDescription:LOC(@"HIDE_RIGHT_PANEL_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"hideRightPanel_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hideRightPanel_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"Hide Dark Overlay Background")
|
|
titleDescription:LOC(@"Hide video player's dark overlay background.")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"hideOverlayDarkBackground_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hideOverlayDarkBackground_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0]
|
|
];
|
|
YTSettingsPickerViewController *picker = [[%c(YTSettingsPickerViewController) alloc] initWithNavTitle:LOC(@"VIDEO_CONTROLS_OVERLAY_OPTIONS") pickerSectionTitle:nil rows:rows selectedItemIndex:NSNotFound parentResponder:[self parentResponder]];
|
|
[settingsViewController pushViewController:picker];
|
|
return YES;
|
|
}];
|
|
[sectionItems addObject:videoControlOverlayGroup];
|
|
|
|
# pragma mark - Shorts Controls Overlay Options
|
|
YTSettingsSectionItem *shortsControlOverlayGroup = [YTSettingsSectionItemClass itemWithTitle:LOC(@"SHORTS_CONTROLS_OVERLAY_OPTIONS") accessibilityIdentifier:nil detailTextBlock:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
NSArray <YTSettingsSectionItem *> *rows = @[
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_SHORTS_CHANNEL_AVATAR")
|
|
titleDescription:LOC(@"HIDE_SHORTS_CHANNEL_AVATAR_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"hideShortsChannelAvatar_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hideShortsChannelAvatar_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"Hide Shorts like button")
|
|
titleDescription:LOC(@"")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"hideShortsLikeButton_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hideShortsLikeButton_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_SHORTS_DISLIKE_BUTTON")
|
|
titleDescription:LOC(@"HIDE_SHORTS_DISLIKE_BUTTON_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"hideShortsDislikeButton_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hideShortsDislikeButton_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_SHORTS_COMMENT_BUTTON")
|
|
titleDescription:LOC(@"HIDE_SHORTS_COMMENT_BUTTON_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"hideShortsCommentButton_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hideShortsCommentButton_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_SHORTS_REMIX_BUTTON")
|
|
titleDescription:LOC(@"HIDE_SHORTS_REMIX_BUTTON_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"hideShortsRemixButton_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hideShortsRemixButton_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_SHORTS_SHARE_BUTTON")
|
|
titleDescription:LOC(@"HIDE_SHORTS_SHARE_BUTTON_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"hideShortsShareButton_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hideShortsShareButton_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_SUPER_THANKS")
|
|
titleDescription:LOC(@"HIDE_SUPER_THANKS_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"hideBuySuperThanks_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hideBuySuperThanks_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_UYOU_SHORTS_DOWNLOAD_BUTTON")
|
|
titleDescription:LOC(@"HIDE_UYOU_SHORTS_DOWNLOAD_BUTTON_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"hideuYouShortsDownloadButton_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hideuYouShortsDownloadButton_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"DISABLE_RESUME_TO_SHORTS")
|
|
titleDescription:LOC(@"DISABLE_RESUME_TO_SHORTS_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"disableResumeToShorts")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"disableResumeToShorts"];
|
|
return YES;
|
|
}
|
|
settingItemId:0]
|
|
];
|
|
YTSettingsPickerViewController *picker = [[%c(YTSettingsPickerViewController) alloc] initWithNavTitle:LOC(@"SHORTS_CONTROLS_OVERLAY_OPTIONS") pickerSectionTitle:nil rows:rows selectedItemIndex:NSNotFound parentResponder:[self parentResponder]];
|
|
[settingsViewController pushViewController:picker];
|
|
return YES;
|
|
}];
|
|
[sectionItems addObject:shortsControlOverlayGroup];
|
|
|
|
# pragma mark - LowContrastMode
|
|
YTSettingsSectionItem *lowContrastModeSection = [YTSettingsSectionItemClass itemWithTitle:LOC(@"Low contrast text color")
|
|
accessibilityIdentifier:nil
|
|
detailTextBlock:^NSString *() {
|
|
switch (colorContrastMode()) {
|
|
case 1:
|
|
return LOC(@"Red UI");
|
|
case 2:
|
|
return LOC(@"Blue UI");
|
|
case 3:
|
|
return LOC(@"Green UI");
|
|
case 4:
|
|
return LOC(@"Yellow UI");
|
|
case 5:
|
|
return LOC(@"Orange UI");
|
|
case 6:
|
|
return LOC(@"Purple UI");
|
|
case 7:
|
|
return LOC(@"Violet UI");
|
|
case 8:
|
|
return LOC(@"Pink UI");
|
|
case 0:
|
|
default:
|
|
return LOC(@"Default UI");
|
|
}
|
|
}
|
|
selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
NSArray <YTSettingsSectionItem *> *rows = @[
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:LOC(@"Default UI") titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:0 forKey:@"lcmColor"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:LOC(@"Red UI") titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:1 forKey:@"lcmColor"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:LOC(@"Blue UI") titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:2 forKey:@"lcmColor"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:LOC(@"Green UI") titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:3 forKey:@"lcmColor"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:LOC(@"Yellow UI") titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:4 forKey:@"lcmColor"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:LOC(@"Orange UI") titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:5 forKey:@"lcmColor"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:LOC(@"Purple UI") titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:6 forKey:@"lcmColor"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:LOC(@"Violet UI") titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:7 forKey:@"lcmColor"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:LOC(@"Pink UI") titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:8 forKey:@"lcmColor"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}]
|
|
];
|
|
YTSettingsPickerViewController *picker = [[%c(YTSettingsPickerViewController) alloc] initWithNavTitle:LOC(@"Low contrast text color") pickerSectionTitle:nil rows:rows selectedItemIndex:colorContrastMode() parentResponder:[self parentResponder]];
|
|
[settingsViewController pushViewController:picker];
|
|
return YES;
|
|
}];
|
|
|
|
# pragma mark - VersionSpoofer
|
|
YTSettingsSectionItem *versionSpooferSection = [YTSettingsSectionItemClass itemWithTitle:@"Version Spoofer Picker"
|
|
accessibilityIdentifier:nil
|
|
detailTextBlock:^NSString *() {
|
|
switch (appVersionSpoofer()) {
|
|
case 1:
|
|
return @"v16.42.3";
|
|
case 2:
|
|
return @"v16.41.2";
|
|
case 3:
|
|
return @"v16.40.3";
|
|
case 4:
|
|
return @"v16.39.6";
|
|
case 5:
|
|
return @"v16.38.2";
|
|
case 6:
|
|
return @"v16.37.3";
|
|
case 7:
|
|
return @"v16.36.4";
|
|
case 8:
|
|
return @"v16.35.5";
|
|
case 9:
|
|
return @"v16.35.4";
|
|
case 10:
|
|
return @"v16.34.7";
|
|
case 11:
|
|
return @"v16.34.3";
|
|
case 12:
|
|
return @"v16.33.3";
|
|
case 13:
|
|
return @"v16.32.6";
|
|
case 14:
|
|
return @"v16.31.4";
|
|
case 15:
|
|
return @"v16.30.2";
|
|
case 16:
|
|
return @"v16.29.4";
|
|
case 17:
|
|
return @"v16.28.2";
|
|
case 18:
|
|
return @"v16.27.3";
|
|
case 19:
|
|
return @"v16.26.6";
|
|
case 20:
|
|
return @"v16.25.2";
|
|
case 21:
|
|
return @"v16.24.2";
|
|
case 22:
|
|
return @"v16.23.3";
|
|
case 23:
|
|
return @"v16.23.2";
|
|
case 24:
|
|
return @"v16.22.5";
|
|
case 25:
|
|
return @"v16.20.5";
|
|
case 26:
|
|
return @"v16.19.6";
|
|
case 27:
|
|
return @"v16.18.5";
|
|
case 28:
|
|
return @"v16.17.4";
|
|
case 29:
|
|
return @"v16.16.4";
|
|
case 30:
|
|
return @"v16.16.3";
|
|
case 31:
|
|
return @"v16.15.4";
|
|
case 32:
|
|
return @"v16.14.2";
|
|
case 33:
|
|
return @"v16.13.1";
|
|
case 34:
|
|
return @"v16.12.3";
|
|
case 35:
|
|
return @"v16.11.3";
|
|
case 36:
|
|
return @"v16.10.3";
|
|
case 37:
|
|
return @"v16.09.3";
|
|
case 38:
|
|
return @"v16.09.2";
|
|
case 39:
|
|
return @"v16.08.2";
|
|
case 40:
|
|
return @"v16.05.9";
|
|
case 41:
|
|
return @"v16.05.8";
|
|
case 42:
|
|
return @"v16.05.7";
|
|
case 0:
|
|
default:
|
|
return @"latest version";
|
|
}
|
|
}
|
|
selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
NSArray <YTSettingsSectionItem *> *rows = @[
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"latest version" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:0 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.42.3" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:1 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.41.2" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:2 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.40.3" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:3 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.39.6" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:4 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.38.2" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:5 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.37.3" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:6 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.36.4" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:7 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.35.5" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:8 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.35.4" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:9 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.34.7" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:10 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.34.3" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:11 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.33.3" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:12 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.32.6" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:13 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.31.4" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:14 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.30.2" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:15 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.29.4" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:16 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.28.2" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:17 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.27.3" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:18 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.26.6" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:19 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.25.2" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:20 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.24.2" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:21 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.23.3" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:22 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.23.2" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:23 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.22.5" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:24 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.20.5" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:25 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.19.6" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:26 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.18.5" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:27 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.17.4" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:28 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.16.4" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:29 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.16.3" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:30 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.15.4" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:31 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.14.2" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:32 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.13.1" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:33 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.12.3" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:34 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.11.3" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:35 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.10.3" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:36 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.09.3" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:37 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.09.2" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:38 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.08.2" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:39 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.05.9" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:40 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.05.8" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:41 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:@"v16.05.7" titleDescription:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:42 forKey:@"versionSpoofer"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}]
|
|
];
|
|
YTSettingsPickerViewController *picker = [[%c(YTSettingsPickerViewController) alloc] initWithNavTitle:LOC(@"Version Spoofer Picker") pickerSectionTitle:nil rows:rows selectedItemIndex:appVersionSpoofer() parentResponder:[self parentResponder]];
|
|
[settingsViewController pushViewController:picker];
|
|
return YES;
|
|
}];
|
|
|
|
|
|
# pragma mark - Theme
|
|
YTSettingsSectionItem *themeGroup = [YTSettingsSectionItemClass itemWithTitle:LOC(@"THEME_OPTIONS")
|
|
accessibilityIdentifier:nil
|
|
detailTextBlock:^NSString *() {
|
|
switch (GetSelection(@"appTheme")) {
|
|
case 1:
|
|
return LOC(@"OLED_DARK_THEME_2");
|
|
case 0:
|
|
default:
|
|
return LOC(@"DEFAULT_THEME");
|
|
}
|
|
}
|
|
selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
NSArray <YTSettingsSectionItem *> *rows = @[
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:LOC(@"DEFAULT_THEME") titleDescription:LOC(@"DEFAULT_THEME_DESC") selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:0 forKey:@"appTheme"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:LOC(@"OLED_DARK_THEME") titleDescription:LOC(@"OLED_DARK_THEME_DESC") selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
[[NSUserDefaults standardUserDefaults] setInteger:1 forKey:@"appTheme"];
|
|
[settingsViewController reloadData];
|
|
return YES;
|
|
}],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"OLED_KEYBOARD")
|
|
titleDescription:LOC(@"OLED_KEYBOARD_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"oledKeyBoard_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"oledKeyBoard_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"Low Contrast Mode")
|
|
titleDescription:LOC(@"this will Low Contrast texts and buttons just like how the old YouTube Interface did. App restart is required.")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"lowContrastMode_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"lowContrastMode_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0], lowContrastModeSection];
|
|
YTSettingsPickerViewController *picker = [[%c(YTSettingsPickerViewController) alloc] initWithNavTitle:LOC(@"THEME_OPTIONS") pickerSectionTitle:nil rows:rows selectedItemIndex:GetSelection(@"appTheme") parentResponder:[self parentResponder]];
|
|
[settingsViewController pushViewController:picker];
|
|
return YES;
|
|
}];
|
|
[sectionItems addObject:themeGroup];
|
|
|
|
# pragma mark - Miscellaneous
|
|
YTSettingsSectionItem *miscellaneousGroup = [YTSettingsSectionItemClass itemWithTitle:LOC(@"MISCELLANEOUS") accessibilityIdentifier:nil detailTextBlock:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
|
NSArray <YTSettingsSectionItem *> *rows = @[
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"CAST_CONFIRM")
|
|
titleDescription:LOC(@"CAST_CONFIRM_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"castConfirm_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"castConfirm_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"DISABLE_HINTS")
|
|
titleDescription:LOC(@"DISABLE_HINTS_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"disableHints_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"disableHints_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"Hide YouTube Logo")
|
|
titleDescription:LOC(@"Toggle this to hide the YouTube Logo in the YouTube App.")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"hideYouTubeLogo_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hideYouTubeLogo_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_CHIP_BAR")
|
|
titleDescription:LOC(@"HIDE_CHIP_BAR_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"hideChipBar_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hideChipBar_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"IPHONE_LAYOUT")
|
|
titleDescription:LOC(@"IPHONE_LAYOUT_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"iPhoneLayout_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"iPhoneLayout_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"NEW_MINIPLAYER_STYLE")
|
|
titleDescription:LOC(@"NEW_MINIPLAYER_STYLE_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"bigYTMiniPlayer_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"bigYTMiniPlayer_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"Hide iSponsorBlock button in the Navigation bar")
|
|
titleDescription:LOC(@"")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"hideSponsorBlockButton_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hideSponsorBlockButton_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"Disable Wifi Related Settings ")
|
|
titleDescription:LOC(@"This will disable the following sections which will be Autoplay, Purchases and memberships, Notifications, Connected apps, Manage all history, Privacy & Live chat.")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"disableWifiRelatedSettings_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"disableWifiRelatedSettings_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"YT_RE_EXPLORE")
|
|
titleDescription:LOC(@"YT_RE_EXPLORE_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"reExplore_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"reExplore_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"Enable YTSpeed")
|
|
titleDescription:LOC(@"Enable YTSpeed to have more Playback Speed Options. App restart is required.")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"ytSpeed_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"ytSpeed_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"ENABLE_FLEX")
|
|
titleDescription:LOC(@"ENABLE_FLEX_DESC")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"flex_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"flex_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0],
|
|
|
|
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"Enable App Version Spoofer")
|
|
titleDescription:LOC(@"Enable this to use the Version Spoofer and select your perferred version below. App restart is required.")
|
|
accessibilityIdentifier:nil
|
|
switchOn:IsEnabled(@"enableVersionSpoofer_enabled")
|
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"enableVersionSpoofer_enabled"];
|
|
return YES;
|
|
}
|
|
settingItemId:0], versionSpooferSection];
|
|
YTSettingsPickerViewController *picker = [[%c(YTSettingsPickerViewController) alloc] initWithNavTitle:LOC(@"MISCELLANEOUS") pickerSectionTitle:nil rows:rows selectedItemIndex:NSNotFound parentResponder:[self parentResponder]];
|
|
[settingsViewController pushViewController:picker];
|
|
return YES;
|
|
}];
|
|
[sectionItems addObject:miscellaneousGroup];
|
|
|
|
[settingsViewController setSectionItems:sectionItems forCategory:uYouPlusSection title:@"uYouPlus" titleDescription:LOC(@"TITLE DESCRIPTION") headerHidden:YES];
|
|
}
|
|
|
|
- (void)updateSectionForCategory:(NSUInteger)category withEntry:(id)entry {
|
|
if (category == uYouPlusSection) {
|
|
[self updateTweakSectionWithEntry:entry];
|
|
return;
|
|
}
|
|
%orig;
|
|
}
|
|
%end
|