mirror of
https://github.com/revanced/revanced-patches.git
synced 2025-04-30 06:34:28 +02:00
fix(YouTube - Spoof app version): Remove broken spoof targets when patching 19.25+ (#3915)
This commit is contained in:
parent
31af587943
commit
9e18ecab18
@ -9,6 +9,7 @@ import static app.revanced.extension.youtube.patches.MiniplayerPatch.MiniplayerH
|
|||||||
import static app.revanced.extension.youtube.patches.MiniplayerPatch.MiniplayerType;
|
import static app.revanced.extension.youtube.patches.MiniplayerPatch.MiniplayerType;
|
||||||
import static app.revanced.extension.youtube.patches.MiniplayerPatch.MiniplayerType.*;
|
import static app.revanced.extension.youtube.patches.MiniplayerPatch.MiniplayerType.*;
|
||||||
import static app.revanced.extension.youtube.patches.SeekbarThumbnailsPatch.SeekbarThumbnailsHighQualityAvailability;
|
import static app.revanced.extension.youtube.patches.SeekbarThumbnailsPatch.SeekbarThumbnailsHighQualityAvailability;
|
||||||
|
import static app.revanced.extension.youtube.patches.VersionCheckPatch.IS_19_17_OR_GREATER;
|
||||||
import static app.revanced.extension.youtube.sponsorblock.objects.CategoryBehaviour.*;
|
import static app.revanced.extension.youtube.sponsorblock.objects.CategoryBehaviour.*;
|
||||||
|
|
||||||
import app.revanced.extension.shared.Logger;
|
import app.revanced.extension.shared.Logger;
|
||||||
@ -23,7 +24,6 @@ import app.revanced.extension.youtube.patches.spoof.SpoofAppVersionPatch;
|
|||||||
import app.revanced.extension.youtube.patches.spoof.SpoofVideoStreamsPatch;
|
import app.revanced.extension.youtube.patches.spoof.SpoofVideoStreamsPatch;
|
||||||
import app.revanced.extension.youtube.sponsorblock.SponsorBlockSettings;
|
import app.revanced.extension.youtube.sponsorblock.SponsorBlockSettings;
|
||||||
|
|
||||||
@SuppressWarnings("deprecation")
|
|
||||||
public class Settings extends BaseSettings {
|
public class Settings extends BaseSettings {
|
||||||
// Video
|
// Video
|
||||||
public static final BooleanSetting RESTORE_OLD_VIDEO_QUALITY_MENU = new BooleanSetting("revanced_restore_old_video_quality_menu", TRUE);
|
public static final BooleanSetting RESTORE_OLD_VIDEO_QUALITY_MENU = new BooleanSetting("revanced_restore_old_video_quality_menu", TRUE);
|
||||||
@ -128,8 +128,7 @@ public class Settings extends BaseSettings {
|
|||||||
public static final BooleanSetting HIDE_AUTOPLAY_BUTTON = new BooleanSetting("revanced_hide_autoplay_button", TRUE, true);
|
public static final BooleanSetting HIDE_AUTOPLAY_BUTTON = new BooleanSetting("revanced_hide_autoplay_button", TRUE, true);
|
||||||
public static final BooleanSetting HIDE_CAST_BUTTON = new BooleanSetting("revanced_hide_cast_button", TRUE, true);
|
public static final BooleanSetting HIDE_CAST_BUTTON = new BooleanSetting("revanced_hide_cast_button", TRUE, true);
|
||||||
public static final BooleanSetting HIDE_PLAYER_PREVIOUS_NEXT_BUTTONS = new BooleanSetting("revanced_hide_player_previous_next_buttons", FALSE, true);
|
public static final BooleanSetting HIDE_PLAYER_PREVIOUS_NEXT_BUTTONS = new BooleanSetting("revanced_hide_player_previous_next_buttons", FALSE, true);
|
||||||
@Deprecated
|
private static final BooleanSetting DEPRECATED_HIDE_PLAYER_BUTTONS = new BooleanSetting("revanced_hide_player_buttons", FALSE, true);
|
||||||
public static final BooleanSetting HIDE_PLAYER_BUTTONS = new BooleanSetting("revanced_hide_player_buttons", FALSE, true);
|
|
||||||
public static final BooleanSetting COPY_VIDEO_URL = new BooleanSetting("revanced_copy_video_url", FALSE);
|
public static final BooleanSetting COPY_VIDEO_URL = new BooleanSetting("revanced_copy_video_url", FALSE);
|
||||||
public static final BooleanSetting COPY_VIDEO_URL_TIMESTAMP = new BooleanSetting("revanced_copy_video_url_timestamp", TRUE);
|
public static final BooleanSetting COPY_VIDEO_URL_TIMESTAMP = new BooleanSetting("revanced_copy_video_url_timestamp", TRUE);
|
||||||
public static final BooleanSetting PLAYBACK_SPEED_DIALOG_BUTTON = new BooleanSetting("revanced_playback_speed_dialog_button", FALSE);
|
public static final BooleanSetting PLAYBACK_SPEED_DIALOG_BUTTON = new BooleanSetting("revanced_playback_speed_dialog_button", FALSE);
|
||||||
@ -192,14 +191,13 @@ public class Settings extends BaseSettings {
|
|||||||
public static final BooleanSetting HIDE_PLAYER_FLYOUT_SLEEP_TIMER = new BooleanSetting("revanced_hide_player_flyout_sleep_timer", FALSE);
|
public static final BooleanSetting HIDE_PLAYER_FLYOUT_SLEEP_TIMER = new BooleanSetting("revanced_hide_player_flyout_sleep_timer", FALSE);
|
||||||
public static final BooleanSetting HIDE_PLAYER_FLYOUT_STABLE_VOLUME = new BooleanSetting("revanced_hide_player_flyout_stable_volume", FALSE);
|
public static final BooleanSetting HIDE_PLAYER_FLYOUT_STABLE_VOLUME = new BooleanSetting("revanced_hide_player_flyout_stable_volume", FALSE);
|
||||||
public static final BooleanSetting HIDE_PLAYER_FLYOUT_WATCH_IN_VR = new BooleanSetting("revanced_hide_player_flyout_watch_in_vr", TRUE);
|
public static final BooleanSetting HIDE_PLAYER_FLYOUT_WATCH_IN_VR = new BooleanSetting("revanced_hide_player_flyout_watch_in_vr", TRUE);
|
||||||
@Deprecated
|
|
||||||
private static final BooleanSetting DEPRECATED_HIDE_PLAYER_FLYOUT_VIDEO_QUALITY_FOOTER = new BooleanSetting("revanced_hide_video_quality_menu_footer", FALSE);
|
private static final BooleanSetting DEPRECATED_HIDE_PLAYER_FLYOUT_VIDEO_QUALITY_FOOTER = new BooleanSetting("revanced_hide_video_quality_menu_footer", FALSE);
|
||||||
public static final BooleanSetting HIDE_PLAYER_FLYOUT_VIDEO_QUALITY_FOOTER = new BooleanSetting("revanced_hide_player_flyout_video_quality_footer", FALSE);
|
public static final BooleanSetting HIDE_PLAYER_FLYOUT_VIDEO_QUALITY_FOOTER = new BooleanSetting("revanced_hide_player_flyout_video_quality_footer", FALSE);
|
||||||
|
|
||||||
// General layout
|
// General layout
|
||||||
public static final EnumSetting<StartPage> CHANGE_START_PAGE = new EnumSetting<>("revanced_change_start_page", StartPage.ORIGINAL, true);
|
public static final EnumSetting<StartPage> CHANGE_START_PAGE = new EnumSetting<>("revanced_change_start_page", StartPage.ORIGINAL, true);
|
||||||
public static final BooleanSetting SPOOF_APP_VERSION = new BooleanSetting("revanced_spoof_app_version", FALSE, true, "revanced_spoof_app_version_user_dialog_message");
|
public static final BooleanSetting SPOOF_APP_VERSION = new BooleanSetting("revanced_spoof_app_version", FALSE, true, "revanced_spoof_app_version_user_dialog_message");
|
||||||
public static final StringSetting SPOOF_APP_VERSION_TARGET = new StringSetting("revanced_spoof_app_version_target", "17.41.37", true, parent(SPOOF_APP_VERSION));
|
public static final StringSetting SPOOF_APP_VERSION_TARGET = new StringSetting("revanced_spoof_app_version_target", IS_19_17_OR_GREATER ? "18.38.44" : "17.41.37", true, parent(SPOOF_APP_VERSION));
|
||||||
public static final BooleanSetting TABLET_LAYOUT = new BooleanSetting("revanced_tablet_layout", FALSE, true, "revanced_tablet_layout_user_dialog_message");
|
public static final BooleanSetting TABLET_LAYOUT = new BooleanSetting("revanced_tablet_layout", FALSE, true, "revanced_tablet_layout_user_dialog_message");
|
||||||
public static final BooleanSetting WIDE_SEARCHBAR = new BooleanSetting("revanced_wide_searchbar", FALSE, true);
|
public static final BooleanSetting WIDE_SEARCHBAR = new BooleanSetting("revanced_wide_searchbar", FALSE, true);
|
||||||
public static final BooleanSetting BYPASS_IMAGE_REGION_RESTRICTIONS = new BooleanSetting("revanced_bypass_image_region_restrictions", FALSE, true);
|
public static final BooleanSetting BYPASS_IMAGE_REGION_RESTRICTIONS = new BooleanSetting("revanced_bypass_image_region_restrictions", FALSE, true);
|
||||||
@ -378,12 +376,12 @@ public class Settings extends BaseSettings {
|
|||||||
migrateOldSettingToNew(DEPRECATED_SB_UUID_OLD_MIGRATION_SETTING, SB_PRIVATE_USER_ID);
|
migrateOldSettingToNew(DEPRECATED_SB_UUID_OLD_MIGRATION_SETTING, SB_PRIVATE_USER_ID);
|
||||||
|
|
||||||
// Old spoof versions that no longer work reliably.
|
// Old spoof versions that no longer work reliably.
|
||||||
if (SpoofAppVersionPatch.isSpoofingToLessThan("17.33.00")) {
|
if (SpoofAppVersionPatch.isSpoofingToLessThan(SPOOF_APP_VERSION_TARGET.defaultValue)) {
|
||||||
Logger.printInfo(() -> "Resetting spoof app version target");
|
Logger.printInfo(() -> "Resetting spoof app version target");
|
||||||
Settings.SPOOF_APP_VERSION_TARGET.resetToDefault();
|
SPOOF_APP_VERSION_TARGET.resetToDefault();
|
||||||
}
|
}
|
||||||
|
|
||||||
migrateOldSettingToNew(HIDE_PLAYER_BUTTONS, HIDE_PLAYER_PREVIOUS_NEXT_BUTTONS);
|
migrateOldSettingToNew(DEPRECATED_HIDE_PLAYER_BUTTONS, HIDE_PLAYER_PREVIOUS_NEXT_BUTTONS);
|
||||||
|
|
||||||
migrateOldSettingToNew(DEPRECATED_HIDE_PLAYER_FLYOUT_VIDEO_QUALITY_FOOTER, HIDE_PLAYER_FLYOUT_VIDEO_QUALITY_FOOTER);
|
migrateOldSettingToNew(DEPRECATED_HIDE_PLAYER_FLYOUT_VIDEO_QUALITY_FOOTER, HIDE_PLAYER_FLYOUT_VIDEO_QUALITY_FOOTER);
|
||||||
|
|
||||||
|
@ -8,6 +8,8 @@ import app.revanced.patches.all.misc.resources.addResourcesPatch
|
|||||||
import app.revanced.patches.shared.misc.settings.preference.ListPreference
|
import app.revanced.patches.shared.misc.settings.preference.ListPreference
|
||||||
import app.revanced.patches.shared.misc.settings.preference.SwitchPreference
|
import app.revanced.patches.shared.misc.settings.preference.SwitchPreference
|
||||||
import app.revanced.patches.youtube.misc.extension.sharedExtensionPatch
|
import app.revanced.patches.youtube.misc.extension.sharedExtensionPatch
|
||||||
|
import app.revanced.patches.youtube.misc.playservice.is_19_17_or_greater
|
||||||
|
import app.revanced.patches.youtube.misc.playservice.versionCheckPatch
|
||||||
import app.revanced.patches.youtube.misc.settings.PreferenceScreen
|
import app.revanced.patches.youtube.misc.settings.PreferenceScreen
|
||||||
import app.revanced.patches.youtube.misc.settings.settingsPatch
|
import app.revanced.patches.youtube.misc.settings.settingsPatch
|
||||||
import com.android.tools.smali.dexlib2.iface.instruction.OneRegisterInstruction
|
import com.android.tools.smali.dexlib2.iface.instruction.OneRegisterInstruction
|
||||||
@ -19,12 +21,14 @@ private const val EXTENSION_CLASS_DESCRIPTOR =
|
|||||||
val spoofAppVersionPatch = bytecodePatch(
|
val spoofAppVersionPatch = bytecodePatch(
|
||||||
name = "Spoof app version",
|
name = "Spoof app version",
|
||||||
description = "Adds an option to trick YouTube into thinking you are running an older version of the app. " +
|
description = "Adds an option to trick YouTube into thinking you are running an older version of the app. " +
|
||||||
"This can be used to restore old UI elements and features.",
|
"This can be used to restore old UI elements and features. " +
|
||||||
|
"Patching 19.16.39 or lower includes additional older spoofing targets.",
|
||||||
) {
|
) {
|
||||||
dependsOn(
|
dependsOn(
|
||||||
sharedExtensionPatch,
|
sharedExtensionPatch,
|
||||||
settingsPatch,
|
settingsPatch,
|
||||||
addResourcesPatch,
|
addResourcesPatch,
|
||||||
|
versionCheckPatch
|
||||||
)
|
)
|
||||||
|
|
||||||
compatibleWith(
|
compatibleWith(
|
||||||
@ -43,10 +47,19 @@ val spoofAppVersionPatch = bytecodePatch(
|
|||||||
|
|
||||||
PreferenceScreen.GENERAL_LAYOUT.addPreferences(
|
PreferenceScreen.GENERAL_LAYOUT.addPreferences(
|
||||||
SwitchPreference("revanced_spoof_app_version"),
|
SwitchPreference("revanced_spoof_app_version"),
|
||||||
|
if (is_19_17_or_greater) {
|
||||||
ListPreference(
|
ListPreference(
|
||||||
key = "revanced_spoof_app_version_target",
|
key = "revanced_spoof_app_version_target",
|
||||||
summaryKey = null,
|
summaryKey = null,
|
||||||
),
|
)
|
||||||
|
} else {
|
||||||
|
ListPreference(
|
||||||
|
key = "revanced_spoof_app_version_target",
|
||||||
|
summaryKey = null,
|
||||||
|
entriesKey = "revanced_spoof_app_version_target_legacy_entries",
|
||||||
|
entryValuesKey = "revanced_spoof_app_version_target_legacy_entry_values"
|
||||||
|
)
|
||||||
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
val insertIndex = spoofAppVersionFingerprint.patternMatch!!.startIndex + 1
|
val insertIndex = spoofAppVersionFingerprint.patternMatch!!.startIndex + 1
|
||||||
|
@ -9,7 +9,7 @@ import app.revanced.patches.youtube.video.speed.remember.rememberPlaybackSpeedPa
|
|||||||
val playbackSpeedPatch = bytecodePatch(
|
val playbackSpeedPatch = bytecodePatch(
|
||||||
name = "Playback speed",
|
name = "Playback speed",
|
||||||
description = "Adds options to customize available playback speeds, remember the last playback speed selected " +
|
description = "Adds options to customize available playback speeds, remember the last playback speed selected " +
|
||||||
"and show a speed dialog button to the video player.",
|
"and show a speed dialog button in the video player.",
|
||||||
) {
|
) {
|
||||||
dependsOn(
|
dependsOn(
|
||||||
playbackSpeedButtonPatch,
|
playbackSpeedButtonPatch,
|
||||||
|
@ -15,11 +15,17 @@
|
|||||||
<patch id="layout.spoofappversion.spoofAppVersionPatch">
|
<patch id="layout.spoofappversion.spoofAppVersionPatch">
|
||||||
<string-array name="revanced_spoof_app_version_target_entries">
|
<string-array name="revanced_spoof_app_version_target_entries">
|
||||||
<item>@string/revanced_spoof_app_version_target_entry_1</item>
|
<item>@string/revanced_spoof_app_version_target_entry_1</item>
|
||||||
<item>@string/revanced_spoof_app_version_target_entry_2</item>
|
|
||||||
<item>@string/revanced_spoof_app_version_target_entry_3</item>
|
|
||||||
<item>@string/revanced_spoof_app_version_target_entry_4</item>
|
|
||||||
</string-array>
|
</string-array>
|
||||||
<string-array name="revanced_spoof_app_version_target_entry_values">
|
<string-array name="revanced_spoof_app_version_target_entry_values">
|
||||||
|
<item>18.38.44</item>
|
||||||
|
</string-array>
|
||||||
|
<string-array name="revanced_spoof_app_version_target_legacy_entries">
|
||||||
|
<item>@string/revanced_spoof_app_version_target_legacy_entry_1</item>
|
||||||
|
<item>@string/revanced_spoof_app_version_target_legacy_entry_2</item>
|
||||||
|
<item>@string/revanced_spoof_app_version_target_legacy_entry_3</item>
|
||||||
|
<item>@string/revanced_spoof_app_version_target_legacy_entry_4</item>
|
||||||
|
</string-array>
|
||||||
|
<string-array name="revanced_spoof_app_version_target_legacy_entry_values">
|
||||||
<item>18.33.40</item>
|
<item>18.33.40</item>
|
||||||
<item>18.20.39</item>
|
<item>18.20.39</item>
|
||||||
<item>18.09.39</item>
|
<item>18.09.39</item>
|
||||||
|
@ -973,11 +973,12 @@ This is because Crowdin requires temporarily flattening this file and removing t
|
|||||||
<!-- It is ideal, but not required, if the text here appears is alphabetically after the text used for 'revanced_spoof_app_version_title'.
|
<!-- It is ideal, but not required, if the text here appears is alphabetically after the text used for 'revanced_spoof_app_version_title'.
|
||||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||||
<string name="revanced_spoof_app_version_target_title">Spoof app version target</string>
|
<string name="revanced_spoof_app_version_target_title">Spoof app version target</string>
|
||||||
|
<string name="revanced_spoof_app_version_target_entry_1">18.38.44 - Restore old Shorts player icons</string>
|
||||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||||
<string name="revanced_spoof_app_version_target_entry_1">18.33.40 - Restore RYD on Shorts incognito mode</string>
|
<string name="revanced_spoof_app_version_target_legacy_entry_1">18.33.40 - Restore RYD on Shorts incognito mode</string>
|
||||||
<string name="revanced_spoof_app_version_target_entry_2">18.20.39 - Restore wide video speed & quality menu</string>
|
<string name="revanced_spoof_app_version_target_legacy_entry_2">18.20.39 - Restore wide video speed & quality menu</string>
|
||||||
<string name="revanced_spoof_app_version_target_entry_3">18.09.39 - Restore library tab</string>
|
<string name="revanced_spoof_app_version_target_legacy_entry_3">18.09.39 - Restore library tab</string>
|
||||||
<string name="revanced_spoof_app_version_target_entry_4">17.41.37 - Restore old playlist shelf</string>
|
<string name="revanced_spoof_app_version_target_legacy_entry_4">17.41.37 - Restore old playlist shelf</string>
|
||||||
</patch>
|
</patch>
|
||||||
<patch id="layout.startpage.changeStartPagePatch">
|
<patch id="layout.startpage.changeStartPagePatch">
|
||||||
<string name="revanced_change_start_page_title">Set start page</string>
|
<string name="revanced_change_start_page_title">Set start page</string>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user