mirror of
https://github.com/SoPat712/YTLitePlus.git
synced 2025-11-01 05:13:39 -04:00
41
.github/workflows/buildapp.yml
vendored
41
.github/workflows/buildapp.yml
vendored
@@ -6,18 +6,23 @@ name: Build and Release YTLitePlus
|
|||||||
on:
|
on:
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
inputs:
|
inputs:
|
||||||
|
sdk_version:
|
||||||
|
description: "iOS SDK Version"
|
||||||
|
default: "16.5"
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
decrypted_youtube_url:
|
decrypted_youtube_url:
|
||||||
description: "The direct URL to the decrypted YouTube ipa"
|
description: "Direct URL of the decrypted YouTube ipa"
|
||||||
default: ""
|
default: ""
|
||||||
required: true
|
required: true
|
||||||
type: string
|
type: string
|
||||||
bundle_id:
|
bundle_id:
|
||||||
description: "Modify the bundle ID. Not recommended"
|
description: "Modify the bundle ID"
|
||||||
default: "com.google.ios.youtube"
|
default: "com.google.ios.youtube"
|
||||||
required: true
|
required: true
|
||||||
type: string
|
type: string
|
||||||
app_name:
|
app_name:
|
||||||
description: "Modify the name of the app on the Home Screen. Not recommended"
|
description: "Modify the app name"
|
||||||
default: "YouTube"
|
default: "YouTube"
|
||||||
required: true
|
required: true
|
||||||
type: string
|
type: string
|
||||||
@@ -26,9 +31,19 @@ on:
|
|||||||
default: ""
|
default: ""
|
||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
|
upload_artifact:
|
||||||
|
description: "Upload ipa as artifact"
|
||||||
|
default: true
|
||||||
|
required: false
|
||||||
|
type: boolean
|
||||||
|
catbox_upload:
|
||||||
|
description: "Upload ipa to Catbox.moe"
|
||||||
|
default: false
|
||||||
|
required: false
|
||||||
|
type: boolean
|
||||||
create_release:
|
create_release:
|
||||||
description: "Create a draft release"
|
description: "Create a draft release"
|
||||||
default: true
|
default: false
|
||||||
required: false
|
required: false
|
||||||
type: boolean
|
type: boolean
|
||||||
|
|
||||||
@@ -62,21 +77,22 @@ jobs:
|
|||||||
path: theos
|
path: theos
|
||||||
submodules: recursive
|
submodules: recursive
|
||||||
|
|
||||||
- name: Caching
|
- name: SDK Caching
|
||||||
id: SDK
|
id: SDK
|
||||||
uses: actions/cache@v4.0.2
|
uses: actions/cache@v4.0.2
|
||||||
env:
|
env:
|
||||||
cache-name: iOS-16.5-SDK
|
cache-name: iOS-${{ inputs.sdk_version }}-SDK
|
||||||
with:
|
with:
|
||||||
path: theos/sdks/
|
path: theos/sdks/
|
||||||
key: ${{ env.cache-name }}
|
key: ${{ env.cache-name }}
|
||||||
|
restore-keys: ${{ env.cache-name }}
|
||||||
|
|
||||||
- name: Download iOS 16.5 SDK
|
- name: Download iOS SDK
|
||||||
if: steps.SDK.outputs.cache-hit != 'true'
|
if: steps.SDK.outputs.cache-hit != 'true'
|
||||||
run: |
|
run: |
|
||||||
git clone -n --depth=1 --filter=tree:0 https://github.com/theos/sdks/
|
git clone -n --depth=1 --filter=tree:0 https://github.com/theos/sdks/
|
||||||
cd sdks
|
cd sdks
|
||||||
git sparse-checkout set --no-cone iPhoneOS16.5.sdk
|
git sparse-checkout set --no-cone iPhoneOS${{ inputs.sdk_version }}.sdk
|
||||||
git checkout
|
git checkout
|
||||||
mv *.sdk $THEOS/sdks
|
mv *.sdk $THEOS/sdks
|
||||||
env:
|
env:
|
||||||
@@ -124,6 +140,7 @@ jobs:
|
|||||||
sed -i '' "12s#.*#BUNDLE_ID = ${{ env.BUNDLE_ID }}#g" Makefile
|
sed -i '' "12s#.*#BUNDLE_ID = ${{ env.BUNDLE_ID }}#g" Makefile
|
||||||
sed -i '' "11s#.*#DISPLAY_NAME = ${{ env.APP_NAME }}#g" Makefile
|
sed -i '' "11s#.*#DISPLAY_NAME = ${{ env.APP_NAME }}#g" Makefile
|
||||||
sed -i '' "s/^PACKAGE_VERSION.*$/PACKAGE_VERSION = ${{ env.YT_VERSION }}-${{ env.YTLITE_VERSION }}/" Makefile
|
sed -i '' "s/^PACKAGE_VERSION.*$/PACKAGE_VERSION = ${{ env.YT_VERSION }}-${{ env.YTLITE_VERSION }}/" Makefile
|
||||||
|
sed -i '' "1s#.*#export TARGET = iphone:clang:${{ inputs.sdk_version }}:15.0#g" Makefile
|
||||||
make package FINALPACKAGE=1
|
make package FINALPACKAGE=1
|
||||||
(mv "packages/$(ls -t packages | head -n1)" "packages/YTLitePlus_${{ env.YT_VERSION }}_${{ env.YTLITE_VERSION }}.ipa")
|
(mv "packages/$(ls -t packages | head -n1)" "packages/YTLitePlus_${{ env.YT_VERSION }}_${{ env.YTLITE_VERSION }}.ipa")
|
||||||
echo "package=$(ls -t packages | head -n1)" >>$GITHUB_OUTPUT
|
echo "package=$(ls -t packages | head -n1)" >>$GITHUB_OUTPUT
|
||||||
@@ -135,6 +152,7 @@ jobs:
|
|||||||
APP_NAME: ${{ inputs.app_name }}
|
APP_NAME: ${{ inputs.app_name }}
|
||||||
|
|
||||||
- name: Upload Artifact
|
- name: Upload Artifact
|
||||||
|
if: ${{ inputs.upload_artifact }}
|
||||||
uses: actions/upload-artifact@v4.3.3
|
uses: actions/upload-artifact@v4.3.3
|
||||||
with:
|
with:
|
||||||
name: YTLitePlus_${{ env.YT_VERSION }}_${{ env.YTLITE_VERSION }}
|
name: YTLitePlus_${{ env.YT_VERSION }}_${{ env.YTLITE_VERSION }}
|
||||||
@@ -142,6 +160,7 @@ jobs:
|
|||||||
if-no-files-found: error
|
if-no-files-found: error
|
||||||
|
|
||||||
- name: Upload Artifact to Catbox
|
- name: Upload Artifact to Catbox
|
||||||
|
if: ${{ inputs.catbox_upload }}
|
||||||
run: |
|
run: |
|
||||||
RESPONSE=$(curl -F "reqtype=fileupload" -F "fileToUpload=@${{ github.workspace }}/main/packages/${{ steps.build_package.outputs.package }}" https://catbox.moe/user/api.php)
|
RESPONSE=$(curl -F "reqtype=fileupload" -F "fileToUpload=@${{ github.workspace }}/main/packages/${{ steps.build_package.outputs.package }}" https://catbox.moe/user/api.php)
|
||||||
CATBOX_URL=$(echo $RESPONSE | grep -o -E 'https://files.catbox.moe/[^"]*')
|
CATBOX_URL=$(echo $RESPONSE | grep -o -E 'https://files.catbox.moe/[^"]*')
|
||||||
@@ -150,25 +169,27 @@ jobs:
|
|||||||
echo "CATBOX_FILE=$CATBOX_FILE" >> $GITHUB_ENV
|
echo "CATBOX_FILE=$CATBOX_FILE" >> $GITHUB_ENV
|
||||||
|
|
||||||
- name: Prepare Release Notes
|
- name: Prepare Release Notes
|
||||||
|
if: ${{ inputs.create_release }}
|
||||||
run: |
|
run: |
|
||||||
export TODAY=$(date '+%Y-%m-%d')
|
export TODAY=$(date '+%Y-%m-%d')
|
||||||
sed "s/%ytliteplus_version%/${{ env.YTLITE_VERSION }}/g; s/%youtube_version%/${{ env.YT_VERSION }}/g; s/%catbox_url%/${{ env.CATBOX_FILE }}/g; s/%date%/$TODAY/g" \
|
sed "s/%ytliteplus_version%/${{ env.YTLITE_VERSION }}/g; s/%youtube_version%/${{ env.YT_VERSION }}/g; s/%catbox_url%/${{ env.CATBOX_FILE }}/g; s/%date%/$TODAY/g" \
|
||||||
main/.github/RELEASE_TEMPLATE/Release.md > ${{ github.workspace }}/release_notes.md
|
main/.github/RELEASE_TEMPLATE/Release.md > ${{ github.workspace }}/release_notes.md
|
||||||
|
|
||||||
- name: Create Release
|
- name: Create Release
|
||||||
|
if: ${{ inputs.create_release }}
|
||||||
id: create_release
|
id: create_release
|
||||||
uses: softprops/action-gh-release@v2.0.6
|
uses: softprops/action-gh-release@v2.0.6
|
||||||
env:
|
env:
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
DRAFT: ${{ inputs.create_release }}
|
|
||||||
with:
|
with:
|
||||||
tag_name: v${{ env.YT_VERSION }}-${{ env.YTLITE_VERSION }}
|
tag_name: v${{ env.YT_VERSION }}-${{ env.YTLITE_VERSION }}
|
||||||
name: v${{ env.YT_VERSION }}-${{ env.YTLITE_VERSION }} - YTLitePlus
|
name: v${{ env.YT_VERSION }}-${{ env.YTLITE_VERSION }} - YTLitePlus
|
||||||
files: main/packages/*.ipa
|
files: main/packages/*.ipa
|
||||||
draft: ${{ env.DRAFT }}
|
draft: true
|
||||||
body_path: ${{ github.workspace }}/release_notes.md
|
body_path: ${{ github.workspace }}/release_notes.md
|
||||||
|
|
||||||
- name: Update Altstore Source with latest release
|
- name: Update Altstore Source with latest release
|
||||||
|
if: ${{ inputs.create_release }}
|
||||||
run: |
|
run: |
|
||||||
curl --location --request POST 'https://api.github.com/repos/Balackburn/YTLitePlusAltstore/dispatches' \
|
curl --location --request POST 'https://api.github.com/repos/Balackburn/YTLitePlusAltstore/dispatches' \
|
||||||
--header 'Authorization: token ${{ secrets.PERSONAL_ACCESS_TOKEN }}' \
|
--header 'Authorization: token ${{ secrets.PERSONAL_ACCESS_TOKEN }}' \
|
||||||
|
|||||||
@@ -7,6 +7,18 @@
|
|||||||
#import "../Tweaks/YouTubeHeader/YTSettingsPickerViewController.h"
|
#import "../Tweaks/YouTubeHeader/YTSettingsPickerViewController.h"
|
||||||
// #import "AppIconOptionsController.h"
|
// #import "AppIconOptionsController.h"
|
||||||
|
|
||||||
|
// Basic switch item
|
||||||
|
#define BASIC_SWITCH(title, description, key) \
|
||||||
|
[YTSettingsSectionItemClass switchItemWithTitle:title \
|
||||||
|
titleDescription:description \
|
||||||
|
accessibilityIdentifier:nil \
|
||||||
|
switchOn:IsEnabled(key) \
|
||||||
|
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) { \
|
||||||
|
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:key]; \
|
||||||
|
return YES; \
|
||||||
|
} \
|
||||||
|
settingItemId:0]
|
||||||
|
|
||||||
static BOOL IsEnabled(NSString *key) {
|
static BOOL IsEnabled(NSString *key) {
|
||||||
return [[NSUserDefaults standardUserDefaults] boolForKey:key];
|
return [[NSUserDefaults standardUserDefaults] boolForKey:key];
|
||||||
}
|
}
|
||||||
@@ -19,7 +31,6 @@ static int contrastMode() {
|
|||||||
static int appVersionSpoofer() {
|
static int appVersionSpoofer() {
|
||||||
return [[NSUserDefaults standardUserDefaults] integerForKey:@"versionSpoofer"];
|
return [[NSUserDefaults standardUserDefaults] integerForKey:@"versionSpoofer"];
|
||||||
}
|
}
|
||||||
static const NSInteger YTLitePlusSection = 788;
|
|
||||||
|
|
||||||
@interface YTSettingsSectionItemManager (YTLitePlus)
|
@interface YTSettingsSectionItemManager (YTLitePlus)
|
||||||
- (void)updateYTLitePlusSectionWithEntry:(id)entry;
|
- (void)updateYTLitePlusSectionWithEntry:(id)entry;
|
||||||
@@ -27,6 +38,24 @@ static const NSInteger YTLitePlusSection = 788;
|
|||||||
|
|
||||||
extern NSBundle *YTLitePlusBundle();
|
extern NSBundle *YTLitePlusBundle();
|
||||||
|
|
||||||
|
// Add both YTLite and YTLitePlus to YouGroupSettings
|
||||||
|
static const NSInteger YTLitePlusSection = 788;
|
||||||
|
static const NSInteger YTLiteSection = 789;
|
||||||
|
%hook YTSettingsGroupData
|
||||||
|
+ (NSMutableArray <NSNumber *> *)tweaks {
|
||||||
|
NSMutableArray <NSNumber *> *originalTweaks = %orig;
|
||||||
|
|
||||||
|
static dispatch_once_t onceToken;
|
||||||
|
dispatch_once(&onceToken, ^{
|
||||||
|
[originalTweaks addObject:@(YTLitePlusSection)];
|
||||||
|
[originalTweaks addObject:@(YTLiteSection)];
|
||||||
|
});
|
||||||
|
|
||||||
|
return originalTweaks;
|
||||||
|
}
|
||||||
|
%end
|
||||||
|
|
||||||
|
|
||||||
// Settings
|
// Settings
|
||||||
%hook YTAppSettingsPresentationData
|
%hook YTAppSettingsPresentationData
|
||||||
+ (NSArray *)settingsCategoryOrder {
|
+ (NSArray *)settingsCategoryOrder {
|
||||||
@@ -83,65 +112,13 @@ extern NSBundle *YTLitePlusBundle();
|
|||||||
# pragma mark - Video Controls Overlay Options
|
# 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) {
|
YTSettingsSectionItem *videoControlOverlayGroup = [YTSettingsSectionItemClass itemWithTitle:LOC(@"VIDEO_CONTROLS_OVERLAY_OPTIONS") accessibilityIdentifier:nil detailTextBlock:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
||||||
NSArray <YTSettingsSectionItem *> *rows = @[
|
NSArray <YTSettingsSectionItem *> *rows = @[
|
||||||
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"ENABLE_SHARE_BUTTON")
|
BASIC_SWITCH(LOC(@"ENABLE_SHARE_BUTTON"), LOC(@"ENABLE_SHARE_BUTTON_DESC"), @"enableShareButton_enabled"),
|
||||||
titleDescription:LOC(@"ENABLE_SHARE_BUTTON_DESC")
|
BASIC_SWITCH(LOC(@"ENABLE_SAVE_TO_PLAYLIST_BUTTON"), LOC(@"ENABLE_SAVE_TO_PLAYLIST_BUTTON_DESC"), @"enableSaveToButton_enabled"),
|
||||||
accessibilityIdentifier:nil
|
BASIC_SWITCH(LOC(@"HIDE_SHADOW_OVERLAY_BUTTONS"), LOC(@"HIDE_SHADOW_OVERLAY_BUTTONS_DESC"), @"hideVideoPlayerShadowOverlayButtons_enabled"),
|
||||||
switchOn:IsEnabled(@"enableShareButton_enabled")
|
BASIC_SWITCH(LOC(@"HIDE_RIGHT_PANEL"), LOC(@"HIDE_RIGHT_PANEL_DESC"), @"hideRightPanel_enabled"),
|
||||||
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
BASIC_SWITCH(LOC(@"NO_SUGGESTED_VIDEO"), LOC(@"NO_SUGGESTED_VIDEO_DESC"), @"noSuggestedVideo_enabled"),
|
||||||
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"enableShareButton_enabled"];
|
BASIC_SWITCH(LOC(@"HIDE_HEATWAVES"), LOC(@"HIDE_HEATWAVES_DESC"), @"hideHeatwaves_enabled"),
|
||||||
return YES;
|
BASIC_SWITCH(LOC(@"SEEK_ANYWHERE"), LOC(@"SEEK_ANYWHERE_DESC"), @"seekAnywhere_enabled")
|
||||||
}
|
|
||||||
settingItemId:0],
|
|
||||||
|
|
||||||
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"ENABLE_SAVE_TO_PLAYLIST_BUTTON")
|
|
||||||
titleDescription:LOC(@"ENABLE_SAVE_TO_PLAYLIST_BUTTON_DESC")
|
|
||||||
accessibilityIdentifier:nil
|
|
||||||
switchOn:IsEnabled(@"enableSaveToButton_enabled")
|
|
||||||
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
||||||
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"enableSaveToButton_enabled"];
|
|
||||||
return YES;
|
|
||||||
}
|
|
||||||
settingItemId:0],
|
|
||||||
|
|
||||||
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_SHADOW_OVERLAY_BUTTONS")
|
|
||||||
titleDescription:LOC(@"HIDE_SHADOW_OVERLAY_BUTTONS_DESC")
|
|
||||||
accessibilityIdentifier:nil
|
|
||||||
switchOn:IsEnabled(@"hideVideoPlayerShadowOverlayButtons_enabled")
|
|
||||||
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
||||||
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hideVideoPlayerShadowOverlayButtons_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(@"NO_SUGGESTED_VIDEO")
|
|
||||||
titleDescription:LOC(@"NO_SUGGESTED_VIDEO_DESC")
|
|
||||||
accessibilityIdentifier:nil
|
|
||||||
switchOn:IsEnabled(@"noSuggestedVideo_enabled")
|
|
||||||
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
||||||
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"noSuggestedVideo_enabled"];
|
|
||||||
return YES;
|
|
||||||
}
|
|
||||||
settingItemId:0],
|
|
||||||
|
|
||||||
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_HEATWAVES")
|
|
||||||
titleDescription:LOC(@"HIDE_HEATWAVES_DESC")
|
|
||||||
accessibilityIdentifier:nil
|
|
||||||
switchOn:IsEnabled(@"hideHeatwaves_enabled")
|
|
||||||
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
||||||
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hideHeatwaves_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]];
|
YTSettingsPickerViewController *picker = [[%c(YTSettingsPickerViewController) alloc] initWithNavTitle:LOC(@"VIDEO_CONTROLS_OVERLAY_OPTIONS") pickerSectionTitle:nil rows:rows selectedItemIndex:NSNotFound parentResponder:[self parentResponder]];
|
||||||
[settingsViewController pushViewController:picker];
|
[settingsViewController pushViewController:picker];
|
||||||
@@ -152,95 +129,15 @@ extern NSBundle *YTLitePlusBundle();
|
|||||||
# pragma mark - App Settings Overlay Options
|
# pragma mark - App Settings Overlay Options
|
||||||
YTSettingsSectionItem *appSettingsOverlayGroup = [YTSettingsSectionItemClass itemWithTitle:LOC(@"APP_SETTINGS_OVERLAY_OPTIONS") accessibilityIdentifier:nil detailTextBlock:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
YTSettingsSectionItem *appSettingsOverlayGroup = [YTSettingsSectionItemClass itemWithTitle:LOC(@"APP_SETTINGS_OVERLAY_OPTIONS") accessibilityIdentifier:nil detailTextBlock:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
||||||
NSArray <YTSettingsSectionItem *> *rows = @[
|
NSArray <YTSettingsSectionItem *> *rows = @[
|
||||||
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_ACCOUNT_SECTION")
|
BASIC_SWITCH(LOC(@"HIDE_ACCOUNT_SECTION"), LOC(@"APP_RESTART_DESC"), @"disableAccountSection_enabled"),
|
||||||
titleDescription:LOC(@"APP_RESTART_DESC")
|
BASIC_SWITCH(LOC(@"HIDE_AUTOPLAY_SECTION"), LOC(@"APP_RESTART_DESC"), @"disableAutoplaySection_enabled"),
|
||||||
accessibilityIdentifier:nil
|
BASIC_SWITCH(LOC(@"HIDE_TRYNEWFEATURES_SECTION"), LOC(@"APP_RESTART_DESC"), @"disableTryNewFeaturesSection_enabled"),
|
||||||
switchOn:IsEnabled(@"disableAccountSection_enabled")
|
BASIC_SWITCH(LOC(@"HIDE_VIDEOQUALITYPREFERENCES_SECTION"), LOC(@"APP_RESTART_DESC"), @"disableVideoQualityPreferencesSection_enabled"),
|
||||||
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
BASIC_SWITCH(LOC(@"HIDE_NOTIFICATIONS_SECTION"), LOC(@"APP_RESTART_DESC"), @"disableNotificationsSection_enabled"),
|
||||||
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"disableAccountSection_enabled"];
|
BASIC_SWITCH(LOC(@"HIDE_MANAGEALLHISTORY_SECTION"), LOC(@"APP_RESTART_DESC"), @"disableManageAllHistorySection_enabled"),
|
||||||
return YES;
|
BASIC_SWITCH(LOC(@"HIDE_YOURDATAINYOUTUBE_SECTION"), LOC(@"APP_RESTART_DESC"), @"disableYourDataInYouTubeSection_enabled"),
|
||||||
}
|
BASIC_SWITCH(LOC(@"HIDE_PRIVACY_SECTION"), LOC(@"APP_RESTART_DESC"), @"disablePrivacySection_enabled"),
|
||||||
settingItemId:0],
|
BASIC_SWITCH(LOC(@"HIDE_LIVECHAT_SECTION"), LOC(@"APP_RESTART_DESC"), @"disableLiveChatSection_enabled")
|
||||||
|
|
||||||
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_AUTOPLAY_SECTION")
|
|
||||||
titleDescription:LOC(@"APP_RESTART_DESC")
|
|
||||||
accessibilityIdentifier:nil
|
|
||||||
switchOn:IsEnabled(@"disableAutoplaySection_enabled")
|
|
||||||
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
||||||
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"disableAutoplaySection_enabled"];
|
|
||||||
return YES;
|
|
||||||
}
|
|
||||||
settingItemId:0],
|
|
||||||
|
|
||||||
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_TRYNEWFEATURES_SECTION")
|
|
||||||
titleDescription:LOC(@"APP_RESTART_DESC")
|
|
||||||
accessibilityIdentifier:nil
|
|
||||||
switchOn:IsEnabled(@"disableTryNewFeaturesSection_enabled")
|
|
||||||
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
||||||
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"disableTryNewFeaturesSection_enabled"];
|
|
||||||
return YES;
|
|
||||||
}
|
|
||||||
settingItemId:0],
|
|
||||||
|
|
||||||
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_VIDEOQUALITYPREFERENCES_SECTION")
|
|
||||||
titleDescription:LOC(@"APP_RESTART_DESC")
|
|
||||||
accessibilityIdentifier:nil
|
|
||||||
switchOn:IsEnabled(@"disableVideoQualityPreferencesSection_enabled")
|
|
||||||
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
||||||
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"disableVideoQualityPreferencesSection_enabled"];
|
|
||||||
return YES;
|
|
||||||
}
|
|
||||||
settingItemId:0],
|
|
||||||
|
|
||||||
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_NOTIFICATIONS_SECTION")
|
|
||||||
titleDescription:LOC(@"APP_RESTART_DESC")
|
|
||||||
accessibilityIdentifier:nil
|
|
||||||
switchOn:IsEnabled(@"disableNotificationsSection_enabled")
|
|
||||||
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
||||||
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"disableNotificationsSection_enabled"];
|
|
||||||
return YES;
|
|
||||||
}
|
|
||||||
settingItemId:0],
|
|
||||||
|
|
||||||
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_MANAGEALLHISTORY_SECTION")
|
|
||||||
titleDescription:LOC(@"APP_RESTART_DESC")
|
|
||||||
accessibilityIdentifier:nil
|
|
||||||
switchOn:IsEnabled(@"disableManageAllHistorySection_enabled")
|
|
||||||
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
||||||
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"disableManageAllHistorySection_enabled"];
|
|
||||||
return YES;
|
|
||||||
}
|
|
||||||
settingItemId:0],
|
|
||||||
|
|
||||||
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_YOURDATAINYOUTUBE_SECTION")
|
|
||||||
titleDescription:LOC(@"APP_RESTART_DESC")
|
|
||||||
accessibilityIdentifier:nil
|
|
||||||
switchOn:IsEnabled(@"disableYourDataInYouTubeSection_enabled")
|
|
||||||
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
||||||
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"disableYourDataInYouTubeSection_enabled"];
|
|
||||||
return YES;
|
|
||||||
}
|
|
||||||
settingItemId:0],
|
|
||||||
|
|
||||||
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_PRIVACY_SECTION")
|
|
||||||
titleDescription:LOC(@"APP_RESTART_DESC")
|
|
||||||
accessibilityIdentifier:nil
|
|
||||||
switchOn:IsEnabled(@"disablePrivacySection_enabled")
|
|
||||||
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
||||||
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"disablePrivacySection_enabled"];
|
|
||||||
return YES;
|
|
||||||
}
|
|
||||||
settingItemId:0],
|
|
||||||
|
|
||||||
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_LIVECHAT_SECTION")
|
|
||||||
titleDescription:LOC(@"APP_RESTART_DESC")
|
|
||||||
accessibilityIdentifier:nil
|
|
||||||
switchOn:IsEnabled(@"disableLiveChatSection_enabled")
|
|
||||||
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
||||||
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"disableLiveChatSection_enabled"];
|
|
||||||
return YES;
|
|
||||||
}
|
|
||||||
settingItemId:0]
|
|
||||||
];
|
];
|
||||||
YTSettingsPickerViewController *picker = [[%c(YTSettingsPickerViewController) alloc] initWithNavTitle:LOC(@"App Settings Overlay Options") pickerSectionTitle:nil rows:rows selectedItemIndex:NSNotFound parentResponder:[self parentResponder]];
|
YTSettingsPickerViewController *picker = [[%c(YTSettingsPickerViewController) alloc] initWithNavTitle:LOC(@"App Settings Overlay Options") pickerSectionTitle:nil rows:rows selectedItemIndex:NSNotFound parentResponder:[self parentResponder]];
|
||||||
[settingsViewController pushViewController:picker];
|
[settingsViewController pushViewController:picker];
|
||||||
@@ -381,184 +278,84 @@ extern NSBundle *YTLitePlusBundle();
|
|||||||
[settingsViewController reloadData];
|
[settingsViewController reloadData];
|
||||||
return YES;
|
return YES;
|
||||||
}],
|
}],
|
||||||
|
BASIC_SWITCH(LOC(@"OLED_KEYBOARD"), LOC(@"OLED_KEYBOARD_DESC"), @"oledKeyBoard_enabled"),
|
||||||
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"OLED_KEYBOARD")
|
BASIC_SWITCH(LOC(@"LOW_CONTRAST_MODE"), LOC(@"LOW_CONTRAST_MODE_DESC"), @"lowContrastMode_enabled"),
|
||||||
titleDescription:LOC(@"OLED_KEYBOARD_DESC")
|
lowContrastModeSection
|
||||||
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(@"LOW_CONTRAST_MODE_DESC")
|
|
||||||
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]];
|
YTSettingsPickerViewController *picker = [[%c(YTSettingsPickerViewController) alloc] initWithNavTitle:LOC(@"THEME_OPTIONS") pickerSectionTitle:nil rows:rows selectedItemIndex:GetSelection(@"appTheme") parentResponder:[self parentResponder]];
|
||||||
[settingsViewController pushViewController:picker];
|
[settingsViewController pushViewController:picker];
|
||||||
return YES;
|
return YES;
|
||||||
}];
|
}];
|
||||||
[sectionItems addObject:themeGroup];
|
[sectionItems addObject:themeGroup];
|
||||||
|
|
||||||
|
# pragma mark - Copy of Playback in feeds section - @bhackel
|
||||||
|
// This section is hidden in vanilla YouTube when using the new settings UI, so
|
||||||
|
// we can recreate it here
|
||||||
|
YTSettingsSectionItem *playbackInFeedsGroup = [YTSettingsSectionItemClass itemWithTitle:LOC(@"PLAYBACK_IN_FEEDS")
|
||||||
|
accessibilityIdentifier:nil
|
||||||
|
detailTextBlock:^NSString *() {
|
||||||
|
switch (GetSelection(@"inline_muted_playback_enabled")) {
|
||||||
|
case 3:
|
||||||
|
return LOC(@"PLAYBACK_IN_FEEDS_WIFI_ONLY");
|
||||||
|
case 1:
|
||||||
|
return LOC(@"PLAYBACK_IN_FEEDS_OFF");
|
||||||
|
case 2:
|
||||||
|
default:
|
||||||
|
return LOC(@"PLAYBACK_IN_FEEDS_ALWAYS_ON");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
||||||
|
NSArray <YTSettingsSectionItem *> *rows = @[
|
||||||
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:LOC(@"PLAYBACK_IN_FEEDS_OFF") selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
||||||
|
[[NSUserDefaults standardUserDefaults] setInteger:1 forKey:@"inline_muted_playback_enabled"];
|
||||||
|
[settingsViewController reloadData];
|
||||||
|
return YES;
|
||||||
|
}],
|
||||||
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:LOC(@"PLAYBACK_IN_FEEDS_ALWAYS_ON") selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
||||||
|
[[NSUserDefaults standardUserDefaults] setInteger:2 forKey:@"inline_muted_playback_enabled"];
|
||||||
|
[settingsViewController reloadData];
|
||||||
|
return YES;
|
||||||
|
}],
|
||||||
|
[YTSettingsSectionItemClass checkmarkItemWithTitle:LOC(@"PLAYBACK_IN_FEEDS_WIFI_ONLY") selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
||||||
|
[[NSUserDefaults standardUserDefaults] setInteger:3 forKey:@"inline_muted_playback_enabled"];
|
||||||
|
[settingsViewController reloadData];
|
||||||
|
return YES;
|
||||||
|
}],
|
||||||
|
];
|
||||||
|
// It seems values greater than 3 act the same as Always On (Index 1)
|
||||||
|
int (^getInlineSelection)() = ^int() {
|
||||||
|
int selection = GetSelection(@"inline_muted_playback_enabled") - 1;
|
||||||
|
return selection > 3 ? 1 : selection;
|
||||||
|
};
|
||||||
|
YTSettingsPickerViewController *picker = [[%c(YTSettingsPickerViewController) alloc] initWithNavTitle:LOC(@"PLAYBACK_IN_FEEDS") pickerSectionTitle:nil rows:rows selectedItemIndex:getInlineSelection() parentResponder:[self parentResponder]];
|
||||||
|
[settingsViewController pushViewController:picker];
|
||||||
|
return YES;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
# pragma mark - Miscellaneous
|
# pragma mark - Miscellaneous
|
||||||
YTSettingsSectionItem *miscellaneousGroup = [YTSettingsSectionItemClass itemWithTitle:LOC(@"MISCELLANEOUS") accessibilityIdentifier:nil detailTextBlock:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
YTSettingsSectionItem *miscellaneousGroup = [YTSettingsSectionItemClass itemWithTitle:LOC(@"MISCELLANEOUS") accessibilityIdentifier:nil detailTextBlock:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) {
|
||||||
NSArray <YTSettingsSectionItem *> *rows = @[
|
NSArray <YTSettingsSectionItem *> *rows = @[
|
||||||
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"ENABLE_YT_STARTUP_ANIMATION")
|
playbackInFeedsGroup,
|
||||||
titleDescription:LOC(@"ENABLE_YT_STARTUP_ANIMATION_DESC")
|
// BASIC_SWITCH(LOC(@"NEW_SETTINGS_UI"), LOC(@"NEW_SETTINGS_UI_DESC"), @"newSettingsUI_enabled"), // disabled because YTLite is probably forcing it to NO
|
||||||
accessibilityIdentifier:nil
|
BASIC_SWITCH(LOC(@"ENABLE_YT_STARTUP_ANIMATION"), LOC(@"ENABLE_YT_STARTUP_ANIMATION_DESC"), @"ytStartupAnimation_enabled"),
|
||||||
switchOn:IsEnabled(@"ytStartupAnimation_enabled")
|
BASIC_SWITCH(LOC(@"HIDE_MODERN_INTERFACE"), LOC(@"HIDE_MODERN_INTERFACE_DESC"), @"ytNoModernUI_enabled"),
|
||||||
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
BASIC_SWITCH(LOC(@"IPAD_LAYOUT"), LOC(@"IPAD_LAYOUT_DESC"), @"iPadLayout_enabled"),
|
||||||
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"ytStartupAnimation_enabled"];
|
BASIC_SWITCH(LOC(@"IPHONE_LAYOUT"), LOC(@"IPHONE_LAYOUT_DESC"), @"iPhoneLayout_enabled"),
|
||||||
return YES;
|
BASIC_SWITCH(LOC(@"CAST_CONFIRM"), LOC(@"CAST_CONFIRM_DESC"), @"castConfirm_enabled"),
|
||||||
}
|
BASIC_SWITCH(LOC(@"NEW_MINIPLAYER_STYLE"), LOC(@"NEW_MINIPLAYER_STYLE_DESC"), @"bigYTMiniPlayer_enabled"),
|
||||||
settingItemId:0],
|
BASIC_SWITCH(LOC(@"STOCK_VOLUME_HUD"), LOC(@"STOCK_VOLUME_HUD_DESC"), @"stockVolumeHUD_enabled"),
|
||||||
|
BASIC_SWITCH(LOC(@"UN_SHORTS"), LOC(@"UN_SHORTS_DESC"), @"UnShorts_enabled"),
|
||||||
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_MODERN_INTERFACE")
|
BASIC_SWITCH(LOC(@"HIDE_COMMUNITY_POSTS"), LOC(@"HIDE_COMMUNITY_POSTS_DESC"), @"hideCommunityPosts_enabled"),
|
||||||
titleDescription:LOC(@"HIDE_MODERN_INTERFACE_DESC")
|
BASIC_SWITCH(LOC(@"HIDE_CAST_BUTTON"), LOC(@"HIDE_CAST_BUTTON_DESC"), @"hideCastButton_enabled"),
|
||||||
accessibilityIdentifier:nil
|
BASIC_SWITCH(LOC(@"HIDE_SPONSORBLOCK_BUTTON"), LOC(@"HIDE_SPONSORBLOCK_BUTTON_DESC"), @"hideSponsorBlockButton_enabled"),
|
||||||
switchOn:IsEnabled(@"ytNoModernUI_enabled")
|
BASIC_SWITCH(LOC(@"YT_SPEED"), LOC(@"YT_SPEED_DESC"), @"ytSpeed_enabled"),
|
||||||
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
BASIC_SWITCH(LOC(@"HIDE_HOME_TAB"), LOC(@"HIDE_HOME_TAB_DESC"), @"hideHomeTab_enabled"),
|
||||||
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"ytNoModernUI_enabled"];
|
BASIC_SWITCH(LOC(@"FIX_CASTING"), LOC(@"FIX_CASTING_DESC"), @"fixCasting_enabled"),
|
||||||
return YES;
|
BASIC_SWITCH(LOC(@"ENABLE_FLEX"), LOC(@"ENABLE_FLEX_DESC"), @"flex_enabled"),
|
||||||
}
|
BASIC_SWITCH(LOC(@"APP_VERSION_SPOOFER_LITE"), LOC(@"APP_VERSION_SPOOFER_LITE_DESC"), @"enableVersionSpoofer_enabled"),
|
||||||
settingItemId:0],
|
versionSpooferSection
|
||||||
|
];
|
||||||
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"IPAD_LAYOUT")
|
|
||||||
titleDescription:LOC(@"IPAD_LAYOUT_DESC")
|
|
||||||
accessibilityIdentifier:nil
|
|
||||||
switchOn:IsEnabled(@"iPadLayout_enabled")
|
|
||||||
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
||||||
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"iPadLayout_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(@"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(@"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(@"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],
|
|
||||||
|
|
||||||
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"UN_SHORTS")
|
|
||||||
titleDescription:LOC(@"UN_SHORTS_DESC")
|
|
||||||
accessibilityIdentifier:nil
|
|
||||||
switchOn:IsEnabled(@"UnShorts_enabled")
|
|
||||||
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
||||||
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"UnShorts_enabled"];
|
|
||||||
return YES ;
|
|
||||||
}
|
|
||||||
settingItemId:0],
|
|
||||||
|
|
||||||
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_COMMUNITY_POSTS")
|
|
||||||
titleDescription:LOC(@"HIDE_COMMUNITY_POSTS_DESC")
|
|
||||||
accessibilityIdentifier:nil
|
|
||||||
switchOn:IsEnabled(@"hideCommunityPosts_enabled")
|
|
||||||
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
||||||
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hideCommunityPosts_enabled"];
|
|
||||||
return YES;
|
|
||||||
}
|
|
||||||
settingItemId:0],
|
|
||||||
|
|
||||||
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_CAST_BUTTON")
|
|
||||||
titleDescription:LOC(@"HIDE_CAST_BUTTON_DESC")
|
|
||||||
accessibilityIdentifier:nil
|
|
||||||
switchOn:IsEnabled(@"hideCastButton_enabled")
|
|
||||||
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
||||||
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hideCastButton_enabled"];
|
|
||||||
return YES;
|
|
||||||
}
|
|
||||||
settingItemId:0],
|
|
||||||
|
|
||||||
[YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_SPONSORBLOCK_BUTTON")
|
|
||||||
titleDescription:LOC(@"HIDE_SPONSORBLOCK_BUTTON_DESC")
|
|
||||||
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(@"YT_SPEED")
|
|
||||||
titleDescription:LOC(@"YT_SPEED_DESC")
|
|
||||||
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(@"HIDE_HOME_TAB")
|
|
||||||
titleDescription:LOC(@"HIDE_HOME_TAB_DESC")
|
|
||||||
accessibilityIdentifier:nil
|
|
||||||
switchOn:IsEnabled(@"hideHomeTab_enabled")
|
|
||||||
switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) {
|
|
||||||
[[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hideHomeTab_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(@"APP_VERSION_SPOOFER_LITE")
|
|
||||||
titleDescription:LOC(@"APP_VERSION_SPOOFER_LITE_DESC")
|
|
||||||
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]];
|
YTSettingsPickerViewController *picker = [[%c(YTSettingsPickerViewController) alloc] initWithNavTitle:LOC(@"MISCELLANEOUS") pickerSectionTitle:nil rows:rows selectedItemIndex:NSNotFound parentResponder:[self parentResponder]];
|
||||||
[settingsViewController pushViewController:picker];
|
[settingsViewController pushViewController:picker];
|
||||||
return YES;
|
return YES;
|
||||||
|
|||||||
@@ -94,6 +94,14 @@
|
|||||||
@property (nonatomic, assign, readwrite) BOOL enableSnapToChapter;
|
@property (nonatomic, assign, readwrite) BOOL enableSnapToChapter;
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
// Hide Home Tab - @bhackel
|
||||||
|
@interface YTPivotBarViewController : UIViewController
|
||||||
|
@property NSString *selectedPivotIdentifier;
|
||||||
|
@property YTIPivotBarRenderer *renderer;
|
||||||
|
- (void)selectItemWithPivotIdentifier:(NSString *)pivotIdentifier;
|
||||||
|
- (void)resetViewControllersCache;
|
||||||
|
@end
|
||||||
|
|
||||||
// SponsorBlock button in Nav bar
|
// SponsorBlock button in Nav bar
|
||||||
@interface MDCButton : UIButton
|
@interface MDCButton : UIButton
|
||||||
@end
|
@end
|
||||||
|
|||||||
@@ -171,7 +171,7 @@ static BOOL IsEnabled(NSString *key) {
|
|||||||
|
|
||||||
// Hide Home Tab - @bhackel
|
// Hide Home Tab - @bhackel
|
||||||
%group gHideHomeTab
|
%group gHideHomeTab
|
||||||
%hook YTPivotBarViewController
|
%hook YTPivotBarView
|
||||||
- (void)setRenderer:(YTIPivotBarRenderer *)renderer {
|
- (void)setRenderer:(YTIPivotBarRenderer *)renderer {
|
||||||
// Iterate over each renderer item
|
// Iterate over each renderer item
|
||||||
NSUInteger indexToRemove = -1;
|
NSUInteger indexToRemove = -1;
|
||||||
@@ -193,6 +193,35 @@ static BOOL IsEnabled(NSString *key) {
|
|||||||
%orig;
|
%orig;
|
||||||
}
|
}
|
||||||
%end
|
%end
|
||||||
|
// Fix bug where contents of leftmost tab is replaced by Home tab
|
||||||
|
BOOL isTabSelected = NO;
|
||||||
|
%hook YTPivotBarViewController
|
||||||
|
- (void)viewDidAppear:(BOOL)animated {
|
||||||
|
%orig;
|
||||||
|
if (!isTabSelected) {
|
||||||
|
// Get the identifier of the selected pivot
|
||||||
|
NSString *selectedPivotIdentifier = self.selectedPivotIdentifier;
|
||||||
|
// Find any different tab to switch from by looping through the renderer items
|
||||||
|
YTIPivotBarRenderer *renderer = self.renderer;
|
||||||
|
NSArray <YTIPivotBarSupportedRenderers *> *itemsArray = renderer.itemsArray;
|
||||||
|
for (YTIPivotBarSupportedRenderers *item in itemsArray) {
|
||||||
|
YTIPivotBarItemRenderer *pivotBarItemRenderer = item.pivotBarItemRenderer;
|
||||||
|
NSString *pivotIdentifier = pivotBarItemRenderer.pivotIdentifier;
|
||||||
|
if (![pivotIdentifier isEqualToString:selectedPivotIdentifier]) {
|
||||||
|
// Switch to this tab
|
||||||
|
[self selectItemWithPivotIdentifier:pivotIdentifier];
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Clear any cached controllers to delete the broken home tab
|
||||||
|
[self resetViewControllersCache];
|
||||||
|
// Switch back to the original tab
|
||||||
|
[self selectItemWithPivotIdentifier:selectedPivotIdentifier];
|
||||||
|
// Update flag to not do it again
|
||||||
|
isTabSelected = YES;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
%end
|
||||||
%end
|
%end
|
||||||
|
|
||||||
// YTNoModernUI - @arichornlover
|
// YTNoModernUI - @arichornlover
|
||||||
@@ -369,6 +398,18 @@ static BOOL IsEnabled(NSString *key) {
|
|||||||
}
|
}
|
||||||
%end
|
%end
|
||||||
|
|
||||||
|
// Fix Casting: https://github.com/arichornlover/uYouEnhanced/issues/606#issuecomment-2098289942
|
||||||
|
%group gFixCasting
|
||||||
|
%hook YTColdConfig
|
||||||
|
- (BOOL)cxClientEnableIosLocalNetworkPermissionReliabilityFixes { return YES; }
|
||||||
|
- (BOOL)cxClientEnableIosLocalNetworkPermissionUsingSockets { return NO; }
|
||||||
|
- (BOOL)cxClientEnableIosLocalNetworkPermissionWifiFixes { return YES; }
|
||||||
|
%end
|
||||||
|
%hook YTHotConfig
|
||||||
|
- (BOOL)isPromptForLocalNetworkPermissionsEnabled { return YES; }
|
||||||
|
%end
|
||||||
|
%end
|
||||||
|
|
||||||
// YTUnShorts - https://github.com/PoomSmart/YTUnShorts
|
// YTUnShorts - https://github.com/PoomSmart/YTUnShorts
|
||||||
%hook YTIElementRenderer
|
%hook YTIElementRenderer
|
||||||
|
|
||||||
@@ -413,6 +454,20 @@ static NSData *cellDividerData = nil;
|
|||||||
}
|
}
|
||||||
%end
|
%end
|
||||||
|
|
||||||
|
// Seek anywhere gesture - @bhackel
|
||||||
|
%hook YTColdConfig
|
||||||
|
- (BOOL)speedMasterArm2FastForwardWithoutSeekBySliding {
|
||||||
|
return IsEnabled(@"seekAnywhere_enabled") ? NO : %orig;
|
||||||
|
}
|
||||||
|
%end
|
||||||
|
|
||||||
|
// New Settings UI - @bhackel
|
||||||
|
%hook YTColdConfig
|
||||||
|
- (BOOL)mainAppCoreClientEnableCairoSettings {
|
||||||
|
return IS_ENABLED(@"newSettingsUI_enabled");
|
||||||
|
}
|
||||||
|
%end
|
||||||
|
|
||||||
// BigYTMiniPlayer: https://github.com/Galactic-Dev/BigYTMiniPlayer
|
// BigYTMiniPlayer: https://github.com/Galactic-Dev/BigYTMiniPlayer
|
||||||
%group Main
|
%group Main
|
||||||
%hook YTWatchMiniBarView
|
%hook YTWatchMiniBarView
|
||||||
@@ -614,6 +669,9 @@ static NSData *cellDividerData = nil;
|
|||||||
# pragma mark - ctor
|
# pragma mark - ctor
|
||||||
%ctor {
|
%ctor {
|
||||||
%init;
|
%init;
|
||||||
|
// Access YouGroupSettings methods
|
||||||
|
dlopen([[NSString stringWithFormat:@"%@/Frameworks/YouGroupSettings.dylib", [[NSBundle mainBundle] bundlePath]] UTF8String], RTLD_LAZY);
|
||||||
|
|
||||||
if (IsEnabled(@"hideCastButton_enabled")) {
|
if (IsEnabled(@"hideCastButton_enabled")) {
|
||||||
%init(gHideCastButton);
|
%init(gHideCastButton);
|
||||||
}
|
}
|
||||||
@@ -674,7 +732,9 @@ static NSData *cellDividerData = nil;
|
|||||||
if (IsEnabled(@"hideHomeTab_enabled")) {
|
if (IsEnabled(@"hideHomeTab_enabled")) {
|
||||||
%init(gHideHomeTab);
|
%init(gHideHomeTab);
|
||||||
}
|
}
|
||||||
|
if (IsEnabled(@"fixCasting_enabled")) {
|
||||||
|
%init(gFixCasting);
|
||||||
|
}
|
||||||
|
|
||||||
// Change the default value of some options
|
// Change the default value of some options
|
||||||
NSArray *allKeys = [[[NSUserDefaults standardUserDefaults] dictionaryRepresentation] allKeys];
|
NSArray *allKeys = [[[NSUserDefaults standardUserDefaults] dictionaryRepresentation] allKeys];
|
||||||
@@ -684,4 +744,10 @@ static NSData *cellDividerData = nil;
|
|||||||
if (![allKeys containsObject:@"YouPiPEnabled"]) {
|
if (![allKeys containsObject:@"YouPiPEnabled"]) {
|
||||||
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"YouPiPEnabled"];
|
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"YouPiPEnabled"];
|
||||||
}
|
}
|
||||||
|
if (![allKeys containsObject:@"newSettingsUI_enabled"]) {
|
||||||
|
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"newSettingsUI_enabled"];
|
||||||
|
}
|
||||||
|
if (![allKeys containsObject:@"fixCasting_enabled"]) {
|
||||||
|
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"fixCasting_enabled"];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,6 +23,9 @@
|
|||||||
"HIDE_HEATWAVES" = "إخفاء موجات الحر";
|
"HIDE_HEATWAVES" = "إخفاء موجات الحر";
|
||||||
"HIDE_HEATWAVES_DESC" = "يخفي موجات الحر في مشغل الفيديو. مطلوب إعادة تشغيل التطبيق.";
|
"HIDE_HEATWAVES_DESC" = "يخفي موجات الحر في مشغل الفيديو. مطلوب إعادة تشغيل التطبيق.";
|
||||||
|
|
||||||
|
"SEEK_ANYWHERE" = "Seek Anywhere Gesture";
|
||||||
|
"SEEK_ANYWHERE_DESC" = "Hold and drag on the video player to seek. You must disable YTLite - Hold to speed";
|
||||||
|
|
||||||
// App settings overlay options
|
// App settings overlay options
|
||||||
"APP_SETTINGS_OVERLAY_OPTIONS" = "App Settings Overlay Options";
|
"APP_SETTINGS_OVERLAY_OPTIONS" = "App Settings Overlay Options";
|
||||||
|
|
||||||
@@ -61,6 +64,14 @@
|
|||||||
// Miscellaneous
|
// Miscellaneous
|
||||||
"MISCELLANEOUS" = "متنوع";
|
"MISCELLANEOUS" = "متنوع";
|
||||||
|
|
||||||
|
"PLAYBACK_IN_FEEDS" = "Playback in feeds";
|
||||||
|
"PLAYBACK_IN_FEEDS_ALWAYS_ON" = "Always on";
|
||||||
|
"PLAYBACK_IN_FEEDS_WIFI_ONLY" = "Wi-Fi only";
|
||||||
|
"PLAYBACK_IN_FEEDS_OFF" = "Off";
|
||||||
|
|
||||||
|
"NEW_SETTINGS_UI" = "New Settings UI";
|
||||||
|
"NEW_SETTINGS_UI_DESC" = "Use new grouped settings UI. May hide some settings";
|
||||||
|
|
||||||
"ENABLE_YT_STARTUP_ANIMATION" = "Enable YouTube startup animation";
|
"ENABLE_YT_STARTUP_ANIMATION" = "Enable YouTube startup animation";
|
||||||
"ENABLE_YT_STARTUP_ANIMATION_DESC" = "";
|
"ENABLE_YT_STARTUP_ANIMATION_DESC" = "";
|
||||||
|
|
||||||
@@ -98,6 +109,9 @@
|
|||||||
"HIDE_HOME_TAB" = "Hide Home Tab";
|
"HIDE_HOME_TAB" = "Hide Home Tab";
|
||||||
"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs";
|
"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs";
|
||||||
|
|
||||||
|
"FIX_CASTING" = "Fix Casting";
|
||||||
|
"FIX_CASTING_DESC" = "Changes some AB flags to fix casting";
|
||||||
|
|
||||||
"ENABLE_FLEX" = "تمكين FLEX";
|
"ENABLE_FLEX" = "تمكين FLEX";
|
||||||
"ENABLE_FLEX_DESC" = "تمكين FLEX للتصحيح (غير مستحسن). اترك هذا إلا إذا كنت تعرف ما تفعله";
|
"ENABLE_FLEX_DESC" = "تمكين FLEX للتصحيح (غير مستحسن). اترك هذا إلا إذا كنت تعرف ما تفعله";
|
||||||
|
|
||||||
|
|||||||
@@ -23,6 +23,9 @@
|
|||||||
"HIDE_HEATWAVES" = "Hitzewellen ausblenden";
|
"HIDE_HEATWAVES" = "Hitzewellen ausblenden";
|
||||||
"HIDE_HEATWAVES_DESC" = "Versteckt die Hitzewellen im Videoplayer. Ein Neustart der App ist erforderlich.";
|
"HIDE_HEATWAVES_DESC" = "Versteckt die Hitzewellen im Videoplayer. Ein Neustart der App ist erforderlich.";
|
||||||
|
|
||||||
|
"SEEK_ANYWHERE" = "Seek Anywhere Gesture";
|
||||||
|
"SEEK_ANYWHERE_DESC" = "Hold and drag on the video player to seek. You must disable YTLite - Hold to speed";
|
||||||
|
|
||||||
// App settings overlay options
|
// App settings overlay options
|
||||||
"APP_SETTINGS_OVERLAY_OPTIONS" = "Overlay-Optionen für App-Einstellungen";
|
"APP_SETTINGS_OVERLAY_OPTIONS" = "Overlay-Optionen für App-Einstellungen";
|
||||||
|
|
||||||
@@ -61,6 +64,14 @@
|
|||||||
// Miscellaneous
|
// Miscellaneous
|
||||||
"MISCELLANEOUS" = "Verschiedenes";
|
"MISCELLANEOUS" = "Verschiedenes";
|
||||||
|
|
||||||
|
"PLAYBACK_IN_FEEDS" = "Playback in feeds";
|
||||||
|
"PLAYBACK_IN_FEEDS_ALWAYS_ON" = "Always on";
|
||||||
|
"PLAYBACK_IN_FEEDS_WIFI_ONLY" = "Wi-Fi only";
|
||||||
|
"PLAYBACK_IN_FEEDS_OFF" = "Off";
|
||||||
|
|
||||||
|
"NEW_SETTINGS_UI" = "New Settings UI";
|
||||||
|
"NEW_SETTINGS_UI_DESC" = "Use new grouped settings UI. May hide some settings";
|
||||||
|
|
||||||
"ENABLE_YT_STARTUP_ANIMATION" = "YouTube-Startanimation aktivieren";
|
"ENABLE_YT_STARTUP_ANIMATION" = "YouTube-Startanimation aktivieren";
|
||||||
"ENABLE_YT_STARTUP_ANIMATION_DESC" = "";
|
"ENABLE_YT_STARTUP_ANIMATION_DESC" = "";
|
||||||
|
|
||||||
@@ -98,6 +109,9 @@
|
|||||||
"HIDE_HOME_TAB" = "Hide Home Tab";
|
"HIDE_HOME_TAB" = "Hide Home Tab";
|
||||||
"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs";
|
"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs";
|
||||||
|
|
||||||
|
"FIX_CASTING" = "Fix Casting";
|
||||||
|
"FIX_CASTING_DESC" = "Changes some AB flags to fix casting";
|
||||||
|
|
||||||
"ENABLE_FLEX" = "FLEX aktivieren";
|
"ENABLE_FLEX" = "FLEX aktivieren";
|
||||||
"ENABLE_FLEX_DESC" = "Aktiviere FLEX zum Debuggen (nicht empfohlen). Lass diese Option deaktiviert, es sei denn, du weißt, was du tust.";
|
"ENABLE_FLEX_DESC" = "Aktiviere FLEX zum Debuggen (nicht empfohlen). Lass diese Option deaktiviert, es sei denn, du weißt, was du tust.";
|
||||||
|
|
||||||
|
|||||||
@@ -23,6 +23,9 @@
|
|||||||
"HIDE_HEATWAVES" = "Hide Heatwaves";
|
"HIDE_HEATWAVES" = "Hide Heatwaves";
|
||||||
"HIDE_HEATWAVES_DESC" = "Hides the Heatwaves in the video player. App restart is required.";
|
"HIDE_HEATWAVES_DESC" = "Hides the Heatwaves in the video player. App restart is required.";
|
||||||
|
|
||||||
|
"SEEK_ANYWHERE" = "Seek Anywhere Gesture";
|
||||||
|
"SEEK_ANYWHERE_DESC" = "Hold and drag on the video player to seek. You must disable YTLite - Hold to speed";
|
||||||
|
|
||||||
// App settings overlay options
|
// App settings overlay options
|
||||||
"APP_SETTINGS_OVERLAY_OPTIONS" = "App Settings Overlay Options";
|
"APP_SETTINGS_OVERLAY_OPTIONS" = "App Settings Overlay Options";
|
||||||
|
|
||||||
@@ -61,6 +64,14 @@
|
|||||||
// Miscellaneous
|
// Miscellaneous
|
||||||
"MISCELLANEOUS" = "Miscellaneous";
|
"MISCELLANEOUS" = "Miscellaneous";
|
||||||
|
|
||||||
|
"PLAYBACK_IN_FEEDS" = "Playback in feeds";
|
||||||
|
"PLAYBACK_IN_FEEDS_ALWAYS_ON" = "Always on";
|
||||||
|
"PLAYBACK_IN_FEEDS_WIFI_ONLY" = "Wi-Fi only";
|
||||||
|
"PLAYBACK_IN_FEEDS_OFF" = "Off";
|
||||||
|
|
||||||
|
"NEW_SETTINGS_UI" = "New Settings UI";
|
||||||
|
"NEW_SETTINGS_UI_DESC" = "Use new grouped settings UI. May hide some settings";
|
||||||
|
|
||||||
"ENABLE_YT_STARTUP_ANIMATION" = "Enable YouTube startup animation";
|
"ENABLE_YT_STARTUP_ANIMATION" = "Enable YouTube startup animation";
|
||||||
"ENABLE_YT_STARTUP_ANIMATION_DESC" = "";
|
"ENABLE_YT_STARTUP_ANIMATION_DESC" = "";
|
||||||
|
|
||||||
@@ -98,6 +109,9 @@
|
|||||||
"HIDE_HOME_TAB" = "Hide Home Tab";
|
"HIDE_HOME_TAB" = "Hide Home Tab";
|
||||||
"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs";
|
"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs";
|
||||||
|
|
||||||
|
"FIX_CASTING" = "Fix Casting";
|
||||||
|
"FIX_CASTING_DESC" = "Changes some AB flags to fix casting";
|
||||||
|
|
||||||
"ENABLE_FLEX" = "Enable FLEX";
|
"ENABLE_FLEX" = "Enable FLEX";
|
||||||
"ENABLE_FLEX_DESC" = "Enable FLEX for debugging (not recommended). Leave this off unless you know what you are doing.";
|
"ENABLE_FLEX_DESC" = "Enable FLEX for debugging (not recommended). Leave this off unless you know what you are doing.";
|
||||||
|
|
||||||
|
|||||||
@@ -23,6 +23,9 @@
|
|||||||
"HIDE_HEATWAVES" = "Ocultar Heatwaves";
|
"HIDE_HEATWAVES" = "Ocultar Heatwaves";
|
||||||
"HIDE_HEATWAVES_DESC" = "Oculta las Heatwaves en el reproductor de vídeo. Es necesario reiniciar la aplicación.";
|
"HIDE_HEATWAVES_DESC" = "Oculta las Heatwaves en el reproductor de vídeo. Es necesario reiniciar la aplicación.";
|
||||||
|
|
||||||
|
"SEEK_ANYWHERE" = "Seek Anywhere Gesture";
|
||||||
|
"SEEK_ANYWHERE_DESC" = "Hold and drag on the video player to seek. You must disable YTLite - Hold to speed";
|
||||||
|
|
||||||
// App settings overlay options
|
// App settings overlay options
|
||||||
"APP_SETTINGS_OVERLAY_OPTIONS" = "Opciones de superposición de los ajustes de la aplicación";
|
"APP_SETTINGS_OVERLAY_OPTIONS" = "Opciones de superposición de los ajustes de la aplicación";
|
||||||
|
|
||||||
@@ -61,6 +64,14 @@
|
|||||||
// Miscellaneous
|
// Miscellaneous
|
||||||
"MISCELLANEOUS" = "Misceláneos";
|
"MISCELLANEOUS" = "Misceláneos";
|
||||||
|
|
||||||
|
"PLAYBACK_IN_FEEDS" = "Playback in feeds";
|
||||||
|
"PLAYBACK_IN_FEEDS_ALWAYS_ON" = "Always on";
|
||||||
|
"PLAYBACK_IN_FEEDS_WIFI_ONLY" = "Wi-Fi only";
|
||||||
|
"PLAYBACK_IN_FEEDS_OFF" = "Off";
|
||||||
|
|
||||||
|
"NEW_SETTINGS_UI" = "New Settings UI";
|
||||||
|
"NEW_SETTINGS_UI_DESC" = "Use new grouped settings UI. May hide some settings";
|
||||||
|
|
||||||
"ENABLE_YT_STARTUP_ANIMATION" = "Activar la animación de inicio de YouTube";
|
"ENABLE_YT_STARTUP_ANIMATION" = "Activar la animación de inicio de YouTube";
|
||||||
"ENABLE_YT_STARTUP_ANIMATION_DESC" = "";
|
"ENABLE_YT_STARTUP_ANIMATION_DESC" = "";
|
||||||
|
|
||||||
@@ -98,6 +109,9 @@
|
|||||||
"HIDE_HOME_TAB" = "Hide Home Tab";
|
"HIDE_HOME_TAB" = "Hide Home Tab";
|
||||||
"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs";
|
"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs";
|
||||||
|
|
||||||
|
"FIX_CASTING" = "Fix Casting";
|
||||||
|
"FIX_CASTING_DESC" = "Changes some AB flags to fix casting";
|
||||||
|
|
||||||
"ENABLE_FLEX" = "Habilitar FLEX";
|
"ENABLE_FLEX" = "Habilitar FLEX";
|
||||||
"ENABLE_FLEX_DESC" = "Habilitar FLEX para depuración (no recomendado). Déjelo desactivado a menos que sepa lo que está haciendo";
|
"ENABLE_FLEX_DESC" = "Habilitar FLEX para depuración (no recomendado). Déjelo desactivado a menos que sepa lo que está haciendo";
|
||||||
|
|
||||||
|
|||||||
@@ -23,6 +23,9 @@
|
|||||||
"HIDE_HEATWAVES" = "Masquer les Heatwaves";
|
"HIDE_HEATWAVES" = "Masquer les Heatwaves";
|
||||||
"HIDE_HEATWAVES_DESC" = "Masque les Heatwaves dans le lecteur vidéo. Le redémarrage de l'application est requis.";
|
"HIDE_HEATWAVES_DESC" = "Masque les Heatwaves dans le lecteur vidéo. Le redémarrage de l'application est requis.";
|
||||||
|
|
||||||
|
"SEEK_ANYWHERE" = "Seek Anywhere Gesture";
|
||||||
|
"SEEK_ANYWHERE_DESC" = "Hold and drag on the video player to seek. You must disable YTLite - Hold to speed";
|
||||||
|
|
||||||
// App settings overlay options
|
// App settings overlay options
|
||||||
"APP_SETTINGS_OVERLAY_OPTIONS" = "Paramètres des options d'overlay de l'application";
|
"APP_SETTINGS_OVERLAY_OPTIONS" = "Paramètres des options d'overlay de l'application";
|
||||||
|
|
||||||
@@ -64,6 +67,14 @@
|
|||||||
// Miscellaneous
|
// Miscellaneous
|
||||||
"MISCELLANEOUS" = "Divers";
|
"MISCELLANEOUS" = "Divers";
|
||||||
|
|
||||||
|
"PLAYBACK_IN_FEEDS" = "Playback in feeds";
|
||||||
|
"PLAYBACK_IN_FEEDS_ALWAYS_ON" = "Always on";
|
||||||
|
"PLAYBACK_IN_FEEDS_WIFI_ONLY" = "Wi-Fi only";
|
||||||
|
"PLAYBACK_IN_FEEDS_OFF" = "Off";
|
||||||
|
|
||||||
|
"NEW_SETTINGS_UI" = "New Settings UI";
|
||||||
|
"NEW_SETTINGS_UI_DESC" = "Use new grouped settings UI. May hide some settings";
|
||||||
|
|
||||||
"ENABLE_YT_STARTUP_ANIMATION" = "Activer l'animation de démarrage YouTube";
|
"ENABLE_YT_STARTUP_ANIMATION" = "Activer l'animation de démarrage YouTube";
|
||||||
"ENABLE_YT_STARTUP_ANIMATION_DESC" = "";
|
"ENABLE_YT_STARTUP_ANIMATION_DESC" = "";
|
||||||
|
|
||||||
@@ -101,6 +112,9 @@
|
|||||||
"HIDE_HOME_TAB" = "Hide Home Tab";
|
"HIDE_HOME_TAB" = "Hide Home Tab";
|
||||||
"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs";
|
"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs";
|
||||||
|
|
||||||
|
"FIX_CASTING" = "Fix Casting";
|
||||||
|
"FIX_CASTING_DESC" = "Changes some AB flags to fix casting";
|
||||||
|
|
||||||
"ENABLE_FLEX" = "Activer FLEX";
|
"ENABLE_FLEX" = "Activer FLEX";
|
||||||
"ENABLE_FLEX_DESC" = "Activez FLEX pour le débogage (non recommandé). Laissez cette option désactivée, sauf si vous savez ce que vous faites.";
|
"ENABLE_FLEX_DESC" = "Activez FLEX pour le débogage (non recommandé). Laissez cette option désactivée, sauf si vous savez ce que vous faites.";
|
||||||
|
|
||||||
@@ -117,4 +131,4 @@
|
|||||||
|
|
||||||
// Other Localization
|
// Other Localization
|
||||||
"APP_RESTART_DESC" = "Un redémarrage de l'application est requis.";
|
"APP_RESTART_DESC" = "Un redémarrage de l'application est requis.";
|
||||||
“CHANGE_APP_ICON" = “Changer l'icône de l'application";
|
“CHANGE_APP_ICON" = “Changer l'icône de l'application";
|
||||||
|
|||||||
@@ -23,6 +23,9 @@
|
|||||||
"HIDE_HEATWAVES" = "ヒートウェーブを非表示";
|
"HIDE_HEATWAVES" = "ヒートウェーブを非表示";
|
||||||
"HIDE_HEATWAVES_DESC" = "動画プレーヤーのヒートウェーブを非表示にします。アプリの再起動が必要です。";
|
"HIDE_HEATWAVES_DESC" = "動画プレーヤーのヒートウェーブを非表示にします。アプリの再起動が必要です。";
|
||||||
|
|
||||||
|
"SEEK_ANYWHERE" = "Seek Anywhere Gesture";
|
||||||
|
"SEEK_ANYWHERE_DESC" = "Hold and drag on the video player to seek. You must disable YTLite - Hold to speed";
|
||||||
|
|
||||||
// App settings overlay options
|
// App settings overlay options
|
||||||
"APP_SETTINGS_OVERLAY_OPTIONS" = "アプリの設定オーバーレイの設定";
|
"APP_SETTINGS_OVERLAY_OPTIONS" = "アプリの設定オーバーレイの設定";
|
||||||
|
|
||||||
@@ -61,6 +64,14 @@
|
|||||||
// Miscellaneous
|
// Miscellaneous
|
||||||
"MISCELLANEOUS" = "その他";
|
"MISCELLANEOUS" = "その他";
|
||||||
|
|
||||||
|
"PLAYBACK_IN_FEEDS" = "Playback in feeds";
|
||||||
|
"PLAYBACK_IN_FEEDS_ALWAYS_ON" = "Always on";
|
||||||
|
"PLAYBACK_IN_FEEDS_WIFI_ONLY" = "Wi-Fi only";
|
||||||
|
"PLAYBACK_IN_FEEDS_OFF" = "Off";
|
||||||
|
|
||||||
|
"NEW_SETTINGS_UI" = "New Settings UI";
|
||||||
|
"NEW_SETTINGS_UI_DESC" = "Use new grouped settings UI. May hide some settings";
|
||||||
|
|
||||||
"ENABLE_YT_STARTUP_ANIMATION" = "YouTube起動時のアニメーションを有効化";
|
"ENABLE_YT_STARTUP_ANIMATION" = "YouTube起動時のアニメーションを有効化";
|
||||||
"ENABLE_YT_STARTUP_ANIMATION_DESC" = "";
|
"ENABLE_YT_STARTUP_ANIMATION_DESC" = "";
|
||||||
|
|
||||||
@@ -98,6 +109,9 @@
|
|||||||
"HIDE_HOME_TAB" = "Hide Home Tab";
|
"HIDE_HOME_TAB" = "Hide Home Tab";
|
||||||
"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs";
|
"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs";
|
||||||
|
|
||||||
|
"FIX_CASTING" = "Fix Casting";
|
||||||
|
"FIX_CASTING_DESC" = "Changes some AB flags to fix casting";
|
||||||
|
|
||||||
"ENABLE_FLEX" = "FLEXを有効化";
|
"ENABLE_FLEX" = "FLEXを有効化";
|
||||||
"ENABLE_FLEX_DESC" = "デバッグ用のFLEXを有効化します(推奨しません) \n何をやっているのか分からない場合はオフにしてください。";
|
"ENABLE_FLEX_DESC" = "デバッグ用のFLEXを有効化します(推奨しません) \n何をやっているのか分からない場合はオフにしてください。";
|
||||||
|
|
||||||
|
|||||||
@@ -23,6 +23,9 @@
|
|||||||
"HIDE_HEATWAVES" = "Hide Heatwaves";
|
"HIDE_HEATWAVES" = "Hide Heatwaves";
|
||||||
"HIDE_HEATWAVES_DESC" = "Hides the Heatwaves in the video player. App restart is required.";
|
"HIDE_HEATWAVES_DESC" = "Hides the Heatwaves in the video player. App restart is required.";
|
||||||
|
|
||||||
|
"SEEK_ANYWHERE" = "Seek Anywhere Gesture";
|
||||||
|
"SEEK_ANYWHERE_DESC" = "Hold and drag on the video player to seek. You must disable YTLite - Hold to speed";
|
||||||
|
|
||||||
// App settings overlay options
|
// App settings overlay options
|
||||||
"APP_SETTINGS_OVERLAY_OPTIONS" = "App Settings Overlay Options";
|
"APP_SETTINGS_OVERLAY_OPTIONS" = "App Settings Overlay Options";
|
||||||
|
|
||||||
@@ -61,6 +64,14 @@
|
|||||||
// Miscellaneous
|
// Miscellaneous
|
||||||
"MISCELLANEOUS" = "Miscellaneous";
|
"MISCELLANEOUS" = "Miscellaneous";
|
||||||
|
|
||||||
|
"PLAYBACK_IN_FEEDS" = "Playback in feeds";
|
||||||
|
"PLAYBACK_IN_FEEDS_ALWAYS_ON" = "Always on";
|
||||||
|
"PLAYBACK_IN_FEEDS_WIFI_ONLY" = "Wi-Fi only";
|
||||||
|
"PLAYBACK_IN_FEEDS_OFF" = "Off";
|
||||||
|
|
||||||
|
"NEW_SETTINGS_UI" = "New Settings UI";
|
||||||
|
"NEW_SETTINGS_UI_DESC" = "Use new grouped settings UI. May hide some settings";
|
||||||
|
|
||||||
"ENABLE_YT_STARTUP_ANIMATION" = "Enable YouTube startup animation";
|
"ENABLE_YT_STARTUP_ANIMATION" = "Enable YouTube startup animation";
|
||||||
"ENABLE_YT_STARTUP_ANIMATION_DESC" = "";
|
"ENABLE_YT_STARTUP_ANIMATION_DESC" = "";
|
||||||
|
|
||||||
@@ -98,6 +109,9 @@
|
|||||||
"HIDE_HOME_TAB" = "Hide Home Tab";
|
"HIDE_HOME_TAB" = "Hide Home Tab";
|
||||||
"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs";
|
"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs";
|
||||||
|
|
||||||
|
"FIX_CASTING" = "Fix Casting";
|
||||||
|
"FIX_CASTING_DESC" = "Changes some AB flags to fix casting";
|
||||||
|
|
||||||
"ENABLE_FLEX" = "Enable FLEX";
|
"ENABLE_FLEX" = "Enable FLEX";
|
||||||
"ENABLE_FLEX_DESC" = "Enable FLEX for debugging (not recommended). Leave this off unless you know what you are doing.";
|
"ENABLE_FLEX_DESC" = "Enable FLEX for debugging (not recommended). Leave this off unless you know what you are doing.";
|
||||||
|
|
||||||
|
|||||||
@@ -23,6 +23,9 @@
|
|||||||
"HIDE_HEATWAVES" = "Ascunde Heatwaves";
|
"HIDE_HEATWAVES" = "Ascunde Heatwaves";
|
||||||
"HIDE_HEATWAVES_DESC" = "Ascundere Heatwaves în player-ul video. Este necesară repornirea aplicației.";
|
"HIDE_HEATWAVES_DESC" = "Ascundere Heatwaves în player-ul video. Este necesară repornirea aplicației.";
|
||||||
|
|
||||||
|
"SEEK_ANYWHERE" = "Seek Anywhere Gesture";
|
||||||
|
"SEEK_ANYWHERE_DESC" = "Hold and drag on the video player to seek. You must disable YTLite - Hold to speed";
|
||||||
|
|
||||||
// App settings overlay options
|
// App settings overlay options
|
||||||
"APP_SETTINGS_OVERLAY_OPTIONS" = "Opțiuni Overlay Setări Aplicație";
|
"APP_SETTINGS_OVERLAY_OPTIONS" = "Opțiuni Overlay Setări Aplicație";
|
||||||
|
|
||||||
@@ -61,6 +64,14 @@
|
|||||||
// Miscellaneous
|
// Miscellaneous
|
||||||
"MISCELLANEOUS" = "Diverse";
|
"MISCELLANEOUS" = "Diverse";
|
||||||
|
|
||||||
|
"PLAYBACK_IN_FEEDS" = "Playback in feeds";
|
||||||
|
"PLAYBACK_IN_FEEDS_ALWAYS_ON" = "Always on";
|
||||||
|
"PLAYBACK_IN_FEEDS_WIFI_ONLY" = "Wi-Fi only";
|
||||||
|
"PLAYBACK_IN_FEEDS_OFF" = "Off";
|
||||||
|
|
||||||
|
"NEW_SETTINGS_UI" = "New Settings UI";
|
||||||
|
"NEW_SETTINGS_UI_DESC" = "Use new grouped settings UI. May hide some settings";
|
||||||
|
|
||||||
"ENABLE_YT_STARTUP_ANIMATION" = "Activare animație de pornire YouTube";
|
"ENABLE_YT_STARTUP_ANIMATION" = "Activare animație de pornire YouTube";
|
||||||
"ENABLE_YT_STARTUP_ANIMATION_DESC" = "";
|
"ENABLE_YT_STARTUP_ANIMATION_DESC" = "";
|
||||||
|
|
||||||
@@ -98,6 +109,9 @@
|
|||||||
"HIDE_HOME_TAB" = "Hide Home Tab";
|
"HIDE_HOME_TAB" = "Hide Home Tab";
|
||||||
"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs";
|
"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs";
|
||||||
|
|
||||||
|
"FIX_CASTING" = "Fix Casting";
|
||||||
|
"FIX_CASTING_DESC" = "Changes some AB flags to fix casting";
|
||||||
|
|
||||||
"ENABLE_FLEX" = "Activare FLEX";
|
"ENABLE_FLEX" = "Activare FLEX";
|
||||||
"ENABLE_FLEX_DESC" = "Activați FLEX pentru depanare (nerecomandat). Lăsați această opțiune dezactivată dacă nu știți ce faceți.";
|
"ENABLE_FLEX_DESC" = "Activați FLEX pentru depanare (nerecomandat). Lăsați această opțiune dezactivată dacă nu știți ce faceți.";
|
||||||
|
|
||||||
|
|||||||
@@ -23,6 +23,9 @@
|
|||||||
"HIDE_HEATWAVES" = "Hide Heatwaves";
|
"HIDE_HEATWAVES" = "Hide Heatwaves";
|
||||||
"HIDE_HEATWAVES_DESC" = "Hides the Heatwaves in the video player. App restart is required.";
|
"HIDE_HEATWAVES_DESC" = "Hides the Heatwaves in the video player. App restart is required.";
|
||||||
|
|
||||||
|
"SEEK_ANYWHERE" = "Seek Anywhere Gesture";
|
||||||
|
"SEEK_ANYWHERE_DESC" = "Hold and drag on the video player to seek. You must disable YTLite - Hold to speed";
|
||||||
|
|
||||||
// App settings overlay options
|
// App settings overlay options
|
||||||
"APP_SETTINGS_OVERLAY_OPTIONS" = "App Settings Overlay Options";
|
"APP_SETTINGS_OVERLAY_OPTIONS" = "App Settings Overlay Options";
|
||||||
|
|
||||||
@@ -61,6 +64,14 @@
|
|||||||
// Miscellaneous
|
// Miscellaneous
|
||||||
"MISCELLANEOUS" = "Miscellaneous";
|
"MISCELLANEOUS" = "Miscellaneous";
|
||||||
|
|
||||||
|
"PLAYBACK_IN_FEEDS" = "Playback in feeds";
|
||||||
|
"PLAYBACK_IN_FEEDS_ALWAYS_ON" = "Always on";
|
||||||
|
"PLAYBACK_IN_FEEDS_WIFI_ONLY" = "Wi-Fi only";
|
||||||
|
"PLAYBACK_IN_FEEDS_OFF" = "Off";
|
||||||
|
|
||||||
|
"NEW_SETTINGS_UI" = "New Settings UI";
|
||||||
|
"NEW_SETTINGS_UI_DESC" = "Use new grouped settings UI. May hide some settings";
|
||||||
|
|
||||||
"ENABLE_YT_STARTUP_ANIMATION" = "Enable YouTube startup animation";
|
"ENABLE_YT_STARTUP_ANIMATION" = "Enable YouTube startup animation";
|
||||||
"ENABLE_YT_STARTUP_ANIMATION_DESC" = "";
|
"ENABLE_YT_STARTUP_ANIMATION_DESC" = "";
|
||||||
|
|
||||||
@@ -98,6 +109,9 @@
|
|||||||
"HIDE_HOME_TAB" = "Hide Home Tab";
|
"HIDE_HOME_TAB" = "Hide Home Tab";
|
||||||
"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs";
|
"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs";
|
||||||
|
|
||||||
|
"FIX_CASTING" = "Fix Casting";
|
||||||
|
"FIX_CASTING_DESC" = "Changes some AB flags to fix casting";
|
||||||
|
|
||||||
"ENABLE_FLEX" = "Enable FLEX";
|
"ENABLE_FLEX" = "Enable FLEX";
|
||||||
"ENABLE_FLEX_DESC" = "Enable FLEX for debugging (not recommended). Leave this off unless you know what you are doing.";
|
"ENABLE_FLEX_DESC" = "Enable FLEX for debugging (not recommended). Leave this off unless you know what you are doing.";
|
||||||
|
|
||||||
|
|||||||
@@ -38,6 +38,9 @@ https://github.com/PoomSmart/Return-YouTube-Dislikes/tree/main/layout/Library/Ap
|
|||||||
"HIDE_HEATWAVES" = "Hide Heatwaves";
|
"HIDE_HEATWAVES" = "Hide Heatwaves";
|
||||||
"HIDE_HEATWAVES_DESC" = "Hides the Heatwaves in the video player. App restart is required.";
|
"HIDE_HEATWAVES_DESC" = "Hides the Heatwaves in the video player. App restart is required.";
|
||||||
|
|
||||||
|
"SEEK_ANYWHERE" = "Seek Anywhere Gesture";
|
||||||
|
"SEEK_ANYWHERE_DESC" = "Hold and drag on the video player to seek. You must disable YTLite - Hold to speed";
|
||||||
|
|
||||||
// App settings overlay options
|
// App settings overlay options
|
||||||
"APP_SETTINGS_OVERLAY_OPTIONS" = "App Settings Overlay Options";
|
"APP_SETTINGS_OVERLAY_OPTIONS" = "App Settings Overlay Options";
|
||||||
|
|
||||||
@@ -76,6 +79,14 @@ https://github.com/PoomSmart/Return-YouTube-Dislikes/tree/main/layout/Library/Ap
|
|||||||
// Miscellaneous
|
// Miscellaneous
|
||||||
"MISCELLANEOUS" = "Miscellaneous";
|
"MISCELLANEOUS" = "Miscellaneous";
|
||||||
|
|
||||||
|
"PLAYBACK_IN_FEEDS" = "Playback in feeds";
|
||||||
|
"PLAYBACK_IN_FEEDS_ALWAYS_ON" = "Always on";
|
||||||
|
"PLAYBACK_IN_FEEDS_WIFI_ONLY" = "Wi-Fi only";
|
||||||
|
"PLAYBACK_IN_FEEDS_OFF" = "Off";
|
||||||
|
|
||||||
|
"NEW_SETTINGS_UI" = "New Settings UI";
|
||||||
|
"NEW_SETTINGS_UI_DESC" = "Use new grouped settings UI. May hide some settings";
|
||||||
|
|
||||||
"ENABLE_YT_STARTUP_ANIMATION" = "Enable YouTube startup animation";
|
"ENABLE_YT_STARTUP_ANIMATION" = "Enable YouTube startup animation";
|
||||||
"ENABLE_YT_STARTUP_ANIMATION_DESC" = "";
|
"ENABLE_YT_STARTUP_ANIMATION_DESC" = "";
|
||||||
|
|
||||||
@@ -113,6 +124,9 @@ https://github.com/PoomSmart/Return-YouTube-Dislikes/tree/main/layout/Library/Ap
|
|||||||
"HIDE_HOME_TAB" = "Hide Home Tab";
|
"HIDE_HOME_TAB" = "Hide Home Tab";
|
||||||
"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs";
|
"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs";
|
||||||
|
|
||||||
|
"FIX_CASTING" = "Fix Casting";
|
||||||
|
"FIX_CASTING_DESC" = "Changes some AB flags to fix casting";
|
||||||
|
|
||||||
"ENABLE_FLEX" = "Enable FLEX";
|
"ENABLE_FLEX" = "Enable FLEX";
|
||||||
"ENABLE_FLEX_DESC" = "Enable FLEX for debugging (not recommended). Leave this off unless you know what you are doing.";
|
"ENABLE_FLEX_DESC" = "Enable FLEX for debugging (not recommended). Leave this off unless you know what you are doing.";
|
||||||
|
|
||||||
|
|||||||
@@ -23,6 +23,9 @@
|
|||||||
"HIDE_HEATWAVES" = "Hide Heatwaves";
|
"HIDE_HEATWAVES" = "Hide Heatwaves";
|
||||||
"HIDE_HEATWAVES_DESC" = "Hides the Heatwaves in the video player. App restart is required.";
|
"HIDE_HEATWAVES_DESC" = "Hides the Heatwaves in the video player. App restart is required.";
|
||||||
|
|
||||||
|
"SEEK_ANYWHERE" = "Seek Anywhere Gesture";
|
||||||
|
"SEEK_ANYWHERE_DESC" = "Hold and drag on the video player to seek. You must disable YTLite - Hold to speed";
|
||||||
|
|
||||||
// App settings overlay options
|
// App settings overlay options
|
||||||
"APP_SETTINGS_OVERLAY_OPTIONS" = "App Settings Overlay Options";
|
"APP_SETTINGS_OVERLAY_OPTIONS" = "App Settings Overlay Options";
|
||||||
|
|
||||||
@@ -61,6 +64,14 @@
|
|||||||
// Miscellaneous
|
// Miscellaneous
|
||||||
"MISCELLANEOUS" = "Miscellaneous";
|
"MISCELLANEOUS" = "Miscellaneous";
|
||||||
|
|
||||||
|
"PLAYBACK_IN_FEEDS" = "Playback in feeds";
|
||||||
|
"PLAYBACK_IN_FEEDS_ALWAYS_ON" = "Always on";
|
||||||
|
"PLAYBACK_IN_FEEDS_WIFI_ONLY" = "Wi-Fi only";
|
||||||
|
"PLAYBACK_IN_FEEDS_OFF" = "Off";
|
||||||
|
|
||||||
|
"NEW_SETTINGS_UI" = "New Settings UI";
|
||||||
|
"NEW_SETTINGS_UI_DESC" = "Use new grouped settings UI. May hide some settings";
|
||||||
|
|
||||||
"ENABLE_YT_STARTUP_ANIMATION" = "Enable YouTube startup animation";
|
"ENABLE_YT_STARTUP_ANIMATION" = "Enable YouTube startup animation";
|
||||||
"ENABLE_YT_STARTUP_ANIMATION_DESC" = "";
|
"ENABLE_YT_STARTUP_ANIMATION_DESC" = "";
|
||||||
|
|
||||||
@@ -98,6 +109,9 @@
|
|||||||
"HIDE_HOME_TAB" = "Hide Home Tab";
|
"HIDE_HOME_TAB" = "Hide Home Tab";
|
||||||
"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs";
|
"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs";
|
||||||
|
|
||||||
|
"FIX_CASTING" = "Fix Casting";
|
||||||
|
"FIX_CASTING_DESC" = "Changes some AB flags to fix casting";
|
||||||
|
|
||||||
"ENABLE_FLEX" = "Enable FLEX";
|
"ENABLE_FLEX" = "Enable FLEX";
|
||||||
"ENABLE_FLEX_DESC" = "Enable FLEX for debugging (not recommended). Leave this off unless you know what you are doing.";
|
"ENABLE_FLEX_DESC" = "Enable FLEX for debugging (not recommended). Leave this off unless you know what you are doing.";
|
||||||
|
|
||||||
|
|||||||
@@ -35,6 +35,9 @@
|
|||||||
"HIDE_HEATWAVES" = "Ẩn sóng nhiệt";
|
"HIDE_HEATWAVES" = "Ẩn sóng nhiệt";
|
||||||
"HIDE_HEATWAVES_DESC" = "Ẩn Sóng nhiệt trong trình phát video. Khởi động lại ứng dụng là bắt buộc.";
|
"HIDE_HEATWAVES_DESC" = "Ẩn Sóng nhiệt trong trình phát video. Khởi động lại ứng dụng là bắt buộc.";
|
||||||
|
|
||||||
|
"SEEK_ANYWHERE" = "Seek Anywhere Gesture";
|
||||||
|
"SEEK_ANYWHERE_DESC" = "Hold and drag on the video player to seek. You must disable YTLite - Hold to speed";
|
||||||
|
|
||||||
// Shorts controls overlay options
|
// Shorts controls overlay options
|
||||||
"SHORTS_CONTROLS_OVERLAY_OPTIONS" = "Tùy chọn lớp phủ điều khiển quần short";
|
"SHORTS_CONTROLS_OVERLAY_OPTIONS" = "Tùy chọn lớp phủ điều khiển quần short";
|
||||||
|
|
||||||
|
|||||||
@@ -21,6 +21,9 @@
|
|||||||
"HIDE_HEATWAVES" = "隱藏熱浪";
|
"HIDE_HEATWAVES" = "隱藏熱浪";
|
||||||
"HIDE_HEATWAVES_DESC" = "在播放器中隱藏熱浪";
|
"HIDE_HEATWAVES_DESC" = "在播放器中隱藏熱浪";
|
||||||
|
|
||||||
|
"SEEK_ANYWHERE" = "Seek Anywhere Gesture";
|
||||||
|
"SEEK_ANYWHERE_DESC" = "Hold and drag on the video player to seek. You must disable YTLite - Hold to speed";
|
||||||
|
|
||||||
// App settings overlay options
|
// App settings overlay options
|
||||||
"APP_SETTINGS_OVERLAY_OPTIONS" = "應用程式設定隱藏項目";
|
"APP_SETTINGS_OVERLAY_OPTIONS" = "應用程式設定隱藏項目";
|
||||||
|
|
||||||
@@ -59,6 +62,14 @@
|
|||||||
// Miscellaneous
|
// Miscellaneous
|
||||||
"MISCELLANEOUS" = "更多";
|
"MISCELLANEOUS" = "更多";
|
||||||
|
|
||||||
|
"PLAYBACK_IN_FEEDS" = "Playback in feeds";
|
||||||
|
"PLAYBACK_IN_FEEDS_ALWAYS_ON" = "Always on";
|
||||||
|
"PLAYBACK_IN_FEEDS_WIFI_ONLY" = "Wi-Fi only";
|
||||||
|
"PLAYBACK_IN_FEEDS_OFF" = "Off";
|
||||||
|
|
||||||
|
"NEW_SETTINGS_UI" = "New Settings UI";
|
||||||
|
"NEW_SETTINGS_UI_DESC" = "Use new grouped settings UI. May hide some settings";
|
||||||
|
|
||||||
"ENABLE_YT_STARTUP_ANIMATION" = "啟用 Youtube 歡迎動畫";
|
"ENABLE_YT_STARTUP_ANIMATION" = "啟用 Youtube 歡迎動畫";
|
||||||
"ENABLE_YT_STARTUP_ANIMATION_DESC" = "";
|
"ENABLE_YT_STARTUP_ANIMATION_DESC" = "";
|
||||||
|
|
||||||
@@ -96,6 +107,9 @@
|
|||||||
"HIDE_HOME_TAB" = "Hide Home Tab";
|
"HIDE_HOME_TAB" = "Hide Home Tab";
|
||||||
"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs";
|
"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs";
|
||||||
|
|
||||||
|
"FIX_CASTING" = "Fix Casting";
|
||||||
|
"FIX_CASTING_DESC" = "Changes some AB flags to fix casting";
|
||||||
|
|
||||||
"ENABLE_FLEX" = "啟用 FLEX(不建議使用)";
|
"ENABLE_FLEX" = "啟用 FLEX(不建議使用)";
|
||||||
"ENABLE_FLEX_DESC" = "如果不知道這是什麼,請勿啟用";
|
"ENABLE_FLEX_DESC" = "如果不知道這是什麼,請勿啟用";
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user