diff --git a/.github/workflows/pull_strings.yml b/.github/workflows/pull_strings.yml index ace03dbc05..ab40435fdf 100644 --- a/.github/workflows/pull_strings.yml +++ b/.github/workflows/pull_strings.yml @@ -2,7 +2,7 @@ name: Pull strings on: schedule: - - cron: "0 */6 * * *" + - cron: "0 */8 * * *" workflow_dispatch: jobs: diff --git a/CHANGELOG.md b/CHANGELOG.md index d40058344d..4b80eab328 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,73 @@ +# [5.14.0-dev.9](https://github.com/ReVanced/revanced-patches/compare/v5.14.0-dev.8...v5.14.0-dev.9) (2025-03-09) + + +### Features + +* **Spotify:** Add `Spoof signature` patch ([#4576](https://github.com/ReVanced/revanced-patches/issues/4576)) ([3646c70](https://github.com/ReVanced/revanced-patches/commit/3646c70556b67a6b7ecf9b86869ebf03c3611333)) + +# [5.14.0-dev.8](https://github.com/ReVanced/revanced-patches/compare/v5.14.0-dev.7...v5.14.0-dev.8) (2025-03-09) + + +### Bug Fixes + +* **YouTube - Theme:** Resolve dark mode startup crash with Android 9.0 ([741c2d5](https://github.com/ReVanced/revanced-patches/commit/741c2d59406f5d602554bb3a3c0b8982f42848b4)) + +# [5.14.0-dev.7](https://github.com/ReVanced/revanced-patches/compare/v5.14.0-dev.6...v5.14.0-dev.7) (2025-03-08) + + +### Bug Fixes + +* **YouTube:** Change language settings menu to use native language names ([#4568](https://github.com/ReVanced/revanced-patches/issues/4568)) ([6f3f8fd](https://github.com/ReVanced/revanced-patches/commit/6f3f8fdce05501e4fa4423c2170a916fbea3b199)) + +# [5.14.0-dev.6](https://github.com/ReVanced/revanced-patches/compare/v5.14.0-dev.5...v5.14.0-dev.6) (2025-03-07) + + +### Bug Fixes + +* **YouTube - Hide layout components:** Do not hide Movie/Courses start page content if 'Hide horizontal shelves' is enabled ([62a6164](https://github.com/ReVanced/revanced-patches/commit/62a6164b88b64200b517a5ba6b800d8214dbbad8)) + +# [5.14.0-dev.5](https://github.com/ReVanced/revanced-patches/compare/v5.14.0-dev.4...v5.14.0-dev.5) (2025-03-06) + + +### Features + +* **Infinity for Reddit:** Add support for package name on IzzyOnDroid ([#4554](https://github.com/ReVanced/revanced-patches/issues/4554)) ([cf9f959](https://github.com/ReVanced/revanced-patches/commit/cf9f959923076c10a7f0a29f6ba277f5a055ec07)) + +# [5.14.0-dev.4](https://github.com/ReVanced/revanced-patches/compare/v5.14.0-dev.3...v5.14.0-dev.4) (2025-03-06) + + +### Bug Fixes + +* **YouTube:** Combine `Restore old video quality menu` and `Remember video quality` into `Video quality` patch ([#4552](https://github.com/ReVanced/revanced-patches/issues/4552)) ([ee67b76](https://github.com/ReVanced/revanced-patches/commit/ee67b763d5c5947a5b1ef4420b1efa820ed6af83)) + +# [5.14.0-dev.3](https://github.com/ReVanced/revanced-patches/compare/v5.14.0-dev.2...v5.14.0-dev.3) (2025-03-06) + + +### Bug Fixes + +* **Boost for reddit - Client spoof:** Use a different user agent to combat Reddit's API issues ([5d3c817](https://github.com/ReVanced/revanced-patches/commit/5d3c8175b34a3f6ae2732b25db0851773a8c000d)) + +# [5.14.0-dev.2](https://github.com/ReVanced/revanced-patches/compare/v5.14.0-dev.1...v5.14.0-dev.2) (2025-03-06) + + +### Bug Fixes + +* **YouTube - Hide ads:** Hide new type of buttoned ad ([#4528](https://github.com/ReVanced/revanced-patches/issues/4528)) ([4387a7b](https://github.com/ReVanced/revanced-patches/commit/4387a7b131f49729e902e008bb4cec073635c040)) + +# [5.14.0-dev.1](https://github.com/ReVanced/revanced-patches/compare/v5.13.1-dev.1...v5.14.0-dev.1) (2025-03-06) + + +### Features + +* **YouTube - Remember video quality:** Add separate Shorts default quality settings ([#4543](https://github.com/ReVanced/revanced-patches/issues/4543)) ([88142ab](https://github.com/ReVanced/revanced-patches/commit/88142ab464192b564b1b8d56a6b45663f77f5e00)) + +## [5.13.1-dev.1](https://github.com/ReVanced/revanced-patches/compare/v5.13.0...v5.13.1-dev.1) (2025-03-06) + + +### Bug Fixes + +* **YouTube - Change form factor:** Restore Automotive form factor watch history menu, channel pages, and community posts ([#4541](https://github.com/ReVanced/revanced-patches/issues/4541)) ([aa5c001](https://github.com/ReVanced/revanced-patches/commit/aa5c001968446e5270c756256724e917009612cd)) + # [5.13.0](https://github.com/ReVanced/revanced-patches/compare/v5.12.0...v5.13.0) (2025-03-03) diff --git a/extensions/shared/library/src/main/java/app/revanced/extension/shared/settings/AppLanguage.java b/extensions/shared/library/src/main/java/app/revanced/extension/shared/settings/AppLanguage.java index e6d029a2e4..877f4ba227 100644 --- a/extensions/shared/library/src/main/java/app/revanced/extension/shared/settings/AppLanguage.java +++ b/extensions/shared/library/src/main/java/app/revanced/extension/shared/settings/AppLanguage.java @@ -8,6 +8,9 @@ public enum AppLanguage { */ DEFAULT, + // Languages codes not included with YouTube, but are translated on Crowdin + GA, + // Language codes found in locale_config.xml // All region specific variants have been removed. AF, diff --git a/extensions/shared/library/src/main/java/app/revanced/extension/shared/settings/preference/AbstractPreferenceFragment.java b/extensions/shared/library/src/main/java/app/revanced/extension/shared/settings/preference/AbstractPreferenceFragment.java index c7b570a855..2aeab61341 100644 --- a/extensions/shared/library/src/main/java/app/revanced/extension/shared/settings/preference/AbstractPreferenceFragment.java +++ b/extensions/shared/library/src/main/java/app/revanced/extension/shared/settings/preference/AbstractPreferenceFragment.java @@ -158,16 +158,16 @@ protected boolean prefIsSetToDefault(Preference pref, Setting setting) { /** * Syncs all UI Preferences to any {@link Setting} they represent. */ - private void updatePreferenceScreen(@NonNull PreferenceScreen screen, + private void updatePreferenceScreen(@NonNull PreferenceGroup group, boolean syncSettingValue, boolean applySettingToPreference) { // Alternatively this could iterate thru all Settings and check for any matching Preferences, // but there are many more Settings than UI preferences so it's more efficient to only check // the Preferences. - for (int i = 0, prefCount = screen.getPreferenceCount(); i < prefCount; i++) { - Preference pref = screen.getPreference(i); - if (pref instanceof PreferenceScreen) { - updatePreferenceScreen((PreferenceScreen) pref, syncSettingValue, applySettingToPreference); + for (int i = 0, prefCount = group.getPreferenceCount(); i < prefCount; i++) { + Preference pref = group.getPreference(i); + if (pref instanceof PreferenceGroup subGroup) { + updatePreferenceScreen(subGroup, syncSettingValue, applySettingToPreference); } else if (pref.hasKey()) { String key = pref.getKey(); Setting setting = Setting.getSettingFromPath(key); diff --git a/extensions/shared/library/src/main/java/app/revanced/extension/shared/settings/preference/NoTitlePreferenceCategory.java b/extensions/shared/library/src/main/java/app/revanced/extension/shared/settings/preference/NoTitlePreferenceCategory.java new file mode 100644 index 0000000000..73255b028e --- /dev/null +++ b/extensions/shared/library/src/main/java/app/revanced/extension/shared/settings/preference/NoTitlePreferenceCategory.java @@ -0,0 +1,54 @@ +package app.revanced.extension.shared.settings.preference; + +import android.annotation.SuppressLint; +import android.content.Context; +import android.preference.PreferenceCategory; +import android.util.AttributeSet; +import android.view.View; +import android.view.ViewGroup; + +/** + * Empty preference category with no title, used to organize and group related preferences together. + */ +@SuppressWarnings({"unused", "deprecation"}) +public class NoTitlePreferenceCategory extends PreferenceCategory { + + public NoTitlePreferenceCategory(Context context, AttributeSet attrs) { + super(context, attrs); + } + + public NoTitlePreferenceCategory(Context context, AttributeSet attrs, int defStyleAttr) { + super(context, attrs, defStyleAttr); + } + + public NoTitlePreferenceCategory(Context context) { + super(context); + } + + @Override + @SuppressLint("MissingSuperCall") + protected View onCreateView(ViewGroup parent) { + // Return an zero-height view to eliminate empty title space. + return new View(getContext()); + } + + @Override + public CharSequence getTitle() { + // Title can be used for sorting. Return the first sub preference title. + if (getPreferenceCount() > 0) { + return getPreference(0).getTitle(); + } + + return super.getTitle(); + } + + @Override + public int getTitleRes() { + if (getPreferenceCount() > 0) { + return getPreference(0).getTitleRes(); + } + + return super.getTitleRes(); + } +} + diff --git a/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/BackgroundPlaybackPatch.java b/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/BackgroundPlaybackPatch.java index 7e5f59a6e1..1ab3374d7d 100644 --- a/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/BackgroundPlaybackPatch.java +++ b/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/BackgroundPlaybackPatch.java @@ -1,7 +1,7 @@ package app.revanced.extension.youtube.patches; import app.revanced.extension.youtube.settings.Settings; -import app.revanced.extension.youtube.shared.PlayerType; +import app.revanced.extension.youtube.shared.ShortsPlayerState; @SuppressWarnings("unused") public class BackgroundPlaybackPatch { @@ -23,16 +23,7 @@ public static boolean isBackgroundPlaybackAllowed(boolean original) { // 7. Close the Short // 8. Resume playing the regular video // 9. Minimize the app (PIP should appear) - if (!VideoInformation.lastVideoIdIsShort()) { - return true; // Definitely is not a Short. - } - - // TODO: Add better hook. - // Might be a Shorts, or might be a prior regular video on screen again after a Shorts was closed. - // This incorrectly prevents PIP if player is in WATCH_WHILE_MINIMIZED after closing a Shorts, - // But there's no way around this unless an additional hook is added to definitively detect - // the Shorts player is on screen. This use case is unusual anyways so it's not a huge concern. - return !PlayerType.getCurrent().isNoneHiddenOrMinimized(); + return !ShortsPlayerState.isOpen(); } /** diff --git a/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/ChangeFormFactorPatch.java b/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/ChangeFormFactorPatch.java index a974f322bc..706b135aff 100644 --- a/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/ChangeFormFactorPatch.java +++ b/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/ChangeFormFactorPatch.java @@ -1,9 +1,17 @@ package app.revanced.extension.youtube.patches; +import static app.revanced.extension.youtube.shared.NavigationBar.NavigationButton; + +import android.view.View; + import androidx.annotation.Nullable; -import app.revanced.extension.shared.Utils; +import java.util.Objects; + +import app.revanced.extension.shared.Logger; import app.revanced.extension.youtube.settings.Settings; +import app.revanced.extension.youtube.shared.NavigationBar; +import app.revanced.extension.youtube.shared.PlayerType; @SuppressWarnings("unused") public class ChangeFormFactorPatch { @@ -41,14 +49,57 @@ public enum FormFactor { @Nullable private static final Integer FORM_FACTOR_TYPE = Settings.CHANGE_FORM_FACTOR.get().formFactorType; + private static final boolean USING_AUTOMOTIVE_TYPE = Objects.requireNonNull( + FormFactor.AUTOMOTIVE.formFactorType).equals(FORM_FACTOR_TYPE); /** * Injection point. */ public static int getFormFactor(int original) { - return FORM_FACTOR_TYPE == null - ? original - : FORM_FACTOR_TYPE; + if (FORM_FACTOR_TYPE == null) return original; + + if (USING_AUTOMOTIVE_TYPE) { + // Do not change if the player is opening or is opened, + // otherwise the video description cannot be opened. + PlayerType current = PlayerType.getCurrent(); + if (current.isMaximizedOrFullscreen() || current == PlayerType.WATCH_WHILE_SLIDING_MINIMIZED_MAXIMIZED) { + Logger.printDebug(() -> "Using original form factor for player"); + return original; + } + + if (!NavigationBar.isSearchBarActive()) { + // Automotive type shows error 400 when opening a channel page and using some explore tab. + // This is a bug in unpatched YouTube that occurs on actual Android Automotive devices. + // Work around the issue by using the original form factor if not in search and the + // navigation back button is present. + if (NavigationBar.isBackButtonVisible()) { + Logger.printDebug(() -> "Using original form factor, as back button is visible without search present"); + return original; + } + + // Do not change library tab otherwise watch history is hidden. + // Do this check last since the current navigation button is required. + if (NavigationButton.getSelectedNavigationButton() == NavigationButton.LIBRARY) { + return original; + } + } + } + + return FORM_FACTOR_TYPE; } + /** + * Injection point. + */ + public static void navigationTabCreated(NavigationButton button, View tabView) { + // On first startup of the app the navigation buttons are fetched and updated. + // If the user immediately opens the 'You' or opens a video, then the call to + // update the navigtation buttons will use the non automotive form factor + // and the explore tab is missing. + // Fixing this is not so simple because of the concurrent calls for the player and You tab. + // For now, always hide the explore tab. + if (USING_AUTOMOTIVE_TYPE && button == NavigationButton.EXPLORE) { + tabView.setVisibility(View.GONE); + } + } } \ No newline at end of file diff --git a/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/DisableAutoCaptionsPatch.java b/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/DisableAutoCaptionsPatch.java index 9d43159a5f..38cbf00a08 100644 --- a/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/DisableAutoCaptionsPatch.java +++ b/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/DisableAutoCaptionsPatch.java @@ -1,7 +1,7 @@ package app.revanced.extension.youtube.patches; import app.revanced.extension.youtube.settings.Settings; -import app.revanced.extension.youtube.shared.PlayerType; +import app.revanced.extension.youtube.shared.ShortsPlayerState; @SuppressWarnings("unused") public class DisableAutoCaptionsPatch { @@ -14,7 +14,7 @@ public class DisableAutoCaptionsPatch { public static boolean autoCaptionsEnabled() { return Settings.AUTO_CAPTIONS.get() // Do not use auto captions for Shorts. - && !PlayerType.getCurrent().isNoneHiddenOrSlidingMinimized(); + && ShortsPlayerState.isOpen(); } } diff --git a/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/PlayerTypeHookPatch.java b/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/PlayerTypeHookPatch.java index 3f15919505..79ffd72576 100644 --- a/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/PlayerTypeHookPatch.java +++ b/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/PlayerTypeHookPatch.java @@ -1,8 +1,11 @@ package app.revanced.extension.youtube.patches; +import android.view.View; + import androidx.annotation.Nullable; import app.revanced.extension.youtube.shared.PlayerType; +import app.revanced.extension.youtube.shared.ShortsPlayerState; import app.revanced.extension.youtube.shared.VideoState; @SuppressWarnings("unused") @@ -24,4 +27,26 @@ public static void setVideoState(@Nullable Enum youTubeVideoState) { VideoState.setFromString(youTubeVideoState.name()); } + + /** + * Injection point. + * + * Add a listener to the shorts player overlay View. + * Triggered when a shorts player is attached or detached to Windows. + * + * @param view shorts player overlay (R.id.reel_watch_player). + */ + public static void onShortsCreate(View view) { + view.addOnAttachStateChangeListener(new View.OnAttachStateChangeListener() { + @Override + public void onViewAttachedToWindow(@Nullable View v) { + ShortsPlayerState.setOpen(true); + } + + @Override + public void onViewDetachedFromWindow(@Nullable View v) { + ShortsPlayerState.setOpen(false); + } + }); + } } diff --git a/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/components/AdsFilter.java b/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/components/AdsFilter.java index 14a98b17b8..5f47290e9f 100644 --- a/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/components/AdsFilter.java +++ b/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/components/AdsFilter.java @@ -74,6 +74,7 @@ public AdsFilter() { "video_display_button_group_layout", "landscape_image_wide_button_layout", "video_display_carousel_button_group_layout", + "video_display_full_buttoned_short_dr_layout", "compact_landscape_image_layout", // Tablet layout search results. "text_image_no_button_layout" // Tablet layout search results. ); diff --git a/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/components/VideoQualityMenuFilterPatch.java b/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/components/AdvancedVideoQualityMenuFilter.java similarity index 70% rename from extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/components/VideoQualityMenuFilterPatch.java rename to extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/components/AdvancedVideoQualityMenuFilter.java index 7ee3cab777..66d78328d7 100644 --- a/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/components/VideoQualityMenuFilterPatch.java +++ b/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/components/AdvancedVideoQualityMenuFilter.java @@ -2,20 +2,20 @@ import androidx.annotation.Nullable; -import app.revanced.extension.youtube.patches.playback.quality.RestoreOldVideoQualityMenuPatch; +import app.revanced.extension.youtube.patches.playback.quality.AdvancedVideoQualityMenuPatch; import app.revanced.extension.youtube.settings.Settings; /** - * Abuse LithoFilter for {@link RestoreOldVideoQualityMenuPatch}. + * Abuse LithoFilter for {@link AdvancedVideoQualityMenuPatch}. */ -public final class VideoQualityMenuFilterPatch extends Filter { +public final class AdvancedVideoQualityMenuFilter extends Filter { // Must be volatile or synchronized, as litho filtering runs off main thread // and this field is then access from the main thread. public static volatile boolean isVideoQualityMenuVisible; - public VideoQualityMenuFilterPatch() { + public AdvancedVideoQualityMenuFilter() { addPathCallbacks(new StringFilterGroup( - Settings.RESTORE_OLD_VIDEO_QUALITY_MENU, + Settings.ADVANCED_VIDEO_QUALITY_MENU, "quick_quality_sheet_content.eml-js" )); } diff --git a/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/components/LayoutComponentsFilter.java b/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/components/LayoutComponentsFilter.java index 7cd56e7ab0..2d617d4a46 100644 --- a/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/components/LayoutComponentsFilter.java +++ b/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/components/LayoutComponentsFilter.java @@ -462,6 +462,12 @@ private static boolean hideShelves() { return true; } + // Do not hide if the navigation back button is visible, + // otherwise the content shelves in the YouTube Movie/Courses pages is hidden. + if (NavigationBar.isBackButtonVisible()) { + return false; + } + // Check navigation button last. // Only filter if the library tab is not selected. // This check is important as the shelf layout is used for the library tab playlists. diff --git a/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/playback/quality/RestoreOldVideoQualityMenuPatch.java b/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/playback/quality/AdvancedVideoQualityMenuPatch.java similarity index 76% rename from extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/playback/quality/RestoreOldVideoQualityMenuPatch.java rename to extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/playback/quality/AdvancedVideoQualityMenuPatch.java index 11874006ee..e65b13f135 100644 --- a/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/playback/quality/RestoreOldVideoQualityMenuPatch.java +++ b/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/playback/quality/AdvancedVideoQualityMenuPatch.java @@ -8,30 +8,30 @@ import app.revanced.extension.shared.Logger; import app.revanced.extension.shared.Utils; -import app.revanced.extension.youtube.patches.components.VideoQualityMenuFilterPatch; +import app.revanced.extension.youtube.patches.components.AdvancedVideoQualityMenuFilter; import app.revanced.extension.youtube.settings.Settings; /** - * This patch contains the logic to show the old video quality menu. + * This patch contains the logic to always open the advanced video quality menu. * Two methods are required, because the quality menu is a RecyclerView in the new YouTube version * and a ListView in the old one. */ @SuppressWarnings("unused") -public final class RestoreOldVideoQualityMenuPatch { +public final class AdvancedVideoQualityMenuPatch { /** * Injection point. */ public static void onFlyoutMenuCreate(RecyclerView recyclerView) { - if (!Settings.RESTORE_OLD_VIDEO_QUALITY_MENU.get()) return; + if (!Settings.ADVANCED_VIDEO_QUALITY_MENU.get()) return; recyclerView.getViewTreeObserver().addOnDrawListener(() -> { try { // Check if the current view is the quality menu. - if (!VideoQualityMenuFilterPatch.isVideoQualityMenuVisible || recyclerView.getChildCount() == 0) { + if (!AdvancedVideoQualityMenuFilter.isVideoQualityMenuVisible || recyclerView.getChildCount() == 0) { return; } - VideoQualityMenuFilterPatch.isVideoQualityMenuVisible = false; + AdvancedVideoQualityMenuFilter.isVideoQualityMenuVisible = false; ViewParent quickQualityViewParent = Utils.getParentView(recyclerView, 3); if (!(quickQualityViewParent instanceof ViewGroup)) { @@ -39,16 +39,15 @@ public static void onFlyoutMenuCreate(RecyclerView recyclerView) { } View firstChild = recyclerView.getChildAt(0); - if (!(firstChild instanceof ViewGroup)) { + if (!(firstChild instanceof ViewGroup firstChildGroup)) { return; } - ViewGroup advancedQualityParentView = (ViewGroup) firstChild; - if (advancedQualityParentView.getChildCount() < 4) { + if (firstChildGroup.getChildCount() < 4) { return; } - View advancedQualityView = advancedQualityParentView.getChildAt(3); + View advancedQualityView = firstChildGroup.getChildAt(3); if (advancedQualityView == null) { return; } @@ -71,7 +70,7 @@ public static void onFlyoutMenuCreate(RecyclerView recyclerView) { * Used to force the creation of the advanced menu item for the Shorts quality flyout. */ public static boolean forceAdvancedVideoQualityMenuCreation(boolean original) { - return Settings.RESTORE_OLD_VIDEO_QUALITY_MENU.get() || original; + return Settings.ADVANCED_VIDEO_QUALITY_MENU.get() || original; } /** @@ -79,8 +78,8 @@ public static boolean forceAdvancedVideoQualityMenuCreation(boolean original) { * * Used if spoofing to an old app version, and also used for the Shorts video quality flyout. */ - public static void showOldVideoQualityMenu(final ListView listView) { - if (!Settings.RESTORE_OLD_VIDEO_QUALITY_MENU.get()) return; + public static void showAdvancedVideoQualityMenu(ListView listView) { + if (!Settings.ADVANCED_VIDEO_QUALITY_MENU.get()) return; listView.setOnHierarchyChangeListener(new ViewGroup.OnHierarchyChangeListener() { @Override diff --git a/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/playback/quality/RememberVideoQualityPatch.java b/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/playback/quality/RememberVideoQualityPatch.java index f55b36d617..706c7c0d1c 100644 --- a/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/playback/quality/RememberVideoQualityPatch.java +++ b/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/playback/quality/RememberVideoQualityPatch.java @@ -12,15 +12,19 @@ import app.revanced.extension.shared.Logger; import app.revanced.extension.shared.Utils; +import app.revanced.extension.shared.settings.BooleanSetting; import app.revanced.extension.shared.settings.IntegerSetting; import app.revanced.extension.youtube.patches.VideoInformation; import app.revanced.extension.youtube.settings.Settings; +import app.revanced.extension.youtube.shared.ShortsPlayerState; @SuppressWarnings("unused") public class RememberVideoQualityPatch { private static final int AUTOMATIC_VIDEO_QUALITY_VALUE = -2; - private static final IntegerSetting wifiQualitySetting = Settings.VIDEO_QUALITY_DEFAULT_WIFI; - private static final IntegerSetting mobileQualitySetting = Settings.VIDEO_QUALITY_DEFAULT_MOBILE; + private static final IntegerSetting videoQualityWifi = Settings.VIDEO_QUALITY_DEFAULT_WIFI; + private static final IntegerSetting videoQualityMobile = Settings.VIDEO_QUALITY_DEFAULT_MOBILE; + private static final IntegerSetting shortsQualityWifi = Settings.SHORTS_QUALITY_DEFAULT_WIFI; + private static final IntegerSetting shortsQualityMobile = Settings.SHORTS_QUALITY_DEFAULT_MOBILE; private static boolean qualityNeedsUpdating; @@ -41,17 +45,29 @@ public class RememberVideoQualityPatch { @Nullable private static List videoQualities; + private static boolean shouldRememberVideoQuality() { + BooleanSetting preference = ShortsPlayerState.isOpen() ? + Settings.REMEMBER_SHORTS_QUALITY_LAST_SELECTED + : Settings.REMEMBER_VIDEO_QUALITY_LAST_SELECTED; + return preference.get(); + } + private static void changeDefaultQuality(int defaultQuality) { String networkTypeMessage; + boolean useShortsPreference = ShortsPlayerState.isOpen(); if (Utils.getNetworkType() == NetworkType.MOBILE) { - mobileQualitySetting.save(defaultQuality); + if (useShortsPreference) shortsQualityMobile.save(defaultQuality); + else videoQualityMobile.save(defaultQuality); networkTypeMessage = str("revanced_remember_video_quality_mobile"); } else { - wifiQualitySetting.save(defaultQuality); + if (useShortsPreference) shortsQualityWifi.save(defaultQuality); + else videoQualityWifi.save(defaultQuality); networkTypeMessage = str("revanced_remember_video_quality_wifi"); } - Utils.showToastShort( - str("revanced_remember_video_quality_toast", networkTypeMessage, (defaultQuality + "p"))); + Utils.showToastShort(str( + useShortsPreference ? "revanced_remember_video_quality_toast_shorts" : "revanced_remember_video_quality_toast", + networkTypeMessage, (defaultQuality + "p") + )); } /** @@ -62,9 +78,10 @@ private static void changeDefaultQuality(int defaultQuality) { */ public static int setVideoQuality(Object[] qualities, final int originalQualityIndex, Object qInterface, String qIndexMethod) { try { + boolean useShortsPreference = ShortsPlayerState.isOpen(); final int preferredQuality = Utils.getNetworkType() == NetworkType.MOBILE - ? mobileQualitySetting.get() - : wifiQualitySetting.get(); + ? (useShortsPreference ? shortsQualityMobile : videoQualityMobile).get() + : (useShortsPreference ? shortsQualityWifi : videoQualityWifi).get(); if (!userChangedDefaultQuality && preferredQuality == AUTOMATIC_VIDEO_QUALITY_VALUE) { return originalQualityIndex; // Nothing to do. @@ -141,17 +158,17 @@ public static int setVideoQuality(Object[] qualities, final int originalQualityI * Injection point. Old quality menu. */ public static void userChangedQuality(int selectedQualityIndex) { - if (!Settings.REMEMBER_VIDEO_QUALITY_LAST_SELECTED.get()) return; - - userSelectedQualityIndex = selectedQualityIndex; - userChangedDefaultQuality = true; + if (shouldRememberVideoQuality()) { + userSelectedQualityIndex = selectedQualityIndex; + userChangedDefaultQuality = true; + } } /** * Injection point. New quality menu. */ public static void userChangedQualityInNewFlyout(int selectedQuality) { - if (!Settings.REMEMBER_VIDEO_QUALITY_LAST_SELECTED.get()) return; + if (!shouldRememberVideoQuality()) return; changeDefaultQuality(selectedQuality); // Quality is human readable resolution (ie: 1080). } diff --git a/extensions/youtube/src/main/java/app/revanced/extension/youtube/settings/Settings.java b/extensions/youtube/src/main/java/app/revanced/extension/youtube/settings/Settings.java index afa15706fd..954d75bb61 100644 --- a/extensions/youtube/src/main/java/app/revanced/extension/youtube/settings/Settings.java +++ b/extensions/youtube/src/main/java/app/revanced/extension/youtube/settings/Settings.java @@ -47,11 +47,14 @@ public class Settings extends BaseSettings { // Video - public static final BooleanSetting DISABLE_HDR_VIDEO = new BooleanSetting("revanced_disable_hdr_video", FALSE); - public static final BooleanSetting RESTORE_OLD_VIDEO_QUALITY_MENU = new BooleanSetting("revanced_restore_old_video_quality_menu", TRUE); - public static final BooleanSetting REMEMBER_VIDEO_QUALITY_LAST_SELECTED = new BooleanSetting("revanced_remember_video_quality_last_selected", FALSE); public static final IntegerSetting VIDEO_QUALITY_DEFAULT_WIFI = new IntegerSetting("revanced_video_quality_default_wifi", -2); public static final IntegerSetting VIDEO_QUALITY_DEFAULT_MOBILE = new IntegerSetting("revanced_video_quality_default_mobile", -2); + public static final BooleanSetting REMEMBER_VIDEO_QUALITY_LAST_SELECTED = new BooleanSetting("revanced_remember_video_quality_last_selected", FALSE); + public static final IntegerSetting SHORTS_QUALITY_DEFAULT_WIFI = new IntegerSetting("revanced_shorts_quality_default_wifi", -2, true); + public static final IntegerSetting SHORTS_QUALITY_DEFAULT_MOBILE = new IntegerSetting("revanced_shorts_quality_default_mobile", -2, true); + public static final BooleanSetting REMEMBER_SHORTS_QUALITY_LAST_SELECTED = new BooleanSetting("revanced_remember_shorts_quality_last_selected", FALSE); + public static final BooleanSetting ADVANCED_VIDEO_QUALITY_MENU = new BooleanSetting("revanced_advanced_video_quality_menu", TRUE); + public static final BooleanSetting DISABLE_HDR_VIDEO = new BooleanSetting("revanced_disable_hdr_video", FALSE); // Speed public static final FloatSetting SPEED_TAP_AND_HOLD = new FloatSetting("revanced_speed_tap_and_hold", 2.0f, true); public static final BooleanSetting REMEMBER_PLAYBACK_SPEED_LAST_SELECTED = new BooleanSetting("revanced_remember_playback_speed_last_selected", FALSE); @@ -171,10 +174,10 @@ public class Settings extends BaseSettings { public static final BooleanSetting HIDE_COMMENTS_CHAT_SUMMARY = new BooleanSetting("revanced_hide_comments_chat_summary", FALSE); public static final BooleanSetting HIDE_COMMENTS_BY_MEMBERS_HEADER = new BooleanSetting("revanced_hide_comments_by_members_header", FALSE); public static final BooleanSetting HIDE_COMMENTS_CREATE_A_SHORT_BUTTON = new BooleanSetting("revanced_hide_comments_create_a_short_button", TRUE); + public static final BooleanSetting HIDE_COMMENTS_TIMESTAMP_AND_EMOJI_BUTTONS = new BooleanSetting("revanced_hide_comments_timestamp_and_emoji_buttons", TRUE); public static final BooleanSetting HIDE_COMMENTS_PREVIEW_COMMENT = new BooleanSetting("revanced_hide_comments_preview_comment", FALSE); public static final BooleanSetting HIDE_COMMENTS_SECTION = new BooleanSetting("revanced_hide_comments_section", FALSE); public static final BooleanSetting HIDE_COMMENTS_THANKS_BUTTON = new BooleanSetting("revanced_hide_comments_thanks_button", TRUE); - public static final BooleanSetting HIDE_COMMENTS_TIMESTAMP_AND_EMOJI_BUTTONS = new BooleanSetting("revanced_hide_comments_timestamp_and_emoji_buttons", TRUE); // Description public static final BooleanSetting HIDE_ATTRIBUTES_SECTION = new BooleanSetting("revanced_hide_attributes_section", FALSE); public static final BooleanSetting HIDE_CHAPTERS_SECTION = new BooleanSetting("revanced_hide_chapters_section", TRUE); @@ -388,6 +391,7 @@ public class Settings extends BaseSettings { private static final IntegerSetting DEPRECATED_SWIPE_OVERLAY_BACKGROUND_ALPHA = new IntegerSetting("revanced_swipe_overlay_background_alpha", 127); private static final StringSetting DEPRECATED_SEEKBAR_CUSTOM_COLOR_PRIMARY = new StringSetting("revanced_seekbar_custom_color_value", "#FF0033"); private static final BooleanSetting DEPRECATED_DISABLE_SUGGESTED_VIDEO_END_SCREEN = new BooleanSetting("revanced_disable_suggested_video_end_screen", FALSE); + private static final BooleanSetting DEPRECATED_RESTORE_OLD_VIDEO_QUALITY_MENU = new BooleanSetting("revanced_restore_old_video_quality_menu", TRUE); static { // region Migration @@ -408,6 +412,8 @@ public class Settings extends BaseSettings { migrateOldSettingToNew(DEPRECATED_DISABLE_SUGGESTED_VIDEO_END_SCREEN, HIDE_END_SCREEN_SUGGESTED_VIDEO); + migrateOldSettingToNew(DEPRECATED_RESTORE_OLD_VIDEO_QUALITY_MENU, ADVANCED_VIDEO_QUALITY_MENU); + // Migrate renamed enum. //noinspection deprecation if (MINIPLAYER_TYPE.get() == MiniplayerType.PHONE) { diff --git a/extensions/youtube/src/main/java/app/revanced/extension/youtube/settings/preference/ReVancedPreferenceFragment.java b/extensions/youtube/src/main/java/app/revanced/extension/youtube/settings/preference/ReVancedPreferenceFragment.java index 6a99f144b2..341eba6cca 100644 --- a/extensions/youtube/src/main/java/app/revanced/extension/youtube/settings/preference/ReVancedPreferenceFragment.java +++ b/extensions/youtube/src/main/java/app/revanced/extension/youtube/settings/preference/ReVancedPreferenceFragment.java @@ -18,8 +18,8 @@ import android.widget.Toolbar; import java.util.ArrayList; -import java.util.Collections; import java.util.List; +import java.util.Locale; import app.revanced.extension.shared.Logger; import app.revanced.extension.shared.Utils; @@ -74,7 +74,8 @@ private static void sortListPreferenceByValues(ListPreference listPreference, in } } - Collections.sort(pairsToSort, (pair1, pair2) -> pair1.first.compareToIgnoreCase(pair2.first)); + pairsToSort.sort((pair1, pair2) + -> pair1.first.compareToIgnoreCase(pair2.first)); CharSequence[] sortedEntries = new CharSequence[entrySize]; CharSequence[] sortedEntryValues = new CharSequence[entrySize]; @@ -109,6 +110,7 @@ protected void initialize() { CustomPlaybackSpeedPatch.initializeListPreference(playbackPreference); } + sortPreferenceListMenu(Settings.CHANGE_START_PAGE); sortPreferenceListMenu(Settings.SPOOF_VIDEO_STREAMS_LANGUAGE); sortPreferenceListMenu(BaseSettings.REVANCED_LANGUAGE); } catch (Exception ex) { diff --git a/extensions/youtube/src/main/java/app/revanced/extension/youtube/shared/NavigationBar.java b/extensions/youtube/src/main/java/app/revanced/extension/youtube/shared/NavigationBar.java index 6f2deca16a..17a509f00e 100644 --- a/extensions/youtube/src/main/java/app/revanced/extension/youtube/shared/NavigationBar.java +++ b/extensions/youtube/src/main/java/app/revanced/extension/youtube/shared/NavigationBar.java @@ -3,7 +3,9 @@ import static app.revanced.extension.youtube.shared.NavigationBar.NavigationButton.CREATE; import android.app.Activity; +import android.graphics.drawable.Drawable; import android.view.View; +import android.widget.FrameLayout; import androidx.annotation.Nullable; @@ -24,12 +26,22 @@ @SuppressWarnings("unused") public final class NavigationBar { + /** + * Interface to call obfuscated methods in AppCompat Toolbar class. + */ + public interface AppCompatToolbarPatchInterface { + Drawable patch_getNavigationIcon(); + } + // - // Search bar + // Search and toolbar. // private static volatile WeakReference searchBarResultsRef = new WeakReference<>(null); + private static volatile WeakReference toolbarResultsRef + = new WeakReference<>(null); + /** * Injection point. */ @@ -37,6 +49,22 @@ public static void searchBarResultsViewLoaded(View searchbarResults) { searchBarResultsRef = new WeakReference<>(searchbarResults); } + /** + * Injection point. + */ + public static void setToolbar(FrameLayout layout) { + AppCompatToolbarPatchInterface toolbar = Utils.getChildView(layout, false, (view) -> + view instanceof AppCompatToolbarPatchInterface + ); + + if (toolbar == null) { + Logger.printException(() -> "Could not find navigation toolbar"); + return; + } + + toolbarResultsRef = new WeakReference<>(toolbar); + } + /** * @return If the search bar is on screen. This includes if the player * is on screen and the search results are behind the player (and not visible). @@ -47,8 +75,13 @@ public static boolean isSearchBarActive() { return searchbarResults != null && searchbarResults.getParent() != null; } + public static boolean isBackButtonVisible() { + AppCompatToolbarPatchInterface toolbar = toolbarResultsRef.get(); + return toolbar != null && toolbar.patch_getNavigationIcon() != null; + } + // - // Navigation bar buttons + // Navigation bar buttons. // /** diff --git a/extensions/youtube/src/main/java/app/revanced/extension/youtube/shared/PlayerType.kt b/extensions/youtube/src/main/java/app/revanced/extension/youtube/shared/PlayerType.kt index a08a197309..147abc13f0 100644 --- a/extensions/youtube/src/main/java/app/revanced/extension/youtube/shared/PlayerType.kt +++ b/extensions/youtube/src/main/java/app/revanced/extension/youtube/shared/PlayerType.kt @@ -5,7 +5,7 @@ import app.revanced.extension.youtube.Event import app.revanced.extension.youtube.patches.VideoInformation /** - * Main player type. + * Regular player type. */ enum class PlayerType { /** @@ -90,8 +90,6 @@ enum class PlayerType { * Does not include the first moment after a short is opened when a regular video is minimized on screen, * or while watching a short with a regular video present on a spoofed 16.x version of YouTube. * To include those situations instead use [isNoneHiddenOrMinimized]. - * - * @see VideoInformation */ fun isNoneOrHidden(): Boolean { return this == NONE || this == HIDDEN @@ -107,8 +105,11 @@ enum class PlayerType { * when spoofing to an old version this will return false even * though a Short is being opened or is on screen (see [isNoneHiddenOrMinimized]). * + * Instead of this method, consider using {@link ShortsPlayerState} + * which may work better for some situations. + * * @return If nothing, a Short, or a regular video is sliding off screen to a dismissed or hidden state. - * @see VideoInformation + * @see ShortsPlayerState */ fun isNoneHiddenOrSlidingMinimized(): Boolean { return isNoneOrHidden() || this == WATCH_WHILE_SLIDING_MINIMIZED_DISMISSED @@ -125,9 +126,12 @@ enum class PlayerType { * Typically used to detect if a Short is playing when the player cannot be in a minimized state, * such as the user interacting with a button or element of the player. * + * Instead of this method, consider using {@link ShortsPlayerState} + * which may work better for some situations. + * * @return If nothing, a Short, a regular video is sliding off screen to a dismissed or hidden state, * a regular video is minimized (and a new video is not being opened). - * @see VideoInformation + * @see ShortsPlayerState */ fun isNoneHiddenOrMinimized(): Boolean { return isNoneHiddenOrSlidingMinimized() || this == WATCH_WHILE_MINIMIZED diff --git a/extensions/youtube/src/main/java/app/revanced/extension/youtube/shared/ShortsPlayerState.kt b/extensions/youtube/src/main/java/app/revanced/extension/youtube/shared/ShortsPlayerState.kt new file mode 100644 index 0000000000..48927d88aa --- /dev/null +++ b/extensions/youtube/src/main/java/app/revanced/extension/youtube/shared/ShortsPlayerState.kt @@ -0,0 +1,38 @@ +package app.revanced.extension.youtube.shared + +import app.revanced.extension.shared.Logger +import app.revanced.extension.youtube.Event + +/** + * Shorts player state. + */ +class ShortsPlayerState { + companion object { + + @JvmStatic + fun setOpen(open: Boolean) { + if (isOpen != open) { + Logger.printDebug { "ShortsPlayerState open changed to: $isOpen" } + isOpen = open + onChange(open) + } + } + + @Volatile + private var isOpen = false + + /** + * Shorts player state change listener. + */ + @JvmStatic + val onChange = Event() + + /** + * If the Shorts player is currently open. + */ + @JvmStatic + fun isOpen(): Boolean { + return isOpen + } + } +} \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index e1e82689a4..e150e1749d 100644 --- a/gradle.properties +++ b/gradle.properties @@ -3,4 +3,4 @@ org.gradle.jvmargs = -Xms512M -Xmx2048M org.gradle.parallel = true android.useAndroidX = true kotlin.code.style = official -version = 5.13.0 +version = 5.14.0-dev.9 diff --git a/patches/api/patches.api b/patches/api/patches.api index 94aee7801e..92106329f7 100644 --- a/patches/api/patches.api +++ b/patches/api/patches.api @@ -816,6 +816,10 @@ public final class app/revanced/patches/spotify/lite/ondemand/OnDemandPatchKt { public static final fun getOnDemandPatch ()Lapp/revanced/patcher/patch/BytecodePatch; } +public final class app/revanced/patches/spotify/misc/fix/SpoofSignaturePatchKt { + public static final fun getSpoofSignaturePatch ()Lapp/revanced/patcher/patch/BytecodePatch; +} + public final class app/revanced/patches/spotify/navbar/PremiumNavbarTabPatchKt { public static final fun getPremiumNavbarTabPatch ()Lapp/revanced/patcher/patch/BytecodePatch; } @@ -1463,6 +1467,10 @@ public final class app/revanced/patches/youtube/video/quality/RememberVideoQuali public static final fun getRememberVideoQualityPatch ()Lapp/revanced/patcher/patch/BytecodePatch; } +public final class app/revanced/patches/youtube/video/quality/VideoQualityPatchKt { + public static final fun getVideoQualityPatch ()Lapp/revanced/patcher/patch/BytecodePatch; +} + public final class app/revanced/patches/youtube/video/speed/PlaybackSpeedPatchKt { public static final fun getPlaybackSpeedPatch ()Lapp/revanced/patcher/patch/BytecodePatch; } diff --git a/patches/src/main/kotlin/app/revanced/patches/all/misc/connectivity/wifi/spoof/SpoofWifiPatch.kt b/patches/src/main/kotlin/app/revanced/patches/all/misc/connectivity/wifi/spoof/SpoofWifiPatch.kt index ede9eb1dc3..f6b01cda21 100644 --- a/patches/src/main/kotlin/app/revanced/patches/all/misc/connectivity/wifi/spoof/SpoofWifiPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/all/misc/connectivity/wifi/spoof/SpoofWifiPatch.kt @@ -5,10 +5,10 @@ import app.revanced.patches.all.misc.transformation.IMethodCall import app.revanced.patches.all.misc.transformation.filterMapInstruction35c import app.revanced.patches.all.misc.transformation.transformInstructionsPatch -internal const val EXTENSION_CLASS_DESCRIPTOR_PREFIX = +private const val EXTENSION_CLASS_DESCRIPTOR_PREFIX = "Lapp/revanced/extension/all/connectivity/wifi/spoof/SpoofWifiPatch" -internal const val EXTENSION_CLASS_DESCRIPTOR = "$EXTENSION_CLASS_DESCRIPTOR_PREFIX;" +private const val EXTENSION_CLASS_DESCRIPTOR = "$EXTENSION_CLASS_DESCRIPTOR_PREFIX;" @Suppress("unused") val spoofWifiPatch = bytecodePatch( diff --git a/patches/src/main/kotlin/app/revanced/patches/all/misc/versioncode/ChangeVersionCodePatch.kt b/patches/src/main/kotlin/app/revanced/patches/all/misc/versioncode/ChangeVersionCodePatch.kt index 617f18a421..a50fe58da3 100644 --- a/patches/src/main/kotlin/app/revanced/patches/all/misc/versioncode/ChangeVersionCodePatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/all/misc/versioncode/ChangeVersionCodePatch.kt @@ -8,9 +8,8 @@ import org.w3c.dom.Element @Suppress("unused") val changeVersionCodePatch = resourcePatch( name = "Change version code", - description = "Changes the version code of the app. By default the highest version code is set. " + - "This allows older versions of an app to be installed " + - "if their version code is set to the same or a higher value and can stop app stores to update the app.", + description = "Changes the version code of the app. This will turn off app store updates " + + "and allows downgrading an existing app install to an older app version.", use = false, ) { val versionCode by intOption( @@ -21,7 +20,8 @@ val changeVersionCodePatch = resourcePatch( "Highest" to Int.MAX_VALUE, ), title = "Version code", - description = "The version code to use", + description = "The version code to use. Using the highest value turns off app store " + + "updates and allows downgrading an existing app install to an older app version.", required = true, ) { versionCode -> versionCode!! >= 1 } diff --git a/patches/src/main/kotlin/app/revanced/patches/music/misc/spoof/SpoofClientPatch.kt b/patches/src/main/kotlin/app/revanced/patches/music/misc/spoof/SpoofClientPatch.kt index 88ab2ceb8e..e6fb8e3fe3 100644 --- a/patches/src/main/kotlin/app/revanced/patches/music/misc/spoof/SpoofClientPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/music/misc/spoof/SpoofClientPatch.kt @@ -17,7 +17,7 @@ import com.android.tools.smali.dexlib2.iface.reference.TypeReference import com.android.tools.smali.dexlib2.immutable.ImmutableMethod import com.android.tools.smali.dexlib2.immutable.ImmutableMethodParameter -internal const val EXTENSION_CLASS_DESCRIPTOR = +private const val EXTENSION_CLASS_DESCRIPTOR = "Lapp/revanced/extension/music/spoof/SpoofClientPatch;" // TODO: Replace this patch with spoofVideoStreamsPatch once possible. diff --git a/patches/src/main/kotlin/app/revanced/patches/reddit/customclients/boostforreddit/api/SpoofClientPatch.kt b/patches/src/main/kotlin/app/revanced/patches/reddit/customclients/boostforreddit/api/SpoofClientPatch.kt index 389facb950..a8abe92569 100644 --- a/patches/src/main/kotlin/app/revanced/patches/reddit/customclients/boostforreddit/api/SpoofClientPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/reddit/customclients/boostforreddit/api/SpoofClientPatch.kt @@ -1,7 +1,10 @@ package app.revanced.patches.reddit.customclients.boostforreddit.api import app.revanced.patcher.extensions.InstructionExtensions.addInstructions +import app.revanced.patcher.extensions.InstructionExtensions.getInstruction +import app.revanced.patcher.extensions.InstructionExtensions.replaceInstruction import app.revanced.patches.reddit.customclients.spoofClientPatch +import com.android.tools.smali.dexlib2.iface.instruction.OneRegisterInstruction val spoofClientPatch = spoofClientPatch(redirectUri = "http://rubenmayayo.com") { clientIdOption -> compatibleWith("com.rubenmayayo.reddit") @@ -23,14 +26,15 @@ val spoofClientPatch = spoofClientPatch(redirectUri = "http://rubenmayayo.com") // region Patch user agent. - // Use a random number as the platform in the user agent string. - val platformName = (0..100000).random() - val platformParameter = 0 - - buildUserAgentFingerprint.method.addInstructions( - 0, - "const-string p$platformParameter, \"$platformName\"", - ) + // Use a random user agent. + val randomName = (0..100000).random() + val userAgent = "$randomName:app.revanced.$randomName:v1.0.0 (by /u/revanced)" + buildUserAgentFingerprint.let { + val userAgentTemplateIndex = it.stringMatches!!.first().index + val register = it.method.getInstruction(userAgentTemplateIndex).registerA + + it.method.replaceInstruction(userAgentTemplateIndex, "const-string v$register, \"$userAgent\"") + } // endregion } diff --git a/patches/src/main/kotlin/app/revanced/patches/reddit/customclients/infinityforreddit/api/SpoofClientPatch.kt b/patches/src/main/kotlin/app/revanced/patches/reddit/customclients/infinityforreddit/api/SpoofClientPatch.kt index d23826d917..b195b49fb2 100644 --- a/patches/src/main/kotlin/app/revanced/patches/reddit/customclients/infinityforreddit/api/SpoofClientPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/reddit/customclients/infinityforreddit/api/SpoofClientPatch.kt @@ -8,7 +8,11 @@ import com.android.tools.smali.dexlib2.immutable.ImmutableMethod import com.android.tools.smali.dexlib2.immutable.ImmutableMethodImplementation val spoofClientPatch = spoofClientPatch(redirectUri = "infinity://localhost") { clientIdOption -> - compatibleWith("ml.docilealligator.infinityforreddit", "ml.docilealligator.infinityforreddit.plus") + compatibleWith( + "ml.docilealligator.infinityforreddit", + "ml.docilealligator.infinityforreddit.plus", + "ml.docilealligator.infinityforreddit.patreon" + ) val clientId by clientIdOption diff --git a/patches/src/main/kotlin/app/revanced/patches/reddit/customclients/infinityforreddit/subscription/UnlockSubscriptionPatch.kt b/patches/src/main/kotlin/app/revanced/patches/reddit/customclients/infinityforreddit/subscription/UnlockSubscriptionPatch.kt index 98fbd89f80..ba39c29a52 100644 --- a/patches/src/main/kotlin/app/revanced/patches/reddit/customclients/infinityforreddit/subscription/UnlockSubscriptionPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/reddit/customclients/infinityforreddit/subscription/UnlockSubscriptionPatch.kt @@ -11,7 +11,11 @@ val unlockSubscriptionPatch = bytecodePatch( ) { dependsOn(spoofClientPatch) - compatibleWith("ml.docilealligator.infinityforreddit", "ml.docilealligator.infinityforreddit.plus") + compatibleWith( + "ml.docilealligator.infinityforreddit", + "ml.docilealligator.infinityforreddit.plus", + "ml.docilealligator.infinityforreddit.patreon" + ) execute { setOf( diff --git a/patches/src/main/kotlin/app/revanced/patches/shared/misc/settings/preference/BasePreference.kt b/patches/src/main/kotlin/app/revanced/patches/shared/misc/settings/preference/BasePreference.kt index 7c5cbf2cd2..a07bdc4fe1 100644 --- a/patches/src/main/kotlin/app/revanced/patches/shared/misc/settings/preference/BasePreference.kt +++ b/patches/src/main/kotlin/app/revanced/patches/shared/misc/settings/preference/BasePreference.kt @@ -17,7 +17,7 @@ import org.w3c.dom.Element @Suppress("MemberVisibilityCanBePrivate") abstract class BasePreference( val key: String? = null, - val titleKey: String = "${key}_title", + val titleKey: String? = "${key}_title", val summaryKey: String? = "${key}_summary", val icon: String? = null, val layout: String? = null, @@ -35,7 +35,7 @@ abstract class BasePreference( open fun serialize(ownerDocument: Document, resourceCallback: (BaseResource) -> Unit): Element = ownerDocument.createElement(tag).apply { key?.let { setAttribute("android:key", it) } - setAttribute("android:title", "@string/${titleKey}") + titleKey?.let { setAttribute("android:title", "@string/${titleKey}") } summaryKey?.let { addSummary(it) } icon?.let { setAttribute("android:icon", it) diff --git a/patches/src/main/kotlin/app/revanced/patches/shared/misc/settings/preference/PreferenceCategory.kt b/patches/src/main/kotlin/app/revanced/patches/shared/misc/settings/preference/PreferenceCategory.kt index 8b2deb96e2..ef51eca8cf 100644 --- a/patches/src/main/kotlin/app/revanced/patches/shared/misc/settings/preference/PreferenceCategory.kt +++ b/patches/src/main/kotlin/app/revanced/patches/shared/misc/settings/preference/PreferenceCategory.kt @@ -17,7 +17,7 @@ import org.w3c.dom.Document @Suppress("MemberVisibilityCanBePrivate") open class PreferenceCategory( key: String? = null, - titleKey: String = "${key}_title", + titleKey: String? = "${key}_title", icon: String? = null, layout: String? = null, sorting: Sorting = Sorting.BY_TITLE, diff --git a/patches/src/main/kotlin/app/revanced/patches/shared/misc/spoof/SpoofVideoStreamsPatch.kt b/patches/src/main/kotlin/app/revanced/patches/shared/misc/spoof/SpoofVideoStreamsPatch.kt index 4b51c50ec3..55f72a9381 100644 --- a/patches/src/main/kotlin/app/revanced/patches/shared/misc/spoof/SpoofVideoStreamsPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/shared/misc/spoof/SpoofVideoStreamsPatch.kt @@ -35,7 +35,7 @@ fun spoofVideoStreamsPatch( executeBlock: BytecodePatchContext.() -> Unit = {}, ) = bytecodePatch( name = "Spoof video streams", - description = "Spoofs the client video streams to fix playback.", + description = "Adds options to spoof the client video streams to fix playback.", ) { block() diff --git a/patches/src/main/kotlin/app/revanced/patches/spotify/misc/fix/Fingerprints.kt b/patches/src/main/kotlin/app/revanced/patches/spotify/misc/fix/Fingerprints.kt new file mode 100644 index 0000000000..c6e476c56e --- /dev/null +++ b/patches/src/main/kotlin/app/revanced/patches/spotify/misc/fix/Fingerprints.kt @@ -0,0 +1,5 @@ +package app.revanced.patches.spotify.misc.fix + +import app.revanced.patcher.fingerprint + +internal val getAppSignatureFingerprint = fingerprint { strings("Failed to get the application signatures") } diff --git a/patches/src/main/kotlin/app/revanced/patches/spotify/misc/fix/SpoofSignaturePatch.kt b/patches/src/main/kotlin/app/revanced/patches/spotify/misc/fix/SpoofSignaturePatch.kt new file mode 100644 index 0000000000..6dfd31e450 --- /dev/null +++ b/patches/src/main/kotlin/app/revanced/patches/spotify/misc/fix/SpoofSignaturePatch.kt @@ -0,0 +1,33 @@ +package app.revanced.patches.spotify.misc.fix + +import app.revanced.patcher.extensions.InstructionExtensions.getInstruction +import app.revanced.patcher.extensions.InstructionExtensions.replaceInstruction +import app.revanced.patcher.patch.bytecodePatch +import app.revanced.util.indexOfFirstInstructionReversedOrThrow +import com.android.tools.smali.dexlib2.Opcode +import com.android.tools.smali.dexlib2.iface.instruction.OneRegisterInstruction + +@Suppress("unused") +val spoofSignaturePatch = bytecodePatch( + name = "Spoof signature", + description = "Spoofs the signature of the app to fix various functions of the app.", +) { + compatibleWith("com.spotify.music") + + execute { + getAppSignatureFingerprint.method.apply { + val failedToGetSignaturesStringMatch = getAppSignatureFingerprint.stringMatches!!.first() + + val concatSignaturesIndex = indexOfFirstInstructionReversedOrThrow( + failedToGetSignaturesStringMatch.index, + Opcode.MOVE_RESULT_OBJECT, + ) + + val register = getInstruction(concatSignaturesIndex).registerA + + val expectedSignature = "d6a6dced4a85f24204bf9505ccc1fce114cadb32" + + replaceInstruction(concatSignaturesIndex, "const-string v$register, \"$expectedSignature\"") + } + } +} diff --git a/patches/src/main/kotlin/app/revanced/patches/tiktok/misc/settings/SettingsPatch.kt b/patches/src/main/kotlin/app/revanced/patches/tiktok/misc/settings/SettingsPatch.kt index a48305177a..5e19646e54 100644 --- a/patches/src/main/kotlin/app/revanced/patches/tiktok/misc/settings/SettingsPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/tiktok/misc/settings/SettingsPatch.kt @@ -11,7 +11,7 @@ import com.android.tools.smali.dexlib2.iface.instruction.formats.Instruction22c import com.android.tools.smali.dexlib2.iface.instruction.formats.Instruction35c import com.android.tools.smali.dexlib2.iface.reference.FieldReference -internal const val EXTENSION_CLASS_DESCRIPTOR = +private const val EXTENSION_CLASS_DESCRIPTOR = "Lapp/revanced/extension/tiktok/settings/AdPersonalizationActivityHook;" val settingsPatch = bytecodePatch( diff --git a/patches/src/main/kotlin/app/revanced/patches/tudortmund/lockscreen/ShowOnLockscreenPatch.kt b/patches/src/main/kotlin/app/revanced/patches/tudortmund/lockscreen/ShowOnLockscreenPatch.kt index 2d33251901..c4ab245ff6 100644 --- a/patches/src/main/kotlin/app/revanced/patches/tudortmund/lockscreen/ShowOnLockscreenPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/tudortmund/lockscreen/ShowOnLockscreenPatch.kt @@ -12,7 +12,7 @@ import com.android.tools.smali.dexlib2.iface.instruction.formats.Instruction35c import com.android.tools.smali.dexlib2.iface.reference.FieldReference import com.android.tools.smali.dexlib2.iface.reference.MethodReference -internal const val EXTENSION_CLASS_DESCRIPTOR = +private const val EXTENSION_CLASS_DESCRIPTOR = "Lapp/revanced/extension/tudortmund/lockscreen/ShowOnLockscreenPatch;" @Suppress("unused") diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/ad/getpremium/HideGetPremiumPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/ad/getpremium/HideGetPremiumPatch.kt index c4fb21b15c..49d7a460d3 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/ad/getpremium/HideGetPremiumPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/ad/getpremium/HideGetPremiumPatch.kt @@ -11,7 +11,7 @@ import app.revanced.patches.youtube.misc.settings.PreferenceScreen import app.revanced.patches.youtube.misc.settings.settingsPatch import com.android.tools.smali.dexlib2.iface.instruction.TwoRegisterInstruction -internal const val EXTENSION_CLASS_DESCRIPTOR = +private const val EXTENSION_CLASS_DESCRIPTOR = "Lapp/revanced/extension/youtube/patches/HideGetPremiumPatch;" val hideGetPremiumPatch = bytecodePatch( diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/interaction/downloads/DownloadsPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/interaction/downloads/DownloadsPatch.kt index 8e5c95f244..22f971e429 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/interaction/downloads/DownloadsPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/interaction/downloads/DownloadsPatch.kt @@ -50,7 +50,7 @@ private val downloadsResourcePatch = resourcePatch { } } -internal const val EXTENSION_CLASS_DESCRIPTOR = "Lapp/revanced/extension/youtube/patches/DownloadsPatch;" +private const val EXTENSION_CLASS_DESCRIPTOR = "Lapp/revanced/extension/youtube/patches/DownloadsPatch;" internal const val BUTTON_DESCRIPTOR = "Lapp/revanced/extension/youtube/videoplayer/ExternalDownloadButton;" diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/interaction/seekbar/EnableSeekbarTappingPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/interaction/seekbar/EnableSeekbarTappingPatch.kt index 48c4b74685..d4d6e84cd4 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/interaction/seekbar/EnableSeekbarTappingPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/interaction/seekbar/EnableSeekbarTappingPatch.kt @@ -15,8 +15,8 @@ import com.android.tools.smali.dexlib2.iface.instruction.formats.Instruction35c import com.android.tools.smali.dexlib2.iface.reference.MethodReference val enableSeekbarTappingPatch = bytecodePatch( - name = "Seekbar tapping", - description = "Adds an option to enable tap-to-seek on the seekbar of the video player.", + name = "Enable tap to seek", + description = "Adds an option to enable tap to seek on the seekbar of the video player.", ) { dependsOn( sharedExtensionPatch, diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/buttons/navigation/NavigationButtonsPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/buttons/navigation/NavigationButtonsPatch.kt index 6e560cf3f3..dd6666bcf7 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/buttons/navigation/NavigationButtonsPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/buttons/navigation/NavigationButtonsPatch.kt @@ -23,7 +23,7 @@ import com.android.tools.smali.dexlib2.iface.instruction.FiveRegisterInstruction import com.android.tools.smali.dexlib2.iface.instruction.OneRegisterInstruction import com.android.tools.smali.dexlib2.iface.reference.MethodReference -internal const val EXTENSION_CLASS_DESCRIPTOR = +private const val EXTENSION_CLASS_DESCRIPTOR = "Lapp/revanced/extension/youtube/patches/NavigationButtonsPatch;" val navigationButtonsPatch = bytecodePatch( diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/buttons/overlay/HidePlayerOverlayButtonsPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/buttons/overlay/HidePlayerOverlayButtonsPatch.kt index 76cd99d15f..d02407c710 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/buttons/overlay/HidePlayerOverlayButtonsPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/buttons/overlay/HidePlayerOverlayButtonsPatch.kt @@ -43,7 +43,7 @@ private const val EXTENSION_CLASS_DESCRIPTOR = val hidePlayerOverlayButtonsPatch = bytecodePatch( name = "Hide player overlay buttons", - description = "Adds options to hide the player cast, autoplay, caption button and next/ previous buttons.", + description = "Adds options to hide the player Cast, Autoplay, Captions, and Previous & Next buttons.", ) { dependsOn( sharedExtensionPatch, diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/formfactor/ChangeFormFactorPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/formfactor/ChangeFormFactorPatch.kt index bf800b6432..b516e90b55 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/formfactor/ChangeFormFactorPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/formfactor/ChangeFormFactorPatch.kt @@ -6,7 +6,9 @@ import app.revanced.patcher.patch.bytecodePatch import app.revanced.patches.all.misc.resources.addResources import app.revanced.patches.all.misc.resources.addResourcesPatch import app.revanced.patches.shared.misc.settings.preference.ListPreference +import app.revanced.patches.youtube.layout.buttons.navigation.navigationButtonsPatch import app.revanced.patches.youtube.misc.extension.sharedExtensionPatch +import app.revanced.patches.youtube.misc.navigation.hookNavigationButtonCreated import app.revanced.patches.youtube.misc.settings.PreferenceScreen import app.revanced.patches.youtube.misc.settings.settingsPatch import app.revanced.util.getReference @@ -15,7 +17,7 @@ import com.android.tools.smali.dexlib2.Opcode import com.android.tools.smali.dexlib2.iface.instruction.TwoRegisterInstruction import com.android.tools.smali.dexlib2.iface.reference.FieldReference -internal const val EXTENSION_CLASS_DESCRIPTOR = "Lapp/revanced/extension/youtube/patches/ChangeFormFactorPatch;" +private const val EXTENSION_CLASS_DESCRIPTOR = "Lapp/revanced/extension/youtube/patches/ChangeFormFactorPatch;" @Suppress("unused") val changeFormFactorPatch = bytecodePatch( @@ -26,6 +28,7 @@ val changeFormFactorPatch = bytecodePatch( sharedExtensionPatch, settingsPatch, addResourcesPatch, + navigationButtonsPatch ) compatibleWith( @@ -50,6 +53,8 @@ val changeFormFactorPatch = bytecodePatch( ) ) + hookNavigationButtonCreated(EXTENSION_CLASS_DESCRIPTOR) + createPlayerRequestBodyWithModelFingerprint.method.apply { val formFactorEnumClass = formFactorEnumConstructorFingerprint.originalClassDef.type diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/hide/endscreencards/HideEndscreenCardsPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/hide/endscreencards/HideEndscreenCardsPatch.kt index effb9caee9..55a70aa1a7 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/hide/endscreencards/HideEndscreenCardsPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/hide/endscreencards/HideEndscreenCardsPatch.kt @@ -49,7 +49,7 @@ private const val EXTENSION_CLASS_DESCRIPTOR = @Suppress("unused") val hideEndscreenCardsPatch = bytecodePatch( - name = "Hide endscreen cards", + name = "Hide end screen cards", description = "Adds an option to hide suggested video cards at the end of videos.", ) { dependsOn( diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/hide/endscreensuggestion/HideEndScreenSuggestedVideoPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/hide/endscreensuggestion/HideEndScreenSuggestedVideoPatch.kt index 76811b175f..569214ee5b 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/hide/endscreensuggestion/HideEndScreenSuggestedVideoPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/hide/endscreensuggestion/HideEndScreenSuggestedVideoPatch.kt @@ -22,7 +22,7 @@ private const val EXTENSION_CLASS_DESCRIPTOR = @Suppress("unused") val hideEndScreenSuggestedVideoPatch = bytecodePatch( name = "Hide end screen suggested video", - description = "Adds an option to hide the recommended video at the end of each video.", + description = "Adds an option to hide the suggested video at the end of videos.", ) { dependsOn( sharedExtensionPatch, diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/hide/fullscreenambientmode/DisableFullscreenAmbientModePatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/hide/fullscreenambientmode/DisableFullscreenAmbientModePatch.kt index 816dad7b55..0b9badbe86 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/hide/fullscreenambientmode/DisableFullscreenAmbientModePatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/hide/fullscreenambientmode/DisableFullscreenAmbientModePatch.kt @@ -14,7 +14,7 @@ import app.revanced.util.indexOfFirstInstructionReversedOrThrow import com.android.tools.smali.dexlib2.iface.instruction.FiveRegisterInstruction import com.android.tools.smali.dexlib2.iface.reference.MethodReference -internal const val EXTENSION_CLASS_DESCRIPTOR = +private const val EXTENSION_CLASS_DESCRIPTOR = "Lapp/revanced/extension/youtube/patches/DisableFullscreenAmbientModePatch;" val disableFullscreenAmbientModePatch = bytecodePatch( diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/hide/general/HideLayoutComponentsPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/hide/general/HideLayoutComponentsPatch.kt index 9354115c5c..53375549ff 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/hide/general/HideLayoutComponentsPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/hide/general/HideLayoutComponentsPatch.kt @@ -158,9 +158,9 @@ val hideLayoutComponentsPatch = bytecodePatch( SwitchPreference("revanced_hide_comments_by_members_header"), SwitchPreference("revanced_hide_comments_section"), SwitchPreference("revanced_hide_comments_create_a_short_button"), + SwitchPreference("revanced_hide_comments_timestamp_and_emoji_buttons"), SwitchPreference("revanced_hide_comments_preview_comment"), SwitchPreference("revanced_hide_comments_thanks_button"), - SwitchPreference("revanced_hide_comments_timestamp_and_emoji_buttons"), ), sorting = PreferenceScreenPreference.Sorting.UNSORTED, ), diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/hide/shorts/HideShortsComponentsPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/hide/shorts/HideShortsComponentsPatch.kt index e41cc727cc..c1153586e2 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/hide/shorts/HideShortsComponentsPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/hide/shorts/HideShortsComponentsPatch.kt @@ -159,7 +159,7 @@ private const val FILTER_CLASS_DESCRIPTOR = "Lapp/revanced/extension/youtube/pat @Suppress("unused") val hideShortsComponentsPatch = bytecodePatch( name = "Hide Shorts components", - description = "Adds options to hide components related to YouTube Shorts.", + description = "Adds options to hide components related to Shorts.", ) { dependsOn( sharedExtensionPatch, diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/miniplayer/MiniplayerPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/miniplayer/MiniplayerPatch.kt index 086c2c8bf0..f367a1ae21 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/miniplayer/MiniplayerPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/miniplayer/MiniplayerPatch.kt @@ -134,7 +134,7 @@ private const val EXTENSION_CLASS_DESCRIPTOR = "Lapp/revanced/extension/youtube/ @Suppress("unused") val miniplayerPatch = bytecodePatch( name = "Miniplayer", - description = "Adds options to change the in app minimized player." + description = "Adds options to change the in-app minimized player." ) { dependsOn( sharedExtensionPatch, diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/spoofappversion/SpoofAppVersionPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/spoofappversion/SpoofAppVersionPatch.kt index 48caf9c1b7..0deffb506f 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/spoofappversion/SpoofAppVersionPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/spoofappversion/SpoofAppVersionPatch.kt @@ -12,6 +12,8 @@ import app.revanced.patches.shared.misc.mapping.get import app.revanced.patches.shared.misc.mapping.resourceMappingPatch import app.revanced.patches.shared.misc.mapping.resourceMappings import app.revanced.patches.shared.misc.settings.preference.ListPreference +import app.revanced.patches.shared.misc.settings.preference.PreferenceCategory +import app.revanced.patches.shared.misc.settings.preference.PreferenceScreenPreference.Sorting import app.revanced.patches.shared.misc.settings.preference.SwitchPreference import app.revanced.patches.youtube.misc.extension.sharedExtensionPatch import app.revanced.patches.youtube.misc.playservice.is_19_17_or_greater @@ -71,20 +73,29 @@ val spoofAppVersionPatch = bytecodePatch( addResources("youtube", "layout.spoofappversion.spoofAppVersionPatch") PreferenceScreen.GENERAL_LAYOUT.addPreferences( - SwitchPreference("revanced_spoof_app_version"), - if (is_19_17_or_greater) { - ListPreference( - key = "revanced_spoof_app_version_target", - summaryKey = null, + // Group the switch and list preference together, since General menu is sorted by name + // and the preferences can be scattered apart with non English langauges. + PreferenceCategory( + titleKey = null, + sorting = Sorting.UNSORTED, + tag = "app.revanced.extension.shared.settings.preference.NoTitlePreferenceCategory", + preferences = setOf( + SwitchPreference("revanced_spoof_app_version"), + if (is_19_17_or_greater) { + ListPreference( + key = "revanced_spoof_app_version_target", + 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" + ) + } ) - } 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" - ) - } + ) ) /** diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/theme/ThemePatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/theme/ThemePatch.kt index 587e56c123..30960ca522 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/layout/theme/ThemePatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/layout/theme/ThemePatch.kt @@ -8,7 +8,10 @@ import app.revanced.patcher.patch.stringOption import app.revanced.patches.all.misc.resources.addResources import app.revanced.patches.all.misc.resources.addResourcesPatch import app.revanced.patches.shared.misc.mapping.resourceMappingPatch +import app.revanced.patches.shared.misc.settings.preference.BasePreference import app.revanced.patches.shared.misc.settings.preference.InputType +import app.revanced.patches.shared.misc.settings.preference.PreferenceCategory +import app.revanced.patches.shared.misc.settings.preference.PreferenceScreenPreference.Sorting import app.revanced.patches.shared.misc.settings.preference.SwitchPreference import app.revanced.patches.shared.misc.settings.preference.TextPreference import app.revanced.patches.youtube.layout.seekbar.seekbarColorPatch @@ -71,6 +74,9 @@ val themePatch = bytecodePatch( ) dependsOn( + sharedExtensionPatch, + settingsPatch, + addResourcesPatch, lithoColorHookPatch, seekbarColorPatch, versionCheckPatch, @@ -78,23 +84,30 @@ val themePatch = bytecodePatch( dependsOn( settingsPatch, resourceMappingPatch, - addResourcesPatch, ) execute { - addResources("youtube", "layout.theme.themeResourcePatch") - - PreferenceScreen.SEEKBAR.addPreferences( + val preferences = mutableSetOf( SwitchPreference("revanced_seekbar_custom_color"), TextPreference("revanced_seekbar_custom_color_primary", inputType = InputType.TEXT_CAP_CHARACTERS), ) if (is_19_25_or_greater) { - PreferenceScreen.SEEKBAR.addPreferences( - TextPreference("revanced_seekbar_custom_color_accent", inputType = InputType.TEXT_CAP_CHARACTERS), + preferences += TextPreference( + "revanced_seekbar_custom_color_accent", + inputType = InputType.TEXT_CAP_CHARACTERS ) } + PreferenceScreen.SEEKBAR.addPreferences( + PreferenceCategory( + titleKey = null, + sorting = Sorting.UNSORTED, + tag = "app.revanced.extension.shared.settings.preference.NoTitlePreferenceCategory", + preferences = preferences + ) + ) + // Edit theme colors via resources. document("res/values/colors.xml").use { document -> @@ -125,7 +138,6 @@ val themePatch = bytecodePatch( colorValue: String, ) { document(resourceFile).use { document -> - val resourcesNode = document.getElementsByTagName("resources").item(0) as Element resourcesNode.appendChild( @@ -133,7 +145,7 @@ val themePatch = bytecodePatch( setAttribute("name", colorName) setAttribute("category", "color") textContent = colorValue - }, + } ) } } @@ -152,11 +164,10 @@ val themePatch = bytecodePatch( // Edit splash screen files and change the background color, // if the background colors are set. if (darkThemeBackgroundColor != null && lightThemeBackgroundColor != null) { - val splashScreenResourceFiles = - listOf( - "res/drawable/quantum_launchscreen_youtube.xml", - "res/drawable-sw600dp/quantum_launchscreen_youtube.xml", - ) + val splashScreenResourceFiles = listOf( + "res/drawable/quantum_launchscreen_youtube.xml", + "res/drawable-sw600dp/quantum_launchscreen_youtube.xml", + ) splashScreenResourceFiles.forEach editSplashScreen@{ resourceFile -> document(resourceFile).use { document -> @@ -174,36 +185,34 @@ val themePatch = bytecodePatch( // Fix the splash screen dark mode background color. // In 19.32+ the dark mode splash screen is white and fades to black. // Maybe it's a bug in YT, or maybe it intentionally. Who knows. - document("res/values-night/styles.xml").use { document -> - val resourcesNode = document.getElementsByTagName("resources").item(0) as Element - val childNodes = resourcesNode.childNodes - - for (i in 0 until childNodes.length) { - val node = childNodes.item(i) as? Element ?: continue - val nodeAttributeName = node.getAttribute("name") - if (nodeAttributeName.startsWith("Theme.YouTube.Launcher")) { - val nodeAttributeParent = node.getAttribute("parent") - - val style = document.createElement("style") - style.setAttribute("name", "Theme.YouTube.Home") - style.setAttribute("parent", nodeAttributeParent) - - val windowItem = document.createElement("item") - windowItem.setAttribute("name", "android:windowBackground") - windowItem.textContent = "@color/$splashBackgroundColor" - style.appendChild(windowItem) - - resourcesNode.removeChild(node) - resourcesNode.appendChild(style) - } + document("res/values-night-v27/styles.xml").use { document -> + // Create a night mode specific override for the splash screen background. + val style = document.createElement("style") + style.setAttribute("name", "Theme.YouTube.Home") + style.setAttribute("parent", "@style/Base.V27.Theme.YouTube.Home") + + // Fix status and navigation bar showing white on some Android devices, + // such as SDK 28 Android 10 medium tablet. + val colorSplashBackgroundColor = "@color/$splashBackgroundColor" + arrayOf( + "android:navigationBarColor" to colorSplashBackgroundColor, + "android:windowBackground" to colorSplashBackgroundColor, + "android:colorBackground" to colorSplashBackgroundColor, + "colorPrimaryDark" to colorSplashBackgroundColor, + "android:windowLightStatusBar" to "false", + ).forEach { (name, value) -> + val styleItem = document.createElement("item") + styleItem.setAttribute("name", name) + styleItem.textContent = value + style.appendChild(styleItem) } + + val resourcesNode = document.getElementsByTagName("resources").item(0) as Element + resourcesNode.appendChild(style) } } } - }, - sharedExtensionPatch, - settingsPatch, - addResourcesPatch, + } ) compatibleWith( diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/misc/links/OpenLinksExternallyPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/misc/links/OpenLinksExternallyPatch.kt index 4a971e058b..7acddae542 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/misc/links/OpenLinksExternallyPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/misc/links/OpenLinksExternallyPatch.kt @@ -12,7 +12,7 @@ import com.android.tools.smali.dexlib2.iface.reference.StringReference val openLinksExternallyPatch = bytecodePatch( name = "Open links externally", - description = "Adds an option to always open links in your browser instead of in the in-app-browser.", + description = "Adds an option to always open links in your browser instead of the in-app browser.", ) { dependsOn( transformInstructionsPatch( diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/misc/litho/filter/LithoFilterPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/misc/litho/filter/LithoFilterPatch.kt index 16a8340830..d40ab3aa4b 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/misc/litho/filter/LithoFilterPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/misc/litho/filter/LithoFilterPatch.kt @@ -27,7 +27,7 @@ import com.android.tools.smali.dexlib2.iface.reference.MethodReference lateinit var addLithoFilter: (String) -> Unit private set -internal const val EXTENSION_CLASS_DESCRIPTOR = "Lapp/revanced/extension/youtube/patches/components/LithoFilterPatch;" +private const val EXTENSION_CLASS_DESCRIPTOR = "Lapp/revanced/extension/youtube/patches/components/LithoFilterPatch;" val lithoFilterPatch = bytecodePatch( description = "Hooks the method which parses the bytes into a ComponentContext to filter components.", diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/misc/navigation/Fingerprints.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/misc/navigation/Fingerprints.kt index c64cf75940..9df0cda0c0 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/misc/navigation/Fingerprints.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/misc/navigation/Fingerprints.kt @@ -16,6 +16,23 @@ internal val actionBarSearchResultsFingerprint = fingerprint { literal { actionBarSearchResultsViewMicId } } +internal val toolbarLayoutFingerprint = fingerprint { + accessFlags(AccessFlags.PROTECTED, AccessFlags.CONSTRUCTOR) + literal { toolbarContainerId } +} + +/** + * Matches to https://android.googlesource.com/platform/frameworks/support/+/9eee6ba/v7/appcompat/src/android/support/v7/widget/Toolbar.java#963 + */ +internal val appCompatToolbarBackButtonFingerprint = fingerprint { + accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL) + returns("Landroid/graphics/drawable/Drawable;") + parameters() + custom { methodDef, classDef -> + classDef.type == "Landroid/support/v7/widget/Toolbar;" + } +} + /** * Matches to the class found in [pivotBarConstructorFingerprint]. */ diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/misc/navigation/NavigationBarHookPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/misc/navigation/NavigationBarHookPatch.kt index 902567eb89..d9d7c6db49 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/misc/navigation/NavigationBarHookPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/misc/navigation/NavigationBarHookPatch.kt @@ -8,6 +8,7 @@ import app.revanced.patcher.patch.PatchException import app.revanced.patcher.patch.bytecodePatch import app.revanced.patcher.patch.resourcePatch import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod +import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod.Companion.toMutable import app.revanced.patches.shared.misc.mapping.get import app.revanced.patches.shared.misc.mapping.resourceMappingPatch import app.revanced.patches.shared.misc.mapping.resourceMappings @@ -18,12 +19,16 @@ import app.revanced.util.getReference import app.revanced.util.indexOfFirstInstructionOrThrow import app.revanced.util.indexOfFirstInstructionReversedOrThrow import app.revanced.util.indexOfFirstLiteralInstructionOrThrow +import com.android.tools.smali.dexlib2.AccessFlags import com.android.tools.smali.dexlib2.Opcode +import com.android.tools.smali.dexlib2.builder.MutableMethodImplementation import com.android.tools.smali.dexlib2.iface.instruction.FiveRegisterInstruction import com.android.tools.smali.dexlib2.iface.instruction.Instruction import com.android.tools.smali.dexlib2.iface.instruction.OneRegisterInstruction import com.android.tools.smali.dexlib2.iface.instruction.ReferenceInstruction import com.android.tools.smali.dexlib2.iface.reference.MethodReference +import com.android.tools.smali.dexlib2.iface.reference.TypeReference +import com.android.tools.smali.dexlib2.immutable.ImmutableMethod import com.android.tools.smali.dexlib2.util.MethodUtil internal var imageOnlyTabResourceId = -1L @@ -32,6 +37,8 @@ internal var actionBarSearchResultsViewMicId = -1L private set internal var ytFillBellId = -1L private set +internal var toolbarContainerId = -1L + private set private val navigationBarHookResourcePatch = resourcePatch { dependsOn(resourceMappingPatch) @@ -40,6 +47,7 @@ private val navigationBarHookResourcePatch = resourcePatch { imageOnlyTabResourceId = resourceMappings["layout", "image_only_tab"] actionBarSearchResultsViewMicId = resourceMappings["layout", "action_bar_search_results_view_mic"] ytFillBellId = resourceMappings["drawable", "yt_fill_bell_black_24"] + toolbarContainerId = resourceMappings["id", "toolbar_container"] } } @@ -47,6 +55,8 @@ internal const val EXTENSION_CLASS_DESCRIPTOR = "Lapp/revanced/extension/youtube/shared/NavigationBar;" internal const val EXTENSION_NAVIGATION_BUTTON_DESCRIPTOR = "Lapp/revanced/extension/youtube/shared/NavigationBar\$NavigationButton;" +private const val EXTENSION_TOOLBAR_INTERFACE = + "Lapp/revanced/extension/youtube/shared/NavigationBar${'$'}AppCompatToolbarPatchInterface;" lateinit var hookNavigationButtonCreated: (String) -> Unit @@ -143,11 +153,58 @@ val navigationBarHookPatch = bytecodePatch(description = "Hooks the active navig ) } + // Hook the back button visibility. + + toolbarLayoutFingerprint.method.apply { + val index = indexOfFirstInstructionOrThrow { + opcode == Opcode.CHECK_CAST && getReference()?.type == + "Lcom/google/android/apps/youtube/app/ui/actionbar/MainCollapsingToolbarLayout;" + } + val register = getInstruction(index).registerA + + addInstruction( + index + 1, + "invoke-static { v$register }, ${EXTENSION_CLASS_DESCRIPTOR}->setToolbar(Landroid/widget/FrameLayout;)V" + ) + } + + // Add interface for extensions code to call obfuscated methods. + appCompatToolbarBackButtonFingerprint.let { + it.classDef.apply { + interfaces.add(EXTENSION_TOOLBAR_INTERFACE) + + val definingClass = type + val obfuscatedMethodName = it.originalMethod.name + val returnType = "Landroid/graphics/drawable/Drawable;" + + methods.add( + ImmutableMethod( + definingClass, + "patch_getNavigationIcon", + listOf(), + returnType, + AccessFlags.PUBLIC.value or AccessFlags.FINAL.value, + null, + null, + MutableMethodImplementation(2), + ).toMutable().apply { + addInstructions( + 0, + """ + invoke-virtual { p0 }, $definingClass->$obfuscatedMethodName()$returnType + move-result-object v0 + return-object v0 + """ + ) + } + ) + } + } + hookNavigationButtonCreated = { extensionClassDescriptor -> navigationBarHookCallbackFingerprint.method.addInstruction( 0, - "invoke-static { p0, p1 }, " + - "$extensionClassDescriptor->navigationTabCreated" + + "invoke-static { p0, p1 }, $extensionClassDescriptor->navigationTabCreated" + "(${EXTENSION_NAVIGATION_BUTTON_DESCRIPTOR}Landroid/view/View;)V", ) } diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/misc/playertype/Fingerprints.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/misc/playertype/Fingerprints.kt index 2faae3acc4..522d06b204 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/misc/playertype/Fingerprints.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/misc/playertype/Fingerprints.kt @@ -1,6 +1,7 @@ package app.revanced.patches.youtube.misc.playertype import app.revanced.patcher.fingerprint +import app.revanced.util.literal import com.android.tools.smali.dexlib2.AccessFlags import com.android.tools.smali.dexlib2.Opcode @@ -15,6 +16,12 @@ internal val playerTypeFingerprint = fingerprint { custom { _, classDef -> classDef.endsWith("/YouTubePlayerOverlaysLayout;") } } +internal val reelWatchPagerFingerprint = fingerprint { + accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL) + returns("Landroid/view/View;") + literal { reelWatchPlayerId } +} + internal val videoStateFingerprint = fingerprint { accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL) returns("V") diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/misc/playertype/PlayerTypeHookPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/misc/playertype/PlayerTypeHookPatch.kt index e021928a8b..b14de0cbea 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/misc/playertype/PlayerTypeHookPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/misc/playertype/PlayerTypeHookPatch.kt @@ -4,15 +4,34 @@ import app.revanced.patcher.extensions.InstructionExtensions.addInstruction import app.revanced.patcher.extensions.InstructionExtensions.addInstructions import app.revanced.patcher.extensions.InstructionExtensions.getInstruction import app.revanced.patcher.patch.bytecodePatch +import app.revanced.patcher.patch.resourcePatch +import app.revanced.patches.shared.misc.mapping.get +import app.revanced.patches.shared.misc.mapping.resourceMappingPatch +import app.revanced.patches.shared.misc.mapping.resourceMappings import app.revanced.patches.youtube.misc.extension.sharedExtensionPatch +import app.revanced.util.indexOfFirstInstructionOrThrow +import app.revanced.util.indexOfFirstLiteralInstructionOrThrow +import com.android.tools.smali.dexlib2.Opcode +import com.android.tools.smali.dexlib2.iface.instruction.OneRegisterInstruction import com.android.tools.smali.dexlib2.iface.instruction.ReferenceInstruction -internal const val EXTENSION_CLASS_DESCRIPTOR = "Lapp/revanced/extension/youtube/patches/PlayerTypeHookPatch;" +private const val EXTENSION_CLASS_DESCRIPTOR = "Lapp/revanced/extension/youtube/patches/PlayerTypeHookPatch;" + +internal var reelWatchPlayerId = -1L + private set + +private val playerTypeHookResourcePatch = resourcePatch { + dependsOn(resourceMappingPatch) + + execute { + reelWatchPlayerId = resourceMappings["id", "reel_watch_player"] + } +} val playerTypeHookPatch = bytecodePatch( description = "Hook to get the current player type and video playback state.", ) { - dependsOn(sharedExtensionPatch) + dependsOn(sharedExtensionPatch, playerTypeHookResourcePatch) execute { playerTypeFingerprint.method.addInstruction( @@ -20,6 +39,17 @@ val playerTypeHookPatch = bytecodePatch( "invoke-static {p1}, $EXTENSION_CLASS_DESCRIPTOR->setPlayerType(Ljava/lang/Enum;)V", ) + reelWatchPagerFingerprint.method.apply { + val literalIndex = indexOfFirstLiteralInstructionOrThrow(reelWatchPlayerId) + val registerIndex = indexOfFirstInstructionOrThrow(literalIndex, Opcode.MOVE_RESULT_OBJECT) + val viewRegister = getInstruction(registerIndex).registerA + + addInstruction( + registerIndex + 1, + "invoke-static { v$viewRegister }, $EXTENSION_CLASS_DESCRIPTOR->onShortsCreate(Landroid/view/View;)V" + ) + } + videoStateFingerprint.method.apply { val endIndex = videoStateFingerprint.patternMatch!!.endIndex val videoStateFieldName = getInstruction(endIndex).reference @@ -27,9 +57,9 @@ val playerTypeHookPatch = bytecodePatch( addInstructions( 0, """ - iget-object v0, p1, $videoStateFieldName # copy VideoState parameter field - invoke-static {v0}, $EXTENSION_CLASS_DESCRIPTOR->setVideoState(Ljava/lang/Enum;)V - """, + iget-object v0, p1, $videoStateFieldName # copy VideoState parameter field + invoke-static {v0}, $EXTENSION_CLASS_DESCRIPTOR->setVideoState(Ljava/lang/Enum;)V + """ ) } } diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/misc/privacy/RemoveTrackingQueryParameterPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/misc/privacy/RemoveTrackingQueryParameterPatch.kt index 9de31f30c5..32c53ae4d8 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/misc/privacy/RemoveTrackingQueryParameterPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/misc/privacy/RemoveTrackingQueryParameterPatch.kt @@ -20,7 +20,7 @@ private const val EXTENSION_CLASS_DESCRIPTOR = val removeTrackingQueryParameterPatch = bytecodePatch( name = "Remove tracking query parameter", - description = "Adds an option to remove the tracking info from links you share.", + description = "Adds an option to remove the tracking parameter from links you share.", ) { dependsOn( sharedExtensionPatch, diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/misc/settings/SettingsPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/misc/settings/SettingsPatch.kt index 6830628635..3a84ca69db 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/misc/settings/SettingsPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/misc/settings/SettingsPatch.kt @@ -301,11 +301,9 @@ object PreferenceScreen : BasePreferenceScreen() { summaryKey = null, ) - // Don't sort, because title sorting scatters the custom color preferences. val SEEKBAR = Screen( key = "revanced_settings_screen_07_seekbar", summaryKey = null, - sorting = Sorting.UNSORTED, ) val SWIPE_CONTROLS = Screen( key = "revanced_settings_screen_08_swipe_controls", @@ -323,6 +321,7 @@ object PreferenceScreen : BasePreferenceScreen() { val VIDEO = Screen( key = "revanced_settings_screen_12_video", summaryKey = null, + sorting = Sorting.BY_KEY, ) override fun commit(screen: PreferenceScreenPreference) { diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/video/quality/AdvancedVideoQualityMenuPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/video/quality/AdvancedVideoQualityMenuPatch.kt new file mode 100644 index 0000000000..55285a56e3 --- /dev/null +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/video/quality/AdvancedVideoQualityMenuPatch.kt @@ -0,0 +1,118 @@ +package app.revanced.patches.youtube.video.quality + +import app.revanced.patcher.extensions.InstructionExtensions.addInstruction +import app.revanced.patcher.extensions.InstructionExtensions.addInstructions +import app.revanced.patcher.extensions.InstructionExtensions.getInstruction +import app.revanced.patcher.patch.PatchException +import app.revanced.patcher.patch.bytecodePatch +import app.revanced.patcher.patch.resourcePatch +import app.revanced.patches.all.misc.resources.addResources +import app.revanced.patches.all.misc.resources.addResourcesPatch +import app.revanced.patches.shared.misc.mapping.get +import app.revanced.patches.shared.misc.mapping.resourceMappingPatch +import app.revanced.patches.shared.misc.mapping.resourceMappings +import app.revanced.patches.shared.misc.settings.preference.SwitchPreference +import app.revanced.patches.youtube.misc.extension.sharedExtensionPatch +import app.revanced.patches.youtube.misc.litho.filter.addLithoFilter +import app.revanced.patches.youtube.misc.litho.filter.lithoFilterPatch +import app.revanced.patches.youtube.misc.recyclerviewtree.hook.addRecyclerViewTreeHook +import app.revanced.patches.youtube.misc.recyclerviewtree.hook.recyclerViewTreeHookPatch +import app.revanced.patches.youtube.misc.settings.settingsPatch +import com.android.tools.smali.dexlib2.iface.instruction.OneRegisterInstruction + +internal var videoQualityBottomSheetListFragmentTitle = -1L + private set +internal var videoQualityQuickMenuAdvancedMenuDescription = -1L + private set + +private val advancedVideoQualityMenuResourcePatch = resourcePatch { + dependsOn(resourceMappingPatch) + + execute { + // Used for the old type of the video quality menu. + videoQualityBottomSheetListFragmentTitle = resourceMappings[ + "layout", + "video_quality_bottom_sheet_list_fragment_title", + ] + + videoQualityQuickMenuAdvancedMenuDescription = resourceMappings[ + "string", + "video_quality_quick_menu_advanced_menu_description", + ] + } +} + +private const val EXTENSION_CLASS_DESCRIPTOR = + "Lapp/revanced/extension/youtube/patches/playback/quality/AdvancedVideoQualityMenuPatch;" + +private const val FILTER_CLASS_DESCRIPTOR = + "Lapp/revanced/extension/youtube/patches/components/AdvancedVideoQualityMenuFilter;" + +internal val advancedVideoQualityMenuPatch = bytecodePatch { + dependsOn( + advancedVideoQualityMenuResourcePatch, + sharedExtensionPatch, + settingsPatch, + addResourcesPatch, + lithoFilterPatch, + recyclerViewTreeHookPatch, + ) + + execute { + addResources("youtube", "video.quality.advancedVideoQualityMenuPatch") + + settingsMenuVideoQualityGroup.add( + SwitchPreference("revanced_advanced_video_quality_menu") + ) + + // region Patch for the old type of the video quality menu. + // Used for regular videos when spoofing to old app version, + // and for the Shorts quality flyout on newer app versions. + + videoQualityMenuViewInflateFingerprint.let { + it.method.apply { + val checkCastIndex = it.patternMatch!!.endIndex + val listViewRegister = getInstruction(checkCastIndex).registerA + + addInstruction( + checkCastIndex + 1, + "invoke-static { v$listViewRegister }, $EXTENSION_CLASS_DESCRIPTOR->" + + "showAdvancedVideoQualityMenu(Landroid/widget/ListView;)V", + ) + } + } + + // Force YT to add the 'advanced' quality menu for Shorts. + videoQualityMenuOptionsFingerprint.let { + val patternMatch = it.patternMatch!! + val startIndex = patternMatch.startIndex + val insertIndex = patternMatch.endIndex + if (startIndex != 0) throw PatchException("Unexpected opcode start index: $startIndex") + + it.method.apply { + val register = getInstruction(insertIndex).registerA + + // A condition controls whether to show the three or four items quality menu. + // Force the four items quality menu to make the "Advanced" item visible, necessary for the patch. + addInstructions( + insertIndex, + """ + invoke-static { v$register }, $EXTENSION_CLASS_DESCRIPTOR->forceAdvancedVideoQualityMenuCreation(Z)Z + move-result v$register + """ + ) + } + } + + // endregion + + // region Patch for the new type of the video quality menu. + + addRecyclerViewTreeHook(EXTENSION_CLASS_DESCRIPTOR) + + // Required to check if the video quality menu is currently shown in order to click on the "Advanced" item. + addLithoFilter(FILTER_CLASS_DESCRIPTOR) + + // endregion + } +} diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/video/quality/Fingerprints.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/video/quality/Fingerprints.kt index e33674a389..5ce6da9c11 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/video/quality/Fingerprints.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/video/quality/Fingerprints.kt @@ -1,6 +1,7 @@ package app.revanced.patches.youtube.video.quality import app.revanced.patcher.fingerprint +import app.revanced.util.literal import com.android.tools.smali.dexlib2.AccessFlags import com.android.tools.smali.dexlib2.Opcode @@ -35,3 +36,41 @@ internal val videoQualitySetterFingerprint = fingerprint { ) strings("menu_item_video_quality") } + + +internal val videoQualityMenuOptionsFingerprint = fingerprint { + accessFlags(AccessFlags.STATIC) + returns("[L") + parameters("Landroid/content/Context", "L", "L") + opcodes( + Opcode.CONST_4, // First instruction of method. + Opcode.CONST_4, + Opcode.IF_EQZ, + Opcode.IGET_BOOLEAN, // Use the quality menu, that contains the advanced menu. + Opcode.IF_NEZ, + ) + literal { videoQualityQuickMenuAdvancedMenuDescription } +} + +internal val videoQualityMenuViewInflateFingerprint = fingerprint { + accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL) + returns("L") + parameters("L", "L", "L") + opcodes( + Opcode.INVOKE_SUPER, + Opcode.CONST, + Opcode.CONST_4, + Opcode.INVOKE_VIRTUAL, + Opcode.MOVE_RESULT_OBJECT, + Opcode.CONST, + Opcode.INVOKE_VIRTUAL, + Opcode.MOVE_RESULT_OBJECT, + Opcode.CONST_16, + Opcode.INVOKE_VIRTUAL, + Opcode.CONST, + Opcode.INVOKE_VIRTUAL, + Opcode.MOVE_RESULT_OBJECT, + Opcode.CHECK_CAST, + ) + literal { videoQualityBottomSheetListFragmentTitle } +} diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/video/quality/RememberVideoQualityPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/video/quality/RememberVideoQualityPatch.kt index f4299dc657..65036fc27a 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/video/quality/RememberVideoQualityPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/video/quality/RememberVideoQualityPatch.kt @@ -10,7 +10,7 @@ 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.SwitchPreference import app.revanced.patches.youtube.misc.extension.sharedExtensionPatch -import app.revanced.patches.youtube.misc.settings.PreferenceScreen +import app.revanced.patches.youtube.misc.playertype.playerTypeHookPatch import app.revanced.patches.youtube.misc.settings.settingsPatch import app.revanced.patches.youtube.shared.newVideoQualityChangedFingerprint import app.revanced.patches.youtube.video.information.onCreateHook @@ -22,47 +22,47 @@ import com.android.tools.smali.dexlib2.iface.reference.FieldReference private const val EXTENSION_CLASS_DESCRIPTOR = "Lapp/revanced/extension/youtube/patches/playback/quality/RememberVideoQualityPatch;" -val rememberVideoQualityPatch = bytecodePatch( - name = "Remember video quality", - description = "Adds an option to remember the last video quality selected.", -) { +val rememberVideoQualityPatch = bytecodePatch { dependsOn( sharedExtensionPatch, videoInformationPatch, + playerTypeHookPatch, settingsPatch, addResourcesPatch, ) - compatibleWith( - "com.google.android.youtube"( - "19.16.39", - "19.25.37", - "19.34.42", - "19.43.41", - "19.45.38", - "19.46.42", - "19.47.53", - ), - ) - execute { addResources("youtube", "video.quality.rememberVideoQualityPatch") - PreferenceScreen.VIDEO.addPreferences( - SwitchPreference("revanced_remember_video_quality_last_selected"), + settingsMenuVideoQualityGroup.addAll(listOf( + ListPreference( + key = "revanced_video_quality_default_mobile", + summaryKey = null, + entriesKey = "revanced_video_quality_default_entries", + entryValuesKey = "revanced_video_quality_default_entry_values", + ), ListPreference( key = "revanced_video_quality_default_wifi", summaryKey = null, entriesKey = "revanced_video_quality_default_entries", entryValuesKey = "revanced_video_quality_default_entry_values", ), + SwitchPreference("revanced_remember_video_quality_last_selected"), + ListPreference( - key = "revanced_video_quality_default_mobile", + key = "revanced_shorts_quality_default_mobile", + summaryKey = null, + entriesKey = "revanced_video_quality_default_entries", + entryValuesKey = "revanced_video_quality_default_entry_values", + ), + ListPreference( + key = "revanced_shorts_quality_default_wifi", summaryKey = null, entriesKey = "revanced_video_quality_default_entries", entryValuesKey = "revanced_video_quality_default_entry_values", ), - ) + SwitchPreference("revanced_remember_shorts_quality_last_selected") + )) /* * The following code works by hooking the method which is called when the user selects a video quality diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/video/quality/VideoQualityPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/video/quality/VideoQualityPatch.kt new file mode 100644 index 0000000000..a01cf6f565 --- /dev/null +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/video/quality/VideoQualityPatch.kt @@ -0,0 +1,48 @@ +package app.revanced.patches.youtube.video.quality + +import app.revanced.patcher.patch.bytecodePatch +import app.revanced.patches.shared.misc.settings.preference.BasePreference +import app.revanced.patches.shared.misc.settings.preference.PreferenceCategory +import app.revanced.patches.shared.misc.settings.preference.PreferenceScreenPreference.Sorting +import app.revanced.patches.youtube.misc.settings.PreferenceScreen + +/** + * Video quality settings. Used to organize all speed related settings together. + */ +internal val settingsMenuVideoQualityGroup = mutableSetOf() + +@Suppress("unused") +val videoQualityPatch = bytecodePatch( + name = "Video quality", + description = "Adds options to use the advanced video quality menu and set default video qualities." +) { + dependsOn( + rememberVideoQualityPatch, + advancedVideoQualityMenuPatch, + ) + + compatibleWith( + "com.google.android.youtube"( + "19.16.39", + "19.25.37", + "19.34.42", + "19.43.41", + "19.45.38", + "19.46.42", + "19.47.53", + ) + ) + + execute { + PreferenceScreen.VIDEO.addPreferences( + // Keep the preferences organized together. + PreferenceCategory( + key = "revanced_01_video_key", // Dummy key to force the quality preferences first. + titleKey = null, + sorting = Sorting.UNSORTED, + tag = "app.revanced.extension.shared.settings.preference.NoTitlePreferenceCategory", + preferences = settingsMenuVideoQualityGroup + ) + ) + } +} diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/video/speed/PlaybackSpeedPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/video/speed/PlaybackSpeedPatch.kt index 476d431579..ef83ccb64b 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/video/speed/PlaybackSpeedPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/video/speed/PlaybackSpeedPatch.kt @@ -1,20 +1,29 @@ package app.revanced.patches.youtube.video.speed import app.revanced.patcher.patch.bytecodePatch +import app.revanced.patches.shared.misc.settings.preference.BasePreference +import app.revanced.patches.shared.misc.settings.preference.PreferenceCategory +import app.revanced.patches.shared.misc.settings.preference.PreferenceScreenPreference.Sorting +import app.revanced.patches.youtube.misc.settings.PreferenceScreen import app.revanced.patches.youtube.video.speed.button.playbackSpeedButtonPatch import app.revanced.patches.youtube.video.speed.custom.customPlaybackSpeedPatch import app.revanced.patches.youtube.video.speed.remember.rememberPlaybackSpeedPatch +/** + * Speed menu settings. Used to organize all speed related settings together. + */ +internal val settingsMenuVideoSpeedGroup = mutableSetOf() + @Suppress("unused") val playbackSpeedPatch = bytecodePatch( 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, set default a playback speed, " + "and show a speed dialog button in the video player.", ) { dependsOn( - playbackSpeedButtonPatch, customPlaybackSpeedPatch, rememberPlaybackSpeedPatch, + playbackSpeedButtonPatch, ) compatibleWith( @@ -26,6 +35,18 @@ val playbackSpeedPatch = bytecodePatch( "19.45.38", "19.46.42", "19.47.53", - ), + ) ) + + execute { + PreferenceScreen.VIDEO.addPreferences( + PreferenceCategory( + key = "revanced_zz_video_key", // Dummy key to force the speed settings last. + titleKey = null, + sorting = Sorting.UNSORTED, + tag = "app.revanced.extension.shared.settings.preference.NoTitlePreferenceCategory", + preferences = settingsMenuVideoSpeedGroup + ) + ) + } } diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/video/speed/button/PlaybackSpeedButtonPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/video/speed/button/PlaybackSpeedButtonPatch.kt index 1acc3ca74c..0ac9b0769e 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/video/speed/button/PlaybackSpeedButtonPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/video/speed/button/PlaybackSpeedButtonPatch.kt @@ -5,6 +5,7 @@ import app.revanced.patcher.patch.resourcePatch import app.revanced.patches.all.misc.resources.addResources import app.revanced.patches.all.misc.resources.addResourcesPatch import app.revanced.patches.shared.misc.settings.preference.SwitchPreference +import app.revanced.patches.youtube.misc.extension.sharedExtensionPatch import app.revanced.patches.youtube.misc.playercontrols.* import app.revanced.patches.youtube.misc.settings.PreferenceScreen import app.revanced.patches.youtube.misc.settings.settingsPatch @@ -35,11 +36,12 @@ val playbackSpeedButtonPatch = bytecodePatch( description = "Adds the option to display playback speed dialog button in the video player.", ) { dependsOn( - playbackSpeedButtonResourcePatch, - customPlaybackSpeedPatch, - playerControlsPatch, + sharedExtensionPatch, settingsPatch, addResourcesPatch, + customPlaybackSpeedPatch, + playbackSpeedButtonResourcePatch, + playerControlsPatch, ) execute { diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/video/speed/custom/CustomPlaybackSpeedPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/video/speed/custom/CustomPlaybackSpeedPatch.kt index 695642c5af..53151489bf 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/video/speed/custom/CustomPlaybackSpeedPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/video/speed/custom/CustomPlaybackSpeedPatch.kt @@ -25,8 +25,8 @@ import app.revanced.patches.youtube.misc.playservice.is_19_25_or_greater import app.revanced.patches.youtube.misc.playservice.versionCheckPatch import app.revanced.patches.youtube.misc.recyclerviewtree.hook.addRecyclerViewTreeHook import app.revanced.patches.youtube.misc.recyclerviewtree.hook.recyclerViewTreeHookPatch -import app.revanced.patches.youtube.misc.settings.PreferenceScreen import app.revanced.patches.youtube.misc.settings.settingsPatch +import app.revanced.patches.youtube.video.speed.settingsMenuVideoSpeedGroup import app.revanced.util.* import com.android.tools.smali.dexlib2.AccessFlags import com.android.tools.smali.dexlib2.iface.instruction.NarrowLiteralInstruction @@ -60,24 +60,29 @@ internal val customPlaybackSpeedPatch = bytecodePatch( ) { dependsOn( sharedExtensionPatch, - lithoFilterPatch, settingsPatch, - recyclerViewTreeHookPatch, - customPlaybackSpeedResourcePatch, addResourcesPatch, - versionCheckPatch + lithoFilterPatch, + versionCheckPatch, + recyclerViewTreeHookPatch, + customPlaybackSpeedResourcePatch ) execute { addResources("youtube", "video.speed.custom.customPlaybackSpeedPatch") - PreferenceScreen.VIDEO.addPreferences( - SwitchPreference("revanced_custom_speed_menu"), - TextPreference("revanced_custom_playback_speeds", inputType = InputType.TEXT_MULTI_LINE), + settingsMenuVideoSpeedGroup.addAll( + listOf( + SwitchPreference("revanced_custom_speed_menu"), + TextPreference( + "revanced_custom_playback_speeds", + inputType = InputType.TEXT_MULTI_LINE + ), + ) ) if (is_19_25_or_greater) { - PreferenceScreen.VIDEO.addPreferences( + settingsMenuVideoSpeedGroup.add( TextPreference("revanced_speed_tap_and_hold", inputType = InputType.NUMBER_DECIMAL), ) } diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/video/speed/remember/RememberPlaybackSpeedPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/video/speed/remember/RememberPlaybackSpeedPatch.kt index 75fcf392ae..ad6ee4a6cf 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/video/speed/remember/RememberPlaybackSpeedPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/video/speed/remember/RememberPlaybackSpeedPatch.kt @@ -9,10 +9,10 @@ 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.SwitchPreference import app.revanced.patches.youtube.misc.extension.sharedExtensionPatch -import app.revanced.patches.youtube.misc.settings.PreferenceScreen import app.revanced.patches.youtube.misc.settings.settingsPatch import app.revanced.patches.youtube.video.information.* import app.revanced.patches.youtube.video.speed.custom.customPlaybackSpeedPatch +import app.revanced.patches.youtube.video.speed.settingsMenuVideoSpeedGroup import com.android.tools.smali.dexlib2.iface.instruction.ReferenceInstruction private const val EXTENSION_CLASS_DESCRIPTOR = @@ -22,26 +22,29 @@ internal val rememberPlaybackSpeedPatch = bytecodePatch { dependsOn( sharedExtensionPatch, settingsPatch, - videoInformationPatch, - customPlaybackSpeedPatch, addResourcesPatch, + videoInformationPatch, + customPlaybackSpeedPatch ) execute { addResources("youtube", "video.speed.remember.rememberPlaybackSpeedPatch") - PreferenceScreen.VIDEO.addPreferences( - SwitchPreference("revanced_remember_playback_speed_last_selected"), - ListPreference( - key = "revanced_playback_speed_default", - summaryKey = null, - // Entries and values are set by the extension code based on the actual speeds available. - entriesKey = null, - entryValuesKey = null, - ), + settingsMenuVideoSpeedGroup.addAll( + listOf( + ListPreference( + key = "revanced_playback_speed_default", + summaryKey = null, + // Entries and values are set by the extension code based on the actual speeds available. + entriesKey = null, + entryValuesKey = null, + ), + SwitchPreference("revanced_remember_playback_speed_last_selected") + ) ) onCreateHook(EXTENSION_CLASS_DESCRIPTOR, "newVideoStarted") + userSelectedPlaybackSpeedHook( EXTENSION_CLASS_DESCRIPTOR, "userSelectedPlaybackSpeed", diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/video/videoqualitymenu/Fingerprints.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/video/videoqualitymenu/Fingerprints.kt deleted file mode 100644 index 7f5469da33..0000000000 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/video/videoqualitymenu/Fingerprints.kt +++ /dev/null @@ -1,43 +0,0 @@ -package app.revanced.patches.youtube.video.videoqualitymenu - -import app.revanced.patcher.fingerprint -import app.revanced.util.literal -import com.android.tools.smali.dexlib2.AccessFlags -import com.android.tools.smali.dexlib2.Opcode - -internal val videoQualityMenuOptionsFingerprint = fingerprint { - accessFlags(AccessFlags.STATIC) - returns("[L") - parameters("Landroid/content/Context", "L", "L") - opcodes( - Opcode.CONST_4, // First instruction of method. - Opcode.CONST_4, - Opcode.IF_EQZ, - Opcode.IGET_BOOLEAN, // Use the quality menu, that contains the advanced menu. - Opcode.IF_NEZ, - ) - literal { videoQualityQuickMenuAdvancedMenuDescription } -} - -internal val videoQualityMenuViewInflateFingerprint = fingerprint { - accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL) - returns("L") - parameters("L", "L", "L") - opcodes( - Opcode.INVOKE_SUPER, - Opcode.CONST, - Opcode.CONST_4, - Opcode.INVOKE_VIRTUAL, - Opcode.MOVE_RESULT_OBJECT, - Opcode.CONST, - Opcode.INVOKE_VIRTUAL, - Opcode.MOVE_RESULT_OBJECT, - Opcode.CONST_16, - Opcode.INVOKE_VIRTUAL, - Opcode.CONST, - Opcode.INVOKE_VIRTUAL, - Opcode.MOVE_RESULT_OBJECT, - Opcode.CHECK_CAST, - ) - literal { videoQualityBottomSheetListFragmentTitle } -} diff --git a/patches/src/main/kotlin/app/revanced/patches/youtube/video/videoqualitymenu/RestoreOldVideoQualityMenuPatch.kt b/patches/src/main/kotlin/app/revanced/patches/youtube/video/videoqualitymenu/RestoreOldVideoQualityMenuPatch.kt index a10e916f73..537a2b68c4 100644 --- a/patches/src/main/kotlin/app/revanced/patches/youtube/video/videoqualitymenu/RestoreOldVideoQualityMenuPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/youtube/video/videoqualitymenu/RestoreOldVideoQualityMenuPatch.kt @@ -1,135 +1,10 @@ package app.revanced.patches.youtube.video.videoqualitymenu -import app.revanced.patcher.extensions.InstructionExtensions.addInstruction -import app.revanced.patcher.extensions.InstructionExtensions.addInstructions -import app.revanced.patcher.extensions.InstructionExtensions.getInstruction -import app.revanced.patcher.patch.PatchException import app.revanced.patcher.patch.bytecodePatch -import app.revanced.patcher.patch.resourcePatch -import app.revanced.patches.all.misc.resources.addResources -import app.revanced.patches.all.misc.resources.addResourcesPatch -import app.revanced.patches.shared.misc.mapping.get -import app.revanced.patches.shared.misc.mapping.resourceMappingPatch -import app.revanced.patches.shared.misc.mapping.resourceMappings -import app.revanced.patches.shared.misc.settings.preference.SwitchPreference -import app.revanced.patches.youtube.misc.extension.sharedExtensionPatch -import app.revanced.patches.youtube.misc.litho.filter.addLithoFilter -import app.revanced.patches.youtube.misc.litho.filter.lithoFilterPatch -import app.revanced.patches.youtube.misc.recyclerviewtree.hook.addRecyclerViewTreeHook -import app.revanced.patches.youtube.misc.recyclerviewtree.hook.recyclerViewTreeHookPatch -import app.revanced.patches.youtube.misc.settings.PreferenceScreen -import app.revanced.patches.youtube.misc.settings.settingsPatch -import com.android.tools.smali.dexlib2.iface.instruction.OneRegisterInstruction - -internal var videoQualityBottomSheetListFragmentTitle = -1L - private set -internal var videoQualityQuickMenuAdvancedMenuDescription = -1L - private set - -private val restoreOldVideoQualityMenuResourcePatch = resourcePatch { - dependsOn( - settingsPatch, - resourceMappingPatch, - addResourcesPatch, - ) - - execute { - addResources("youtube", "video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch") - - PreferenceScreen.VIDEO.addPreferences( - SwitchPreference("revanced_restore_old_video_quality_menu"), - ) - - // Used for the old type of the video quality menu. - videoQualityBottomSheetListFragmentTitle = resourceMappings[ - "layout", - "video_quality_bottom_sheet_list_fragment_title", - ] - - videoQualityQuickMenuAdvancedMenuDescription = resourceMappings[ - "string", - "video_quality_quick_menu_advanced_menu_description", - ] - } -} - -private const val FILTER_CLASS_DESCRIPTOR = - "Lapp/revanced/extension/youtube/patches/components/VideoQualityMenuFilterPatch;" - -private const val EXTENSION_CLASS_DESCRIPTOR = - "Lapp/revanced/extension/youtube/patches/playback/quality/RestoreOldVideoQualityMenuPatch;" +import app.revanced.patches.youtube.video.quality.videoQualityPatch @Suppress("unused") -val restoreOldVideoQualityMenuPatch = bytecodePatch( - name = "Restore old video quality menu", - description = "Adds an option to restore the old video quality menu with specific video resolution options.", - -) { - dependsOn( - sharedExtensionPatch, - restoreOldVideoQualityMenuResourcePatch, - lithoFilterPatch, - recyclerViewTreeHookPatch, - ) - - compatibleWith( - "com.google.android.youtube"( - "19.16.39", - "19.25.37", - "19.34.42", - "19.43.41", - "19.45.38", - "19.46.42", - "19.47.53", - ), - ) - - execute { - // region Patch for the old type of the video quality menu. - // Used for regular videos when spoofing to old app version, - // and for the Shorts quality flyout on newer app versions. - - videoQualityMenuViewInflateFingerprint.method.apply { - val checkCastIndex = videoQualityMenuViewInflateFingerprint.patternMatch!!.endIndex - val listViewRegister = getInstruction(checkCastIndex).registerA - - addInstruction( - checkCastIndex + 1, - "invoke-static { v$listViewRegister }, " + - "$EXTENSION_CLASS_DESCRIPTOR->" + - "showOldVideoQualityMenu(Landroid/widget/ListView;)V", - ) - } - - // Force YT to add the 'advanced' quality menu for Shorts. - val patternMatch = videoQualityMenuOptionsFingerprint.patternMatch!! - val startIndex = patternMatch.startIndex - if (startIndex != 0) throw PatchException("Unexpected opcode start index: $startIndex") - val insertIndex = patternMatch.endIndex - - videoQualityMenuOptionsFingerprint.method.apply { - val register = getInstruction(insertIndex).registerA - - // A condition controls whether to show the three or four items quality menu. - // Force the four items quality menu to make the "Advanced" item visible, necessary for the patch. - addInstructions( - insertIndex, - """ - invoke-static { v$register }, $EXTENSION_CLASS_DESCRIPTOR->forceAdvancedVideoQualityMenuCreation(Z)Z - move-result v$register - """, - ) - } - - // endregion - - // region Patch for the new type of the video quality menu. - - addRecyclerViewTreeHook(EXTENSION_CLASS_DESCRIPTOR) - - // Required to check if the video quality menu is currently shown in order to click on the "Advanced" item. - addLithoFilter(FILTER_CLASS_DESCRIPTOR) - - // endregion - } -} +@Deprecated("Use 'Video Quality' instead.") +val restoreOldVideoQualityMenuPatch = bytecodePatch { + dependsOn(videoQualityPatch) +} \ No newline at end of file diff --git a/patches/src/main/kotlin/app/revanced/util/BytecodeUtils.kt b/patches/src/main/kotlin/app/revanced/util/BytecodeUtils.kt index 58cdd90982..16e4a298d2 100644 --- a/patches/src/main/kotlin/app/revanced/util/BytecodeUtils.kt +++ b/patches/src/main/kotlin/app/revanced/util/BytecodeUtils.kt @@ -178,8 +178,7 @@ fun Method.indexOfFirstLiteralInstructionReversedOrThrow(literal: Long): Int { * * @return if the method contains a literal with the given value. */ -fun Method.containsLiteralInstruction(literal: Long) = - indexOfFirstLiteralInstruction(literal) >= 0 +fun Method.containsLiteralInstruction(literal: Long) = indexOfFirstLiteralInstruction(literal) >= 0 /** * Traverse the class hierarchy starting from the given root class. @@ -205,25 +204,22 @@ fun BytecodePatchContext.traverseClassHierarchy(targetClass: MutableClass, callb * if the [Instruction] is not a [ReferenceInstruction] or the [Reference] is not of type [T]. * @see ReferenceInstruction */ -inline fun Instruction.getReference() = - (this as? ReferenceInstruction)?.reference as? T +inline fun Instruction.getReference() = (this as? ReferenceInstruction)?.reference as? T /** * @return The index of the first opcode specified, or -1 if not found. * @see indexOfFirstInstructionOrThrow */ -fun Method.indexOfFirstInstruction(targetOpcode: Opcode): Int = - indexOfFirstInstruction(0, targetOpcode) +fun Method.indexOfFirstInstruction(targetOpcode: Opcode): Int = indexOfFirstInstruction(0, targetOpcode) /** * @param startIndex Optional starting index to start searching from. * @return The index of the first opcode specified, or -1 if not found. * @see indexOfFirstInstructionOrThrow */ -fun Method.indexOfFirstInstruction(startIndex: Int = 0, targetOpcode: Opcode): Int = - indexOfFirstInstruction(startIndex) { - opcode == targetOpcode - } +fun Method.indexOfFirstInstruction(startIndex: Int = 0, targetOpcode: Opcode): Int = indexOfFirstInstruction(startIndex) { + opcode == targetOpcode +} /** * Get the index of the first [Instruction] that matches the predicate, starting from [startIndex]. @@ -251,23 +247,21 @@ fun Method.indexOfFirstInstruction(startIndex: Int = 0, filter: Instruction.() - * @throws PatchException * @see indexOfFirstInstruction */ -fun Method.indexOfFirstInstructionOrThrow(targetOpcode: Opcode): Int = - indexOfFirstInstructionOrThrow(0, targetOpcode) +fun Method.indexOfFirstInstructionOrThrow(targetOpcode: Opcode): Int = indexOfFirstInstructionOrThrow(0, targetOpcode) /** * @return The index of the first opcode specified, starting from the index specified. * @throws PatchException * @see indexOfFirstInstruction */ -fun Method.indexOfFirstInstructionOrThrow(startIndex: Int = 0, targetOpcode: Opcode): Int = - indexOfFirstInstructionOrThrow(startIndex) { - opcode == targetOpcode - } +fun Method.indexOfFirstInstructionOrThrow(startIndex: Int = 0, targetOpcode: Opcode): Int = indexOfFirstInstructionOrThrow(startIndex) { + opcode == targetOpcode +} /** * Get the index of the first [Instruction] that matches the predicate, starting from [startIndex]. * - * @return the index of the instruction + * @return The index of the instruction. * @throws PatchException * @see indexOfFirstInstruction */ @@ -288,10 +282,9 @@ fun Method.indexOfFirstInstructionOrThrow(startIndex: Int = 0, filter: Instructi * @return -1 if the instruction is not found. * @see indexOfFirstInstructionReversedOrThrow */ -fun Method.indexOfFirstInstructionReversed(startIndex: Int? = null, targetOpcode: Opcode): Int = - indexOfFirstInstructionReversed(startIndex) { - opcode == targetOpcode - } +fun Method.indexOfFirstInstructionReversed(startIndex: Int? = null, targetOpcode: Opcode): Int = indexOfFirstInstructionReversed(startIndex) { + opcode == targetOpcode +} /** * Get the index of matching instruction, @@ -316,23 +309,21 @@ fun Method.indexOfFirstInstructionReversed(startIndex: Int? = null, filter: Inst * * @return -1 if the instruction is not found. */ -fun Method.indexOfFirstInstructionReversed(targetOpcode: Opcode): Int = - indexOfFirstInstructionReversed { - opcode == targetOpcode - } +fun Method.indexOfFirstInstructionReversed(targetOpcode: Opcode): Int = indexOfFirstInstructionReversed { + opcode == targetOpcode +} /** * Get the index of matching instruction, * starting from and [startIndex] and searching down. * * @param startIndex Optional starting index to search down from. Searching includes the start index. - * @return -1 if the instruction is not found. + * @return The index of the instruction. * @see indexOfFirstInstructionReversed */ -fun Method.indexOfFirstInstructionReversedOrThrow(startIndex: Int? = null, targetOpcode: Opcode): Int = - indexOfFirstInstructionReversedOrThrow(startIndex) { - opcode == targetOpcode - } +fun Method.indexOfFirstInstructionReversedOrThrow(startIndex: Int? = null, targetOpcode: Opcode): Int = indexOfFirstInstructionReversedOrThrow(startIndex) { + opcode == targetOpcode +} /** * Get the index of matching instruction, @@ -340,16 +331,16 @@ fun Method.indexOfFirstInstructionReversedOrThrow(startIndex: Int? = null, targe * * @return -1 if the instruction is not found. */ -fun Method.indexOfFirstInstructionReversedOrThrow(targetOpcode: Opcode): Int = - indexOfFirstInstructionReversedOrThrow { - opcode == targetOpcode - } +fun Method.indexOfFirstInstructionReversedOrThrow(targetOpcode: Opcode): Int = indexOfFirstInstructionReversedOrThrow { + opcode == targetOpcode +} + /** * Get the index of matching instruction, * starting from and [startIndex] and searching down. * * @param startIndex Optional starting index to search down from. Searching includes the start index. - * @return -1 if the instruction is not found. + * @return The index of the instruction. * @see indexOfFirstInstructionReversed */ fun Method.indexOfFirstInstructionReversedOrThrow(startIndex: Int? = null, filter: Instruction.() -> Boolean): Int { @@ -389,8 +380,7 @@ fun Method.findInstructionIndicesReversedOrThrow(filter: Instruction.() -> Boole * _Returns an empty list if no indices are found_ * @see findInstructionIndicesReversedOrThrow */ -fun Method.findInstructionIndicesReversed(opcode: Opcode): List = - findInstructionIndicesReversed { this.opcode == opcode } +fun Method.findInstructionIndicesReversed(opcode: Opcode): List = findInstructionIndicesReversed { this.opcode == opcode } /** * @return An immutable list of indices of the opcode in reverse order. @@ -408,15 +398,18 @@ internal fun MutableMethod.insertFeatureFlagBooleanOverride(literal: Long, exten val index = indexOfFirstInstructionOrThrow(literalIndex, Opcode.MOVE_RESULT) val register = getInstruction(index).registerA - val operation = if (register < 16) "invoke-static { v$register }" - else "invoke-static/range { v$register .. v$register }" + val operation = if (register < 16) { + "invoke-static { v$register }" + } else { + "invoke-static/range { v$register .. v$register }" + } addInstructions( index + 1, """ $operation, $extensionsMethod move-result v$register - """ + """, ) } diff --git a/patches/src/main/resources/addresources/values-af-rZA/strings.xml b/patches/src/main/resources/addresources/values-af-rZA/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-af-rZA/strings.xml +++ b/patches/src/main/resources/addresources/values-af-rZA/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-am-rET/strings.xml b/patches/src/main/resources/addresources/values-am-rET/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-am-rET/strings.xml +++ b/patches/src/main/resources/addresources/values-am-rET/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-ar-rSA/strings.xml b/patches/src/main/resources/addresources/values-ar-rSA/strings.xml index 398600d6aa..7a7c49639d 100644 --- a/patches/src/main/resources/addresources/values-ar-rSA/strings.xml +++ b/patches/src/main/resources/addresources/values-ar-rSA/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" لترجمة لغات جديدة، تفضل بزيارة translate.revanced.app" لغة التطبيق - العربية - Azerbaijani - Bulgarian - Bengali - Catalan - Czech - Danish - German - Greek - English - Spanish - Estonian - فارسى - Finnish - French - Français - Gujarati - Hindi - Croatian - Hungarian - Indonesian - Italian - Japanese - Kazakh - Korean - Lithuanian - Latvian - Macedonian - Mongolian - Marathi - Malay - Burmese - Dutch - Odia - Punjabi - Polish - Portugese - Romanian - Russian - Русский - Slovak - Slovene - Serbian - Swedish - Swahili - Tamil - Telugu - Thai - Turkish - Ukrainian - Urdu - Vietnamese - Chinese استيراد / تصدير استيراد / تصدير إعدادات ReVanced @@ -404,7 +353,7 @@ Second \"item\" text" إخفاء بطاقات الرعاية الذاتية تم إخفاء بطاقات الرعاية الذاتية يتم عرض بطاقات الرعاية الذاتية - إخفاء لافتة لعرض المنتجات + إخفاء لافتة \"عرض المنتجات\" تم إخفاء البانر يتم عرض البانر إخفاء لافتة شاشة المتجر النهائية @@ -663,7 +612,7 @@ Second \"item\" text" يتم عرض تذييل قائمة جودة الفيديو - إخفاء أزرار الفيديو السابق & التالي + إخفاء زري \"السابق\" و \"التالي\" تم إخفاء الأزرار يتم عرض الأزرار إخفاء زر البث @@ -1116,16 +1065,14 @@ Second \"item\" text" الجوّال الجهاز اللوحي Automotive - "تتضمن التغييرات: + "التغييرات تشمل: -تخطيط الجهاز اللوحي -• إخفاء منشورات المجتمع +تصميم الجهاز اللوحي +• مشاركات المجتمع مخفية -تخطيط Automotive -• إخفاء قائمة سجل المشاهدة -• استعادة علامة التبويب \"استكشاف\" -• فتح فيديوهات Shorts في المشغل العادي -• تنظيم الخلاصة حسب الموضوعات والقناة" +تصميم السيارة +• يتم فتح Shorts في المشغل العادي +• يتم تنظيم الخلاصة حسب المواضيع والقنوات" خِداع إصدار التطبيق @@ -1248,8 +1195,6 @@ Second \"item\" text" تمكين شاشة التحميل المتدرجة ستحتوي شاشة التحميل على خلفية متدرجة ستحتوي شاشة التحميل على خلفية ثابتة - - تمكين لون شريط تقدم الفيديو المخصص يتم عرض لون شريط تقدم الفيديو المخصص يتم عرض لون شريط تقدم الفيديو الاصلي @@ -1341,8 +1286,8 @@ Second \"item\" text" فتح الروابط في المتصفح - فتح الروابط خارجيًا - فتح الروابط في التطبيق + فتح الروابط في متصفح خارجي + فتح الروابط في متصفح داخل التطبيق إزالة معلمة تتبع الاستعلام @@ -1355,6 +1300,7 @@ Second \"item\" text" تم تمكين الاهتزاز + فرض لغة الصوت الأصلية استخدام لغة الصوت الأصلية استخدام الصوت الافتراضي @@ -1368,9 +1314,15 @@ Second \"item\" text" تنطبق تغييرات الجودة على الفيديو الحالي فقط جودة الفيديو الافتراضية على شبكة Wi-Fi جودة الفيديو الافتراضية على شبكة الجوَّال + تذكر تغييرات جودة Shorts + تنطبق تغييرات الجودة على جميع فيديوهات Shorts + تنطبق تغييرات الجودة فقط على فيديو Short الحالي + جودة Shorts الافتراضية على شبكة Wi-Fi + جودة Shorts الافتراضية على شبكة الجوال الجوّال Wi-Fi تم تغيير جودة %1$s الافتراضية إلى: %2$s + تم تغيير جودة Shorts %1$s إلى: %2$s عرض زر مربع حوار السرعة @@ -1401,10 +1353,10 @@ Second \"item\" text" تم تعطيل فيديو HDR تم تمكين فيديو HDR - - استعادة قائمة جودة الفيديو القديمة - يتم عرض قائمة جودة الفيديو القديمة - لا يتم عرض قائمة جودة الفيديو القديمة + + إظهار قائمة جودة الفيديو المتقدمة + يتم عرض قائمة جودة الفيديو المتقدمة + لا يتم عرض قائمة جودة الفيديو المتقدمة تمكين التمرير للتقديم أو الترجيع diff --git a/patches/src/main/resources/addresources/values-as-rIN/strings.xml b/patches/src/main/resources/addresources/values-as-rIN/strings.xml index 82e94d3c5a..d7ed7c43d5 100644 --- a/patches/src/main/resources/addresources/values-as-rIN/strings.xml +++ b/patches/src/main/resources/addresources/values-as-rIN/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -221,7 +219,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-az-rAZ/strings.xml b/patches/src/main/resources/addresources/values-az-rAZ/strings.xml index b586281299..b59c44bb9c 100644 --- a/patches/src/main/resources/addresources/values-az-rAZ/strings.xml +++ b/patches/src/main/resources/addresources/values-az-rAZ/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Yeni dilləri tərcümə etmək üçün translate.revanced.app 'ə daxil olun" Tətbiq dili - Ərəbcə - Azərbaycanca - Bolqarca - Benqalca - Katalan dili - Çexcə - Dan dili - Almanca - Yunanca - İngiliscə - İspanca - Estonca - Farsca - Fincə - Fransızca - Qücərat dili - Hindcə - Xorvatca - Macarca - İndoneziya dili - İtalyanca - Yaponca - Qazax dili - Koreya dili - Litva Dili - Letonca - Makedon Dili - Monqolca - Marathi dili - Malay dili - Birmanca - Hollandca - Oriya dili - Pəncabca - Polyak dili - Portuqal dili - Rumınca - Rusca - Slovak dili - Slovencə - Serbcə - İsveçcə - Suahili dili - Tamilcə - Teluqu dili - Tayca - Türkcə - Ukrayna dili - Urdu dili - Vyetnamca - Çincə İdxal/İxrac et ReVanced tənzimləmələrin idxal/ixrac et @@ -404,7 +353,7 @@ Bu xüsusiyyət yalnız köhnə cihazlar üçün mövcuddur" Öz-sponsorlu kartları gizlət Özünə sponsorluq edilən kartlar gizlidir Özünə sponsorluq edilən kartlar göstərilir - Məhsullara baxma etiketin gizlət + \"Məhsullara baxın\" etiketin gizlət Etiket gizlədilib Etiket göstərilir Son ekran mağaza etiketini gizlət @@ -663,7 +612,7 @@ Bu seçimi dəyişdirmə işə düşmürsə, Gizli rejimə keçməyə çalışı Video keyfiyyət menyusu alt məlumatı göstərilir - Əvvəlki/növbəti video düymələrin gizlət + Əvvəlki və Növbəti düymələrin gizlət Düymələr gizlidir Düymələr göstərilir Yayımla düyməsini gizlət @@ -1115,16 +1064,14 @@ Təqdim etməyə hazırdır?" Telefon Planşet Avtomobil - "Dəyişikliklərə daxildir: + "Dəyişikliklər ehtiva edir: Planşet tərtibatı -• İcma elanları gizlidir +• İcma elanları gizlədilib Avtomobil tərtibatı -• Baxış tarixçəsi seçimi gizlidir -• \"Kəşf et\" bölməsi qaytarılıb -• Shorts daimi oynadıcıda açılır -• Axın mövzulara və kanala görə hazırlanıb" +• Shorts müntəzəm oynadıcıda açılır +• Axın mövzular və kanallardan ibarətdir" Tətbiq versiyasını saxtalaşdır @@ -1194,7 +1141,7 @@ Sonradan qapadılarsa, UI səhvlərin önləmək üçün tətbiq məlumatların Kiçik oynadıcı - Tətbiqdə kiçildilən oynadıcı üslubunu dəyişdir + Tətbiqdaxili kiçilən oynadıcı üslubunu dəyişdir Kiçik oynadıcı növü Qeyri-aktivdir İlkin @@ -1247,8 +1194,6 @@ Genişləndirmək və ya bağlamaq üçün sürüşdür" Dəyişkən yükləmə ekranını aktivləşdir Yükləmə ekranı, dəyişkən arxa plana malik olacaq Yükləmə ekranı, vahid arxa plana malik olacaq - - Fərdi irəliləmə cizgisi rəngini aktivləşdir Fərdi irəliləmə cizgisi rəngi göstərilir Orijinal irəliləmə cizgisi rəngi göstərilir @@ -1340,8 +1285,8 @@ Bunu aktivləşdirmə daha yüksək video keyfiyyətləri əngəlin silə bilər Bağlantıları brauzerdə aç - Bağlantılar xarici yolla açılır - Bağlantılar tətbiqdə açılır + Xarici brauzerdə bağlantıların açılması + Tətbiqdaxili brauzerdə bağlantıların açılması İzləmə sorğusu faktorun sil @@ -1368,9 +1313,15 @@ Bunu aktivləşdirmə daha yüksək video keyfiyyətləri əngəlin silə bilər Keyfiyyət dəyişiklikləri yalnız cari videoya tətbiq edilir Wi-Fi şəbəkəsində ilkin video keyfiyyəti Mobil şəbəkədə ilkin video keyfiyyəti + Shorts keyfiyyət dəyişikliklərini xatırla + Keyfiyyət dəyişiklikləri bütün Shorts-a tətbiq edilir + Keyfiyyət dəyişiklikləri yalnız cari Short-a tətbiq edilir + Wi-Fi şəbəkəsində ilkin Shorts keyfiyyəti + Mobil şəbəkədə ilkin Shorts keyfiyyəti mobil wi-fi İlkin %1$s keyfiyyəti %2$s kimi dəyişdi + Shorts-un %1$s keyfiyyəti %2$s olaraq dəyişdirildi Sürət dialoq düyməsini göstər @@ -1401,10 +1352,10 @@ Bunu aktivləşdirmə daha yüksək video keyfiyyətləri əngəlin silə bilər HDR video qapalıdır HDR video aktivdir - - Köhnə video keyfiyyət menusun qaytar - Köhnə video keyfiyyət siyahısı göstərilir - Köhnə video keyfiyyət siyahısı görünmür + + Qabaqcıl video keyfiyyət siyahısın göstər + Qabaqcıl video keyfiyyət siyahısı göstərilir + Qabaqcıl video keyfiyyət siyahısı göstərilmir Axtarmaq üçün sürüşdürməni aktiv et diff --git a/patches/src/main/resources/addresources/values-be-rBY/strings.xml b/patches/src/main/resources/addresources/values-be-rBY/strings.xml index e818c610f9..d8f3e5de23 100644 --- a/patches/src/main/resources/addresources/values-be-rBY/strings.xml +++ b/patches/src/main/resources/addresources/values-be-rBY/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Каб дадаць новыя мовы, наведайце translate.revanced.app" Мова праграмы - Арабская - Азербайджанскі - Балгарская - Бенгальская - Каталонская - Чэшскі - Дацкі - Нямецкі - Грэцкі - Англійская - Іспанская - Эстонская - Персідская - Фінская - Французская - Гуджараці - Хіндзі - Харвацкая - Венгерская - Інданезійская - Італьянская - Японская - Казахская - Карэйская - Літоўская - Латышская - Македонская - Мангольская - Малаялам - Малайская - Бірманская - Нідэрландская - Одыя - Пенджабі - Польская - Партугальская - Румынская - Руская - Славацкая - Славенская - Сербская - Шведская - Суахілі - Тамільская - Тэлугу - Тайская - Турецкая - Украінская - Урду - В\'етнамская - Кітайская Імпарт / Экспарт Імпарт / Экспарт налад ReVanced @@ -404,7 +353,7 @@ Second \"item\" text" Схаваць самі спансаваныя карты Спонсарскія карткі схаваныя Паказваюцца ўласныя карты - Схаваць банер для прагляду прадуктаў + Схаваць банер «Паглядзець прадукты» Банэр схаваны Паказваецца банэр Схаваць банер крамы на канчатковым экране @@ -663,7 +612,7 @@ Second \"item\" text" Паказваецца ніжні калонтытул меню якасці відэа - Схаваць папярэдні & кнопкі наступнага відэа + Схаваць папярэднія & кнопкі «Далей» Кнопкі схаваныя Паказваюцца кнопкі Схаваць кнопку «Трансляцыя» @@ -1119,13 +1068,11 @@ Second \"item\" text" Аўтамабільны "Змены ўключаюць: -Раскладка планшэта -• Паведамленні супольнасці схаваны +Макет для планшэта +• Паведамленні супольнасці схаваныя -Раскладка аўтамабіля -• Меню гісторыі праглядаў схавана -• Адноўлена ўкладка «Даследаваць» -• Ролікі Shorts адкрываюцца ў звычайным прайгравальніку +Аўтамабільны макет +• Shorts адкрываюцца ў звычайным плэеры • Стужка арганізавана па тэмах і каналах" @@ -1196,7 +1143,7 @@ Second \"item\" text" Міні-плэер - Змяніце стыль мінімізаванага плэера ў праграме + Змяніць стыль згорнутага прайгравальніка ў праграме Тып мініплэера Інваліды Па змаўчанні @@ -1249,8 +1196,6 @@ Second \"item\" text" Уключыць градыентны экран загрузкі Экран загрузкі будзе мець градыентны фон Экран загрузкі будзе мець суцэльны фон - - Уключыць уласны колер панэлі пошуку Паказваецца карыстальніцкі колер панэлі пошуку Паказаны зыходны колер панэлі пошуку @@ -1342,8 +1287,8 @@ Second \"item\" text" Адкрываць спасылкі ў браўзеры - Адкрыццё спасылак звонку - Адкрыццё спасылак у праграме + Адкрыццё спасылак у знешнім браўзеры + Адкрыццё спасылак ва ўбудаваным браўзеры Выдаліць параметр запыту адсочвання @@ -1370,9 +1315,15 @@ Second \"item\" text" Змены якасці прымяняюцца толькі да бягучага відэа Стандартная якасць відэа ў сетцы Wi-Fi Стандартная якасць відэа ў мабільнай сетцы + Запомніць змены якасці Shorts + Змены якасці прымяняюцца да ўсіх Shorts + Змены якасці прымяняюцца толькі да бягучага Short + Якасць Shorts па змаўчанні ў сетцы Wi-Fi + Якасць Shorts па змаўчанні ў мабільнай сетцы мабільны wi-fi Стандартная якасць %1$s зменена на: %2$s + Якасць Shorts %1$s зменена на: %2$s Паказаць дыялогавую кнопку хуткасці @@ -1403,10 +1354,10 @@ Second \"item\" text" Відэа ў фармаце HDR адключана Відэа ў фармаце HDR уключана - - Аднавіць старое меню якасці відэа - Паказана старое меню якасці відэа - Старое меню якасці відэа не паказваецца + + Паказаць пашыранае меню якасці відэа + Пашыранае меню якасці відэа паказана + Пашыранае меню якасці відэа не паказана Уключыць слайд для пошуку diff --git a/patches/src/main/resources/addresources/values-bg-rBG/strings.xml b/patches/src/main/resources/addresources/values-bg-rBG/strings.xml index 9a05a8ddf5..59d29bb1b5 100644 --- a/patches/src/main/resources/addresources/values-bg-rBG/strings.xml +++ b/patches/src/main/resources/addresources/values-bg-rBG/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" За да преведете нови езици, посетете translate.revanced.app" Език на приложението - арабски - Азербайджански - български - бенгалски - каталонски - Чешки - Датски - Немски - Гръцки - Английски - Испански - Естонски - Персийски - Финландски - Френски - Гуджарати - Хинди - Хърватски - Унгарски - Индонезийски - Италиански - Японски - Казахски - Корейски - Литовски - Латвийски - Македонски - Монголски - Маратхи - Малайски - Бирмански - Холандски - Одия - Пенджаби - Полски - Португалски - Румънски - Руски - Словашки - Словенски - Сръбски - Шведски - Суахили - Тамилски - Телугу - Тайландски - Турски - Украински - Урду - Виетнамски - Китайски Импортиране / Експортиране Импортиране / Експортиране на ReVanced настройките @@ -404,7 +353,7 @@ Second \"item\" text" Скриване на самоспонсорирани карти Самоспонсорираните карти са скрити Самоспонсорираните карти са показани - Скриване на банера за показване на продукти + Скриване на банера \"Преглед на продукти\" Банерът е скрит Банерът е показан Скрий банера за реклама в края на екрана @@ -663,7 +612,7 @@ Second \"item\" text" Долният колонтитул на менюто за качество на видеото се показва - Бутони за Предишно & Следващо видео + Скриване на бутоните \"Предишен и Следващ\" Бутоните са скрити Бутоните се показват Скриване на бутона Cast @@ -1121,11 +1070,9 @@ Second \"item\" text" Оформление за таблет • Публикациите на общността са скрити -Оформление за автомобил -• Менюто „История на гледане“ е скрито -• Разделът „Разгледай“ е възстановен +Автомобилно оформление • Shorts се отварят в обикновения плейър -• Лентата е организирана по теми и канал" +• Каналът е организиран по теми и канали" Подлъгване за версията на приложението @@ -1195,7 +1142,7 @@ Second \"item\" text" Минимизиран екран за възпроизвеждане - Променете стила на минимизирания екран за възпроизвеждане + Промяна на стила на минимизиран плейър в приложението Минимизиран тип екран за гледане Деактивирано По подразбиране @@ -1248,8 +1195,6 @@ Second \"item\" text" Фон на екрана при зареждане на видео Екранът за зареждане ще има градиентен фон Екранът за зареждане ще има плътен фон - - Промяна на цвета на индикатора за време Показва се персонализиран цвят на лентата за напредък Показва се оригиналния цвят на лентата за напредък @@ -1341,8 +1286,8 @@ Second \"item\" text" Отваряне на връзки в браузъра - Отваряне на външни връзки - Отваряне на връзки в приложението + Отваряне на връзки във външен браузър + Отваряне на връзки във вграден браузър Премахнете параметъра на заявката за проследяване @@ -1369,9 +1314,15 @@ Second \"item\" text" Промените в качеството се отнасят само за текущия видеоклип Предпочитано качество при Wi-Fi Предпочитано качество при мобилни данни + Запомняне на промените в качеството на Shorts + Промените в качеството се прилагат за всички Shorts + Промените в качеството се прилагат само за текущия Short + Качество по подразбиране на Shorts във Wi-Fi мрежа + Качество по подразбиране на Shorts в мобилна мрежа мобилни данни wi-fi Променено стандартно %1$s качество на: %2$s + Променено качество на Shorts %1$s на: %2$s Показване бутон за скорост @@ -1402,10 +1353,10 @@ Second \"item\" text" HDR видеото е деактивирано HDR видеото е активирано - - Възстановете старото меню за качество на видеото - Показва се старото меню за видео качество - Старото меню за видео качество е скрито + + Показване на менюто за разширено качество на видеото + Показва се менюто за разширено качество на видеото + Менюто за разширено качество на видеото не се показва Активиране на слайд за превъртане diff --git a/patches/src/main/resources/addresources/values-bn-rBD/strings.xml b/patches/src/main/resources/addresources/values-bn-rBD/strings.xml index 0e5c1f6034..973490c55f 100644 --- a/patches/src/main/resources/addresources/values-bn-rBD/strings.xml +++ b/patches/src/main/resources/addresources/values-bn-rBD/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" নতুন ভাষা অনুবাদ করতে translate.revanced.app দেখুন" অ্যাপ্লিকেশনের ভাষা - আরবি - আজারবাইজানি - বুলগেরিয়ান - বাংলা - কাতালান - চেক - ড্যানিশ - জার্মান - গ্রিক - ইংরেজি - স্প্যানিশ - এস্তোনিয়ান - ফার্সি - ফিনিশ - ফরাসি - গুজরাটি - হিন্দি - ক্রোয়েশীয় - হাঙ্গেরিয়ান - ইন্দোনেশিয়ান - ইতালীয় - জাপানি - কাজাখ - কোরিয়ান - লিথুয়ানিয়ান - লাতভিয়ান - ম্যাসেডোনিয়ান - মঙ্গোলীয় - মারাঠি - মালয় - বর্মি - ডাচ - ওড়িয়া - পাঞ্জাবি - পোলিশ - পর্তুগিজ - রোমানীয় - রুশ - স্লোভাক - স্লোভেন - সার্বিয়ান - সুইডিশ - সোয়াহিলি - তামিল - তেলুগু - থাই - তুর্কি - ইউক্রেনীয় - উর্দু - ভিয়েতনামী - চাইনিজ আমদানি এবং রপ্তানি ReVanced সেটিং আমদানি বা রপ্তানি করুন @@ -403,7 +352,7 @@ MicroG-এর জন্য ব্যাটারি অপ্টিমাইজ স্ব-স্পন্সর কার্ড লুকান স্ব-স্পন্সর কার্ড লুকিয়ে রয়েছে স্ব-স্পন্সর কার্ড প্রদর্শিত হয়েছে - প্রোডাক্ট দেখার ব্যানার লুকান + \'পণ্য দেখুন\' ব্যানার লুকান ব্যানার লুকিয়ে রয়েছে ব্যানার প্রদর্শিত হয়েছে শেষ পর্দার স্টোর ব্যানার লুকান @@ -659,7 +608,7 @@ MicroG-এর জন্য ব্যাটারি অপ্টিমাইজ ভিডিও গুণমান মেনু ফুটার দেখানো হচ্ছে - পূর্ববর্তী লুকান & পরবর্তী ভিডিও বোতাম + পূর্ববর্তী লুকান & পরবর্তী বোতাম বোতাম লুকানো হয় বোতাম দেখানো হয় কাস্ট বোতামটি লুকান @@ -1112,16 +1061,14 @@ YouTube সেটিংসে অটো প্লে পরিবর্তন ফোন ট্যাবলেট স্বয়ংচালিত - "পরিবর্তনগুলো হল: + "পরিবর্তনগুলির মধ্যে রয়েছে: ট্যাবলেট লেআউট -• কমিউনিটি পোস্ট গোপন +• কমিউনিটির পোস্টগুলি লুকানো আছে -স্বয়ংচালিত লেআউট -• ঘড়ির ইতিহাস মেনু গোপন -• এক্সপ্লোর ট্যাব পুনরুদ্ধার করা হয়েছে -• শর্টস নিয়মিত প্লেয়ারে খোলে -• ফিড বিষয় এবং চ্যানেল দ্বারা সংগঠিত হয়" +অটোমোটিভ লেআউট +• Shorts নিয়মিত প্লেয়ারে খোলে +• ফিড বিষয় এবং চ্যানেল দ্বারা সংগঠিত" অ্যাপ সংস্করণ স্পুফ করুন @@ -1191,7 +1138,7 @@ YouTube সেটিংসে অটো প্লে পরিবর্তন মিনিপ্লেয়ার - অ্যাপের মধ্যকার মিনিমাইজড প্লেয়ার এর ধরণ পরিবর্তন করুন + ইন-অ্যাপ মিনিমাইজড প্লেয়ারের শৈলী পরিবর্তন করুন মিনিপ্লেয়ার ধরণ নিষ্ক্রিয় হয়েছে পূর্ব-নির্ধারিত @@ -1244,8 +1191,6 @@ Miniplayer স্ক্রিন থেকে বামে বা ডানে গ্রেডিয়েন্ট লোডিং স্ক্রিণ সক্রিয় করুন লোডিং স্ক্রিণে একটি গ্রেডিয়েন্ড ব্যাকগ্রাউন্ড থাকবে লোডিং স্ক্রিণে একটি সলিড ব্যাকগ্রাউন্ড থাকবে - - সিকবারে নিজস্ব রং সক্রিয় করুন সিকবারে নিজস্ব রং প্রদর্শিত হয়েছে সিকবারে মূল রং প্রদর্শিত হয়েছে @@ -1337,8 +1282,8 @@ DeArrow সম্পর্কে আরও জানতে এখানে ট লিংক ব্রাউজারে খুলুন - লিংক বাহিরে খুলুন - অ্যাপের মধ্যে লিংক খুলছে + বাহ্যিক ব্রাউজারে লিঙ্ক খোলা হচ্ছে + ইন-অ্যাপ ব্রাউজারে লিঙ্ক খোলা হচ্ছে ট্র্যাকিং করার প্যারামিটার মুছুন @@ -1365,9 +1310,15 @@ DeArrow সম্পর্কে আরও জানতে এখানে ট গুণমান পরিবর্তন বর্তমান ভিডিওতে প্রয়োগ করা হয়েছে ওয়াই-ফাই নেটওয়ার্কে ডিফল্ট ভিডিও গুণমান মোবাইল নেটওয়ার্কে ডিফল্ট ভিডিও গুণমান + Shorts গুণমান পরিবর্তনের কথা মনে রাখুন + গুণমানের পরিবর্তনগুলি সমস্ত Shorts-এর জন্য প্রযোজ্য + গুণমানের পরিবর্তনগুলি শুধুমাত্র বর্তমান Short-এর জন্য প্রযোজ্য + Wi-Fi নেটওয়ার্কে ডিফল্ট Shorts গুণমান + মোবাইল নেটওয়ার্কে ডিফল্ট Shorts গুণমান মোবাইল ওয়াই-ফাই ডিফল্ট %1$s গুণমান পরিবর্তন হচ্ছে: %2$s + Shorts %1$s এর গুণমান পরিবর্তন করে: %2$s স্পিড ডায়ালগ বোতাম দেখান @@ -1398,10 +1349,10 @@ DeArrow সম্পর্কে আরও জানতে এখানে ট HDR ভিডিও নিষ্ক্রিয় করা হয়েছে HDR ভিডিও সক্রিয় হয়েছে - - পুরোনো ভিডিও গুণমান উদ্ধার করুন - পুরোনো ভিডিও গুণমান মেনু প্রদর্শিত হয়েছে - পুরোনো ভিডিও গুণমান মেনু প্রদর্শিত হয়নি + + উন্নত ভিডিও গুণমান মেনু দেখান + উন্নত ভিডিও গুণমান মেনু দেখানো হয়েছে + উন্নত ভিডিও গুণমান মেনু দেখানো হয়নি ভিডিওর নির্দিষ্ট অংশে যেতে টানুন সক্রিয় করুন diff --git a/patches/src/main/resources/addresources/values-bs-rBA/strings.xml b/patches/src/main/resources/addresources/values-bs-rBA/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-bs-rBA/strings.xml +++ b/patches/src/main/resources/addresources/values-bs-rBA/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-ca-rES/strings.xml b/patches/src/main/resources/addresources/values-ca-rES/strings.xml index 060db81e06..8765d969ed 100644 --- a/patches/src/main/resources/addresources/values-ca-rES/strings.xml +++ b/patches/src/main/resources/addresources/values-ca-rES/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Per traduir nous idiomes, visiteu translate.revanced.app" Llengua de l\'aplicació - Àrab - Azerbaidjanès - Búlgaro - Bengalí - Català - Txec - Danès - Alemany - Grec - Anglès - Espanyol - Estonià - Persa - Finès - Francès - Gujarati - Hindi - Croat - Hongarès - Indonesi - Italià - Japonès - Kazakhstanès - Coreà - Lituà - Letó - Macedoni - Mongol - Marathi - Malai - Birmà - Neerlandès - Odia - Panjabi - Polonès - Portuguès - Romanès - Rus - Eslovac - Eslovè - Serbi - Suec - Suahili - Tàmil - Telugu - Tailandès - Turc - Ucraïnès - Urdu - Vietnamita - Xinès Importa / Exporta Importa / Exporta els ajustos de ReVanced @@ -404,7 +353,7 @@ Aquesta funció només està disponible per a dispositius antics" Amaga les targetes d\'auto patrocini Les targetes d\'autopatrocini estan magades Es mostren les targetes d\'autopatrocini - Amaga el bàner per veure productes + Amaga el bàner «Mostra els productes» La pancarta s\'amaga La pancarta es mostra Amaga el banner de la botiga a la pantalla final @@ -663,7 +612,7 @@ Si canviar aquesta opció no té cap efecte, prova a canviar al mode d'incògnit La part inferior del menú de qualitat del vídeo es mostra - Amaga els botons de vídeo anteriors i següents + Amaga els botons Anterior i següent Els botons estan amagats Els botons es mostren Amaga el botó Emet @@ -1117,14 +1066,12 @@ Preparat per enviar?" Automoció "Els canvis inclouen: -Presentació de la tauleta -• Les publicacions de la comunitat estan amagades +Disposició de tauleta +• Les publicacions de la comunitat s'han ocultat -Presentació de l'automòbil -• El menú d'historial del rellotge està ocult -• La pestanya Explora s'ha restaurat -• Els Shorts s'obren al reproductor normal -• La font d'informació s'organitza per temes i canals" +Disposició per a automoció +• Els \"Shorts\" s'obren al reproductor normal +• La font està organitzada per temes i canals" Falsa la versió de l\'aplicació @@ -1247,8 +1194,6 @@ Desliza para ampliar o cerrar" Habilita la pantalla de càrrega amb degradació La pantalla de càrrega tindrà un fons de degradació La pantalla de càrrega tindrà un fons sòlid - - Habilita el color personalitzat de la barra de cerca El color personalitzat de la barra de cerca es mostra El color original de la barra de cerca es mostra @@ -1340,8 +1285,8 @@ Si actives aquesta opció, es poden desbloquejar qualitats de vídeo més altes" Obri els enllaços al navegador - Obrir els enllaços externament - Obrir els enllaços a l\'aplicació + Obrint enllaços en un navegador extern + Obrint enllaços en un navegador integrat a l\'aplicació Elimina el paràmetre de consulta de seguiment @@ -1368,9 +1313,15 @@ Si actives aquesta opció, es poden desbloquejar qualitats de vídeo més altes" Els canvis de qualitat només s\'apliquen al vídeo actual Qualitat de vídeo predeterminada a la xarxa Wi-Fi Qualitat de vídeo predeterminada a la xarxa mòbil + Recorda els canvis de qualitat de Shorts + Els canvis de qualitat s\'apliquen a tots els Shorts + Els canvis de qualitat només s\'apliquen al Short actual + Qualitat predeterminada de Shorts a la xarxa Wi-Fi + Qualitat predeterminada de Shorts a la xarxa mòbil mòbil wifi S\'ha canviat la qualitat predeterminada de %1$s a: %2$s + S\'ha canviat la qualitat de Shorts %1$s a: %2$s Mostra el botó del diàleg de velocitat @@ -1401,10 +1352,10 @@ Si actives aquesta opció, es poden desbloquejar qualitats de vídeo més altes" El vídeo HDR està desactivat El vídeo HDR està activat - - Restaura el menú de qualitat de vídeo antic - El menú de qualitat de vídeo antic es mostra - El menú de qualitat de vídeo antic no es mostra + + Mostra el menú avançat de qualitat de vídeo + Es mostra el menú avançat de qualitat de vídeo + No es mostra el menú avançat de qualitat de vídeo Habilita lliscar per buscar diff --git a/patches/src/main/resources/addresources/values-cs-rCZ/strings.xml b/patches/src/main/resources/addresources/values-cs-rCZ/strings.xml index 71a9d225c7..9b42e0175f 100644 --- a/patches/src/main/resources/addresources/values-cs-rCZ/strings.xml +++ b/patches/src/main/resources/addresources/values-cs-rCZ/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Nové jazyky přeložíte na translate.revanced.app" Jazyk aplikace - Arabština - Ázerbájdžánština - Bulharština - Bengálština - Katalánština - Čeština - Dánština - Němčina - Řečtina - Angličtina - Španělština - Estonština - Perština - Finština - Francouzština - Gudžarátština - Hindština - Chorvatština - Maďarština - Indonéština - Italština - Japonština - Kazachština - Korejština - Litevština - Lotyština - Makedonština - Mongolština - Maráthština - Malajština - Barmština - Nizozemština - Uríjština - Paňdžábština - Polština - Portugalština - Rumunština - Ruština - Slovenština - Slověnština - Srbština - Švédština - Svahilština - Tamilština - Telugština - Thajština - Turečtina - Ukrajinština - Urdština - Vietnamština - Čínština Importovat / Exportovat Importovat/exportovat nastavení ReVanced @@ -404,7 +353,7 @@ Tato funkce je dostupná pouze pro starší zařízení" Skrýt karty se sponzorovanými produkty Karty se sponzorovanými produkty jsou skryty Karty se sponzorovanými produkty jsou zobrazeny - Skrýt banner pro prohlížení produktů + Skrýt banner „Zobrazit produkty“ Banner je skryt Banner je zobrazen Skrýt koncový banner obchodu @@ -663,7 +612,7 @@ Pokud změna tohoto nastavení nemá žádný účinek, zkuste přepnout do rež Zápatí menu kvality videa je zobrazeno - Skrýt tlačítka pro předchozí a další video + Skrýt tlačítka Předchozí a Další Tlačítka jsou skryta Tlačítka jsou zobrazena Skrýt tlačítko Odeslat @@ -1121,10 +1070,8 @@ Rozložení tabletu • Příspěvky komunity jsou skryté Rozložení automobilu -• Menu historie sledování je skryté -• Karta Prozkoumat je obnovena • Shorts se otevírají v běžném přehrávači -• Kanál je organizován podle témat a kanálu" +• Kanál je uspořádán podle témat a kanálů" Napodobit verzi aplikace @@ -1247,8 +1194,6 @@ Přejeďte prstem pro rozbalení nebo zavření" Povolit přechodovou obrazovku načítání Obrazovka načítání bude mít přechodové pozadí Obrazovka načítání bude mít pevné pozadí - - Povolit vlastní barvu posuvníku Vlasní barva posuvníku je zobrazena Původní barva posuvníku je zobrazena @@ -1340,8 +1285,8 @@ Povolením této funkce lze odemknout vyšší kvality videa" Otevírat odkazy v prohlížeči - Otevírání odkazů externě - Otevírání odkazů v aplikaci + Otevírání odkazů v externím prohlížeči + Otevírání odkazů v prohlížeči v aplikaci Odstranit sledovací parametr dotazu @@ -1368,9 +1313,15 @@ Povolením této funkce lze odemknout vyšší kvality videa" Změny kvality se vztahují pouze na aktuální video Výchozí kvalita videa v síti Wi-Fi Výchozí kvalita videa v mobilní síti + Zapamatovat si změny kvality u položky Shorts + Změny kvality se vztahují na všechny {Shorts} + Změny kvality se vztahují pouze na aktuální {Shorts} + Výchozí kvalita Shorts v síti Wi-Fi + Výchozí kvalita Shorts v mobilní síti mobilní Wi-Fi Výchozí kvalita %1$s změněna na: %2$s + Změněna kvalita Shorts %1$s na: %2$s Zobrazit tlačítko dialogu rychlosti @@ -1401,10 +1352,10 @@ Povolením této funkce lze odemknout vyšší kvality videa" HDR video je vypnuté. HDR video je zapnuté. - - Obnovit staré menu kvality videa - Staré menu kvality videa se zobrazuje - Staré menu kvality videa se nezobrazuje + + Zobrazit rozšířené menu kvality videa + Zobrazuje se rozšířené menu kvality videa + Nezobrazuje se rozšířené menu kvality videa Povolit posun pro hledání diff --git a/patches/src/main/resources/addresources/values-da-rDK/strings.xml b/patches/src/main/resources/addresources/values-da-rDK/strings.xml index e4ce50dbaf..d4ec8f1bf8 100644 --- a/patches/src/main/resources/addresources/values-da-rDK/strings.xml +++ b/patches/src/main/resources/addresources/values-da-rDK/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" For at oversætte til nye sprog skal du besøge translate.revanced.app" App-sprog - Arabisk - Aserbajdsjansk - Bulgarsk - Bengalsk - Catalansk - Tjekkisk - Dansk - Tysk - Græsk - Engelsk - Spansk - Estisk - Persisk - Finsk - Fransk - Gujarati - Hindi - Kroatisk - Ungarsk - Indonesisk - Italiensk - Japansk - Kasakhisk - Koreansk - Litauisk - Lettisk - Makedonsk - Mongolsk - Marathi - Malaysisk - Burmesisk - Hollandsk - Odia - Punjabi - Polsk - Portugisisk - Rumænsk - Russisk - Slovakisk - Slovensk - Serbisk - Svensk - Swahili - Tamil - Telugu - Thai - Tyrkisk - Ukrainisk - Urdu - Vietnamesisk - Kinesisk Importér/Eksportér Importér/Eksportér ReVanced-indstillinger @@ -372,7 +321,7 @@ Denne funktion er kun tilgængelig for ældre enheder" Skjul selvsponsorerede kort Selvsponsorerede kort er skjult Selvsponsorerede kort vises - Skjul banner for at se produkter + Skjul banneret \"Se produkter\" Banner er skjult Banner er vist Skjul banner fra butikken på slutskærmen @@ -624,7 +573,7 @@ Hvis ændring af denne indstilling ikke træder i kraft, kan du prøve at skifte Videokvalitet menu footer er vist - Skjul forrige & næste video knapper + Skjul Forrige & Næste knapper Knapper er skjult Knapper vises Skjul Cast-knappen @@ -1062,13 +1011,11 @@ Er du klar til at indsende?" "Ændringer omfatter: Tabletlayout -• Fællesindlæg er skjult +• Fællesskabsopslag er skjulte -Bil layout -• Se historik-menuen er skjult -• Udforsk-fanen er gendannet +Automotive-layout • Shorts åbnes i den almindelige afspiller -• Feedet er organiseret efter emner og kanal" +• Feed er organiseret efter emner og kanaler" Spoof app-version @@ -1138,7 +1085,7 @@ Hvis det senere slås fra, anbefales det at rydde app-dataene for at forhindre U Mini-afspiller - Ændre stilen for den i app minimeret afspiller + Skift stilen på den minimerede afspiller i appen Type af miniplayer Deaktiveret Standard @@ -1191,8 +1138,6 @@ Stryg for at udvide eller lukke" Aktiver gradient indlæsning af skærmen Indlæser skærmen vil have en gradient baggrund Indlæser skærmen vil have en solid baggrund - - Aktivér brugerdefineret søgelinjefarve Brugerdefineret søgelinje farve vises Original søgelinje farve vises @@ -1280,8 +1225,8 @@ Aktivering af dette kan låse op for højere videokvalitet" Åbn links i browser - Åbning af links eksternt - Åbner links i appen + Åbner links i ekstern browser + Åbner links i browser i appen Fjern sporingsforespørgselsparameter @@ -1308,9 +1253,15 @@ Aktivering af dette kan låse op for højere videokvalitet" Kvalitetsændringer gælder kun for den aktuelle video Standard videokvalitet på Wi-Fi-netværk Standard videokvalitet på mobilnetværk + Husk kvalitetsændringer for Shorts + Kvalitetsændringer gælder for alle Shorts + Kvalitetsændringer gælder kun for den aktuelle Short + Standard Shorts-kvalitet på Wi-Fi-netværk + Standard Shorts-kvalitet på mobilnetværk mobil Wi-Fi Ændrede standard %1$s kvalitet til: %2$s + Ændrede Shorts %1$s kvalitet til: %2$s Vis hastigheds dialogknap @@ -1341,10 +1292,10 @@ Aktivering af dette kan låse op for højere videokvalitet" HDR-video er deaktiveret HDR-video er aktiveret - - Gendan gamle video kvalitet menu - Gammel videokvalitetsmenu vises - Gammel videokvalitetsmenu vises ikke + + Vis avanceret menu for videokvalitet + Avanceret menu for videokvalitet vises + Avanceret menu for videokvalitet vises ikke Aktivér dias for at søge diff --git a/patches/src/main/resources/addresources/values-de-rDE/strings.xml b/patches/src/main/resources/addresources/values-de-rDE/strings.xml index a1c679cfee..66116abc11 100644 --- a/patches/src/main/resources/addresources/values-de-rDE/strings.xml +++ b/patches/src/main/resources/addresources/values-de-rDE/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Um neue Sprachen zu übersetzen, besuchen Sie translate.revanced.app" App-Sprache - Arabisch - Aserbaidschanisch - Bulgarisch - Bengali - Katalanisch - Tschechisch - Dänisch - Deutsch - Griechisch - Englisch - Spanisch - Estnisch - Persisch - Finnisch - Französisch - Gujarati - Hindi - Kroatisch - Ungarisch - Indonesisch - Italienisch - Japanisch - Kasachisch - Koreanisch - Litauisch - Lettisch - Mazedonisch - Mongolisch - Marathi - Malaiisch - Burmesisch - Niederländisch - Odia - Pandschabi - Polnisch - Portugiesisch - Rumänisch - Russisch - Slovakisch - Slowenisch - Serbisch - Schwedisch - Suaheli - Tamilisch - Telugu - Thai - Türkisch - Ukrainisch - Urdu - Vietnamesisch - Chinesisch Import/Export ReVanced-Einstellungen importieren/exportieren @@ -399,7 +348,7 @@ Diese Funktion ist nur für ältere Geräte verfügbar" Selbst gesponserte Karten ausblenden Selbst gesponserte Karten sind ausgeblendet Selbstgesponserte Karten werden angezeigt - Banner ausblenden, um Produkte anzuzeigen + Banner \"Produkte ansehen\" ausblenden Banner ist ausgeblendet Banner wird angezeigt Endbild-Banner ausblenden @@ -656,7 +605,7 @@ Wenn diese Änderung nicht wirksam wird, versuchen Sie, in den Inkognito-Modus z Video-Qualität Menü-Fußzeile wird angezeigt - Vorherige & Nächste Video-Tasten ausblenden + Vorherige & Nächste Tasten ausblenden Buttons sind ausgeblendet Tasten werden angezeigt Cast-Button ausblenden @@ -1109,16 +1058,14 @@ Bereit zum Einreichen?" Telefon Tablets Automobil - "Änderungen umfassen: + "Zu den Änderungen gehören: Tablet-Layout -• Community-Beiträge werden ausgeblendet +• Community-Beiträge sind ausgeblendet -Auto-Layout -• Der Verlaufsmenü ist ausgeblendet -• Der Explore-Tab wird wiederhergestellt -• Shorts werden im regulären Player geöffnet -• Der Feed ist nach Themen und Kanälen organisiert" +Automotive-Layout +• Shorts werden im normalen Player geöffnet +• Feed ist nach Themen und Kanälen geordnet" Spoof-App-Version @@ -1188,7 +1135,7 @@ Wenn Sie die Funktion später deaktivieren, wird empfohlen, die App-Daten zu lö Minispieler - Ändere den Stil des in App minimierten Players + Das Aussehen des minimierten In-App-Players ändern Minispielertyp Deaktiviert Standard @@ -1241,8 +1188,6 @@ Wischen Sie, um zu erweitern oder zu schließen" Gradientenladebildschirm aktivieren Lade Bildschirm hat einen Farbverlauf Hintergrund Das Laden des Bildschirms wird einen soliden Hintergrund haben - - Eigene Suchleistenfarbe aktivieren Angepasste Suchleistenfarbe wird angezeigt Originalfarbe der Suchleiste wird angezeigt @@ -1334,8 +1279,8 @@ Durch Aktivieren dieser Option können höhere Videoqualitäten freigeschaltet w Links im Browser öffnen - Links extern öffnen - Öffne Links in der App + Links im externen Browser öffnen + Links im In-App-Browser öffnen Tracking-Abfrageparameter entfernen @@ -1362,9 +1307,15 @@ Durch Aktivieren dieser Option können höhere Videoqualitäten freigeschaltet w Qualitätsänderungen gelten nur für das aktuelle Video Standard-Videoqualität im Wi-Fi-Netzwerk Standard-Videoqualität im Mobilfunknetz + Änderungen der Shorts-Qualität speichern + Qualitätsänderungen gelten für alle Shorts + Qualitätsänderungen gelten nur für den aktuellen Short + Standardmäßige Shorts-Qualität im WLAN + Standard-Shorts-Qualität im Mobilfunknetz Mobile WLAN Standard %1$s Qualität geändert zu: %2$s + Shorts-Qualität von %1$s geändert in: %2$s Zeige Geschwindigkeitsdialog Taste @@ -1395,10 +1346,10 @@ Durch Aktivieren dieser Option können höhere Videoqualitäten freigeschaltet w HDR-Video ist deaktiviert HDR-Video ist aktiviert - - Altes Videoqualitätsmenü wiederherstellen - Altes Video-Qualitätsmenü wird angezeigt - Altes Video-Qualitätsmenü wird nicht angezeigt + + Erweitertes Videoqualitätsmenü anzeigen + Erweitertes Videoqualitätsmenü wird angezeigt + Erweitertes Videoqualitätsmenü wird nicht angezeigt Folie zum Suchen aktivieren diff --git a/patches/src/main/resources/addresources/values-el-rGR/strings.xml b/patches/src/main/resources/addresources/values-el-rGR/strings.xml index 9a727ee5bd..84f236008e 100644 --- a/patches/src/main/resources/addresources/values-el-rGR/strings.xml +++ b/patches/src/main/resources/addresources/values-el-rGR/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Για να μεταφράσετε σε νέες γλώσσες, επισκεφθείτε τη διεύθυνση translate.revanced.app" Γλώσσα εφαρμογής - Αραβικά - Αζερμπαϊτζάν - Βουλγαρικά - Βεγγαλικά - Καταλανικά - Τσεχικά - Δανικά - Γερμανικά - Ελληνικά - Αγγλικά - Ισπανικά - Εσθονικά - Περσικά - Φινλανδικά - Γαλλικά - Γκουτζαρατικά - Χίντι - Κροατικά - Ουγγρικά - Ινδονησιακά - Ιταλικά - Ιαπωνικά - Καζακικά - Κορεάτικα - Λιθουανικά - Λετονικά - Σλαβομακεδονικά - Μογγολικά - Μαράτι - Μαλαισιανά - Βιρμανικά - Ολλανδικά - Οντία - Παντζάμπι - Πολωνικά - Πορτογαλικά - Ρουμανικά - Ρώσικα - Σλοβακικά - Σλοβενικά - Σέρβικα - Σουηδικά - Σουαχίλι - Ταμίλ - Τελούγκου - Ταϊλανδικά - Τουρκικά - Ουκρανικά - Ουρντού - Βιετναμέζικα - Κινέζικα Εισαγωγή / Εξαγωγή Εισαγωγή / Εξαγωγή ρυθμίσεων ReVanced @@ -406,7 +355,7 @@ Second \"item\" text" Κάρτες αυτοπροώθησης Κρυμμένες Εμφανίζονται - Διαφημίσεις προβολής προϊόντων + Ετικέτα «Προβολή προϊόντων» Κρυμμένες Εμφανίζονται Ετικέτα καταστήματος στην τελική οθόνη @@ -1117,16 +1066,14 @@ Second \"item\" text" Τηλέφωνο Ταμπλετ Αυτοκίνητο - "Οι αλλαγές στη διάταξη περιλαμβάνουν τα παρακάτω: + "Οι αλλαγές περιλαμβάνουν: -Διάταξη ταμπλετ -• Οι δημοσιεύσεις κοινότητας είναι κρυμμένες +Διάταξη tablet +• Οι δημοσιεύσεις κοινότητας δεν εμφανίζονται Διάταξη αυτοκινήτου -• Το μενού ιστορικού παρακολούθησης είναι κρυμμένο -• Η καρτέλα «Εξερεύνηση» επαναφέρεται • Τα Shorts ανοίγουν στην κανονική οθόνη αναπαραγωγής -• Η ροή οργανώνεται ανά θέματα και κανάλι" +• Η ροή οργανώνεται ανά θέματα και κανάλια" Τροποποίηση έκδοσης εφαρμογής @@ -1196,7 +1143,7 @@ Second \"item\" text" Ελαχιστοποιημένη οθόνη αναπαραγωγής - Αλλάξτε το στυλ της ελαχιστοποιημένης οθόνης αναπαραγωγής + Αλλαγή του στυλ της ελαχιστοποιημένης οθόνης αναπαραγωγής της εφαρμογής Τύπος ελαχιστοποιημένης οθόνης αναπαραγωγής Απενεργοποιημένη Προεπιλογή @@ -1249,8 +1196,6 @@ Second \"item\" text" Διαβάθμιση οθόνης φόρτωσης Η οθόνη φόρτωσης θα έχει σταδιακές αποχρώσεις φόντο Η οθόνη φόρτωσης θα έχει στατική απόχρωση φόντο - - Προσαρμοσμένο χρώμα γραμμής προόδου Η γραμμή προόδου εμφανίζεται με προσαρμοσμένο χρώμα Η γραμμή προόδου εμφανίζεται με το αρχικό χρώμα @@ -1340,8 +1285,8 @@ Second \"item\" text" Άνοιγμα συνδέσμων σε πρόγραμμα περιήγησης - Οι σύνδεσμοι ανοίγουν εξωτερικά - Οι σύνδεσμοι ανοίγουν εντός της εφαρμογής + Οι σύνδεσμοι ανοίγουν σε εξωτερικό πρόγραμμα περιήγησης + Οι σύνδεσμοι ανοίγουν στο εσωτερικό πρόγραμμα περιήγησης της εφαρμογής Καθαρισμός συνδέσμων κοινοποίησης @@ -1366,11 +1311,17 @@ Second \"item\" text" Απομνημόνευση αλλαγών ποιότητας βίντεο Οι αλλαγές ποιότητας ισχύουν για όλα τα βίντεο Οι αλλαγές ποιότητας ισχύουν μόνο για το τρέχον βίντεο - Προεπιλεγμένη ποιότητα βίντεο με Wi-Fi + Προεπιλεγμένη ποιότητα βίντεο σε δίκτυο Wi-Fi Προεπιλεγμένη ποιότητα βίντεο με δεδομένα κινητής τηλεφωνίας + Απομνημόνευση αλλαγών ποιότητας στα Shorts + Οι αλλαγές ποιότητας ισχύουν για όλα τα Shorts + Οι αλλαγές ποιότητας ισχύουν μόνο για το τρέχον Short + Προεπιλεγμένη ποιότητα Shorts σε δίκτυο Wi-Fi + Προεπιλεγμένη ποιότητα Shorts σε δίκτυο κινητής τηλεφωνίας δεδομένων Wi-Fi Η προεπιλεγμένη ποιότητα %1$s άλλαξε σε: %2$s + Η ποιότητα Shorts με %1$s άλλαξε σε: %2$s Εμφάνιση κουμπιού αλλαγής ταχύτητας @@ -1401,10 +1352,10 @@ Second \"item\" text" Τα βίντεο HDR είναι απενεργοποιημένα Τα βίντεο HDR είναι ενεργοποιημένα - - Επαναφορά παλιού μενού ποιότητας βίντεο - Το μενού ποιότητας βίντεο εμφανίζεται με το παλιό στυλ - Το μενού ποιότητας βίντεο εμφανίζεται με το νέο στυλ + + Εμφάνιση προχωρημένου μενού ποιότητας βίντεο + Εμφανίζεται το προχωρημένο μενού ποιότητας βίντεο + Δεν εμφανίζεται το προχωρημένο μενού ποιότητας βίντεο Χειρονομία συρσίματος για αναζήτηση diff --git a/patches/src/main/resources/addresources/values-es-rES/strings.xml b/patches/src/main/resources/addresources/values-es-rES/strings.xml index 7d580a4f3c..4ffb549554 100644 --- a/patches/src/main/resources/addresources/values-es-rES/strings.xml +++ b/patches/src/main/resources/addresources/values-es-rES/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Para traducir nuevos idiomas, visita translate.revanced.app" Idioma de la aplicación - Árabe - Azerbaiyano - Búlgaro - Bengalí - Catalán - Checo - Danés - Alemán - Griego - Inglés - Español - Estonio - Persa - Finlandés - Francés - Gujarati - Hindi - Croata - Húngaro - Indonesio - Italiano - Japonés - Kazajo - Coreano - Lituano - Letón - Macedonio - Mongol - Maratí - Malayo - Birmano - Holandés - Oriya - Panyabí - Polaco - Portugués - Rumano - Ruso - Eslovaco - Esloveno - Serbio - Sueco - Suajili - Tamil - Telugu - Tailandés - Turco - Ucraniano - Urdu - Vietnamita - Chino Importar / Exportar Importar / Exportar ajustes de ReVanced @@ -394,7 +343,7 @@ Esta función solo está disponible para dispositivos antiguos" Ocultar tarjetas autopatrocinadas Las tarjetas autopatrocinadas están ocultas Se muestran las tarjetas autopatrocinadas - Ocultar banner para ver los productos + Ocultar el banner \"Ver productos\" Banner oculto Banner mostrado Ocultar banner de la tienda en la pantalla final @@ -653,7 +602,7 @@ Si cambiar este ajuste no tiene efecto, intenta cambiar al modo incógnito."El pie del menú de calidad de vídeo se muestra - Ocultar botones de vídeo anteriores & siguiente + Ocultar botones Anterior & Siguiente Los botones están ocultos Los botones se muestran Ocultar el botón Transmitir @@ -1103,10 +1052,8 @@ Diseño para tablets • Las publicaciones de la comunidad están ocultas Diseño para automóviles -• El menú del historial de reproducciones está oculto -• Se restauró la pestaña de Explorar -• Se abren los Shorts en el reproductor normal -• El feed está organizado por temas y canal" +• Los Shorts se abren en el reproductor normal +• El feed está organizado por temas y canales" Versión de la aplicación Spoof @@ -1176,7 +1123,7 @@ Si se desactiva posteriormente, se recomienda borrar los datos de la aplicación Minireproductor - Cambiar el estilo del reproductor minimizado de la aplicación + Cambiar el estilo del reproductor minimizado en la aplicación Tipo de minreproductor Desactivado Predeterminado @@ -1229,8 +1176,6 @@ Desliza para expandir o cerrar" Activar la pantalla de carga del degradado La pantalla de carga tendrá un fondo de degradado La pantalla de carga tendrá un fondo sólido - - Activar el color personalizado de la barra de búsqueda Se muestra el color personalizado de la barra de búsqueda Se muestra el color original de la barra de búsqueda @@ -1322,8 +1267,8 @@ Habilitar esto puede desbloquear calidades de vídeo más altas" Abrir enlaces en el navegador - Abriendo enlaces externamente - Abrir enlaces en la aplicación + Abrir enlaces en el navegador externo + Abrir enlaces en el navegador integrado en la aplicación Quitar parámetro de consulta de rastreo @@ -1350,9 +1295,15 @@ Habilitar esto puede desbloquear calidades de vídeo más altas" Los cambios de calidad sólo se aplican al vídeo actual Calidad de vídeo predeterminada en la red Wi-Fi Calidad de vídeo predeterminada en la red móvil + Recordar cambios en la calidad de Shorts + Los cambios de calidad se aplican a todos los Shorts + Los cambios de calidad solo se aplican al Short actual + Calidad predeterminada de Shorts en la red Wi-Fi + Calidad predeterminada de Shorts en la red móvil móvil wifi Cambió la calidad predeterminada %1$s a: %2$s + Calidad de Shorts %1$s cambiada a: %2$s Mostrar botón de diálogo de velocidad @@ -1383,10 +1334,10 @@ Habilitar esto puede desbloquear calidades de vídeo más altas" El vídeo HDR está desactivado El vídeo HDR está activado - - Restaurar menú de calidad de vídeo antiguo - Se muestra el antiguo menú de calidad de vídeo - El antiguo menú de calidad de vídeo no se muestra + + Mostrar menú de calidad de vídeo avanzado + Se muestra el menú de calidad de vídeo avanzado + No se muestra el menú de calidad de vídeo avanzado Habilitar diapositiva para buscar diff --git a/patches/src/main/resources/addresources/values-et-rEE/strings.xml b/patches/src/main/resources/addresources/values-et-rEE/strings.xml index 2dd2ba9cdc..f265b01639 100644 --- a/patches/src/main/resources/addresources/values-et-rEE/strings.xml +++ b/patches/src/main/resources/addresources/values-et-rEE/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Uute keelte tõlkimiseks külastage saiti translate.revanced.app" Rakenduse keel - Araabia - Aserbaidžaani - Bulgaaria - Bengali - Katalaani - Tšehhi - Taani - Saksa - Kreeka - Inglise - Hispaania - Eesti - Pärsia - Soome - Prantsuse - Gudžarati - Hindi - Horvaatia - Ungari - Indoneesia - Itaalia - Jaapani - Kasahhi - Korea - Leedu - Läti - Makedoonia - Mongoolia - Marathi - Malaisia - Birma - Hollandi - Odia - Pandžabi - Poola - Portugali - Rumeenia - Vene - Slovaki - Sloveeni - Serbia - Rootsi - Suahiili - Tamili - Telugu - Tai - Türgi - Ukraina - Urdu - Vietnami - Hiina Impordi / Ekspordi Impordi / Ekspordi ReVanced seadeteid @@ -404,7 +353,7 @@ See funktsioon on saadaval ainult vanemates seadmetes" Peida ise-sponsoritud kaardid Ise-sponsoritud kaardid on peidus Ise-sponsoritud kaardid on näidatud - Peida bänner näha tooteid + Peida bänner „Vaata tooteid“ Bänner on peidetud Bänner on nähtav Peida lõpuekraani poe bänner @@ -663,7 +612,7 @@ Kui selle sätte muutmine ei avalda mõju, proovige lülituda Inkognito režiimi Video kvaliteedi menüü jalg on nähtav - Peida eelmine & järgmine video nupp + Peida eelmine & järgmine nupp Nupud on peidetud Nupud on nähtavad Peida Saada kätte nupp @@ -1119,13 +1068,11 @@ Kas olete esitamiseks valmis?" "Muudatused hõlmavad: Tahvelarvuti paigutus -• Ühenduse postitused on peidetud +• Kogukonna postitused on peidetud -Automotiivi paigutus -• Vaatamisloendi menüü on peidetud -• Uudista vaheleht on taastatud +Autode paigutus • Shorts avanevad tavalises pleieris -• Sööt on korraldatud teemade ja kanalite kaupa" +• Voog on korraldatud teemade ja kanalite järgi" Võltsitud rakenduse versioon @@ -1195,7 +1142,7 @@ Kui see hiljem välja lülitatakse, on soovitatav rakenduse andmed kustutada, et Minimängija - Muuda rakenduses minimeeritud esitaja stiili + Muuda rakendusesisese minipleieri stiili Miniplayeri tüüp Väljas Vaikimisi @@ -1248,8 +1195,6 @@ Pühkige laiendamiseks või sulgemiseks" Lülita gradientega laadimiskuva sisse Laadimiskuval on gradientega taust Laadimiskuval on tahke taust - - Lülita kohandatud edastusriba värv sisse Kohandatud edastusriba värv on nähtav Originaal edastusriba värv on nähtav @@ -1341,8 +1286,8 @@ Selle lubamine võib avada kõrgema video kvaliteedi" Ava lingid brauseris - Lingid avatakse välistel - Lingid avatakse rakenduses + Linkide avamine välises brauseris + Linkide avamine rakendusesiseses brauseris Eemalda jälgimise päringuparameeter @@ -1369,9 +1314,15 @@ Selle lubamine võib avada kõrgema video kvaliteedi" Kvaliteedi muudatused kehtivad ainult praegusele videole Vaikimisi video kvaliteet Wi-Fi võrgus Vaikimisi video kvaliteet mobiilsidevõrgus + Jäta meelde Shorts\'i kvaliteedimuudatused + Kvaliteedimuudatused kehtivad kõigile videotele Shorts + Kvaliteedimuudatused kehtivad ainult praegusele videole Short + Vaikimisi [Shorts] kvaliteet WiFi võrgus + Vaikimisi [Shorts] kvaliteet mobiilivõrgus mobiil wifi Vaikimisi %1$s kvaliteet muudeti: %2$s + Muudetud Shorts %1$s kvaliteet: %2$s Kuva kiiruse dialoogi nupp @@ -1402,10 +1353,10 @@ Selle lubamine võib avada kõrgema video kvaliteedi" HDR video on keelatud HDR video on lubatud - - Taasta vana video kvaliteedi menüü - Vana video kvaliteedi menüü kuvatakse - Vana video kvaliteedi menüüd ei kuvata + + Kuva täiustatud video kvaliteedi menüü + Täiustatud video kvaliteedi menüü on kuvatud + Täiustatud video kvaliteedi menüü ei ole kuvatud Luba libistamine otsimiseks diff --git a/patches/src/main/resources/addresources/values-eu-rES/strings.xml b/patches/src/main/resources/addresources/values-eu-rES/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-eu-rES/strings.xml +++ b/patches/src/main/resources/addresources/values-eu-rES/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-fa-rIR/strings.xml b/patches/src/main/resources/addresources/values-fa-rIR/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-fa-rIR/strings.xml +++ b/patches/src/main/resources/addresources/values-fa-rIR/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-fi-rFI/strings.xml b/patches/src/main/resources/addresources/values-fi-rFI/strings.xml index 4939432f39..2fba534631 100644 --- a/patches/src/main/resources/addresources/values-fi-rFI/strings.xml +++ b/patches/src/main/resources/addresources/values-fi-rFI/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Voit auttaa uusien kielten kääntämisessä osoitteessa translate.revanced.app" Sovelluksen kieli - Arabia - Azeri - Bulgaria - Bengali - Katalaani - Tšekki - Tanska - Saksa - Kreikka - Englanti - Espanja - Viro - Persia - Suomi - Ranska - Gudžarati - Hindi - Kroaatti - Unkari - Indonesia - Italia - Japani - Kazakki - Korea - Liettua - Latvia - Makedonia - Mongoli - Marathi - Malaiji - Burma - Hollanti - Orija - Pandžabi - Puola - Portugali - Romania - Venäjä - Slovakki - Sloveeni - Serbia - Ruotsi - Swahili - Tamil - Telugu - Thai - Turkki - Ukraina - Urdu - Vietnam - Kiina Tuonti/vienti Tuo/vie ReVanced-asetukset @@ -402,7 +351,6 @@ Tämä ominaisuus on käytettävissä vain vanhemmilla laitteilla" Piilota itse-sponsoroidut kortit Itse-sponsoroidut kortit ovat piilotettu Itse-sponsoroidut kortit näytetään - Piilota tuotebanneri Banneri on piilotettu Banneri näytetään Piilota loppunäytön kauppabanneri @@ -661,7 +609,6 @@ Jos tämän asetuksen muuttaminen ei tule voimaan, kokeile vaihtaa Incognito-til Videolaatuvalikon alatunniste näytetään - Piilota edellinen- ja seuraava video -painikkeet Painikkeet on piilotettu Painikkeet näytetään Piilota Cast-painike @@ -1114,16 +1061,6 @@ Oletko valmis lähettämään?" Puhelin Tabletti Ajoneuvo - "Muutokset sisältävät: - -Tabletti-asettelu -• Yhteisöpostaukset on piilotettu - -Ajoneuvo-asettelu -• Katseluhistoriavalikko on piilotettu -• Tutustu-välilehti on palautettu -• Shortsit avautuvat tavallisessa soittimessa -• Syöte on järjestetty aiheiden ja kanavien mukaan" Naamioi sovellusversio @@ -1193,7 +1130,6 @@ Jos tämä poistetaan myöhemmin käytöstä, on suositeltavaa tyhjentää sovel Minisoitin - Muuta sovelluksen sisäisen pienennetyn soittimen tyyliä Minisoittimen tyyppi Pois käytöstä Oletus @@ -1246,8 +1182,6 @@ Pyyhkäise laajentaaksesi tai sulkeaksesi" Ota liukuvärillinen latausruutu käyttöön Latausruudulla on liukuvärillinen tausta Latausruudulla on yksivärinen tausta - - Ota oma liukusäätimen väri käyttöön Oma liukusäätimen väri näytetään Alkuperäinen liukusäätimen väri näytetään @@ -1339,8 +1273,6 @@ Tämä voi avata korkealaatuisemmat videot" Avaa linkit selaimessa - Linkit avataan ulkoisesti - Linkit avataan sovelluksessa Poista seurantakyselyparametrit @@ -1400,10 +1332,7 @@ Tämä voi avata korkealaatuisemmat videot" HDR-video ei ole käytössä HDR-video on käytössä - - Palauta vanha videolaatuvalikko - Vanha videolaatuvalikko näytetään - Vanhaa videolaatuvalikkoa ei näytetä + Ota kelaus liu\'uttamalla käyttöön diff --git a/patches/src/main/resources/addresources/values-fil-rPH/strings.xml b/patches/src/main/resources/addresources/values-fil-rPH/strings.xml index 722d2876bb..c42a8de84c 100644 --- a/patches/src/main/resources/addresources/values-fil-rPH/strings.xml +++ b/patches/src/main/resources/addresources/values-fil-rPH/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Upang magsalin ng mga bagong wika, bisitahin ang translate.revanced.app" Wika ng app - Arabe - Azerbaijani - Bulgarian - Bengali - Katalan - Czech - Danish - German - Greek - English - Spanish - Estonian - Persian - Finnish - French - Gujarati - Hindi - Croatian - Hungarian - Indonesian - Italian - Japanese - Kazakh - Korean - Lithuanian - Latvian - Macedonian - Mongolian - Marathi - Malay - Burmese - Dutch - Odia - Punjabi - Polish - Portuguese - Romanian - Russian - Slovak - Slovene - Serbian - Swedish - Swahili - Tamil - Telugu - Thai - Turkish - Ukrainian - Urdu - Vietnamese - Chinese Mag-import / Mag-export I-import / I-export ang mga setting ng ReVanced @@ -404,7 +353,7 @@ Ang tampok na ito ay magagamit lamang para sa mga mas lumang device" Itago ang mga self sponsored card Nakatago ang mga self sponsored card Ipinapakita ang mga self sponsored card - Itago ang banner para tingnan ang mga produkto + Itago ang banner na \'Tingnan ang mga produkto\' Nakatago ang banner Ipinakita ang banner Itago ang banner ng tindahan ng end screen @@ -661,7 +610,7 @@ Tandaan: Ang pagpapagana nito ay nagtatago rin ng mga ad ng video" Ang footer ng menu ng kalidad ng video ay ipinapakita - Itago ang nakaraang & susunod na mga pindutan ng video + Itago ang Nakaraan at Susunod na mga pindutan Nakatago ang mga pindutan Ang mga pindutan ay ipinapakita Itago ang Cast button @@ -1031,7 +980,7 @@ Ang iyong user id ay parang isang password at hindi dapat ibahagi. Awtomatikong lumaktaw Awtomatikong lumaktaw nang isang beses Magpakita ng button na Laktawan - Ipakita sa seek bar + Ipakita sa seekbar Huwag paganahin Hindi maisumite ang segment: %s Pansamantalang hindi gumagana ang SponsorBlock @@ -1117,13 +1066,11 @@ Isumite na ba?" "Kasama sa mga pagbabago: Layout ng tablet -• Nakatago ang mga post ng komunidad +• Nakatago ang mga post sa Community -Layout ng Automotive -• Nakatago ang menu ng history ng panonood -• Ibinabalik ang tab ng pagtuklas -• Bubukas ang Shorts sa regular na manlalaro -• Inaayos ang feed ayon sa mga paksa at channel" +Layout ng automotive +• Nagbubukas ang Shorts sa regular na player +• Inorganisa ang feed ayon sa mga paksa at channel" Spoof na bersyon ng app @@ -1193,7 +1140,6 @@ Kung mamaya ay patayin, inirerekumenda na i-clear ang data ng app upang maiwasan Miniplayer - Baguhin ang istilo ng in app minimized na player Uri ng miniplayer Hindi Regular @@ -1246,8 +1192,6 @@ Mag-swipe upang palawakin o isara" Paganahin ang gradient loading screen Ang paglo-load ng screen ay magkakaroon ng gradient na background Ang paglo-load ng screen ay magkakaroon ng solidong background - - Paganahin ang custom na kulay ng seekbar Ipinapakita ang kulay ng custom na seekbar Ipinapakita ang orihinal na kulay ng seekbar @@ -1339,8 +1283,8 @@ Ang pagpapagana nito ay maaaring magbukas ng mas mataas na kalidad ng video" Buksan ang mga link sa browser - Pagbubukas ng mga link sa labas - Pagbubukas ng mga link sa app + Binubuksan ang mga link sa panlabas na browser + Binubuksan ang mga link sa in-app na browser Alisin ang parameter ng query sa pagsubaybay @@ -1367,9 +1311,15 @@ Ang pagpapagana nito ay maaaring magbukas ng mas mataas na kalidad ng video"Nalalapat lang ang mga pagbabago sa kalidad sa kasalukuyang video Default na kalidad ng video sa Wi-Fi network Default na kalidad ng video sa mobile network + Tandaan ang mga pagbabago sa kalidad ng Shorts + Nalalapat ang mga pagbabago sa kalidad sa lahat ng Shorts + Nalalapat lamang ang mga pagbabago sa kalidad sa kasalukuyang Short + Default na kalidad ng Shorts sa Wi-Fi network + Default na kalidad ng Shorts sa mobile network Mobile Wifi Binago ang default na kalidad ng %1$s sa: %2$s + Binago ang kalidad ng Shorts %1$s sa: %2$s Ipakita ang pindutan ng dialog ng bilis @@ -1400,10 +1350,10 @@ Ang pagpapagana nito ay maaaring magbukas ng mas mataas na kalidad ng video"Hindi pinagana ang HDR video Pinagana ang HDR video - - Ibalik ang lumang menu ng kalidad ng video - Ipinapakita ang lumang menu ng kalidad ng video - Hindi ipinapakita ang lumang menu ng kalidad ng video + + Ipakita ang advanced na menu ng kalidad ng video + Ipinapakita ang advanced na menu ng kalidad ng video + Hindi ipinapakita ang advanced na menu ng kalidad ng video Paganahin ang slide para maghanap diff --git a/patches/src/main/resources/addresources/values-fr-rFR/strings.xml b/patches/src/main/resources/addresources/values-fr-rFR/strings.xml index aebec582d1..bbafc2bdb7 100644 --- a/patches/src/main/resources/addresources/values-fr-rFR/strings.xml +++ b/patches/src/main/resources/addresources/values-fr-rFR/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Pour traduire dans de nouvelles langues, visitez translate.revanced.app" Langue de l\'application - Arabe - Azéri - Bulgare - Bengali - Catalan - Tchèque - Danois - Allemand - Grec - Anglais - Espagnol - Estonien - Persan - Finnois - Français - Gujarati - Hindi - Croate - Hongrois - Indonésien - Italien - Japonais - Kazakh - Coréen - Lituanien - Letton - Macédonien - Mongol - Marathi - Malais - Birman - Néerlandais - Odia - Pendjabi - Polonais - Portugais - Roumain - Russe - Slovaque - Slovène - Serbe - Suédois - Swahili - Tamoul - Télougou - Thaï - Turc - Ukrainien - Ourdou - Vietnamien - Chinois Importer/Exporter Importer/Exporter les paramètres ReVanced @@ -174,9 +123,9 @@ Vous ne serez pas informé des événements inattendus." Masquer la boîte de financement participatif La boîte de financement participatif est masquée La boîte de financement participatif est affichée - Masquer le bouton de microphone flottant - Le bouton du microphone est masqué - Le bouton du microphone est affiché + Masquer le bouton micro flottant + Le bouton micro est masqué + Le bouton micro est affiché Masquer le filigrane de la chaîne Le filigrane est masqué Le filigrane est affiché @@ -199,7 +148,7 @@ Vous ne serez pas informé des événements inattendus." L\'étagère est affichée sur la page de chaîne - Masquer le bouton \"M\'avertir\" + Masquer le bouton M\'avertir Le bouton est masqué Le bouton est affiché @@ -208,7 +157,7 @@ Vous ne serez pas informé des événements inattendus." Le libellé est affiché - Masquer le bouton \"Afficher plus\" + Masquer le bouton Afficher plus Le bouton est masqué Le bouton est affiché Masquer les réactions minutées @@ -417,7 +366,7 @@ Cette fonctionnalité est disponible uniquement pour les appareils anciens"Les liens de shopping dans la description des vidéos sont masqués Les liens de shopping dans la description des vidéos sont affichés - Masquer le bouton \"Visiter la boutique\" + Masquer le bouton Visiter la boutique Le bouton est masqué sur la page de chaîne Le bouton est affiché sur la page de chaîne Masquer les résultats Web @@ -663,7 +612,7 @@ Si la modification de ce paramètre ne prend pas effet, essayez de passer en mod Le pied de page du menu de qualité vidéo est affiché - Masquer les boutons de vidéo précédente et suivante + Masquer les boutons Précédent et Suivant Les boutons sont masqués Les boutons sont affichés Masquer le bouton Caster @@ -1110,20 +1059,18 @@ Prêt à soumettre ?" Les données sont fournies par l\'API SponsorBlock. Appuyez ici pour en savoir plus et pour voir les téléchargements pour les autres plateformes. - Facteur de forme de la mise en page + Format de mise en page Par défaut Téléphone Tablette Automotive - "Les modifications incluent : + "Les modifications comprennent : -Disposition pour tablette -• Les publications de la communauté sont masquées +Format Tablette +• Les posts destinés à la communauté sont masqués -Disposition Automotive -• Le menu de l'historique des vidéos regardées est masqué -• L'onglet Explorer est restauré -• Les Shorts s'ouvrent dans le lecteur classique +Format Automotive +• Les Shorts s'ouvrent dans le lecteur standard • Le flux est organisé par sujets et par chaînes" @@ -1181,8 +1128,8 @@ Si désactivé ultérieurement, il est recommandé d'effacer les données de l'a Ouvrir les Shorts avec Lecteur Shorts - Lecteur classique - Lecteur classique en plein écran + Lecteur standard + Lecteur standard en plein écran Lire automatiquement les Shorts @@ -1194,7 +1141,7 @@ Si désactivé ultérieurement, il est recommandé d'effacer les données de l'a Lecteur réduit - Changer le style du lecteur réduit dans l\'application + Modifier le style du lecteur réduit à l\'intérieur de l\'application Type de lecteur réduit Désactivé Par défaut @@ -1247,8 +1194,6 @@ Balayez pour développer ou fermer" Activer le dégradé sur l\'écran de chargement Le fond de l\'écran de chargement sera un dégradé de couleurs Le fond de l\'écran de chargement sera une couleur unie - - Personnaliser la couleur de la barre de progression La couleur de la barre de progression est personnalisée La couleur originale de la barre de progression est affichée @@ -1340,8 +1285,8 @@ Activer cette option peut déverrouiller des qualités vidéo supérieures" Ouvrir les liens dans le navigateur - Les liens sont ouverts dans une appli externe - Les liens sont ouverts dans l\'application + Les liens sont ouverts dans le navigateur externe + Les liens sont ouverts dans le navigateur intégré à l\'application Supprimer le paramètre de suivi @@ -1363,14 +1308,20 @@ Activer cette option peut déverrouiller des qualités vidéo supérieures" Automatique - Se souvenir des modifications de la qualité vidéo - Les modifications de qualité s\'appliquent à toutes les vidéos - Les modifications de qualité s\'appliquent uniquement à la vidéo en cours - Qualité vidéo par défaut sur un réseau Wi-Fi + Mémoriser les changements de qualité vidéo + Les changements de qualité s\'appliquent à toutes les vidéos + Les changements de qualité s\'appliquent uniquement à la vidéo actuelle + Qualité vidéo par défaut sur les réseaux Wi-Fi Qualité vidéo par défaut sur le réseau mobile + Mémoriser les changements de qualité des Shorts + Les changements de qualité s\'appliquent à tous les Shorts + Les changements de qualité s\'appliquent uniquement au Short actuel + Qualité par défaut des Shorts sur les réseaux Wi-Fi + Qualité par défaut des Shorts sur le réseau mobile mobile Wi-Fi Nouvelle qualité %1$s par défaut : %2$s + Nouvelle qualité %1$s des Shorts par défaut : %2$s Afficher un bouton Vitesse @@ -1390,9 +1341,9 @@ Activer cette option peut déverrouiller des qualités vidéo supérieures"Vitesse de lecture comprise entre 0 et 8 - Se souvenir des modifications de la vitesse de lecture - Les modifications de vitesse de lecture s\'appliquent à toutes les vidéos - Les modifications de vitesse de lecture ne s\'appliquent qu\'à la vidéo actuelle + Mémoriser les changements de vitesse de lecture + Les changements de vitesse de lecture s\'appliquent à toutes les vidéos + Les changements de vitesse de lecture ne s\'appliquent qu\'à la vidéo actuelle Vitesse de lecture par défaut Nouvelle vitesse par défaut : %s @@ -1401,10 +1352,10 @@ Activer cette option peut déverrouiller des qualités vidéo supérieures"Le HDR est désactivé dans les vidéos Le HDR est activé dans les vidéos - - Restaurer l\'ancien menu de qualité vidéo - L\'ancien menu de qualité vidéo est affiché - L\'ancien menu de qualité vidéo n\'est pas affiché + + Afficher le menu de qualité vidéo avancé + Le menu de qualité vidéo avancé est affiché + Le menu de qualité vidéo avancé n\'est pas affiché Activer Glisser pour rechercher diff --git a/patches/src/main/resources/addresources/values-ga-rIE/strings.xml b/patches/src/main/resources/addresources/values-ga-rIE/strings.xml index 35293e432b..dd506a735e 100644 --- a/patches/src/main/resources/addresources/values-ga-rIE/strings.xml +++ b/patches/src/main/resources/addresources/values-ga-rIE/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Chun teangacha nua a aistriú, tabhair cuairt ar translate.revanced.app" Teanga aip - Araibis - Asarbaiseáinis - Bulgáiris - Beangáilis - Catalóinis - Seicis - Danmhairgis - Gearmáinis - Gréigis - Béarla - Spáinnis - Eastóinis - Peirsis - Fionlainnis - Fraincis - Gúisearáitis - Hiondúis - Cróitis - Ungáiris - Indonéisis - Iodáilis - Seapáinis - Casaicis - Cóiréis - Liotuáinis - Laitvis - Macadóinis - Mongóilis - Maráitis - Malaeis - Burmais - Ollainnis - Odais - Puinseáibis - Polainnis - Portaingéilis - Rómáinis - Rúisis - Slóvaicis - Slóivéinis - Seirbis - Sualainnis - Svahaílis - Tamailis - Teileagúis - Téalainnis - Tuircis - Úcráinis - Urdúis - Vientaimis - Sínis Iompórtáil / Easpórtáil Iompórtáil / Easpórtáil socruithe ReVanced @@ -203,7 +152,7 @@ Ní bheidh a fhios agat faoi aon imeachtaí neamhghnácha." Tá an cnaipe i bhfolach Taispeántar an cnaipe - Folaigh lipéad \'Ar fhéach daoine eile orthu chomh maith\' + Folaigh an lipéad \'D\'amharc daoine eile freisin\' Tá an lipéad i bhfolach Taispeántar an lipéad Athlódáil físeán chun vótáil ag baint úsáide as Return YouTube Dislike + I bhfolach ag úinéir Taispeántar rudaí nach dtaitníonn leo Ní thaispeántar nach dtaitníonn leat Taispeáin neamhthaitníonn ar Shorts @@ -857,6 +817,9 @@ Srianadh: Bíodh easaontais gan teacht ar taispeáint sa mhodh incognito"Cnaipe Cosúil dlúth Cosúil le cnaipe stíleáilte don leithead íosta Cosúil le cnaipe stíleáilte don chuma is fearr + Taispeáin na rudaí is maith leis + Taispeántar cosúlachtaí measta + Tá a leithéidí measta i bhfolach Taispeáin tósta mura bhfuil API ar fáil Taispeántar tósta mura bhfuil Return YouTube Dislike ar fáil Ní thaispeántar tóst mura bhfuil Return YouTube Dislike ar fáil @@ -908,6 +871,7 @@ Oibríonn an ghné seo is fearr le caighdeán físeáin 720p nó níos ísle agu Taispeántar cnaipe vótála deigh Ní thaispeántar cnaipe vótála deireadh Úsáid leagan amach cearnógach + Tá cnaipí agus rialtáin cearnach Tá cnaipí agus rialuithe cruinn Úsáid cnaipe Dlúthscipeála @@ -1101,16 +1065,14 @@ Maithe chun cur isteach?" Fón Táibhléad Gluaisrothar - "Áirítear na hathruithe seo a leanas: + "Áirítear ar na hathruithe: -Leagan amach na táibléad -• Tá poist an phobail curtha i bhfolach +Leagan amach an táibléid +• Tá postálacha pobail i bhfolach -Leagan amach na ngluaisteán -• Tá roghchlár stair féachana curtha i bhfolach -• Tá an táb eolais arís ann -• Osclóidh Shorts sa seinnteoir gnáth -• Tá an foraois eagraithe de réir ábhar agus cainéal" +Leagan amach feithicleach +• Osclaítear Shorts sa ghnáthsheinnteoir +• Eagraítear an fotha de réir topaicí agus bealaí" Leagan aip spoof @@ -1180,7 +1142,7 @@ Má dhiúltaítear é níos déanaí, moltar sonraí an aip a ghlanadh chun buga Minipléir - Athraigh stíl an imreora íoslaghdaithe san aip + Athraigh stíl an imreora íoslaghdaithe in-aip Cineál Miniplayer Díchumasaithe Réamhshocraithe @@ -1233,8 +1195,6 @@ Swipe chun leathnú nó dúnadh" Cumasaigh scáileán luchtaithe Beidh cúlra grádáin ag an scáileán lódála Beidh cúlra láidir ag scáileán luchtaithe - - Cumasaigh dath barra cuardaigh saincheaptha Taispeántar dath barra cuardaigh saincheaptha Taispeántar dath barr cuardaigh bunaidh @@ -1326,8 +1286,8 @@ Is féidir le seo caighdeáin físeáin níos airde a dhíghlasáil" Oscail naisc sa bhrabhsála - Naisc a oscailt go seachtrach - Naisc a oscailt san aip + Ag oscailt naisc sa bhrabhsálaí seachtrach + Ag oscailt naisc sa bhrabhsálaí in-aip Bain paraiméadar ceist rianaithe @@ -1354,9 +1314,15 @@ Is féidir le seo caighdeáin físeáin níos airde a dhíghlasáil" Ní bhaineann athruithe cáilíochta ach leis an bhfíseán reatha Cáilíocht físe réamhshocraithe ar líonra Cáilíocht físe réamhshocraithe ar líonra + Cuimhnigh ar athruithe cáilíochta Shorts + Baineann athruithe ar an gcáilíocht le gach Shorts + Ní bhaineann athruithe ar an gcáilíocht ach leis an Short reatha + Cáilíocht réamhshocraithe Shorts ar líonra Wi-Fi + Cáilíocht réamhshocraithe Shorts ar líonra soghluaiste soghluaiste Wi-Fi Athraigh cáilíocht réamhshocraithe %1$s go dtí: %2$s + Athraíodh cáilíocht Shorts %1$s go: %2$s Taispeáin cnaipe dialóg luais @@ -1387,10 +1353,10 @@ Is féidir le seo caighdeáin físeáin níos airde a dhíghlasáil"

Tá físeán HDR díchumasaithe

Tá físeán HDR arna chumhachtú

- - Athchóirigh sean-roghchlár cáilíochta físeáin - Taispeántar sean-roghchlár cáilíochta físeáin - Ní thaispeántar sean-roghchlár cáilíochta físeáin + + Taispeáin roghchlár ardcháilíochta físeáin + Taispeántar roghchlár ardcháilíochta físeáin + Ní thaispeántar roghchlár ardcháilíochta físeáin Cumasaigh sleamhnán a lorg diff --git a/patches/src/main/resources/addresources/values-gl-rES/strings.xml b/patches/src/main/resources/addresources/values-gl-rES/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-gl-rES/strings.xml +++ b/patches/src/main/resources/addresources/values-gl-rES/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-gu-rIN/strings.xml b/patches/src/main/resources/addresources/values-gu-rIN/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-gu-rIN/strings.xml +++ b/patches/src/main/resources/addresources/values-gu-rIN/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-hi-rIN/strings.xml b/patches/src/main/resources/addresources/values-hi-rIN/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-hi-rIN/strings.xml +++ b/patches/src/main/resources/addresources/values-hi-rIN/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-hr-rHR/strings.xml b/patches/src/main/resources/addresources/values-hr-rHR/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-hr-rHR/strings.xml +++ b/patches/src/main/resources/addresources/values-hr-rHR/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-hu-rHU/strings.xml b/patches/src/main/resources/addresources/values-hu-rHU/strings.xml index a6f04aa2e9..6438ea9c4c 100644 --- a/patches/src/main/resources/addresources/values-hu-rHU/strings.xml +++ b/patches/src/main/resources/addresources/values-hu-rHU/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Új nyelvek lefordításához látogasson el ide: translate.revanced.app" Alkalmazás nyelve - Arab - Azeri - Bolgár - Bengáli - Katalán - Cseh - Dán - Német - Görög - Angol - Spanyol - Észt - Perzsa - Finn - Francia - Gudzsaráti - Hindi - Horvát - Magyar - Indonéz - Olasz - Japán - Kazah - Koreai - Litván - Lett - Macedón - Mongol - Maráthi - Maláj - Burmai - Holland - Odia - Pandzsábi - Lengyel - Portugál - Román - Orosz - Szlovák - Szlovén - Szerb - Svéd - Szuahéli - Tamil - Telugu - Thai - Török - Ukrán - Urdu - Vietnami - Kínai Importálás / exportálás ReVanced beállítások importálása / exportálása @@ -404,7 +353,7 @@ Ez a funkció csak régebbi eszközökön érhető el" Önpromóciós kártyák elrejtése Az önpromóciós kártyák rejtve vannak Az önpromóciós kártyák megjelennek - Szalagkép elrejtése a termékek megtekintéséhez + \"View products\" szalagcím elrejtése A szalagkép rejtett A szalagkép megjelenik A befejező képernyőn lévő üzletbanner elrejtése @@ -663,7 +612,7 @@ Ha a beállítás módosítása nem lép életbe, próbáljon meg Inkognitó mó Megjelenik a videóminőség menü lábléce - Az előző és következő videó gombok elrejtése + Az Előző és a Következő gombok elrejtése A gombok elrejtve A gombok megjelennek Küldés gomb elrejtése @@ -1115,16 +1064,14 @@ Készen állsz a beküldésre?" Telefon Táblagép Autóipari - "Módosítások: + "A változások a következők: Tablet elrendezés -• A közösségi bejegyzések el vannak rejtve +• A közösségi bejegyzések rejtve vannak Autóipari elrendezés -• Az előzmények menü el van rejtve -• A Felfedezés fül visszaáll -• A Shorts a szokásos lejátszóban nyílik meg -• A feed témák és csatornák szerint van rendezve" +• A \"Shorts\" a szokásos lejátszóban nyílik meg +• A hírcsatorna témák és csatornák szerint van rendezve" Alkalmazásverzió hamisítása @@ -1194,7 +1141,7 @@ Ha később kikapcsolja, akkor ajánlott az alkalmazás adatait törölni, hogy Minilejátszó - Módosítsa az alkalmazáson belüli kisméretű lejátszó stílusát + Az alkalmazáson belüli minimalizált lejátszó stílusának módosítása Minilejátszó típus Kikapcsolva Alapértelmezett @@ -1247,8 +1194,6 @@ Húzza el a képernyőt a kibontáshoz vagy bezáráshoz" Színátmenetes betöltési képernyő engedélyezése A betöltési képernyő színátmenetes hatterű lesz A betöltési képernyő egyszínű hátterű lesz - - Egyéni keresősáv szín engedélyezése Az egyéni keresősáv szín megjelenik Az egyéni keresősáv szín nem jelenik meg @@ -1340,8 +1285,8 @@ Ez a beállítás lehetővé teszi a magasabb videóminőségek feloldását" Hivatkozások megnyitása a böngészőben - Hivatkozások külső megnyitása - Hivatkozások megnyitása az alkalmazásban + Hivatkozások megnyitása külső böngészőben + Hivatkozások megnyitása az alkalmazáson belüli böngészőben Nyomkövetési lekérdezési paraméter eltávolítása @@ -1368,9 +1313,15 @@ Ez a beállítás lehetővé teszi a magasabb videóminőségek feloldását"Felbontás változtatások alkalmazása a jelenlegi videóra Alapértelmezett videó minőség Wi-Fi hálózaton Alapértelmezett videó minőség mobilhálózaton + A Shorts minőség módosításainak megjegyzése + A minőségi beállítások az összes Shorts videóra vonatkoznak + A minőségi beállítások csak a jelenlegi Short videóra vonatkoznak + Alapértelmezett Shorts minőség Wi-Fi hálózaton + Alapértelmezett Shorts minőség mobilhálózaton mobil wi-fi A(z) %1$s alapértelmezett felbontása erre módosult: %2$s + A Shorts %1$s minősége megváltozott: %2$s Sebesség párbeszédpanel megjelenítése @@ -1401,10 +1352,10 @@ Ez a beállítás lehetővé teszi a magasabb videóminőségek feloldását"Az HDR videó le van tiltva Az HDR videó engedélyezve van - - Régi videóminőség menü visszaállítása - A régi videóminőség menü jelenik meg - A régi videóminőség menü nem jelenik meg + + Speciális videóminőség menü megjelenítése + A speciális videóminőség menü látható + A speciális videóminőség menü nem látható Csúsztatás engedélyezése a kereséshez diff --git a/patches/src/main/resources/addresources/values-hy-rAM/strings.xml b/patches/src/main/resources/addresources/values-hy-rAM/strings.xml index f2db3f74b2..26ad9e8189 100644 --- a/patches/src/main/resources/addresources/values-hy-rAM/strings.xml +++ b/patches/src/main/resources/addresources/values-hy-rAM/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Նոր լեզուներ թարգմանելու համար այցելեք translate.revanced.app" Հավելվածի լեզու - Արաբերեն - Ադրբեջաներեն - Բուլղարերեն - Բենգալերեն - Կատալաներեն - Չեխերեն - Դանիերեն - Գերմաներեն - Հունարեն - Անգլերեն - Իսպաներեն - Էստոներեն - Պարսկերեն - Ֆիններեն - Ֆրանսերեն - Գուջարաթի - Հինդի - Խորվաթերեն - Հունգարերեն - Ինդոնեզերեն - Իտալերեն - Ճապոներեն - Ղազախերեն - Կորեերեն - Լիտվերեն - Լատվիերեն - Մակեդոներեն - Մոնղոլերեն - Մարաթի - Մալայերեն - Բիրմաներեն - Նիդերլանդերեն - Օդիա - Փանջաբի - Լեհերեն - Պորտուգալերեն - Ռումիներեն - Ռուսերեն - Սլովակերեն - Սլովեներեն - Սերբերեն - Շվեդերեն - Սվահիլի - Թամիլերեն - Թելուգու - Թաիլանդերեն - Թուրքերեն - Ուկրաիներեն - Ուրդու - Վիետնամերեն - Չինարեն Ներմուծում/Արտահանում Import / Export ReVanced կարգավորումներ @@ -404,7 +353,6 @@ MicroG-ի համար մարտկոցի օպտիմալացումը անջատել Թաքցնել ինքնահովանավորված քարտերը Ինքնահովանավորված քարտերը թաքցված են Ինքնահովանավորված քարտերը երևում են - Թաքցնել ապրանքների դիտման բաները Բաները թաքցված են Բաները երևում են Թաքցնել վերջնական էկրանի խանութի բաները @@ -663,7 +611,7 @@ MicroG-ի համար մարտկոցի օպտիմալացումը անջատել Տեսանյութի որակի մենյուի ստորագրությունը երևում է - Թաքցնել \"Նախորդ\" և \"Հաջորդ\" տեսանյութի կոճակները + Թաքցնել \"Նախորդ\" և \"Հաջորդ\" կոճակները Կոճակները թաքցված են Կոճակները երևում են Թաքցնել Cast կոճակը @@ -1116,16 +1064,14 @@ Seekbar thumbnails-ները կօգտագործեն նույն որակը, ինչ Հեռախոս Պլանշետ Ավտոմոբիլային - "Փոփոխությունները ներառում են. + "Փոփոխությունները ներառում են. -Պլանշետի ինտերֆեյս -• Թաքցված են համայնքի հրապարակումները +Պլանշետի դասավորություն +• Համայնքային գրառումները թաքնված են -Ավտոմոբիլային ինտերֆեյս -• Թաքցված է դիտումների պատմության ընտրանին -• Վերականգնված է ուսումնասիրել էջը -• Հոլովակները բացվում են ստանդարտ նվագարկչում -• Նորությունները կազմակերպված են ըստ թեմաների և ալիքների" +Ավտոմեքենայի դասավորություն +• Shorts-ը բացվում է սովորական նվագարկչում +• Ֆիդը կազմակերպվում է ըստ թեմաների և ալիքների" Կեղծել հավելվածի տարբերակը @@ -1195,7 +1141,6 @@ Seekbar thumbnails-ները կօգտագործեն նույն որակը, ինչ Մինի նվագարկիչ - Փոխել կիրառության մեջ փոքրացված պլեյերի ոճը Miniplayer-ի տեսակ Անջատված է Ըստ լռելյայնի @@ -1248,8 +1193,6 @@ Mini-player-ը կարող է գրավվել էկրանից դուրս՝ դեպի Աктиվացնել գրադիենտի բեռնման էկրանը Բեռնման էկրանը կունենա գրադիենտի ֆոն Բեռնման էկրանը կունենա մեկ գույնի ֆոն - - Աктиվացնել հարմարեցված seekbar-ի գույնը Հարմարեցված seekbar-ի գույնը ցուցադրվում է Սկզբնական seekbar-ի գույնը ցուցադրվում է @@ -1341,8 +1284,8 @@ Mini-player-ը կարող է գրավվել էկրանից դուրս՝ դեպի Բրաուզերում հղումներ բացել - Հղումները բացվում են արտաքին - Հղումները բացվում են ծրագրում + Բացել հղումները արտաքին բրաուզերում + Բացել հղումները ներծրագրային բրաուզերում Հետևողականության հարցումի պարամետրը հեռացնել @@ -1369,9 +1312,15 @@ Mini-player-ը կարող է գրավվել էկրանից դուրս՝ դեպի Որակի փոփոխությունները կիրառվում են միայն ներկայիս տեսանյութի համար Wi-Fi ցանցի դեֆոլտ տեսանյութի որակը Մೊբայլ ցանցի դեֆոլտ տեսանյութի որակը + Հիշել Shorts-ի որակի փոփոխությունները + Որակի փոփոխություններն ազդում են բոլոր Shorts-ի վրա + Որակի փոփոխություններն ազդում են միայն ընթացիկ Short-ի վրա + Shorts-ի լռելյայն որակը Wi-Fi ցանցում + Shorts-ի լռելյայն որակը բջջային ցանցում վարկանիշ ուայ-ֆայ Փոփոխվել է դեֆոլտ %1$s որակը: %2$s + Փոխվել է Shorts %1$s-ի որակը հետևյալի վրա. %2$s Ցուցադրել արագության դիալոգի պատուհանի կոճակը @@ -1402,10 +1351,10 @@ Mini-player-ը կարող է գրավվել էկրանից դուրս՝ դեպի HDR տեսանյութը անջատված է HDR տեսանյութը միացված է - - Վերականգնել տեսանյութի որակի հին մենյու - Տեսանյութի որակի հին մենյուը ցուցադրվում է - Տեսանյութի որակի հին մենյուը չի ցուցադրվում + + Ցուցադրել տեսանյութի որակի ընդլայնված մենյուն + Տեսանյութի որակի ընդլայնված մենյուն ցուցադրվում է + Տեսանյութի որակի ընդլայնված մենյուն չի ցուցադրվում Ակտիվացնել սահելը համար ընտրելու diff --git a/patches/src/main/resources/addresources/values-in-rID/strings.xml b/patches/src/main/resources/addresources/values-in-rID/strings.xml index b8e0880bd2..1b69d1822f 100644 --- a/patches/src/main/resources/addresources/values-in-rID/strings.xml +++ b/patches/src/main/resources/addresources/values-in-rID/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Untuk menerjemahkan bahasa baru kunjungi translate.revanced.app" Bahasa Aplikasi - Arab - Azerbaijan - Bulgaria - Benggala - Katalan - Ceko - Denmark - Jerman - Yunani - Inggris - Spanyol - Estonia - Persia - Finlandia - Prancis - Gujarat - Hindi - Kroasia - Hungaria - Indonesia - Italia - Jepang - Kazakh - Korea - Lituania - Latvia - Makedonia - Mongolia - Marathi - Melayu - Burma - Belanda - Oriya - Punjab - Polandia - Portugis - Rumania - Rusia - Slovakia - Slovenia - Serbia - Swedia - Swahili - Tamil - Telugu - Thai - Turki - Ukraina - Urdu - Vietnam - Tiongkok Impor / Ekspor Impor / Ekspor setelan ReVanced @@ -404,9 +353,9 @@ Fitur ini hanya tersedia untuk perangkat yang lebih lama" Sembunyikan kartu bersponsor pribadi Kartu bersponsor pribadi disembunyikan Kartu bersponsor pribadi ditampilkan - Sembunyikan banner untuk melihat produk - Banner disembunyikan - Banner ditampilkan + Sembunyikan spanduk \'Lihat produk\' + Spanduk disembunyikan + Spanduk ditampilkan Sembunyikan spanduk toko di layar akhir Spanduk toko disembunyikan Spanduk toko ditampilkan @@ -663,7 +612,7 @@ Jika mengubah setelan ini tidak berpengaruh, coba beralih ke mode Penyamaran."Footer menu kualitas video ditampilkan - Sembunyikan tombol video sebelumnya & berikutnya + Sembunyikan tombol Sebelumnya & Berikutnya Tombol disembunyikan Tombol ditampilkan Sembunyikan tombol Transmisi @@ -1117,14 +1066,12 @@ Siap mengirim?" Otomotif "Perubahan meliputi: -Tata letak Tablet -• Postingan Komunitas disembunyikan +Tata letak tablet +• Postingan komunitas disembunyikan -Tata letak Otomotif -• Menu riwayat tontonan disembunyikan -• Tab Jelajahi dipulihkan -• Shorts terbuka di pemutar reguler -• Umpan diatur menurut topik dan saluran" +Tata letak otomotif +• Shorts dibuka di pemutar biasa +• Umpan diatur berdasarkan topik dan channel" Palsukan versi app @@ -1194,7 +1141,7 @@ Jika kemudian dimatikan, disarankan untuk menghapus data aplikasi untuk mencegah Pemutar Mini - Mengubah gaya pemutar aplikasi saat diciuitkan + Ubah gaya pemutar mini dalam aplikasi Jenis pemutar mini Nonaktif Bawaan @@ -1247,8 +1194,6 @@ Usap untuk memperluas atau menutup" Aktifkan layar pemuatan gradien Layar pemuatan akan memiliki latar belakang gradien Layar pemuatan akan memiliki latar belakang yang solid - - Aktifkan warna seekbar khusus Warna seekbar khusus ditampilkan Warna seekbar asli ditampilkan @@ -1340,8 +1285,8 @@ Mengaktifkan ini dapat membuka kualitas video yang lebih tinggi" Buka tautan di peramban - Membuka tautan di eksternal - Membuka tautan di aplikasi + Membuka tautan di peramban eksternal + Membuka tautan di peramban dalam aplikasi Hapus parameter kueri pelacakan @@ -1368,9 +1313,15 @@ Mengaktifkan ini dapat membuka kualitas video yang lebih tinggi" Perubahan kualitas hanya diatur di video saat ini Kualitas video bawaan di jaringan Wi-Fi Kualitas video bawaan di jaringan selular + Ingat perubahan kualitas Shorts + Perubahan kualitas berlaku untuk semua Shorts + Perubahan kualitas hanya berlaku untuk Short saat ini + Kualitas Shorts bawaan di jaringan Wi-Fi + Kualitas Shorts bawaan di jaringan seluler seluler wifi Kualitas bawaan %1$s diubah ke: %2$s + Kualitas Shorts %1$s diubah menjadi: %2$s Tampilkan tombol dialog kecepatan @@ -1401,10 +1352,10 @@ Mengaktifkan ini dapat membuka kualitas video yang lebih tinggi" Video HDR dinonaktifkan Video HDR diaktifkan - - Pulihkan menu kualitas video lawas - Menu kualitas video lawas ditampilkan - Menu kualitas video lawas tidak ditampilkan + + Tampilkan menu kualitas video lanjutan + Menu kualitas video lanjutan ditampilkan + Menu kualitas video lanjutan tidak ditampilkan Aktifkan geser untuk mencari diff --git a/patches/src/main/resources/addresources/values-is-rIS/strings.xml b/patches/src/main/resources/addresources/values-is-rIS/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-is-rIS/strings.xml +++ b/patches/src/main/resources/addresources/values-is-rIS/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-it-rIT/strings.xml b/patches/src/main/resources/addresources/values-it-rIT/strings.xml index 2c7cc7806a..77a3329a49 100644 --- a/patches/src/main/resources/addresources/values-it-rIT/strings.xml +++ b/patches/src/main/resources/addresources/values-it-rIT/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Per tradurre nuove lingue visita translate.revanced.app" Lingua dell\'app - Arabo - Azero - Bulgaro - Bengalese - Catalano - Ceco - Danese - Tedesco - Greco - Inglese - Spagnolo - Estone - Persiano - Finlandese - Francese - Gujarati - Hindi - Croato - Ungherese - Indonesiano - Italiano - Giapponese - Kazako - Coreano - Lituano - Lettone - Macedone - Mongolo - Marathi - Malese - Birmano - Olandese - Odia - Punjabi - Polacco - Portoghese - Rumeno - Russo - Slovacco - Sloveno - Serbo - Svedese - Swahili - Tamil - Telugu - Tailandese - Turco - Ucraino - Urdu - Vietnamita - Cinese Importa / Esporta Importa / Esporta impostazioni ReVanced @@ -404,7 +353,7 @@ Questa funzione è disponibile solo per i dispositivi più vecchi" Nascondi le schede autopromozionali Le schede autopromozionali sono nascoste Le schede autopromozionali sono visibili - Nascondi banner per visualizzare i prodotti + Nascondi il banner \"Visualizza prodotti\" Il banner è nascosto Il banner è visibile Nascondi banner del negozio della schermata finale @@ -663,7 +612,7 @@ Se la modifica di questa impostazione non ha effetto, prova a passare alla modal Il piè di pagina del menu di qualità video è visibile - Nascondi i pulsanti video precedenti & successivi + Nascondi i pulsanti Precedente e Successivo I pulsanti sono nascosti I pulsanti sono visibili Nascondi il pulsante Trasmetti @@ -1117,13 +1066,11 @@ Pronto per l'invio?" Automotive "Le modifiche includono: -Layout tablet +Layout per tablet • I post della community sono nascosti -Layout automotive -• Il menu della cronologia è nascosto -• La scheda Esplora è ripristinata -• Gli Shorts si aprono nel lettore normale +Layout per auto +• Gli Shorts si aprono nel normale player • Il feed è organizzato per argomenti e canali" @@ -1194,7 +1141,7 @@ Se in seguito verrà disattivato, si consiglia di cancellare i dati dell'app per Miniplayer - Cambia lo stile del miniplayer nell\'app + Modifica lo stile del player minimizzato in-app Tipo di Miniplayer Disattivato Predefinito @@ -1247,8 +1194,6 @@ Scorrere per espandere o chiudere" Abilita la schermata di caricamento col gradiente La schermata di caricamento avrà uno sfondo col gradiente La schermata di caricamento avrà uno sfondo a tinta unita - - Abilita colore personalizzato della barra di avanzamento Il colore personalizzato della barra di avanzamento è visibile Il colore originale della barra di avanzamento è visibile @@ -1340,8 +1285,8 @@ Abilitare questa opzione può sbloccare qualità video più elevate" Apri link nel browser - Apertura dei link esternamente - Apertura dei link nell\'app + Apertura dei link nel browser esterno + Apertura dei link nel browser in-app Rimuovi il parametro di tracciamento della query @@ -1368,9 +1313,15 @@ Abilitare questa opzione può sbloccare qualità video più elevate" Le modifiche della qualità si applicano solo al video corrente Qualità video predefinita sulla rete Wi-Fi Qualità video predefinita sulla rete mobile + Ricorda le modifiche alla qualità di Shorts + Le modifiche della qualità si applicano a tutti gli Shorts + Le modifiche della qualità si applicano solo allo Short corrente + Qualità predefinita di Shorts sulla rete Wi-Fi + Qualità predefinita di Shorts sulla rete mobile cellulare wifi Modificato la qualità predefinita %1$s in: %2$s + Modificata la qualità Shorts %1$s in: %2$s Mostra il pulsante Velocità Video @@ -1401,10 +1352,10 @@ Abilitare questa opzione può sbloccare qualità video più elevate" I video in HDR sono disabilitati I video in HDR sono abilitati - - Ripristina il vecchio menu di qualità video - Il vecchio menu di qualità video è visibile - Il vecchio menu di qualità video non è visibile + + Mostra il menu avanzato della qualità video + Viene mostrato il menu avanzato della qualità video + Il menu avanzato della qualità video non viene mostrato Abilita scorri per avanzare diff --git a/patches/src/main/resources/addresources/values-iw-rIL/strings.xml b/patches/src/main/resources/addresources/values-iw-rIL/strings.xml index fca183aeae..33a662bd1c 100644 --- a/patches/src/main/resources/addresources/values-iw-rIL/strings.xml +++ b/patches/src/main/resources/addresources/values-iw-rIL/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" כדי לתרגם שפות חדשות בקר ב-translate.revanced.app" שפת היישום - ערבית - אזרבייג\'נית - בולגרית - בנגלית - קטלאנית - צ\'כית - דנית - גרמנית - יוונית - אנגלית - ספרדית - אסטונית - פַּרסִית - פינית - צרפתית - גוג\'ראטית - הינדי - קרואטית - הונגרית - אינדונזית - איטלקית - יפנית - קזחית - קוריאנית - ליטאית - לטבית - מקדונית - מונגולית - מראטהית - מלאית - בורמזית - הולנדית - אודיה - פנג\'אבי - פולנית - פורטוגזית - רומנית - רוסית - סלובקית - סלובנית - סרבית - שוודית - סוואהילי - טמילית - טלוגו - תאית - טורקית - אוקראינית - אורדו - וייטנאמית - סינית ייבוא / ייצוא ייבוא / ייצוא הגדרות ReVanced @@ -111,7 +60,7 @@ Second \"item\" text" - MicroG GmsCore אינו מותקן. התקן אותו. + היישום MicroG GmsCore אינו מותקן. התקן אותו. דרושה פעולה "ל-MicroG GmsCore אין הרשאה לרוץ ברקע. @@ -336,9 +285,9 @@ Second \"item\" text" לחצן תודה מוצג הסתר YouTube Doodles - Doodles של סרגל חיפוש מוסתרים - Doodles של סרגל חיפוש מוצגים - "YouTube Doodles מוצגים למשך כמה ימים בכל שנה. + שרבוטים (Doodles) של סרגל חיפוש מוסתרים + שרבוטים (Doodles) של סרגל חיפוש מוצגים + "שרבוטים (Doodles) של YouTube מוצגים למשך כמה ימים בכל שנה. אם Doodle מוצג כרגע באזור שלך והגדרת ההסתרה הזו מופעלת, אז גם סרגל הסינון שמתחת לסרגל החיפוש יוסתר." מסנן מותאם אישית @@ -373,7 +322,7 @@ Second \"item\" text" "תוצאות דף הבית/מינויים/חיפוש מסוננות כדי להסתיר תוכן שתואם ביטויי מילות מפתח מגבלות -• Shorts אינם ניתנים להסתרה לפי שם ערוץ +• סרטוני Shorts אינם ניתנים להסתרה לפי שם ערוץ • ייתכן שחלק מרכיבי ממשק המשתמש לא יוסתרו • חיפוש אחר מילת מפתח עשוי שלא להציג תוצאות" התאם מילים שלמות @@ -404,7 +353,6 @@ Second \"item\" text" הסתר כרטיסים בחסות עצמית כרטיסים בחסות עצמית מוסתרים כרטיסים בחסות עצמית מוצגים - הסתר כרזה להצגת מוצרים כרזה מוסתרת כרזה מוצגת הסתר כרזת חנות של מסך סיום @@ -663,7 +611,6 @@ Second \"item\" text" כותרת תחתונה של תפריט איכות סרטון מוצגת - הסתר לחצני הסרטון הקודם & הבא הלחצנים מוסתרים הלחצנים מוצגים הסתר לחצן העברה @@ -884,10 +831,10 @@ Second \"item\" text" זמן תגובת API, מקסימום זמן תגובת API, סרטון אחרון דיסלייקים אינם זמינים באופן זמני - מגבלת קצב של לקוח API בתוקף - API להבאת הצבעות, מספר קריאות + ממשק API להבאת הצבעות, מספר קריאות לא נעשו קריאות רשת נעשו %d קריאות רשת - API להבאת הצבעות, מספר פסקי זמן + ממשק API להבאת הצבעות, מספר פסקי זמן לא תם פסק הזמן של אף קריאת רשת תם פסק הזמן של %d קריאות רשת מגבלות קצב של לקוח API @@ -917,7 +864,7 @@ Second \"item\" text" הפעל את SponsorBlock - SponsorBlock היא מערכת מיקור המונים לדילוג על חלקים מעצבנים של סרטוני YouTube + המערכת SponsorBlock היא מערכת מיקור המונים לדילוג על חלקים מעצבנים של סרטוני YouTube מראה הצג לחצן הצבעה לחצן הצבעה של מקטע מוצג @@ -1036,7 +983,7 @@ Second \"item\" text" הצג בסרגל דילוג השבת לא ניתן לשלוח את המקטע: %s - SponsorBlock מושבת באופן זמני + המערכת SponsorBlock מושבתת באופן זמני לא ניתן לשלוח את המקטע (מצב: %1$d %2$s) לא ניתן לשלוח מקטע. מוגבל קצב (יותר מדי מאותו המשתמש או כתובת IP) לא יכול לשלוח את המקטע: %s @@ -1044,9 +991,9 @@ Second \"item\" text" כבר קיים" המקטע נשלח בהצלחה - SponsorBlock אינו זמין באופן זמני (תם פסק הזמן של ה-API) - SponsorBlock אינו זמין באופן זמני (מצב %d) - SponsorBlock אינו זמין באופן זמני + המערכת SponsorBlock אינה זמינה באופן זמני (תם פסק זמן ה-API) + המערכת SponsorBlock אינה זמינה באופן זמני (מצב %d) + המערכת SponsorBlock אינה זמינה באופן זמני לא ניתן להצביע עבור מקטע (תם פסק הזמן של ה-API) לא ניתן להצביע עבור מקטע (מצב: %1$d %2$s) לא ניתן להצביע עבור מקטע: %s @@ -1116,16 +1063,6 @@ Second \"item\" text" טלפון טאבלט רכב - "השינויים כוללים: - -פריסת טאבלט -• פוסטים קהילתיים מוסתרים - -פריסת רכב -• תפריט היסטוריית הצפייה מוסתר -• כרטיסיית 'מה חדש' משוחזרת -• Shorts נפתחים בנגן הרגיל -• פיד מאורגן לפי נושאים וערוץ" זייף גרסת יישום @@ -1187,15 +1124,14 @@ Second \"item\" text" הפעלה אוטומטית של Shorts - Shorts יפעילו אוטומטית - Shorts יחזרו על עצמם + סרטוני Shorts יפעילו אוטומטית + סרטוני Shorts יחזרו על עצמם הפעלה אוטומטית בעת הפעלה ברקע של Shorts הפעלה ברקע של Shorts תפעיל אוטומטית הפעלה ברקע של Shorts תחזור על עצמה מיני-נגן - שנה את הסגנון של הנגן הממוזער בתוך היישום סוג מיני-נגן מושבת ברירת מחדל @@ -1248,8 +1184,6 @@ Second \"item\" text" הפעל מסך טעינה עם מעבר צבע מסך הטעינה יהיה בעל רקע עם מעבר צבע מסך הטעינה יהיה בעל רקע מוצק - - הפעל צבע סרגל דילוג מותאם אישית צבע סרגל דילוג מותאם אישית מוצג צבע סרגל דילוג מקורי מוצג @@ -1276,10 +1210,10 @@ Second \"item\" text" נגן פלייליסטים, המלצות תוצאות חיפוש תמונות ממוזערות מקוריות - DeArrow & תמונות ממוזערות מקוריות - DeArrow & לכידות דוממות + תמונות ממוזערות מקוריות & DeArrow + לכידות דוממות & DeArrow לכידות דוממות - "DeArrow מספק תמונות ממוזערות של מיקור המונים עבור סרטוני YouTube. תמונות ממוזערות אלה הן לעתים קרובות רלוונטיות יותר מאלה שסופקו על ידי YouTube + "השירות DeArrow מספק תמונות ממוזערות של מיקור המונים עבור סרטוני YouTube. תמונות ממוזערות אלה הן לעתים קרובות רלוונטיות יותר מאלה שסופקו על ידי YouTube אם מופעל, כתובות URL של סרטונים יישלחו לשרת ה-API ושום נתונים אחרים לא יישלחו. אם לסרטון אין תמונות ממוזערות של DeArrow, אז מוצגות התמונות המקוריות או לכידות דוממות @@ -1299,8 +1233,8 @@ Second \"item\" text" אמצע הסרטון סוף הסרטון - DeArrow אינו זמין באופן זמני (קוד מצב: %s) - DeArrow אינו זמין באופן זמני + השירות DeArrow אינו זמין באופן זמני (קוד מצב: %s) + השירות DeArrow אינו זמין באופן זמני הצג הכרזות של ReVanced @@ -1341,8 +1275,6 @@ Second \"item\" text" פתח קישורים בדפדפן - פותח קישורים באופן חיצוני - פותח קישורים בתוך היישום הסר פרמטר מעקב של שאילתה @@ -1402,10 +1334,7 @@ Second \"item\" text" סרטון HDR מושבת סרטון HDR מופעל - - שחזר תפריט איכות סרטון ישן - תפריט איכות סרטון ישן מוצג - תפריט איכות סרטון ישן אינו מוצג + הפעל החלק כדי לדלג diff --git a/patches/src/main/resources/addresources/values-ja-rJP/strings.xml b/patches/src/main/resources/addresources/values-ja-rJP/strings.xml index 616548f05d..3f2a0f5519 100644 --- a/patches/src/main/resources/addresources/values-ja-rJP/strings.xml +++ b/patches/src/main/resources/addresources/values-ja-rJP/strings.xml @@ -25,12 +25,12 @@ Second \"item\" text" チェックに失敗しました 公式サイトを開く 無視する - <b><h5>このアプリは、あなたによってパッチが適用されていないようです。</h5><br>このアプリは正しく動作しない可能性があり、<b>有害または危険な可能性があります</b>。<br><br>これらのチェックは、このアプリがパッチ済みAPKであるか、または他のユーザーから取得されたことを示唆しています。<br><br><small>%1$s</small><br>このアプリを<b>アンインストールして、自分でパッチを適用する</b>ことを強くお勧めします。これにより、検証済みで安全なアプリを使用していることを確認できます。<p><br>無視した場合、この警告は2回のみ表示されます。 - 別のデバイス上でパッチを適用しました - ReVanced Managerによってインストールされていません - 10分以上前にパッチを適用しました - %s日前のパッチ済み - APKビルド日付が破損しています + <h5>このアプリは、あなたによってパッチが適用されていないようです。</h5><br>このアプリは正しく動作しない可能性があり、<b>有害または危険なものである可能性があります</b>。<br><br>以下の検査結果は、このアプリがパッチ済みAPKであるか、または他のユーザーから取得したものであることを示唆しています。<br><br><small>%1$s</small><br>検証済みで安全なアプリを確実に使用するために、<b>このアプリをアンインストールして、自分でパッチを適用する</b>ことを強くお勧めします。<p><br>無視した場合、この警告は2回のみ表示されます。 + 別のデバイス上でパッチが適用されている + ReVanced Manager によってインストールされていない + 10 分以上前にパッチが適用されている + %s 日前にパッチが適用されている + APK の作成日情報が破損している 設定 @@ -46,59 +46,8 @@ Second \"item\" text" ReVancedの言語 "一部の言語の翻訳が不足しているか、不完全である可能性があります。 -新しい言語を翻訳するには、translate.revanced.appにアクセスしてください" +新しい言語を翻訳するには、 translate.revanced.app にアクセスしてください" アプリの言語 - アラビア語 - アゼルバイジャン語 - ブルガリア語 - ベンガル語 - カタルーニャ語 - チェコ語 - デンマーク語 - ドイツ語 - ギリシャ語 - 英語 - スペイン語 - エストニア語 - ペルシャ語 - フィンランド語 - フランス語 - グジャラート語 - ヒンディー語 - クロアチア語 - ハンガリー語 - インドネシア語 - イタリア語 - 日本語 - カザフ語 - 韓国語 - リトアニア語 - ラトビア語 - マケドニア語 - モンゴル語 - マラーティー語 - マレー語 - ミャンマー語 - オランダ語 - オディア語 - パンジャブ語 - ポーランド語 - ポルトガル語 - ルーマニア語 - ロシア語 - スロバキア語 - スロベニア語 - セルビア語 - スウェーデン語 - スワヒリ語 - タミル語 - テルグ語 - タイ語 - トルコ語 - ウクライナ語 - ウルドゥー語 - ベトナム語 - 中国語 インポート / エクスポート ReVanced の設定をテキストでインポート / エクスポートします @@ -115,15 +64,15 @@ Second \"item\" text" 必ず実行してください "MicroG GmsCore はバックグラウンドで実行するための権限を持っていません。 -下記ウェブサイト「Don't kill my app」の携帯電話メーカー別のガイドに従い、MicroG GmsCore に対する端末の設定を変更してください。 +下記ウェブサイト「Don't kill my app」の携帯電話メーカー別のガイドに従い、MicroG GmsCore に対するデバイスの設定を変更してください。 この操作はアプリが動作するために必要です。" ウェブサイトを開く - "問題を防ぐためには、GmsCore の電池の最適化を無効にする必要があります。 + "問題を防ぐために、MicroG GmsCore に対する電池の最適化を必ず無効にしてください。 -GmsCore の電池の最適化を無効にしても、バッテリーの使用に悪影響を及ぼすことはありません。 +MicroG GmsCore に対する電池の最適化を無効にしても、バッテリーの使用に悪影響を及ぼすことはありません。 -[続行] をタップして [電池の最適化] を無効にしてください。" +続行ボタンをタップして電池の最適化の設定を変更してください。" 続行 @@ -327,7 +276,7 @@ GmsCore の電池の最適化を無効にしても、バッテリーの使用に 「ショートを作成」ボタンを非表示 「ショートを作成」ボタンは表示されません 「ショートを作成」ボタンは表示されます - 絵文字 / タイムスタンプ ボタンを非表示 + 絵文字ボタンとタイムスタンプ ボタンを非表示 絵文字ボタンとタイムスタンプ ボタンは表示されません 絵文字ボタンとタイムスタンプ ボタンは表示されます コメントのプレビューを非表示 @@ -385,8 +334,8 @@ GmsCore の電池の最適化を無効にしても、バッテリーの使用に キーワードを使用できません: %s キーワード %sを使用する引用符を追加 キーワードに矛盾する宣言があります: %s - キーワードが短すぎるため見積もりが必要です: %s - キーワードはすべての動画を非表示にします: %s + キーワードが短すぎるため二重引用符で囲む必要があります: %s + キーワードはすべての動画を除外します: %s 一般的な広告を非表示 @@ -406,7 +355,7 @@ GmsCore の電池の最適化を無効にしても、バッテリーの使用に 自己スポンサーカードを非表示 自己スポンサーカードは表示されません 自己スポンサーカードは表示されます - 動画上の「商品を表示」ボタンを非表示 + 「商品を表示」ボタンを非表示 動画上に「商品を表示」ボタンや商品ボタンは表示されません 動画上に「商品を表示」ボタンや商品ボタンが表示されます 終了画面のストア バナーを非表示 @@ -529,12 +478,12 @@ GmsCore の電池の最適化を無効にしても、バッテリーの使用に アクション ボタン プレーヤー画面下のボタンを編集します - 高評価 / チャンネル登録ボタンのエフェクトを無効にする + 高評価とチャンネル登録のエフェクトを無効にする 高評価ボタンとチャンネル登録ボタンのエフェクトは無効です 高評価ボタンとチャンネル登録ボタンのエフェクトは有効です - 高評価 / 低評価ボタンを非表示 - 高評価 / 低評価ボタンは表示されません - 高評価 / 低評価ボタンは表示されます + 高評価ボタンと低評価ボタンを非表示 + 高評価ボタンと低評価ボタンは表示されません + 高評価ボタンと低評価ボタンは表示されます 共有ボタンを非表示 共有ボタンは表示されません @@ -849,7 +798,7 @@ GmsCore の電池の最適化を無効にしても、バッテリーの使用に Return YouTube Dislike は一時的に利用できません (API タイムアウト) Return YouTube Dislikeは利用できません (ステータス %d) - 低評価は利用できません(クライアント API の制限) + Return YouTube Dislike は利用できません (クライアント API のレート制限) Return YouTube Dislikeは利用できません (%s) Return YouTube Dislike を使用するには動画を再読み込みしてください @@ -892,8 +841,8 @@ GmsCore の電池の最適化を無効にしても、バッテリーの使用に ネットワーク通話がタイムアウトされていません %d ネットワーク呼び出しがタイムアウトしました APIクライアントのレート制限 - クライアントレート制限は発生していません - クライアントレート制限が %d 回発生しました + クライアント レート制限は発生していません + クライアント レート制限が %d 回発生しました %d ミリ秒前 @@ -957,7 +906,7 @@ GmsCore の電池の最適化を無効にしても、バッテリーの使用に SponsorBlock が利用できない場合はトースト ポップアップが表示されます SponsorBlock が利用できない場合でもトースト ポップアップは表示されません スキップ数の追跡を有効にする - SponsorBlockリーダーボードは、どれだけの時間が節約されたかを知ることができます。セグメントがスキップされるたびにメッセージがリーダーボードに送信されます。 + SponsorBlock リーダーボードに、どれだけの時間が節約されたかを報告します。セグメントがスキップされるたびにメッセージがリーダーボードに送信されます スキップカウント追跡が有効になっていません 最小のセグメントの長さ 設定値 (単位: 秒) より短いセグメントはスキップされず、プレーヤーにも表示されません @@ -1038,7 +987,7 @@ GmsCore の電池の最適化を無効にしても、バッテリーの使用に 無効 セグメントを送信できません: %s SponsorBlockは一時的にダウンしています - セグメントを送信できませんでした(状態: %1$d %2$s) + セグメントを送信できませんでした (ステータス: %1$d %2$s) セグメントを送信できません。レート制限 (同じユーザーまたはIPからの送信が多すぎる) セグメントを送信できません: %s "セグメントを送信できません。 @@ -1046,10 +995,10 @@ GmsCore の電池の最適化を無効にしても、バッテリーの使用に セグメントが正常に送信されました SponsorBlock は一時的に利用できません (API タイムアウト) - SponsorBlockは一時的に利用できません( %dの状態) + SponsorBlockは一時的に利用できません (ステータス: %d) SponsorBlockは一時的に利用できません - セグメントを評価できません (API タイムアウト) - セグメントに投票できませんでした(状態: %1$d %2$s) + セグメントに投票できません (API タイムアウト) + セグメントに投票できませんでした(ステータス: %1$d %2$s) セグメントに投票できません: %s 高評価 低評価 @@ -1071,11 +1020,9 @@ GmsCore の電池の最適化を無効にしても、バッテリーの使用に から %2$s -に - (%3$s) -送信します。" +送信しますか?" 開始は終了前にする必要があります 最初にタイムバーの2箇所をマークしてください セグメントをプレビューし、スムーズにスキップするようにします @@ -1084,7 +1031,7 @@ GmsCore の電池の最適化を無効にしても、バッテリーの使用に 無効な時間の値です 統計 - 統計情報は一時的に利用できません(API がダウンしています) + 統計情報は一時的に利用できません (API がダウンしています) 読み込み中... SponsorBlock は無効です あなたのユーザー名: <b>%s</b> @@ -1119,16 +1066,14 @@ GmsCore の電池の最適化を無効にしても、バッテリーの使用に スマートフォン タブレット Automotive - "変更内容: + "変更点は以下のとおりです タブレット レイアウト -• コミュニティ投稿が表示されません +• コミュニティ投稿は表示されません Automotive レイアウト -• マイページに再生履歴が表示されません -• 探索タブが復元されます • ショート動画を通常のプレーヤーで開きます -• フィードはトピックとチャンネル別に整理されます" +• フィードはトピックとチャンネルで整理されています" アプリのバージョンを偽装する @@ -1251,8 +1196,6 @@ Automotive レイアウト グラデーション読み込み画面を有効にする 画面読み込み時にグラデーションの背景が表示されます 画面読み込み時に通常の背景が表示されます - - 編集したシークバーの色を使用する 編集したシークバーの色が表示されます デフォルトのシークバーの色が表示されます @@ -1300,7 +1243,7 @@ DeArrow の詳細については、ここをタップしてください"動画の中盤 動画の終盤 - DeArrow は一時的に利用できません(ステータスコード: %s) + DeArrow は一時的に利用できません (ステータス コード: %s) DeArrow は一時的に利用できません @@ -1313,7 +1256,7 @@ DeArrow の詳細については、ここをタップしてください" 警告 - 再生履歴は保存されていません。<br><br>これは、DNS 広告ブロッカーまたはネットワーク プロキシが原因である可能性があります。<br><br>この問題を解決するには、<b>s.youtube.com</b> をホワイトリストに追加するか、すべての DNS ブロッカーとプロキシをオフにしてください。 + 再生履歴が保存されていません。<br><br>これは、DNS 広告ブロッカーまたはネットワーク プロキシが原因である可能性があります。<br><br>この問題を解決するには、<b>s.youtube.com</b> をホワイトリストに追加するか、すべての DNS ブロッカーとプロキシをオフにしてください。 今後表示しない @@ -1343,8 +1286,8 @@ DeArrow の詳細については、ここをタップしてください" リンクをブラウザで開く - リンクをブラウザで開きます - リンクをアプリ内で開きます + 外部ブラウザでリンクを開きます + アプリ内ブラウザでリンクを開きます 追跡パラメータをリンクから削除する @@ -1371,9 +1314,15 @@ DeArrow の詳細については、ここをタップしてください"画質の変更は現在の動画にのみ適用されます デフォルトの画質(Wi-Fi) デフォルトの画質(モバイル ネットワーク) + ショート動画の画質の変更を保存する + 画質の変更はすべてのショート動画に適用されます + 画質の変更は現在のショート動画にのみ適用されます + デフォルトのショート動画の画質(Wi-Fi) + デフォルトのショート動画の画質(モバイル ネットワーク) モバイル ネットワーク Wi-Fi - デフォルトの画質(%1$s)を %2$s に変更しました + デフォルトの画質 (%1$s) を %2$s に変更しました + ショート動画の画質 (%1$s) を %2$s に変更しました 再生速度設定ボタンを非表示 @@ -1404,10 +1353,10 @@ DeArrow の詳細については、ここをタップしてください"HDR 動画は無効です HDR 動画は有効です - - 画質設定メニューを旧バージョンに戻す - 旧バージョンの画質設定メニューが表示されます - 通常の画質設定メニューが表示されます + + 画質の詳細設定メニューを表示する + 画質設定メニューとして詳細設定メニューが表示されます + 通常の画質設定メニューが表示されます スライドしてシークする機能を有効にする @@ -1440,9 +1389,9 @@ AVC の最大解像度は 1080p であり、Opus オーディオ コーデック • 「オリジナルの音声トラック (言語) を強制的に使用する」は利用できません" • AV1 コーデックは使用できません • キッズ向け動画は、ログアウト時またはシークレット モード時には再生されない場合があります - 統計情報(詳細) - クライアントの種類は統計情報(詳細)に表示されます - クライアントは統計情報(詳細)に表示されません + 統計情報に表示する + 現在のクライアントが統計情報に表示されます + 現在のクライアントは統計情報に表示されません デフォルトの音声トラック(Android VR) @@ -1480,7 +1429,7 @@ AVC の最大解像度は 1080p であり、Opus オーディオ コーデック Twitch デバッグ モードを有効にする - Twitch デバッグ モードが有効になっています(非推奨) + Twitch デバッグ モードが有効になっています (非推奨) Twitchデバッグ モードは無効です diff --git a/patches/src/main/resources/addresources/values-ka-rGE/strings.xml b/patches/src/main/resources/addresources/values-ka-rGE/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-ka-rGE/strings.xml +++ b/patches/src/main/resources/addresources/values-ka-rGE/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-kk-rKZ/strings.xml b/patches/src/main/resources/addresources/values-kk-rKZ/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-kk-rKZ/strings.xml +++ b/patches/src/main/resources/addresources/values-kk-rKZ/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-km-rKH/strings.xml b/patches/src/main/resources/addresources/values-km-rKH/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-km-rKH/strings.xml +++ b/patches/src/main/resources/addresources/values-km-rKH/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-kn-rIN/strings.xml b/patches/src/main/resources/addresources/values-kn-rIN/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-kn-rIN/strings.xml +++ b/patches/src/main/resources/addresources/values-kn-rIN/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-ko-rKR/strings.xml b/patches/src/main/resources/addresources/values-ko-rKR/strings.xml index e2e971ee2d..2f42e68e53 100644 --- a/patches/src/main/resources/addresources/values-ko-rKR/strings.xml +++ b/patches/src/main/resources/addresources/values-ko-rKR/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" 새로운 언어를 번역하려면 translate.revanced.app를 방문하세요" 앱 언어 - 아랍어 - 아제르바이잔어 - 불가리아어 - 벵골어 - 카탈루냐어 - 체코어 - 덴마크어 - 독일어 - 그리스어 - 영어 - 스페인어 - 에스토니아어 - 페르시아어 - 핀란드어 - 프랑스어 - 구자라트어 - 힌디어 - 크로아티아어 - 헝가리어 - 인도네시아어 - 이탈리아어 - 일본어 - 카자흐어 - 한국어 - 리투아니아어 - 라트비아어 - 마케도니아어 - 몽골어 - 마라티어 - 말레이어 - 버마어 - 네덜란드어 - 오리야어 - 펀자브어 - 폴란드어 - 포르투갈어 - 루마니아어 - 러시아어 - 슬로바키아어 - 슬로베니아어 - 세르비아어 - 스웨덴어 - 스와힐리어 - 타밀어 - 텔루구어 - 태국어 - 터키어 - 우크라이나어 - 우르두어 - 베트남어 - 중국어 가져오기 / 내보내기 ReVanced 설정을 가져오거나 내보낼 수 있습니다 @@ -371,7 +320,7 @@ MicroG 앱 배터리 최적화를 비활성화(제한 없음)하더라도, 배 "필터링할 키워드 및 구문을 줄바꿈으로 구분하여 설정합니다 • 필터링 키워드는 채널 이름 또는 동영상 제목에 표시되는 모든 텍스트가 될 수 있습니다 -• 가운데 대문자가 있는 단어는 대소문자를 함께 입력해야 합니다 (예: iPhone, TikTok, LeBlanc)" +• 대문자가 있는 단어는 대소문자를 함께 입력해야 합니다 (예: iPhone, TikTok, LeBlanc)" 키워드 필터링 정보 "홈 / 구독 / 검색 결과가 필터링되어 키워드 구문과 일치하는 콘텐츠가 숨겨집니다 @@ -484,15 +433,11 @@ MicroG 앱 배터리 최적화를 비활성화(제한 없음)하더라도, 배 스와이프 제스처로 밝기 조절 활성화하기 - "전체 화면에서 스와이프 제스처로 밝기 조절을 활성화합니다 - -• 화면 왼쪽에서 위로/아래로 스와이프하여 밝기 조절할 수 있습니다" - 전체 화면에서 스와이프 제스처로 밝기 조절을 비활성화합니다 + "전체 화면 왼쪽에서 위로/아래로 스와이프하여 밝기 조절합니다" + 전체 화면 왼쪽에서 위로/아래로 스와이프하여 밝기 조절하지 않습니다 스와이프 제스처로 볼륨 조절 활성화하기 - "전체 화면에서 스와이프 제스처로 볼륨 조절을 활성화합니다 - -• 화면 오른쪽에서 위로/아래로 스와이프하여 볼륨 조절할 수 있습니다" - 전체 화면에서 스와이프 제스처로 볼륨 조절을 비활성화합니다 + "전체 화면 오른쪽에서 위로/아래로 스와이프하여 볼륨 조절합니다" + 전체 화면 오른쪽에서 위로/아래로 스와이프하여 볼륨 조절하지 않습니다 길게 눌러서 스와이프 제스처 사용하기 화면을 길게 눌러서 스와이프 제스처를 사용합니다 화면을 짧게 눌러서 스와이프 제스처를 사용합니다 @@ -503,8 +448,8 @@ MicroG 앱 배터리 최적화를 비활성화(제한 없음)하더라도, 배 전체 화면에서 나가거나 들어갈 때마다 화면 밝기 값을 저장 및 복원합니다 전체 화면에서 나가거나 들어갈 때마다 화면 밝기 값을 저장 및 복원하지 않습니다 스와이프 제스처로 자동 밝기 활성화하기 - 스와이프 제스처로 밝기가 0이 되면 자동 밝기를 활성화합니다 - 스와이프 제스처로 밝기가 0이 되더라도 자동 밝기를 활성화하지 않습니다 + 전체 화면에서 스와이프하여 밝기가 0이 되면 자동 밝기를 활성화합니다 + 전체 화면에서 스와이프하여 밝기가 0이 되더라도 자동 밝기를 활성화하지 않습니다 오버레이 타임아웃 오버레이가 표시되는 시간을 지정할 수 있습니다 (밀리초) 스와이프 오버레이 배경 불투명도 @@ -519,8 +464,8 @@ MicroG 앱 배터리 최적화를 비활성화(제한 없음)하더라도, 배 최소화된 오버레이 스타일을 활성화합니다 최소화된 오버레이 스타일을 비활성화합니다 스와이프 제스처로 동영상 전환 활성화하기 - 전체 화면에서 위로/아래로 스와이프하여 다음/이전 동영상으로 전환합니다 - 전체 화면에서 위로/아래로 스와이프하여 다음/이전 동영상으로 전환하지 않습니다 + 전체 화면 중앙에서 위로/아래로 스와이프하여 다음/이전 동영상으로 전환합니다 + 전체 화면 중앙에서 위로/아래로 스와이프하여 다음/이전 동영상으로 전환하지 않습니다 자동 자막 비활성화하기 @@ -667,7 +612,7 @@ MicroG 앱 배터리 최적화를 비활성화(제한 없음)하더라도, 배 화질 설정 메뉴에서 하단 설명이 표시됩니다 - 이전 & 다음 동영상 버튼 숨기기 + 이전 & 다음 버튼 숨기기 이전 & 다음 동영상 버튼이 숨겨집니다 이전 & 다음 동영상 버튼이 표시됩니다 크롬캐스트 버튼 숨기기 @@ -1126,8 +1071,6 @@ MicroG 앱 배터리 최적화를 비활성화(제한 없음)하더라도, 배 • 커뮤니티 게시물이 숨겨집니다 오토모티브 레이아웃 -• 시청 기록 메뉴가 숨겨집니다 -• 탐색 탭이 복원됩니다 • Shorts가 일반 플레이어에서 재생됩니다 • 피드가 주제와 채널별로 구성됩니다" @@ -1191,11 +1134,11 @@ MicroG 앱 배터리 최적화를 비활성화(제한 없음)하더라도, 배 Shorts 자동재생 - Shorts 동영상이 자동넘김됩니다 - Shorts 동영상이 반복재생됩니다 + Shorts가 자동넘김됩니다 + Shorts가 반복재생됩니다 Shorts 자동 백그라운드 재생 - Shorts 동영상 백그라운드 재생이 자동넘김됩니다 - Shorts 동영상 백그라운드 재생이 반복재생됩니다 + Shorts 백그라운드 재생이 자동넘김됩니다 + Shorts 백그라운드 재생이 반복재생됩니다 미니 플레이어 @@ -1254,8 +1197,6 @@ MicroG 앱 배터리 최적화를 비활성화(제한 없음)하더라도, 배 그라데이션 색상 로딩 화면 활성화하기 그라데이션 색상 로딩 화면을 활성화합니다 기본 로딩 화면을 활성화합니다 - - 사용자 정의 재생바 색상 활성화하기 사용자 정의 재생바 색상을 활성화합니다 기본 재생바 색상을 활성화합니다 @@ -1371,13 +1312,19 @@ DeArrow에 대해 자세히 알아보려면 여기를 누르세요" 자동 동영상 화질 저장 활성화하기 - 동영상 화질 값을 변경할 때마다 저장합니다 - 동영상 화질 값을 변경할 때마다 저장하지 않습니다 + 동영상 화질 값을 변경할 때마다 기본 동영상 화질으로 저장합니다 + 동영상 화질 값을 변경할 때마다 기본 동영상 화질으로 저장하지 않습니다 Wi-Fi 이용 시 기본 동영상 화질 모바일 네트워크 이용 시 기본 동영상 화질 + Shorts 화질 저장 활성화하기 + Shorts 화질 값을 변경할 때마다 기본 Shorts 화질으로 저장합니다 + Shorts 화질 값을 변경할 때마다 기본 Shorts 화질으로 저장하지 않습니다 + Wi-Fi 이용 시 기본 Shorts 화질 + 모바일 네트워크 이용 시 기본 Shorts 화질 모바일 네트워크 Wi-Fi - 기본 동영상 화질을 %1$s 에서 %2$s 로 변경합니다 + %1$s 이용 시 기본 동영상 화질을 %2$s 로 변경합니다 + %1$s 이용 시 기본 Shorts 화질을 %2$s 로 변경합니다 동영상 재생 속도 다이얼로그 버튼 표시하기 @@ -1398,20 +1345,20 @@ DeArrow에 대해 자세히 알아보려면 여기를 누르세요" 동영상 재생 속도 저장 활성화하기 - 동영상 재생 속도 값을 변경할 때마다 저장합니다 - 동영상 재생 속도 값을 변경할 때마다 저장하지 않습니다 + 동영상 재생 속도 값을 변경할 때마다 기본 동영상 재생 속도로 저장합니다 + 동영상 재생 속도 값을 변경할 때마다 기본 동영상 재생 속도로 저장하지 않습니다 기본 동영상 재생 속도 - 기본 동영상 재생 속도 값을 %s으로 변경합니다 + 기본 동영상 재생 속도 값을 %s 로 변경합니다 HDR 동영상 비활성화하기 HDR 동영상을 비활성화합니다 HDR 동영상을 활성화합니다 - - 이전 동영상 화질 설정 메뉴 활성화하기 - 이전 동영상 화질 설정 메뉴를 활성화합니다 - 이전 동영상 화질 설정 메뉴를 비활성화합니다 + + 고급 동영상 화질 설정 메뉴 표시하기 + 고급 동영상 화질 설정 메뉴를 표시합니다 + 고급 동영상 화질 설정 메뉴를 표시하지 않습니다 슬라이드하여 탐색 활성화하기 diff --git a/patches/src/main/resources/addresources/values-ky-rKG/strings.xml b/patches/src/main/resources/addresources/values-ky-rKG/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-ky-rKG/strings.xml +++ b/patches/src/main/resources/addresources/values-ky-rKG/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-lo-rLA/strings.xml b/patches/src/main/resources/addresources/values-lo-rLA/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-lo-rLA/strings.xml +++ b/patches/src/main/resources/addresources/values-lo-rLA/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-lt-rLT/strings.xml b/patches/src/main/resources/addresources/values-lt-rLT/strings.xml index 0bf2f806b9..9680bf8466 100644 --- a/patches/src/main/resources/addresources/values-lt-rLT/strings.xml +++ b/patches/src/main/resources/addresources/values-lt-rLT/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Norėdami išversti naujomis kalbomis apsilankykite translate.revanced.app" Programų kalba - Arabų - Azerbaidžaniečių - Bulgarų - Bengalų - Katalonų - Čekų - Danių - Vokiečių - Graikų - Anglų - Ispanų - Estų - Persų - Suomių - Prancūzų - Gudžaratų - Hindų - Kroatų - Vengrų - Indoneziečių - Italų - Japonų - Kazachų - Korėjiečių - Lietuvių - Latvių - Makedonų - Mongolų - Maratų - Malajiečių - Birmos - Olandų - Odijos - Pandžabų - Lenkų - Portugalų - Rumunų - Rusų - Slovakų - Slovėnų - Serbų - Švedų - Suahilių - Tamilų - Telugų - Tajų - Turkų - Ukrainiečių - Urdu - Vietnamiečių - Kinų Importuoti / Eksportuoti Importuoti / Eksportuoti ReVanced nustatymus @@ -404,7 +353,7 @@ Apribojimai Slėpti savarankiškus rėmėjų kortelės Savarankiški rėmėjų kortelės yra paslėpti Savarankiški rėmėjų kortelės yra rodomi - Slėpti banerį, kad būtų galima peržiūrėti produktus + Slėpti „Peržiūrėti produktus“ reklamjuostę Baneris yra paslėptas Baneris yra rodomas PaslĖpti pabaigos ekrano parduotuvÄ—s reklaminį juostelÄ™ @@ -663,7 +612,7 @@ Jei pakeitus šį nustatymą neįsigalioja, pabandykite perjungti į inkognito r Vaizdo kokybės meniu apatinė juosta yra rodoma - Slėpti ankstesnius & kitus vaizdo įrašų mygtukus + Slėpti ankstesnius ir kitus mygtukus Mygtukai yra paslėpti Mygtukai yra rodomi Paslėpti mygtuką \"Transliuoti\" @@ -1117,16 +1066,14 @@ Ar paruošta pateikti?" Telefonas Planšetė Automobilių - "Pakeitimai apima: + "Pakeitimai: -Planšetinio kompiuterio išdėstymas -• Bendruomenės įrašai paslėpti +Planšetės išdėstymas +• Bendruomenės įrašai yra paslėpti -Automobilių išdėstymas -• Paslėptas žiūrėjimo istorijos meniu -• Atkurtas skirtukas \"Naršyti\" -• Trumpieji filmai atidaromi įprastame grotuve -• Kanalas organizuotas pagal temas ir kanalą" +Automobilinis išdėstymas +• „Shorts“ atidaromi įprastame grotuve +• Sklaida suskirstyta pagal temas ir kanalus" Programėlės versijos apsimetinėjimas @@ -1196,7 +1143,7 @@ Jei vėliau išjungta, rekomenduojama išvalyti programos duomenis, kad būtų i Mažas grotuvas - Pakeisti programėlės sumažinto grotuvo stilių + Pakeisti programėlėje sumažinto grotuvo stilių Minigrotuvo tipas Išjungtas Numatytasis @@ -1249,8 +1196,6 @@ Braukite, kad išplėstumėte arba uždarytumėte" Įgalinti gradientinį įkėlimo ekraną Įkėlimo ekranas turės gradientinį foną Įkėlimo ekranas turės tvirtą foną - - Įgalinti pritaikytą slankiklio spalvą Rodoma pritaikyta slankiklio spalva Rodoma originali slankiklio spalva @@ -1342,8 +1287,8 @@ Gali būti atrakinta aukštesnės vaizdo įrašų kokybės, bet galite patirti v Atidaryti nuorodas naršyklėje - Atidarant nuorodas iš išorės - Atidarant nuorodas programoje + Nuorodos atidaromos išorinėje naršyklėje + Nuorodos atidaromos programėlės naršyklėje Pašalinti stebėjimo užklausų parametrą @@ -1370,9 +1315,15 @@ Gali būti atrakinta aukštesnės vaizdo įrašų kokybės, bet galite patirti v Kokybės pakeitimai taikomi tik dabartiniam vaizdo įrašui Numatytoji vaizdo įrašų kokybė „Wi-Fi“ tinkle Numatytoji vaizdo įrašų kokybė mobiliojo ryšio tinkle + Atsiminti „Shorts“ kokybės pakeitimus + Kokybės pakeitimai taikomi visiems „Shorts“ + Kokybės pakeitimai taikomi tik dabartiniam „Shorts“ + Numatytoji „Shorts“ kokybė naudojant „Wi-Fi“ tinklą + Numatytoji „Shorts“ kokybė mobiliųjų tinklų atveju mobilusis wifi Pakeista numatytoji %1$s kokybė į: %2$s + Pakeista \"Shorts\" %1$s kokybė į: %2$s Rodyti greičio dialogo mygtuką @@ -1403,10 +1354,10 @@ Gali būti atrakinta aukštesnės vaizdo įrašų kokybės, bet galite patirti v HDR vaizdo įrašas išjungtas HDR vaizdo įrašas įjungtas - - Atkurti senąjį vaizdo įrašų kokybės meniu - Senasis vaizdo įrašų kokybės meniu rodomas - Senasis vaizdo įrašų kokybės meniu nerodomas + + Rodyti išplėstinį vaizdo įrašo kokybės meniu + Rodomas išplėstinis vaizdo įrašo kokybės meniu + Nerodomas išplėstinis vaizdo įrašo kokybės meniu Įjungti slinkimą, kad ieškotumėte diff --git a/patches/src/main/resources/addresources/values-lv-rLV/strings.xml b/patches/src/main/resources/addresources/values-lv-rLV/strings.xml index 7040ff4d96..ce9a394366 100644 --- a/patches/src/main/resources/addresources/values-lv-rLV/strings.xml +++ b/patches/src/main/resources/addresources/values-lv-rLV/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Lai palīdzētu tulkot jaunās valodās, apmeklējiet vietni translate.revanced.app" Lietotnes valoda - Arābu - Azerbaidžāņu - Bulgāru - Bengāļu - Katalāņu - Čehu - Dāņu - Vācu - Grieķu - Angļu - Spāņu - Igauniski - Persiešu - Somu - Franču - Gudžaratu - Hindu - Horvātu - Ungāru - Indonēziešu - Itāliešu - Japāņu - Kazahu - Korejiešu - Lietuviešu - Latviešu - Maķedoniešu - Mongoļu - Maratu - Malaiziešu - Birmiešu - Nīderlandiešu - Oriju - Pandžabu - Poļu - Portugāļu - Rumāņu - Krievu - Slovāku - Slovēņu - Serbu - Zviedru - Svahili - Tamilu - Telugu - Taizemiešu - Turku - Ukraiņu - Urdu - Vjetnamiešu - Ķīniešu Importēt/Eksportēt Importēt/Eksportēt ReVanced iestatījumus @@ -404,7 +353,7 @@ Ierobežojumi Paslēpt pašreklāmas kartītes Pašreklāmas kartītes ir paslēptas Pašreklāmas kartītes ir redzamas - Paslēpt reklāmas joslu, lai skatītu produktus + Paslēpt reklāmjoslu \"Skatīt produktus\" Reklāmas josla ir paslēpta Reklāmas josla ir redzama Paslēpt veikala reklāmkarogu ekrāna beigās @@ -663,7 +612,7 @@ Ja šī iestatījuma maiņa nestājas spēkā, mēģiniet pārslēgties uz inkog Video kvalitātes izvēlnes apakšējā daļa ir redzama - Paslēpt iepriekšējo un nākamo video pogas + Paslēpt iepriekšējo un nākamo pogas Pogas ir paslēptas Pogas ir redzamas Paslēpt pogu \"Sūtīt\" @@ -1121,10 +1070,8 @@ Planšetdatora izkārtojums • Kopienas ieraksti ir paslēpti Automobiļu izkārtojums -• Skatīšanās vēstures izvēlne ir paslēpta -• Izpētes cilne ir atjaunota -• Īsie videoklipi tiek atvērti parastajā atskaņotājā -• Lentē ir organizēta pēc tēmām un kanāliem" +• Shorts tiek atvērti parastajā atskaņotājā +• Plūsma ir sakārtota pēc tēmām un kanāliem" Vilto lietotnes versiju @@ -1194,7 +1141,7 @@ Ja vēlāk tiks izslēgts, ieteicams notīrīt lietotnes datus, lai novērstu li Minispēlētājs - Mainīt samazināta spēlētāja stilu lietotnē + Mainīt lietotnē minimizētā atskaņotāja stilu Miniplayer tips Atspējots Noklusētais @@ -1247,8 +1194,6 @@ Pārvelciet, lai paplašinātu vai aizvērtu" Iespējot gradientu ielādes ekrānu Ielādes ekrānam būs gradientu fons Ielādes ekrānam būs ciets fons - - Iespējot pielāgotu meklēšanas joslas krāsu Pielāgota meklēšanas joslas krāsa ir redzama Oriģinālā meklēšanas joslas krāsa ir redzama @@ -1340,8 +1285,8 @@ Var tikt atbloķētas augstākas video kvalitātes, taču var rasties video atsk Atvērt saites pārlūkprogrammā - Atverot saites ārēji - Atverot saites lietotnē + Saišu atvēršana ārējā pārlūkprogrammā + Saišu atvēršana lietotnes pārlūkprogrammā Noņemt izsekošanas vaicājuma parametru @@ -1368,9 +1313,15 @@ Var tikt atbloķētas augstākas video kvalitātes, taču var rasties video atsk Kvalitātes izmaiņas attiecas tikai uz pašreizējo videoklipu Noklusējuma video kvalitāte Wi-Fi tīklā Noklusējuma video kvalitāte mobilajā tīklā + Atcerēties Shorts kvalitātes izmaiņas + Kvalitātes izmaiņas attiecas uz visiem Shorts + Kvalitātes izmaiņas attiecas tikai uz pašreizējo Short + Noklusējuma Shorts kvalitāte Wi-Fi tīklā + Noklusējuma Shorts kvalitāte mobilajā tīklā mobilais bezvadu tīkls Izmainīta noklusējuma %1$s kvalitāte uz: %2$s + Mainīta Shorts %1$s kvalitāte uz: %2$s Rādīt ātruma dialoga pogu @@ -1401,10 +1352,10 @@ Var tikt atbloķētas augstākas video kvalitātes, taču var rasties video atsk HDR video ir deaktivizēts HDR video ir aktivizēts - - Atjaunot veco video kvalitātes izvēlni - Vecā video kvalitātes izvēlne tiek rādīta - Vecā video kvalitātes izvēlne netiek rādīta + + Rādīt izvērsto video kvalitātes izvēlni + Tiek rādīta izvērstā video kvalitātes izvēlne + Izvērstā video kvalitātes izvēlne netiek rādīta Iespējot slīdēšanu, lai meklētu diff --git a/patches/src/main/resources/addresources/values-mk-rMK/strings.xml b/patches/src/main/resources/addresources/values-mk-rMK/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-mk-rMK/strings.xml +++ b/patches/src/main/resources/addresources/values-mk-rMK/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-ml-rIN/strings.xml b/patches/src/main/resources/addresources/values-ml-rIN/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-ml-rIN/strings.xml +++ b/patches/src/main/resources/addresources/values-ml-rIN/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-mn-rMN/strings.xml b/patches/src/main/resources/addresources/values-mn-rMN/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-mn-rMN/strings.xml +++ b/patches/src/main/resources/addresources/values-mn-rMN/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-mr-rIN/strings.xml b/patches/src/main/resources/addresources/values-mr-rIN/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-mr-rIN/strings.xml +++ b/patches/src/main/resources/addresources/values-mr-rIN/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-ms-rMY/strings.xml b/patches/src/main/resources/addresources/values-ms-rMY/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-ms-rMY/strings.xml +++ b/patches/src/main/resources/addresources/values-ms-rMY/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-my-rMM/strings.xml b/patches/src/main/resources/addresources/values-my-rMM/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-my-rMM/strings.xml +++ b/patches/src/main/resources/addresources/values-my-rMM/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-nb-rNO/strings.xml b/patches/src/main/resources/addresources/values-nb-rNO/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-nb-rNO/strings.xml +++ b/patches/src/main/resources/addresources/values-nb-rNO/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-ne-rIN/strings.xml b/patches/src/main/resources/addresources/values-ne-rIN/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-ne-rIN/strings.xml +++ b/patches/src/main/resources/addresources/values-ne-rIN/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-nl-rNL/strings.xml b/patches/src/main/resources/addresources/values-nl-rNL/strings.xml index 4f7fb7edf4..3c9ce5fff6 100644 --- a/patches/src/main/resources/addresources/values-nl-rNL/strings.xml +++ b/patches/src/main/resources/addresources/values-nl-rNL/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Om nieuwe talen te vertalen, gaat u naar translate.revanced.app" App-taal - Arabisch - Azerbeidzjaans - Bulgaars - Bengaals - Catalaans - Tsjechisch - Deens - Duits - Grieks - Engels - Spaans - Ests - Perzisch - Fins - Frans - Gujarati - Hindi - Kroatisch - Hongaars - Indonesisch - Italiaans - Japans - Kazachs - Koreaans - Litouws - Lets - Macedonisch - Mongools - Marathi - Maleis - Birmaans - Nederlands - Odia - Punjabi - Pools - Portugees - Roemeens - Russisch - Slowaaks - Sloveens - Servisch - Zweeds - Swahili - Tamil - Telugu - Thais - Turks - Oekraïens - Urdu - Vietnamees - Chinees Importeren / Exporteren ReVanced-instellingen importeren / exporteren @@ -404,7 +353,7 @@ Deze functie is alleen beschikbaar voor oudere apparaten" Zelf gesponsorde kaarten verbergen Zelf gesponsorde kaarten zijn verborgen Zelf gesponsorde kaarten worden getoond - Banner om producten te bekijken verbergen + Verberg de banner \'Producten bekijken\' Banner is verborgen Banner wordt getoond Verberg de Store-banner op het eindscherm @@ -663,7 +612,7 @@ Als het wijzigen van deze instelling geen effect heeft, probeer dan over te scha Voettekst van video-kwaliteitsmenu wordt weergegeven - Verberg vorige & volgende videoknoppen + Verberg Vorige & Volgende knoppen Knoppen zijn verborgen Knoppen worden weergegeven Verberg Cast-knop @@ -1116,16 +1065,14 @@ Klaar om in te dienen?" Telefoon Tablet Automobiel - "De wijzigingen omvatten: + "Wijzigingen omvatten: -Tablet-indeling -• Community-berichten zijn verborgen +Tablet lay-out +• Community posts zijn verborgen -Automobielindeling -• Het menu \"Wachthistorie\" is verborgen -• Het tabblad \"Verkennen\" is hersteld -• Shorts openen in de gewone speler -• De feed is georganiseerd op onderwerpen en kanaal" +Automotive lay-out +• Shorts worden geopend in de normale speler +• Feed is georganiseerd op onderwerp en kanalen" App-versie vervalsen @@ -1195,7 +1142,7 @@ Als het later wordt uitgeschakeld, wordt aanbevolen om de app-gegevens te wissen Minispeler - Wijzig de stijl van de geminimaliseerde speler in de app + De stijl van de geminimaliseerde speler in de app wijzigen \"miniplayer\"-type Uitgeschakeld Standaard @@ -1248,8 +1195,6 @@ Veeg om uit te vouwen of te sluiten" Schakel het laden van het verloopscherm in Het laadscherm heeft een verlopende achtergrond Het laadscherm heeft een effen achtergrond - - Schakel aangepaste schuifregelaar kleur in De aangepaste kleur van de schuifregelaar is zichtbaar De oorspronkelijke kleur van de schuifregelaar is zichtbaar @@ -1341,8 +1286,8 @@ Het inschakelen hiervan kan hogere videokwaliteiten ontgrendelen" Koppelingen openen in browser - Koppelingen extern openen - Koppelingen openen in app + Koppelingen openen in externe browser + Koppelingen openen in in-app browser Verwijder tracking-queryparameter @@ -1369,9 +1314,15 @@ Het inschakelen hiervan kan hogere videokwaliteiten ontgrendelen" Kwaliteitswijzigingen worden alleen op de huidige video toegepast Standaard videokwaliteit op Wi-Fi-netwerk Standaard videokwaliteit op mobiel netwerk + Onthoud kwaliteitswijzigingen voor Shorts + Kwaliteitswijzigingen zijn van toepassing op alle Shorts + Kwaliteitswijzigingen zijn alleen van toepassing op de huidige Short + Standaardkwaliteit voor Shorts op wifi-netwerk + Standaardkwaliteit voor Shorts op mobiel netwerk mobiel wifi Standaard %1$s-kwaliteit gewijzigd naar: %2$s + De kwaliteit van Shorts %1$s is gewijzigd in: %2$s Snelheidsdialoogknop weergeven @@ -1402,10 +1353,10 @@ Het inschakelen hiervan kan hogere videokwaliteiten ontgrendelen" HDR-video is uitgeschakeld HDR-video is ingeschakeld - - Oud menu voor videokwaliteit herstellen - Oud menu voor videokwaliteit wordt weergegeven - Oud menu voor videokwaliteit wordt niet weergegeven + + Geavanceerd menu voor videokwaliteit weergeven + Geavanceerd menu voor videokwaliteit wordt weergegeven + Geavanceerd menu voor videokwaliteit wordt niet weergegeven Schuiven om te zoeken inschakelen diff --git a/patches/src/main/resources/addresources/values-or-rIN/strings.xml b/patches/src/main/resources/addresources/values-or-rIN/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-or-rIN/strings.xml +++ b/patches/src/main/resources/addresources/values-or-rIN/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-pa-rIN/strings.xml b/patches/src/main/resources/addresources/values-pa-rIN/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-pa-rIN/strings.xml +++ b/patches/src/main/resources/addresources/values-pa-rIN/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-pl-rPL/strings.xml b/patches/src/main/resources/addresources/values-pl-rPL/strings.xml index 601499a8cd..36029dbf76 100644 --- a/patches/src/main/resources/addresources/values-pl-rPL/strings.xml +++ b/patches/src/main/resources/addresources/values-pl-rPL/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Aby przetłumaczyć nowe języki, odwiedź stronę translate.revanced.app" Język aplikacji - Arabski - Azerbejdżański - Bułgarski - Bengalski - Kataloński - Czeski - Duński - Niemiecki - Grecki - Angielski - Hiszpański - Estoński - Perski - Fiński - Francuski - Gudżarati - Hindi - Chorwacki - Węgierski - Indonezyjski - Włoski - Japoński - Kazachski - Koreański - Litewski - Łotewski - Macedoński - Mongolski - Marathi - Malajski - Birmański - Holenderski - Oria - Pendżabski - Polski - Portugalski - Rumuński - Rosyjski - Słowacki - Słoweński - Serbski - Szwedzki - Suahili - Tamilski - Telugu - Tajski - Turecki - Ukraiński - Urdu - Wietnamski - Chiński Zaimportuj / Wyeksportuj Zaimportuj / Wyeksportuj ustawienia ReVanced @@ -404,7 +353,7 @@ Ta funkcja jest dostępna tylko dla starszych urządzeń" Karty z autopromocją Karty z autopromocją są ukryte Karty z autopromocją są widoczne - Banery z produktami + Ukryj baner „Zobacz produkty” Banery są ukryte Banery są widoczne Ukryj baner sklepu na ekranie końcowym @@ -663,7 +612,7 @@ Jeśli zmiana tego ustawienia nie przyniesie efektu, spróbuj przełączyć się Opis menu jakości filmu jest widoczny - Przyciski od poprzedniego i następnego filmu + Ukryj przyciski Poprzedni i Następny Przyciski są ukryte Przyciski są widoczne Ukryj przycisk transmisji @@ -1116,16 +1065,14 @@ Gotowy do przesłania?" Telefon Tabletowy Motoryzacja - "Zmianami są: + "Zmiany obejmują: Układ tabletu -• Wspólne posty są ukryte +• Posty społeczności są ukryte Układ samochodowy -• Menu historii oglądania jest ukryte -• Karta Eksploruj zostaje przywrócona -• Shortsy otwierają się w standardowym odtwarzaczu -• Kanał jest zorganizowany wg tematów i kanałów" +• Shorts otwierają się w zwykłym odtwarzaczu +• Kanał jest uporządkowany według tematów i kanałów" Oszukiwanie wersji aplikacji @@ -1248,8 +1195,6 @@ Przesuń, aby rozwinąć lub zamknąć" Kolorowy ekran ładowania Ekran ładowania będzie miał kolorowe tło Ekran ładowania będzie miał stałe tło - - Niestandardowy kolor paska postępu Niestandardowy Oryginalny @@ -1341,8 +1286,8 @@ Włączenie tego może odblokować wyższe jakości wideo" Otwieranie linków - Przez przeglądarke - Przez aplikacje + Otwieranie linków w zewnętrznej przeglądarce + Otwieranie linków w przeglądarce w aplikacji Parametr zapytania śledzenia @@ -1369,9 +1314,15 @@ Włączenie tego może odblokować wyższe jakości wideo" Zmiany jakości dotyczą tylko bieżącego filmu Domyślna jakość filmu w sieci Wi-Fi Domyślna jakość filmu w sieci komórkowej + Zapamiętaj zmiany jakości w Shorts + Zmiany jakości dotyczą wszystkich filmów Shorts + Zmiany jakości dotyczą tylko bieżącego Short + Domyślna jakość Shorts w sieci Wi-Fi + Domyślna jakość Shorts w sieci komórkowej telefonu Wi-Fi Zmieniono domyślną jakość %1$s na: %2$s + Zmieniono jakość Shorts %1$s na: %2$s Przycisk od prędkości @@ -1402,10 +1353,10 @@ Włączenie tego może odblokować wyższe jakości wideo" Wideo HDR jest wyłączone Wideo HDR jest włączone - - Stare menu jakości filmu - Stare menu jakości filmu jest widoczne - Stare menu jakości filmu nie jest widoczne + + Pokaż zaawansowane menu jakości filmu + Zaawansowane menu jakości filmu jest wyświetlane + Zaawansowane menu jakości filmu nie jest wyświetlane Przesuń, by przewinąć diff --git a/patches/src/main/resources/addresources/values-pt-rBR/strings.xml b/patches/src/main/resources/addresources/values-pt-rBR/strings.xml index 3cb0f14ad8..503f9a033d 100644 --- a/patches/src/main/resources/addresources/values-pt-rBR/strings.xml +++ b/patches/src/main/resources/addresources/values-pt-rBR/strings.xml @@ -46,57 +46,6 @@ Second \"item\" text" Idioma do ReVanced "As traduções para alguns idiomas podem estar ausentes ou incompletas.\n\nPara traduzir novos idiomas, acesse translate.revanced.app" Idioma do aplicativo - Árabe - Azerbaijão - Búlgaro - Bengali - Catalão - Tcheco - Dinamarquês - Alemão - Grego - Inglês - Espanhol - Estoniano - Persa - Finlandês - Francês - Gujarati - Hindi - Croata - Húngaro - Indonésio - Italiano - Japonês - Cazaque - Coreano - Lituano - Letão - Macedônio - Mongol - Marata - Malaio - Birmanês - Holandês - Ória - Punjabi - Polonês - Português - Romeno - Russo - Eslovaco - Esloveno - Sérvio - Sueco - Suaíli - Tâmil - Telugu - Tailandês - Turco - Ucraniano - Urdu - Vietnamita - Chinês Importar / Exportar Importar / Exportar Configurações do ReVanced @@ -402,7 +351,7 @@ Este recurso está disponível apenas para dispositivos mais antigos" Ocultar cartões auto-patrocinados Cartões autopatrocinados estão ocultos Cartões autopatrocinados não estão ocultos - Ocultar banner \"ver os produtos\" + Ocultar banner \"Ver produtos\" Banner está oculto O banner é mostrado Ocultar banners da loja na tela final @@ -661,7 +610,7 @@ Se alterar esta configuração não fizer efeito, tente mudar para o modo anôni Rodapé do menu de qualidade de vídeo não está ocultos - Ocultar botões anterior & próximo vídeo + Ocultar botões Anterior e Próximo Os botões estão ocultos Os botões serão exibidos Ocultar botão Transmitir @@ -1113,16 +1062,14 @@ Pronto para enviar?" Telefone Tablet Automóveis - "Mudanças incluem: + "As alterações incluem: -Layout para tablets -• As postagens da comunidade estão ocultas +Layout para tablet +• Publicações da comunidade estão ocultas -Layout para veículos -• O menu do histórico de exibições fica oculto -• A guia Explorar está restaurada -• Os Shorts abrem no player normal -• O feed é organizado por tópicos e canal" +Layout automotivo +• Shorts são abertos no reprodutor normal +• O feed é organizado por tópicos e canais" Spoofing da versão do aplicativo @@ -1192,7 +1139,7 @@ Se posteriormente desativado, é recomendável limpar os dados do aplicativo par Minireprodutor - Alterar o estilo do player minimizado no aplicativo + Alterar o estilo do player minimizado no app Tipo de miniplayer Desativado Padrão @@ -1245,8 +1192,6 @@ Deslize para expandir ou fechar" Ativar tela de carregamento em gradiente Tela de carregamento terá um fundo em gradiente Tela de carregamento terá um fundo sólido - - Ativar cor personalizada da barra de busca Cor personalizada da barra de busca é mostrada Cor original da barra de busca é mostrada @@ -1338,8 +1283,8 @@ Habilitar isso pode desbloquear qualidades de vídeo mais altas" Abrir links no navegador - Abrir links externamente - Abrir links no aplicativo + Abrindo links no navegador externo + Abrindo links no navegador interno do app Remover parâmetro de consulta de rastreamento @@ -1366,9 +1311,15 @@ Habilitar isso pode desbloquear qualidades de vídeo mais altas" Mudança na qualidade só se aplicam ao vídeo atual Qualidade padrão do vídeo no Wi-Fi Qualidade padrão do vídeo nos dados móveis + Lembrar alterações na qualidade dos Shorts + As alterações de qualidade se aplicam a todos os Shorts + As alterações de qualidade aplicam-se apenas ao Short atual + Qualidade padrão dos Shorts na rede Wi-Fi + Qualidade padrão dos Shorts na rede móvel dados móveis Wi-Fi Qualidade padrão %1$s alterada para: %2$s + Qualidade dos Shorts %1$s alterada para: %2$s Mostrar botão de velocidade @@ -1399,10 +1350,10 @@ Habilitar isso pode desbloquear qualidades de vídeo mais altas" O vídeo HDR está desabilitado O vídeo HDR está habilitado - - Restaurar menu antigo de qualidade de vídeo - Menu antigo de qualidade de vídeo está sendo mostrado - Menu antigo de qualidade de vídeo não está sendo mostrado + + Mostrar menu de qualidade de vídeo avançado + O menu de qualidade de vídeo avançado é exibido + O menu de qualidade de vídeo avançado não é exibido Ativar gesto na barra de busca diff --git a/patches/src/main/resources/addresources/values-pt-rPT/strings.xml b/patches/src/main/resources/addresources/values-pt-rPT/strings.xml index 2c2558fd44..a56b43b709 100644 --- a/patches/src/main/resources/addresources/values-pt-rPT/strings.xml +++ b/patches/src/main/resources/addresources/values-pt-rPT/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Para traduzir novas línguas, visite translate.revanced.app" Idioma da aplicação - Árabe - Azerbaijano - Búlgaro - Bengali - Catalão - Checo - Dinamarquês - Alemão - Grego - Inglês - Espanhol - Estoniano - Persa - Finlandês - Francês - Gujarati - Hindi - Croata - Húngaro - Indonésio - Italiano - Japonês - Cazaquistão - Coreano - Lituano - Letão - Macedônio - Mongol - Marati - Malaio - Birmanês - Holandês - Oriá - Punjabi - Polaco - Português - Romeno - Russo - Eslovaco - Esloveno - Sérvio - Sueco - Suaíli - Tamil - Telugu - Tailandês - Turco - Ucraniano - Urdu - Vietnamita - Chinês Importar / Exportar Importar / Exportar configurações do ReVanced @@ -404,7 +353,7 @@ Tính năng này chỉ khả dụng cho các thiết bị cũ" Esconder cartões autopatrocinados Cartões auto-patrocinados estão escondidos Cartões auto-patrocinados são visíveis - Esconder banner para ver os produtos + Ocultar banner \"Ver produtos\" Banner está escondido Banner é visível Ocultar banner da loja na tela final @@ -663,7 +612,7 @@ Se alterar esta configuração não fizer efeito, tente alternar para o modo an Cabeçalho do menu de qualidade de vídeo mostrado - Esconder botões anteriores & próxima vídeo + Ocultar botões Anterior & Próximo Botões estão ocultos Botões são exibidos Ocultar botão Transmitir @@ -1122,10 +1071,8 @@ Layout do tablet • As postagens da comunidade estão ocultas Layout automotivo -• O menu do histórico de exibição está oculto -• A guia Explorar foi restaurada -• Shorts abrem no reprodutor normal -• O feed é organizado por tópicos e canal" +• Os Shorts são abertos no reprodutor normal +• O feed é organizado por tópicos e canais" Versão do Spoof app @@ -1195,7 +1142,7 @@ Nếu sau này tắt, bạn nên xóa dữ liệu ứng dụng để tránh lỗ Minijogador - Alterar o estilo do player minimizado no aplicativo + Altere o estilo do player minimizado no aplicativo Tipo de minijogador Desativado Padrão @@ -1248,8 +1195,6 @@ Vuốt để mở rộng hoặc đóng" Ativar ecrã de carregamento do gradiente Carregar ecrã terá um fundo em gradiente Carregar ecrã terá um fundo sólido - - Ativar a cor personalizada Cor personalizada da barra de busca é visível Cor original da barra de busca é visível @@ -1341,8 +1286,8 @@ Bật tính năng này có thể mở khóa chất lượng video cao hơn" Abrir links no navegador - Abrir links externamente - Abrir links no aplicativo + Abrindo links no navegador externo + Abrindo links no navegador no aplicativo Remover parâmetro de consulta de rastreamento @@ -1369,9 +1314,15 @@ Bật tính năng này có thể mở khóa chất lượng video cao hơn"As alterações de qualidade só se aplicam ao vídeo atual Qualidade de vídeo padrão na rede Wi-Fi Qualidade de vídeo padrão na rede móvel + Lembrar alterações na qualidade dos Shorts + As alterações de qualidade se aplicam a todos os Shorts + As alterações de qualidade se aplicam apenas ao Short atual + Qualidade padrão de Shorts na rede Wi-Fi + Qualidade padrão de Shorts na rede móvel telemóvel Wi-Fi Qualidade padrão %1$s alterada para: %2$s + Qualidade do Shorts %1$s alterada para: %2$s Mostrar botão de diálogo de velocidade @@ -1402,10 +1353,10 @@ Bật tính năng này có thể mở khóa chất lượng video cao hơn"O vídeo HDR está desabilitado O vídeo HDR está ativado - - Restaurar menu antigo de qualidade de vídeo - Menu antigo de qualidade de vídeo exibido - Menu antigo de qualidade de vídeo não visível + + Mostrar menu de qualidade de vídeo avançado + O menu de qualidade de vídeo avançado é mostrado + O menu de qualidade de vídeo avançado não é mostrado Habilitar o slide para procurar diff --git a/patches/src/main/resources/addresources/values-ro-rRO/strings.xml b/patches/src/main/resources/addresources/values-ro-rRO/strings.xml index 2be88d42fc..54283fbc0b 100644 --- a/patches/src/main/resources/addresources/values-ro-rRO/strings.xml +++ b/patches/src/main/resources/addresources/values-ro-rRO/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Pentru a traduce noi limbi, vizitați translate.revanced.app" Limba aplicației - Arabă - Azerbaidjană - Bulgară - Bengaleză - Catalană - Cehă - Daneză - Germană - Greacă - Engleză - Spaniolă - Estoniană - Persană - Finlandeză - Franceză - Gujarati - Hindi - Croată - Maghiară - Indoneziană - Italiană - Japoneză - Kazahă - Coreeană - Lituaniană - Letonă - Macedoneană - Mongolă - Marathi - Malaeză - Birmană - Olandeză - Odia - Punjabi - Poloneză - Portugheză - Română - Rusă - Slovacă - Slovenă - Sârbă - Suedeză - Swahili - Tamil - Telugu - Thailandeză - Turcă - Ucraineană - Urdu - Vietnameză - Chineză Importă / Exportă Import/Export setări ReVanced @@ -404,7 +353,7 @@ Această funcție este disponibilă numai pentru dispozitivele mai vechi"Ascunde cardurile auto-sponsorizate Cardurile sponsorizate automat sunt ascunse Cardurile sponsorizate automat sunt afișate - Ascunde banner-ul pentru a vizualiza produsele + Ascunde bannerul \"Vezi produse\" Banner-ul este ascuns Banner-ul este afișat Ascunde bannerul magazinului de la finalul ecranului @@ -663,7 +612,7 @@ Dacă modificarea acestei setări nu are efect, încercați să comutați la mod Subsolul meniului calității video este afișat - Ascunde butoanele anterioare & următorul video + Ascunde butoanele Anterior & Următorul Butoanele sunt ascunse Butoanele sunt afișate Ascunde butonul Distribuție @@ -1121,10 +1070,8 @@ Aspect tabletă • Postările comunității sunt ascunse Aspect auto -• Meniul Istoric vizionări este ascuns -• Fila Explore este restaurată -• Shorts-urile se deschid în playerul obișnuit -• Feed-ul este organizat pe subiecte și canal" +• Shorts se deschid în playerul obișnuit +• Fluxul este organizat pe teme și canale" Falsifică versiunea aplicației @@ -1194,7 +1141,7 @@ Dacă este dezactivat ulterior, se recomandă să ștergeți datele aplicației Minijucător - Schimbă stilul aplicaţiei minimizat jucătorul + Schimbă stilul playerului minimizat în aplicație Tip minijucător Dezactivat Implicit @@ -1247,8 +1194,6 @@ Trageți pentru a extinde sau a închide" Activează ecranul de încărcare gradient Încărcarea ecranului va avea un fundal pentru gradient Ecranul de încărcare va avea un fundal solid - - Activează culoarea barei de căutare personalizate Culoarea personalizată a barei de căutare este afișată Culoarea bara de căutare originală este afișată @@ -1340,8 +1285,8 @@ Activarea acestei opțiuni poate debloca calități video mai mari" Deschide link-uri în browser - Se deschid link-uri extern - Se deschid link-uri în aplicație + Deschiderea linkurilor în browserul extern + Deschiderea linkurilor în browserul din aplicație Elimină parametrul de urmărire interogare @@ -1368,9 +1313,15 @@ Activarea acestei opțiuni poate debloca calități video mai mari" Modificările de calitate se aplică numai video-ului curent Calitate video implicită în rețeaua Wi-Fi Calitatea video implicită în rețeaua mobilă + Reține modificările calității pentru Shorts + Modificările de calitate se aplică tuturor Shorts + Modificările de calitate se aplică doar Shortului curent + Calitatea implicită a Shorts în rețeaua Wi-Fi + Calitatea implicită a Shorts în rețeaua mobilă mobil wifi Calitate %1$s modificată implicit: %2$s + Calitatea Shorts %1$s a fost modificată la: %2$s Arată butonul de dialog de viteză @@ -1401,10 +1352,10 @@ Activarea acestei opțiuni poate debloca calități video mai mari" Videoclipurile HDR sunt dezactivate Videoclipurile HDR sunt activate - - Restaurează meniul de calitate video vechi - Vechea meniu de calitate a videoclipului este afișat - Meniul vechi de calitate a videoclipului nu este afișat + + Afișează meniul avansat de calitate video + Se afișează meniul avansat de calitate video + Nu se afișează meniul avansat de calitate video Activează diapozitivul pentru a căuta diff --git a/patches/src/main/resources/addresources/values-ru-rRU/strings.xml b/patches/src/main/resources/addresources/values-ru-rRU/strings.xml index ddb836c519..c729c72826 100644 --- a/patches/src/main/resources/addresources/values-ru-rRU/strings.xml +++ b/patches/src/main/resources/addresources/values-ru-rRU/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Чтобы перевести новые языки, посетите translate.revanced.app" Язык приложения YouTube - Арабский - Азербайджанский - Болгарский - Бенгальский - Каталонский - Чешский - Датский - Немецкий - Греческий - Английский - Испанский - Эстонский - Фарси - Финский - Французкий - Гуджарати - Хинди - Хорватский - Венгерский - Индонезийский - Итальянский - Японский - Казахский - Корейский - Литовский - Латышский - Македонский - Монгольский - Маратхи - Малайский - Бирманский - Нидерландский - Одиа - Панджаби - Польский - Португальский - Румынский - Русский - Словацкий - Словенский - Сербский - Шведский - Суахили - Тамильский - Телугу - Тайский - Турецкий - Украинский - Урду - Вьетнамский - Китайский Резервное копирование настроек Создание и восстановление резервной копии настроек ReVanced @@ -305,9 +254,9 @@ Second \"item\" text" Скрыть панель фильтров в ленте Панель фильтров в ленте скрыта Панель фильтров в ленте показана - Скрыть в результатах поиска - Shorts в результатах поиска скрыты - Shorts в результатах поиска показаны + Скрыть панель фильтров в поиске + Панель фильтров в поиске скрыта + Панель фильтров в поиске показана Скрыть панель фильтров в похожих видео Панель фильтров в похожих видео скрыта Панель фильтров в похожих видео показана @@ -809,12 +758,12 @@ Second \"item\" text" Панель навигации в Shorts показана - Скрыть предложенное видео на экране завершения - "Предложенное видео на экране завершения скрыто, когда автовоспроизведение выключено. + Скрыть предлагаемые видео в конце просмотра + "Предлагаемые видео в конце просмотра скрыты при выключенном автовоспроизведении Автовоспроизведение можно изменить в настройках YouTube: -Настройки → Воспроизведение → Автовоспроизведение следующего видео" - Предложенное видео на экране завершения отображается +Настройки → Фоновое воспроизведение → Следующее видео" + Предлагаемые видео в конце просмотра показаны Скрыть метку времени видео @@ -1122,8 +1071,6 @@ Second \"item\" text" • Посты сообщества скрыты Автомобильный макет -• Меню истории просмотров скрыто -• Вкладка \"Навигатор\" восстановлена • Shorts открываются в стандартном плеере • Лента организована по темам и каналам" @@ -1195,7 +1142,7 @@ Second \"item\" text" Миниплеер - Изменить стиль свернутого миниплеера + Изменить стиль свернутого миниплеера Тип миниплеера Отключено Стандартный @@ -1248,8 +1195,6 @@ Second \"item\" text" Включить градиентный фон экрана загрузки Градиентный фон экрана загрузки макета включен Сплошной фон экрана загрузки макета включен - - Включить кастомный цвет полосы прогресса Кастомный цвет полосы прогресса включен Оригинальный цвет полосы прогресса включен @@ -1341,8 +1286,8 @@ Second \"item\" text" Открыть ссылки в браузере - Ссылки открываются в браузере - Ссылки открываются в приложении + Ссылки открываются во внешнем браузере + Ссылки открываются во встроенном браузере Удалить параметр отслеживания запросов @@ -1355,11 +1300,11 @@ Second \"item\" text" Виброотклик при масштабировании включен - Принудительно выбирать язык оригинала аудиодорожки - Используется оригинальный язык звуковой дорожки + Принудительно оригинальная звуковая дорожка + Используется оригинальная звуковая дорожка Используется звуковая дорожка по умолчанию - Чтобы использовать эту функцию, измените параметр \"Подмена видеопотоков\" на iOS TV + Для использования данной опции измените подмену видеопотока на тип клиента iOS TV @@ -1369,9 +1314,15 @@ Second \"item\" text" Изменения качества воспроизведения применяются только к текущему видео Качество видео по умолчанию в Wi-Fi сети Качество видео по умолчанию в мобильной сети + Запоминать изменения качества Shorts + Изменения качества воспроизведения применяются ко всем Shorts + Изменения качества воспроизведения применяются только к текущему Short + Качество Shorts по умолчанию в Wi-Fi сети + Качество Shorts по умолчанию в мобильной сети мобильной сети Wi-Fi Качество в %1$s изменено на: %2$s + Качество Shorts в %1$s изменено на: %2$s Показать кнопку скорости воспроизведения @@ -1402,10 +1353,10 @@ Second \"item\" text" HDR видео отключено HDR видео включено - - Включить старое меню качества видео - Старое меню качества видео включено - Новое меню качества видео включено + + Показать расширенное меню качества видео + Расширенное меню качества видео показано + Расширенное меню качества видео скрыто Включить перемотку видео слайдом diff --git a/patches/src/main/resources/addresources/values-si-rLK/strings.xml b/patches/src/main/resources/addresources/values-si-rLK/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-si-rLK/strings.xml +++ b/patches/src/main/resources/addresources/values-si-rLK/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-sk-rSK/strings.xml b/patches/src/main/resources/addresources/values-sk-rSK/strings.xml index 087261b9b4..2ee10f115c 100644 --- a/patches/src/main/resources/addresources/values-sk-rSK/strings.xml +++ b/patches/src/main/resources/addresources/values-sk-rSK/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Na preklad nových jazykov navštívte translate.revanced.app" Jazyk aplikácie - Arabčina - Azerbajdžančina - Bulharčina - Bengálčina - Katalánčina - Čeština - Dánčina - Nemčina - Gréčtina - Angličtina - Španielčina - Estónčina - Perzština - Fínčina - Francúzština - Gudžarátčina - Hindčina - Chorvátčina - Maďarčina - Indonézština - Taliančina - Japončina - Kazaština - Kórejčina - Litovčtina - Lotyština - Macedónčina - Mongolčina - Maráthčina - Malajčina - Barmčina - Holandčina - Órijčina - Pandžábčina - Poľština - Portugalčina - Rumunčina - Ruština - Slovenčina - Slovénčina - Srbčina - Švédčina - Svahilčina - Tamilčina - Telugčina - Thajčina - Turečtina - Ukrajinčina - Urdčina - Vietnamčina - Čínština Importovať / Exportovať Import / Export nastavení ReVanced @@ -397,7 +346,7 @@ Táto funkcia je dostupná len pre staršie zariadenia" Skryť vlastné sponzorované karty Vlastné sponzorované karty sú skryté Zobrazujú sa vlastné sponzorované karty - Skryť banner pre zobrazenie produktov + Skryť banner „Zobraziť produkty“ Banner je skrytý Zobrazuje sa banner Skryť banner obchodu na konci obrazovky @@ -656,7 +605,7 @@ Ak zmena tohto nastavenia nemá žiadny účinok, skúste prepnúť do režimu i Zobrazí sa päta ponuky kvality videa - Skryť predchádzajúce & tlačidlá ďalšieho videa + Skryť tlačidlá Predchádzajúce & Nasledujúce Tlačidlá sú skryté Zobrazia sa tlačidlá Skryť tlačidlo Cast @@ -1108,14 +1057,12 @@ Pripravené na odoslanie?" Automobily "Zmeny zahŕňajú: -Rozloženie tabletu +Rozloženie pre tablety • Príspevky komunity sú skryté -Rozloženie automobilu -• Menu histórie pozerania je skryté -• Karta preskúmať je obnovená +Rozloženie pre automobily • Shorts sa otvárajú v bežnom prehrávači -• Feed je organizovaný podľa tém a kanálov" +• Kanál je usporiadaný podľa tém a kanálov" Verzia aplikácie Spoof @@ -1185,7 +1132,7 @@ Ak sa neskôr vypne, odporúča sa vymazať údaje aplikácie, aby sa zabránilo Miniprehrávač - Zmeňte štýl minimalizovaného prehrávača v aplikácii + Zmeniť štýl minimalizovaného prehrávača v aplikácii Typ miniprehrávača Vypnuté Predvolené @@ -1236,8 +1183,6 @@ Potiahnite prstom na rozbalenie alebo zatvorenie" Povoliť obrazovku načítania gradientu Načítavacia obrazovka bude mať pozadie s prechodom Načítavacia obrazovka bude mať pevné pozadie - - Povoliť vlastnú farbu vyhľadávacieho panela Zobrazí sa vlastná farba panela vyhľadávania Zobrazí sa pôvodná farba vyhľadávacieho panela @@ -1329,8 +1274,8 @@ Povolením tejto možnosti môžete odomknúť vyššie kvality videa" Otvoriť odkazy v prehliadači - Otváranie odkazov externe - Otváranie odkazov v aplikácii + Otváranie odkazov v externom prehliadači + Otváranie odkazov v prehliadači v aplikácii Odstráňte parameter dopytu sledovania @@ -1357,9 +1302,15 @@ Povolením tejto možnosti môžete odomknúť vyššie kvality videa" Zmeny kvality sa vzťahujú iba na aktuálne video Predvolená kvalita videa v sieti Wi-Fi Predvolená kvalita videa v mobilnej sieti + Zapamätať si zmeny kvality pre Shorts + Zmeny kvality sa použijú na všetky Shorts + Zmeny kvality sa použijú iba na aktuálny Short + Predvolená kvalita pre Shorts v sieti Wi-Fi + Predvolená kvalita pre Shorts v mobilnej sieti mobilné Wi-Fi Predvolená kvalita %1$s bola zmenená na: %2$s + Zmenená kvalita Shorts %1$s na: %2$s Zobraziť dialógové tlačidlo rýchlosti @@ -1390,10 +1341,10 @@ Povolením tejto možnosti môžete odomknúť vyššie kvality videa" HDR video je vypnuté HDR video je zapnuté - - Obnovte starú ponuku kvality videa - Zobrazí sa stará ponuka kvality videa - Stará ponuka kvality videa sa nezobrazuje + + Zobraziť rozšírenú ponuku kvality videa + Zobrazuje sa rozšírená ponuka kvality videa + Nezobrazuje sa rozšírená ponuka kvality videa Povoliť vyhľadávanie snímkou diff --git a/patches/src/main/resources/addresources/values-sl-rSI/strings.xml b/patches/src/main/resources/addresources/values-sl-rSI/strings.xml index de2ea06767..20ba06162b 100644 --- a/patches/src/main/resources/addresources/values-sl-rSI/strings.xml +++ b/patches/src/main/resources/addresources/values-sl-rSI/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Če želite prevesti nove jezike, obiščite translate.revanced.app" Jezik aplikacije - Arabščina - Azerbajdžanščina - Bolgarščina - **Bengali** - Katalonščina - Češčina - Danščina - Nemščina - Grščina - Angleščina - Španščina - Estonščina - Perzijščina - Finščina - Francoščina - Gudžaratščina - Hindujščina - Hrvaščina - Madžarščina - Indonezijščina - Italijanščina - Japonščina - Kazahstanščina - Korejščina - Litovščina - Latvijščina - Makedonščina - Mongolščina - Maratščina - Malajščina - Burmanščina - Nizozemščina - Odiščina - Pandžabščina - Poljščina - Portugalščina - Romunščina - Ruščina - Slovaščina - Slovenščina - Srbščina - Švedščina - Svahili - Tamilščina - **Telugu** - Tajščina - Turščina - Ukrajinščina - Urdujščina - Vietnamščina - Kitajščina Uvozi / Izvozi Uvozi / Izvozi ReVanced nastavitve @@ -404,7 +353,7 @@ Ta funkcija je na voljo samo za starejše naprave" Skrij samoproizvedene oglase Samoproizvedeni oglasi so skriti Samoproizvedeni oglasi so prikazani - Skrij pasico za ogled izdelkov + Skrij pasico »Ogled izdelkov« Pasica je skrita Pasica je prikazana Skrij pasico trgovine na koncu zaslona @@ -663,7 +612,7 @@ Opomba: Omogočanje tega tudi prisilno skrije video oglase" Noga menija s kakovostjo videa je prikazana - Skrij gumbe \"Prejšnji\" & \"Naslednji\" video + Skrij gumbe »Prejšnji« & »Naslednji« Gumbi so skriti Gumbi so prikazani Skrij gumb \'Predvajaj\' @@ -1117,13 +1066,11 @@ Ali ste pripravljeni na oddajo?" Avtomobilska "Spremembe vključujejo: -Postavitev tabličnega računalnika +Postavitev za tablične računalnike • Objave skupnosti so skrite -Postavitev za vozila -• Meni zgodovine ogledov je skrit -• Zavihek Raziskovanje je obnovljen -• Posnetki Shorts se odprejo v običajnem predvajalniku +Avtomobilska postavitev +• Shorts se odprejo v običajnem predvajalniku • Vir je organiziran po temah in kanalih" @@ -1194,7 +1141,7 @@ To bo spremenilo videz in funkcije aplikacije, vendar se lahko pojavijo neznani \"Miniplayer\" - Spremeni slog zmanjšanega predvajalnika v aplikaciji + Spremenite slog minimiziranega predvajalnika v aplikaciji Vrsta mini predvajalnika Onemogočeno Privzeto @@ -1247,8 +1194,6 @@ Podrsnite za razširitev ali zapiranje" Omogoči zaslon za nalaganje z gradientom Zaslon za nalaganje bo imel ozadje z gradientom Zaslon za nalaganje bo imel enobarvno ozadje - - Omogoči prilagojeno barvo drsnika Prilagojena barva drsnika je prikazana Izvorna barva drsnika je prikazana @@ -1340,8 +1285,8 @@ Omogočanje tega lahko odklene višje kakovosti videa" Odpri povezave v brskalniku - Odpiranje povezav zunaj aplikacije - Odpiranje povezav v aplikaciji + Odpiranje povezav v zunanjem brskalniku + Odpiranje povezav v brskalniku v aplikaciji Odstrani parameter poizvedbe za sledenje @@ -1368,9 +1313,15 @@ Omogočanje tega lahko odklene višje kakovosti videa" Spremembe kakovosti se uporabijo le za trenutni videoposnetek Privzeta kakovost videoposnetka v omrežju Wi-Fi Privzeta kakovost videoposnetka v mobilnem omrežju + Zapomni si spremembe kakovosti za Shorts + Spremembe kakovosti veljajo za vse Shorts + Spremembe kakovosti veljajo samo za trenutni Short + Privzeta kakovost za Shorts v omrežju Wi-Fi + Privzeta kakovost za Shorts v mobilnem omrežju mobilni Wi-Fi Spremenjena privzeta kakovost %1$s na: %2$s + Spremenjena kakovost Shorts %1$s v: %2$s Pokaži gumb za pogovor o hitrosti @@ -1401,10 +1352,10 @@ Omogočanje tega lahko odklene višje kakovosti videa" HDR video je onemogočen HDR video je omogočen - - Obnovi stari meni za kakovost videoposnetkov - Stari meni za kakovost videoposnetkov je prikazan - Stari meni za kakovost videoposnetkov ni prikazan + + Pokaži napredni meni za kakovost videoposnetkov + Napredni meni za kakovost videoposnetkov je prikazan + Napredni meni za kakovost videoposnetkov ni prikazan Omogoči drsno iskanje diff --git a/patches/src/main/resources/addresources/values-sq-rAL/strings.xml b/patches/src/main/resources/addresources/values-sq-rAL/strings.xml index fc51e893eb..0c3abe5c9d 100644 --- a/patches/src/main/resources/addresources/values-sq-rAL/strings.xml +++ b/patches/src/main/resources/addresources/values-sq-rAL/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Për të përkthyer gjuhë të reja vizitoni translate.revanced.app" Gjuha e aplikacionit - Arabisht - Azerbajanisht - Bullgarisht - Bengalisht - Katalonisht - Çekisht - Danez - Gjermanisht - Greqisht - Anglisht - Spanjisht - Estonisht - Persisht - Finlandez - Frengjisht - Gugxharatisht - Hindi - Kroatisht - Hungarisht - Indonezisht - Italisht - Japonisht - Kazakisht - Koreanisht - Lituanisht - Letonisht - Maqedonisht - Mongolisht - Marathisht - Malajisht - Birmanez - Holandisht - Odia - Punxhabi - Polonisht - Portugezisht - Rumanisht - Rusisht - Sllovakisht - Sllovenisht - Serbisht - Suedisht - Suahilisht - Tamil - Telugu - Tajlandisht - Turqisht - Ukrainisht - Urdisht - Vietnamisht - Kinezisht Importo / Eksporto Importo / Eksporto cilësimet e ReVanced @@ -404,7 +353,7 @@ Kjo veçori është e disponueshme vetëm për pajisje më të vjetra" Fsheh kartat e sponsorizuara vetë Kartat e sponsorizuara vetë janë të fshehur Kartat e sponsorizuara vetë janë të dukshme - Fsheh bannerin për të parë produktet + Fshih banerin \'Shiko produktet\' Banneri është i fshehur Banneri është i dukshëm Fsheh bannerin e dyqanit të ekranit përfundimtar @@ -663,7 +612,7 @@ Nëse ndryshimi i këtij konfigurimi nuk ka efekt, provoni të kaloni në modali Funda e menusë së cilësisë së videos është e dukshme - Fsheh butonat \"e mëparshme\" & \"e mëvonshme\" + Fsheh Butonat e Mëparshme & Tjetër Butonat janë të fshehur Butonat janë të dukshme Fsheh butonin Transmeto @@ -1114,16 +1063,14 @@ Gati per te dhene?" Telefon Tabletë Automjet - "Ndryshimet përfshijnë: + "Ndryshimet përfshijnë: -Pamje në format tabletë -• Postimet e komunitetit janë të fshehura +Paraqitja e tabletit +• Postimet e komunitetit janë të fshehura -Pamje automotive -• Menua e historisë së shikimit është e fshehur -• Seksioni Shfleto është rikthyer -• Shorts hapen në oynën e zakonshme -• Ushtrimi është i organizuar sipas temave dhe kanaleve" +Paraqitja e makinës +• Shorts hapen në luajtësin e rregullt +• Feed organizohet sipas temave dhe kanaleve" Mashtro versionin e aplikacionit @@ -1193,7 +1140,7 @@ Nëse më vonë është çaktivizuar, është e rekomanduar të fshiheni të dh Miniplayer - Ndrysho stilin e lojtarit të minimizuar në aplikacion + Ndrysho stilin e luajtësit të minimizuar brenda aplikacionit Lloji i \"miniplayer\" I çaktivizuar Paragjykja @@ -1246,8 +1193,6 @@ Lëviz gishtin për të zgjeruar ose mbyllur" Aktivizo ekranin e ngarkimit me gradient Ekrani i ngarkimit do të ketë një sfond me gradient Ekrani i ngarkimit do të ketë një sfond të ngurtë - - Aktivizo ngjyrën e personalizuar të shkallës së kërkimit Ngjyra e personalizuar e shkallës së kërkimit është e dukshme Ngjyra origjinale e shkallës së kërkimit është e dukshme @@ -1339,8 +1284,8 @@ Aktivizimi i kësaj mund të zhbllokojë cilësi më të larta video" Hap linket në shfletues - Hapja e linkeve nga jashtë - Hapja e linkeve në aplikacion + Hapja e linkeve në shfletuesin e jashtëm + Hapja e linkeve në shfletuesin brenda aplikacionit Hiq parametrin e gjurmimit të kërkesës @@ -1367,9 +1312,15 @@ Aktivizimi i kësaj mund të zhbllokojë cilësi më të larta video" Ndryshimet e cilësisë zbatohen vetëm për videon aktuale Cilësia e videos parazgjedhëse në rrjetin Wi-Fi Cilësia e videos parazgjedhëse në rrjetin celular + Mbani mend ndryshimet e cilësisë së Shorts + Ndryshimet e cilësisë zbatohen për të gjitha Shorts + Ndryshimet e cilësisë zbatohen vetëm për Short-in aktual + Cilësia e parazgjedhur e Shorts në rrjetin Wi-Fi + Cilësia e parazgjedhur e Shorts në rrjetin celular celular wifi Ndryshuar cilësia parazgjedhëse %1$s në: %2$s + Cilësia e Shorts u ndryshua nga %1$s në: %2$s Shfaq butonin e dialogut të shpejtësisë @@ -1400,10 +1351,10 @@ Aktivizimi i kësaj mund të zhbllokojë cilësi më të larta video" Videoja HDR është çaktivizuar Videoja HDR është aktivizuar - - Rikthe menynë e vjetër të cilësisë së videos - Menyja e vjetër e cilësisë së videos shfaqet - Menyja e vjetër e cilësisë së videos nuk shfaqet + + Shfaq menunë e avancuar të cilësisë së videos + Shfaqet menyja e avancuar e cilësisë së videos + Menyja e avancuar e cilësisë së videos nuk shfaqet Aktivizo rrëshqitjen për kërkim diff --git a/patches/src/main/resources/addresources/values-sr-rCS/strings.xml b/patches/src/main/resources/addresources/values-sr-rCS/strings.xml index c85c780f9f..7a7277ba07 100644 --- a/patches/src/main/resources/addresources/values-sr-rCS/strings.xml +++ b/patches/src/main/resources/addresources/values-sr-rCS/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Da biste preveli nove jezike, posetite translate.revanced.app" Jezik aplikacije - Arapski - Azerbejdžanski - Bugarski - Bengalski - Katalonski - Češki - Danski - Nemački - Grčki - Engleski - Španski - Estonski - Persijski - Finski - Francuski - Gudžarati - Hindi - Hrvatski - Mađarski - Indonežanski - Italijanski - Japanski - Kazaški - Korejski - Litvanski - Letonski - Makedonski - Mongolski - Marati - Malajski - Burmanski - Holandski - Odija - Pandžapski - Poljski - Portugalski - Rumunski - Ruski - Slovački - Slovenački - Srpski - Švedski - Svahili - Tamilski - Telugu - Tajlandski - Turski - Ukrajinski - Urdu - Vijetnamski - Kineski Uvoz / Izvoz Uvoz / Izvoz podešavanja ReVanceda @@ -404,7 +353,7 @@ Ova funkcija je dostupna samo za starije uređaje" Sakrij kartice samosponzorstva Kartice samosponzorstva su skrivene Kartice samosponzorstva su prikazane - Sakrij baner za gledanje proizvoda + Sakrij baner „Pogledajte proizvode” Baner za gledanje proizvoda je skriven Baner za gledanje proizvoda je prikazan Sakrij baner prodavnice na završnom ekranu @@ -1117,12 +1066,10 @@ Spreman za podnošenje?" Automobilski "Promene uključuju: -Izgled „Tablet” +Izgled tableta • Objave zajednice su skrivene -Izgled „Automobilski” -• Meni „Istorija gledanja” je skriven -• Kartica „Istražite” je vraćena +Automobilski izgled • Shorts videi se otvaraju u običnom plejeru • Fid je organizovan po temama i kanalima" @@ -1247,8 +1194,6 @@ Prevucite za proširenje ili zatvaranje" Omogući gradijentnu pozadinu ekrana učitavanja Ekran učitavanja će imati gradijentnu pozadinu Ekran učitavanja će imati običnu pozadinu - - Omogući prilagođenu boju trake za premotavanje Prilagođena boja trake za premotavanje je prikazana Originalna boja trake za premotavanje je prikazana @@ -1340,8 +1285,8 @@ Ako ovo omogućite, mogu biti otključani viši kvaliteti videa" Otvori linkove u pregledaču - Otvaranje linkova van aplikacije - Otvaranje linkova u aplikaciji + Otvaranje linkova u spoljnom pregledaču + Otvaranje linkova u pregledaču u aplikaciji Ukloni parametar upita za praćenje @@ -1368,9 +1313,15 @@ Ako ovo omogućite, mogu biti otključani viši kvaliteti videa" Promene kvaliteta se primenjuju samo na trenutni video Podrazumevani kvalitet videa na Wi-Fi mreži Podrazumevani kvalitet videa na mobilnoj mreži + Zapamti promene kvaliteta Shorts videa + Promene kvaliteta se primenjuju na sve Shorts videe + Promene kvaliteta se primenjuju samo na trenutni Shorts video + Podrazumevani kvalitet Shorts videa na Wi-Fi mreži + Podrazumevani kvalitet Shorts videa na mobilnoj mreži mobilnoj mreži Wi-Fi mreži Kvalitet na %1$s promenjen na: %2$s + Kvalitet Shorts videa na %1$s promenjen na: %2$s Prikaži dugme dijaloga za brzinu @@ -1401,10 +1352,10 @@ Ako ovo omogućite, mogu biti otključani viši kvaliteti videa" HDR video je onemogućen HDR video je omogućen - - Vrati stari meni kvaliteta videa - Stari meni kvaliteta videa je prikazan - Stari meni kvaliteta videa nije prikazan + + Prikaži napredni meni kvaliteta videa + Napredni meni kvaliteta videa je prikazan + Napredni meni kvaliteta videa nije prikazan Omogući prevlačenje za premotavanje @@ -1434,7 +1385,7 @@ AVC ima maksimalnu rezoluciju od 1080p, audio kodek Opus nije dostupan, a reprod Neželjeni efekti lažiranja na Android "• Meni „Audio snimak” nedostaje • Ujednačena jačina zvuka nije dostupna -• Opcija „Prisili originalan zvuk” nije dostupna" +• Opcija „Prisili originalni zvuk” nije dostupna" • Nema video kodeka AV1 • Videi za decu se možda neće puštati kada ste odjavljeni ili u režimu bez arhiviranja Prikaži u „Statistici za znalce” diff --git a/patches/src/main/resources/addresources/values-sr-rSP/strings.xml b/patches/src/main/resources/addresources/values-sr-rSP/strings.xml index 3b2d0872c5..4eb71c3bde 100644 --- a/patches/src/main/resources/addresources/values-sr-rSP/strings.xml +++ b/patches/src/main/resources/addresources/values-sr-rSP/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Да бисте превели нове језике, посетите translate.revanced.app" Језик апликације - Арапски - Азербејџански - Бугарски - Бенгалски - Каталонски - Чешки - Дански - Немачки - Грчки - Енглески - Шпански - Естонски - Персијски - Фински - Француски - Гуџарати - Хинди - Хрватски - Мађарски - Индонежански - Италијански - Јапански - Казашки - Корејски - Литвански - Летонски - Македонски - Монголски - Марати - Малајски - Бурмански - Холандски - Одија - Панџапски - Пољски - Португалски - Румунски - Руски - Словачки - Словеначки - Српски - Шведски - Свахили - Тамилски - Телугу - Тајландски - Турски - Украјински - Урду - Вијетнамски - Кинески Увоз / Извоз Увоз / Извоз подешавања ReVanced-а @@ -404,7 +353,7 @@ Second \"item\" text" Сакриј картице самоспонзорства Картице самоспонзорства су скривене Картице самоспонзорства су приказане - Сакриј банер за гледање производа + Сакриј банер „Погледајте производе” Банер за гледање производа је скривен Банер за гледање производа је приказан Сакриј банер продавнице на завршном екрану @@ -1117,12 +1066,10 @@ Second \"item\" text" Аутомобилски "Промене укључују: -Изглед „Таблет” +Изглед таблета • Објаве заједнице су скривене -Изглед „Аутомобилски” -• Мени „Историја гледања” је скривен -• Картица „Истражите” је враћена +Аутомобилски изглед • Shorts видеи се отварају у обичном плејеру • Фид је организован по темама и каналима" @@ -1247,8 +1194,6 @@ Second \"item\" text" Омогући градијентну позадину екрана учитавања Екран учитавања ће имати градијентну позадину Екран учитавања ће имати обичну позадину - - Омогући прилагођену боју траке за премотавање Прилагођена боја траке за премотавање је приказана Оригинална боја траке за премотавање је приказана @@ -1340,8 +1285,8 @@ Second \"item\" text" Отвори линкове у прегледачу - Отварање линкова ван апликације - Отварање линкова у апликацији + Отварање линкова у спољном прегледачу + Отварање линкова у прегледачу у апликацији Уклони параметар упита за праћење @@ -1354,7 +1299,7 @@ Second \"item\" text" Вибрација при увеличавању је омогућена - Присили оригинални аудио језик + Присили оригинални језик звука Коришћење оригиналног језика звука Коришћење подразумеваног звука @@ -1368,9 +1313,15 @@ Second \"item\" text" Промене квалитета се примењују само на тренутни видео Подразумевани квалитет видеа на Wi-Fi мрежи Подразумевани квалитет видеа на мобилној мрежи + Запамти промене квалитета Shorts видеа + Промене квалитета се примењују на све Shorts видее + Промене квалитета се примењују само на тренутни Shorts видео + Подразумевани квалитет Shorts видеа на Wi-Fi мрежи + Подразумевани квалитет Shorts видеа на мобилној мрежи мобилној мрежи Wi-Fi мрежи Квалитет на %1$s промењен на: %2$s + Квалитет Shorts видеа на %1$s промењен на: %2$s Прикажи дугме дијалога за брзину @@ -1401,10 +1352,10 @@ Second \"item\" text" HDR видео је онемогућен HDR видео је омогућен - - Врати стари мени квалитета видеа - Стари мени квалитета видеа је приказан - Стари мени квалитета видеа није приказан + + Прикажи напредни мени квалитета видеа + Напредни мени квалитета видеа је приказан + Напредни мени квалитета видеа није приказан Омогући превлачење за премотавање @@ -1434,7 +1385,7 @@ AVC има максималну резолуцију од 1080p, аудио ко Нежељени ефекти лажирања на Android "• Мени „Аудио снимак” недостаје • Уједначена јачина звука није доступна -• Опција „Присили оригиналан звук” није доступна" +• Опција „Присили оригинални звук” није доступна" • Нема видео кодека AV1 • Видеи за децу се можда неће пуштати када сте одјављени или у режиму без архивирања Прикажи у „Статистици за зналце” diff --git a/patches/src/main/resources/addresources/values-sv-rSE/strings.xml b/patches/src/main/resources/addresources/values-sv-rSE/strings.xml index 68ba3022ff..c28161fff4 100644 --- a/patches/src/main/resources/addresources/values-sv-rSE/strings.xml +++ b/patches/src/main/resources/addresources/values-sv-rSE/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" För att översätta till nya språk besök translate.revanced.app" Språk i app - Arabiska - Azerbajdzjanska - Bulgariska - Bengali - Katalanska - Tjeckiska - Danska - Tyska - Grekiska - Engelska - Spanska - Estniska - Persiska - Finska - Franska - Gujarati - Hindi - Kroatiska - Ungerska - Indonesiska - Italienska - Japanska - Kazakiska - Koreanska - Litauiska - Lettiska - Makedonska - Mongoliska - Marathi - Malajiska - Burmesiska - Nederländska - Odia - Punjabi - Polska - Portugisiska - Rumänska - Ryska - Slovakiska - Slovenska - Serbiska - Svenska - Swahili - Tamil - Telugu - Thailändska - Turkiska - Ukrainska - Urdu - Vietnamesiska - Kinesiska Importera / Exportera Importera / Exportera ReVanced-inställningar @@ -404,7 +353,7 @@ Den här funktionen är endast tillgänglig för äldre enheter" Dölj självsponsrade kort Självsponsrade kort är dolda Självsponsrade kort är synliga - Dölj banner för att visa produkter + Dölj \"Visa produkter\"-banner Banner är dold Banner är synlig Dölj bannern för butik på slutskärmen @@ -663,7 +612,7 @@ Om du ändrar den här inställningen och det inte får effekt kan du försöka Videokvalitets sidfot visas - Dölj tidigare & nästa videoknappar + Dölj Föregående & Nästa knappar Knappar är dolda Knappar är synliga Dölj cast-knappen @@ -1117,14 +1066,12 @@ Redo att skicka in?" Bil "Ändringar inkluderar: -Surfplatta-layout -• Community-inlägg är dolda +Tabletlayout +• Communityinlägg är dolda -Billautomation -• Tittningshistorikmenyn är dold -• Utforska-fliken är återställd +Automotive-layout • Shorts öppnas i den vanliga spelaren -• Flödet är organiserat efter ämnen och kanal" +• Flödet är organiserat efter ämnen och kanaler" Spoof app-version @@ -1194,7 +1141,7 @@ Om det senare stängs av rekommenderas det att rensa appens data för att förhi Minispelare - Ändra stilen på appen minimerad spelare + Ändra stilen på den minimerade spelaren i appen Miniplayer typ Inaktiverad Standard @@ -1247,8 +1194,6 @@ Svep för att expandera eller stänga" Aktivera gradient laddar skärmen Laddar skärmen kommer att ha en lutande bakgrund Laddar skärmen kommer att ha en solid bakgrund - - Aktivera anpassad sökfält färg Anpassad sökfält färg visas Original sökfält färg visas @@ -1340,8 +1285,8 @@ Att aktivera detta kan låsa upp högre videokvalitet" Öppna länkar i webbläsaren - Öppna länkar externt - Öppna länkar i appen + Öppna länkar i extern webbläsare + Öppna länkar i webbläsaren i appen Ta bort spårningsfrågeparameter @@ -1368,9 +1313,15 @@ Att aktivera detta kan låsa upp högre videokvalitet" Kvalitetsförändringar gäller endast för den aktuella videon Standard videokvalitet på Wi-Fi-nätverk Standard videokvalitet på mobilt nätverk + Kom ihåg kvalitetsändringar för Shorts + Kvalitetsändringar gäller alla Shorts + Kvalitetsändringar gäller endast aktuell Short + Standardkvalitet för Shorts på Wi-Fi-nätverk + Standardkvalitet för Shorts på mobilnätverk mobil wifi Ändrade standardkvalitet %1$s till: %2$s + Ändrade Shorts %1$s-kvalitet till: %2$s Visa hastighetsdialogruta knapp @@ -1401,10 +1352,10 @@ Att aktivera detta kan låsa upp högre videokvalitet" HDR-video är inaktiverat HDR-video är aktiverat - - Återställ gamla videokvalitetsmenyn - Gammal videokvalitetsmeny visas - Gamla videokvalitetsmenyn visas inte + + Visa avancerad videokvalitetsmeny + Avancerad videokvalitetsmeny visas + Avancerad videokvalitetsmeny visas inte Aktivera glid för att söka diff --git a/patches/src/main/resources/addresources/values-sw-rKE/strings.xml b/patches/src/main/resources/addresources/values-sw-rKE/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-sw-rKE/strings.xml +++ b/patches/src/main/resources/addresources/values-sw-rKE/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-ta-rIN/strings.xml b/patches/src/main/resources/addresources/values-ta-rIN/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-ta-rIN/strings.xml +++ b/patches/src/main/resources/addresources/values-ta-rIN/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-te-rIN/strings.xml b/patches/src/main/resources/addresources/values-te-rIN/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-te-rIN/strings.xml +++ b/patches/src/main/resources/addresources/values-te-rIN/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-th-rTH/strings.xml b/patches/src/main/resources/addresources/values-th-rTH/strings.xml index 2a63023f68..88f4038e0c 100644 --- a/patches/src/main/resources/addresources/values-th-rTH/strings.xml +++ b/patches/src/main/resources/addresources/values-th-rTH/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" เพื่อแปลภาษาใหม่ ไปที่ translate.revanced.app" ภาษาของแอป - อาหรับ - อาเซอร์ไบจาน - บัลแกเรีย - เบงกาลี - กาตาลัน - เช็ก - เดนมาร์ก - เยอรมัน - กรีก - อังกฤษ - สเปน - เอสโตเนีย - เปอร์เซีย - ฟินแลนด์ - ฝรั่งเศส - คุชราต - ฮินดี - โครเอเชีย - ฮังการี - อินโดนีเซีย - อิตาลี - ญี่ปุ่น - คาซัค - เกาหลี - ลิทัวเนีย - ลัตเวีย - มาซิโดเนีย - มองโกเลีย - มราฐี - มาเลเซีย - พม่า - ดัตช์ - โอเดีย - ปัญจาบ - โปแลนด์ - โปรตุเกส - โรมาเนีย - รัสเซีย - สโลวัก - สโลวีเนีย - เซอร์เบีย - สวีเดน - สวาฮีลี - ทมิฬ - เตลูกู - ไทย - ตุรกี - ยูเครน - อูรดู - เวียดนาม - จีน นำเข้า / ส่งออก นำเข้า / ส่งออกการตั้งค่า ReVanced @@ -404,7 +353,7 @@ Second \"item\" text" ซ่อนการ์ดที่สนับสนุนตัวเอง การ์ดที่สนับสนุนตัวเองถูกซ่อน การ์ดที่สนับสนุนตัวเองจะแสดง - ซ่อนแบนเนอร์เพื่อดูผลิตภัณฑ์ + ซ่อนแบนเนอร์ \'ดูผลิตภัณฑ์\' แบนเนอร์ถูกซ่อน แบนเนอร์จะแสดง ซ่อนแบนเนอร์ร้านค้าท้ายจอ @@ -661,7 +610,7 @@ Second \"item\" text" ส่วนท้ายเมนูคุณภาพวิดีโอแสดงอยู่ - ซ่อนปุ่มวิดีโอก่อนหน้าและถัดไป + ซ่อนปุ่มก่อนหน้า & ถัดไป ปุ่มซ่อนอยู่ ปุ่มแสดงอยู่ ซ่อนปุ่มส่ง @@ -1114,16 +1063,14 @@ User id ของคุณเหมือนกับรหัสผ่าน โทรศัพท์ แท็บเล็ต ยานยนต์ - "การเปลี่ยนแปลงรวม: + "การเปลี่ยนแปลงรวมถึง: -เค้าโครงแท็บเล็ต +รูปแบบแท็บเล็ต • โพสต์ชุมชนถูกซ่อน -เค้าโครงยานยนต์ -• เมนูดูประวัติถูกลบ -• แท็บสำรวจได้รับการกู้คืน -• ช็อตเปิดในเครื่องเล่นปกติ -• ฟีดถูกจัดระเบียบตามหัวข้อและช่อง" +รูปแบบยานยนต์ +• Shorts เปิดในเครื่องเล่นปกติ +• ฟีดจัดระเบียบตามหัวข้อและช่อง" ปลอมแปลงเวอร์ชันแอป @@ -1193,7 +1140,7 @@ User id ของคุณเหมือนกับรหัสผ่าน มินิเพลเยอร์ - เปลี่ยนสไตล์ของเครื่องเล่นย่อขนาดในแอป + เปลี่ยนรูปแบบของเครื่องเล่นขนาดเล็กในแอป ประเภทของเครื่องเล่นย่อขนาด ปิดการใช้งานอยู่ ค่าเริ่มต้น @@ -1246,8 +1193,6 @@ User id ของคุณเหมือนกับรหัสผ่าน เปิดใช้งานหน้าจอโหลดแบบไล่ระดับสี หน้าจอโหลดจะมีพื้นหลังแบบไล่ระดับสี หน้าจอโหลดจะมีพื้นหลังแบบทึบ - - เปิดใช้งานสีแถบเลื่อนแบบกำหนดเอง แสดงสีแถบเลื่อนแบบกำหนดเอง แสดงสีแถบเลื่อนดั้งเดิม @@ -1339,8 +1284,8 @@ User id ของคุณเหมือนกับรหัสผ่าน เปิดลิงก์ในเบราว์เซอร์ - เปิดลิงก์ภายนอก - เปิดลิงก์ในแอป + เปิดลิงก์ในเบราว์เซอร์ภายนอก + เปิดลิงก์ในเบราว์เซอร์ในแอป ลบพารามิเตอร์การติดตามแบบสอบถาม @@ -1367,9 +1312,15 @@ User id ของคุณเหมือนกับรหัสผ่าน การเปลี่ยนแปลงคุณภาพใช้กับวิดีโอปัจจุบันเท่านั้น คุณภาพวิดีโอเริ่มต้นบนเครือข่าย Wi-Fi คุณภาพวิดีโอเริ่มต้นบนเครือข่ายมือถือ + จดจำการเปลี่ยนแปลงคุณภาพของ Shorts + การเปลี่ยนแปลงคุณภาพมีผลกับ Shorts ทั้งหมด + การเปลี่ยนแปลงคุณภาพมีผลกับ Short ปัจจุบันเท่านั้น + คุณภาพ Shorts เริ่มต้นบนเครือข่าย Wi-Fi + คุณภาพ Shorts เริ่มต้นบนเครือข่ายมือถือ มือถือ wifi เปลี่ยนคุณภาพ %1$s เริ่มต้นเป็น: %2$s + เปลี่ยนคุณภาพ Shorts %1$s เป็น: %2$s แสดงปุ่มกล่องโต้ตอบความเร็ว @@ -1400,10 +1351,10 @@ User id ของคุณเหมือนกับรหัสผ่าน ปิดใช้งานวิดีโอ HDR เปิดใช้งานวิดีโอ HDR - - คืนค่าเมนูกำหนดคุณภาพวิดีโอแบบเก่า - แสดงเมนูกำหนดคุณภาพวิดีโอแบบเก่า - ไม่แสดงเมนูกำหนดคุณภาพวิดีโอแบบเก่า + + แสดงเมนูคุณภาพวิดีโอขั้นสูง + เมนูคุณภาพวิดีโอขั้นสูงปรากฏขึ้น + เมนูคุณภาพวิดีโอขั้นสูงไม่ปรากฏ เปิดใช้งานเลื่อนเพื่อค้นหา diff --git a/patches/src/main/resources/addresources/values-tr-rTR/strings.xml b/patches/src/main/resources/addresources/values-tr-rTR/strings.xml index efd935d02d..3dac0c7dc7 100644 --- a/patches/src/main/resources/addresources/values-tr-rTR/strings.xml +++ b/patches/src/main/resources/addresources/values-tr-rTR/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Yeni dilleri çevirmek için translate.revanced.app adresini ziyaret edin" Uygulama dili - Arapça - Azerice - Bulgarca - Bengalce - Katalanca - Çekçe - Danca - Almanca - Yunanca - İngilizce - İspanyolca - Estonca - Farsça - Fince - Fransızca - Gujarati - Hintçe - Hırvatça - Macarca - Endonezce - İtalyanca - Japonca - Kazakça - Korece - Litvanyaca - Letonca - Makedonca - Moğolca - Marathi - Malayca - Birmanca - Hollandaca - Odia - Pencapça - Lehçe - Portekizce - Romence - Rusça - Slovakça - Slovence - Sırpça - İsveççe - Svahili Dili - Tamilce - Teluguca - Tayca - Türkçe - Ukraynaca - Urduca - Vietnamca - Çince İçe / Dışa aktar ReVanced ayarlarını içe / dışa aktar @@ -404,7 +353,7 @@ Bu özellik yalnızca eski cihazlarda kullanılabilir" Kendine sponsor kartları gizle Kendine sponsor kartlar gizli Kendine sponsor kartlar görünür - Ürünleri görme afişini gizle + \'Ürünleri görüntüle\' başlığını gizle Afiş gizli Afiş görünür Bitiş ekranındaki mağaza afişini gizle @@ -663,7 +612,7 @@ Bu ayarı değiştirmek etkili olmazsa, Gizli moda geçmeyi deneyin." Video kalite menüsü alt bilgisi görünür - Önceki & Sonraki video düğmelerini gizle + Önceki & Sonraki düğmelerini gizle Düğmeler gizli Düğmeler görünür Yayınla düğmesini gizle @@ -1122,10 +1071,8 @@ Tablet düzeni • Topluluk yayınları gizlenir Otomotiv düzeni -• İzleme geçmişi menüsü gizlenir -• Keşfet sekmesi geri getirilir -• Shorts normal oynatıcıda açılır -• Akış, konulara ve kanala göre düzenlenir" +• Shorts, normal oynatıcıda açılır +• Akış, konulara ve kanallara göre düzenlenir" Uygulama sürümünü taklit et @@ -1248,8 +1195,6 @@ Genişletmek veya kapatmak için kaydırın" Gradyan yükleme ekranını etkinleştir Yükleme ekranı gradyan bir arka plana sahip olacak Yükleme ekranı tek renk bir arka plana sahip olacak - - Özel zaman çubuğu rengini etkinleştir Özel zaman çubuğu rengi gösterilir Orijinal zaman çubuğu rengi gösterilir @@ -1341,8 +1286,8 @@ Bunu etkinleştirmek daha yüksek video kalitelerini açabilir" Bağlantıları tarayıcıda aç - Bağlantılar harici olarak açılıyor - Bağlantılar uygulamada açılıyor + Bağlantılar harici tarayıcıda açılıyor + Bağlantılar uygulama içi tarayıcıda açılıyor İzleyici sorgu parametresini kaldır @@ -1369,9 +1314,15 @@ Bunu etkinleştirmek daha yüksek video kalitelerini açabilir" Kalite değişiklikleri sadece oynatılan videoya uygulanır Wi-Fi ağındaki varsayılan video kalitesi Mobil ağdaki varsayılan video kalitesi + Shorts kalitesi değişikliklerini hatırla + Kalite değişiklikleri tüm Shorts\'lara uygulanır + Kalite değişiklikleri sadece oynatılan Short\'a uygulanır + Wi-Fi ağındaki varsayılan Shorts kalitesi + Mobil ağdaki varsayılan Shorts kalitesi mobil ağ wifi Varsayılan %1$s kalitesi, %2$s olarak ayarlandı + Shorts %1$s kalitesi, %2$s olarak ayarlandı Hız diyaloğu düğmesini göster @@ -1402,10 +1353,10 @@ Bunu etkinleştirmek daha yüksek video kalitelerini açabilir" HDR video devre dışı HDR video etkin - - Eski video kalite menüsünü geri getir - Eski video kalite menüsü gösterilir - Eski video kalite menüsü gösterilmez + + Gelişmiş video kalitesi menüsünü göster + Gelişmiş video kalitesi menüsü gösterilir + Gelişmiş video kalitesi menüsü gösterilmez Kaydırarak sardırmayı etkinleştir diff --git a/patches/src/main/resources/addresources/values-uk-rUA/strings.xml b/patches/src/main/resources/addresources/values-uk-rUA/strings.xml index b67f355b0d..52de1cb5fb 100644 --- a/patches/src/main/resources/addresources/values-uk-rUA/strings.xml +++ b/patches/src/main/resources/addresources/values-uk-rUA/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Щоб перекласти нові мови, відвідайте translate.revanced.app" Мова застосунку - Арабська - Азербайджанська - Болгарська - Бенгальська - Каталонська - Чеська - Данська - Німецька - Грецька - Англійська - Іспанська - Естонська - Перська - Фінська - Французька - Гуджараті - Гінді - Хорватська - Угорська - Індонезійська - Італійська - Японська - Казахська - Корейська - Литовська - Латвійська - Македонська - Монгольська - Маратхі - Малайська - Бірманська - Нідерландська - Одійська - Панджабі - Польська - Португальська - Румунська - Російська - Словацька - Словенська - Сербська - Шведська - Суахілі - Тамільська - Телугу - Тайська - Турецька - Українська - Урду - В\'єтнамська - Китайська Імпорт / Експорт налаштувань Імпорт / Експорт налаштувань ReVanced\n\nДля збереження налаштувань скопіюйте текст у вікні кнопкою \"Копіювати\" та збережіть його в текстовому файлі.\nДля відновлення налаштувань вставте у вікно збережений раніше текст та натисніть кнопку \"Імпортувати\" @@ -404,9 +353,9 @@ Second \"item\" text" Приховати картки само спонсорства Картки само спонсорства приховано Картки само спонсорства показуються - Приховати банер для перегляду товарів - Банер для перегляду товарів приховано - Банер для перегляду товарів показується + Приховати банер \"Перегляд товарів\" + Банер перегляду товарів приховано + Банер перегляду товарів показується Приховати банер магазину на кінцевому екрані Рекламний банер магазину на кінцевому екрані приховано Рекламний банер магазину на кінцевому екрані показується @@ -663,7 +612,7 @@ Second \"item\" text" Нижній колонтитул меню якості відео показується - Приховати кнопки попереднє та наступне + Приховати кнопки Попереднє та Наступне Кнопки попереднього та наступного відео приховано Кнопки попереднього та наступного відео показуються Приховати кнопку \"Трансляція\" @@ -1121,8 +1070,6 @@ Second \"item\" text" • Публікації спільноти приховані Автомобільний макет -• Меню історії переглядів приховано -• Відновлено вкладку \"Навігатор\" • Shorts відкриваються у звичайному плеєрі • Стрічка впорядкована за темами та каналами" @@ -1194,7 +1141,7 @@ Second \"item\" text" Мініплеєр - Змінити стиль згорнутого мініплеєра + Змінити стиль згорнутого мініплеєра у застосунку Тип мініплеєра Вимкнено Стандартний @@ -1247,8 +1194,6 @@ Second \"item\" text" Увімкнути градієнт завантаження Екран завантаження макета матиме градієнтне тло Екран завантаження макета матиме суцільне тло - - Увімкнути користувацький колір Показується користувацький колір панелі прогресу Показується оригінальний колір панелі прогресу @@ -1340,8 +1285,8 @@ Second \"item\" text" Відкривати посилання у браузері - Посилання відкриваються зовні - Посилання відкриваються у додатку + Посилання відкриваються у зовнішньому браузері + Посилання відкриваються у вбудованому браузері Вилучити параметр відстеження @@ -1366,11 +1311,17 @@ Second \"item\" text" Запам\'ятовувати зміни якості відео Зміни якості застосовуються до всіх відео Зміни якості застосовуються лише до поточного відео - Стандартна якість відео в Wi-Fi мережі + Стандартна якість відео у Wi-Fi мережі Стандартна якість відео в мобільній мережі - в моб. мережі + Запам\'ятовувати зміни якості Shorts + Зміни якості застосовуються до всіх Shorts + Зміни якості застосовуються лише до поточного Short + Стандартна якість Shorts у Wi-Fi мережі + Стандартна якість Shorts у мобільній мережі + в мобільній мережі в Wi-Fi мережі Якість %1$s змінено на %2$s + Якість Shorts %1$s змінено на %2$s Кнопка швидкості відтворення @@ -1401,10 +1352,10 @@ Second \"item\" text" HDR відео вимкнено HDR відео увімкнено - - Відновити старе меню якості відео - Показується старе меню якості відео - Показується нове меню якості відео + + Показувати розширене меню якості відео + Розширене меню якості відео показується + Розширене меню якості відео не показується Увімкнути перемотку пересуванням diff --git a/patches/src/main/resources/addresources/values-ur-rIN/strings.xml b/patches/src/main/resources/addresources/values-ur-rIN/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-ur-rIN/strings.xml +++ b/patches/src/main/resources/addresources/values-ur-rIN/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-uz-rUZ/strings.xml b/patches/src/main/resources/addresources/values-uz-rUZ/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-uz-rUZ/strings.xml +++ b/patches/src/main/resources/addresources/values-uz-rUZ/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values-vi-rVN/strings.xml b/patches/src/main/resources/addresources/values-vi-rVN/strings.xml index 2d5dc065ef..b317717a7a 100644 --- a/patches/src/main/resources/addresources/values-vi-rVN/strings.xml +++ b/patches/src/main/resources/addresources/values-vi-rVN/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" Để dịch các ngôn ngữ mới, hãy truy cập translate.revanced.app" Ngôn ngữ ứng dụng - Tiếng Ả Rập - Tiếng Azerbaijan - Tiếng Bulgaria - Tiếng Bengal - Tiếng Catalan - Tiếng Séc - Tiếng Đan Mạch - Tiếng Đức - Tiếng Hy Lạp - Tiếng Anh - Tiếng Tây Ban Nha - Tiếng Estonia - Tiếng Ba Tư - Tiếng Phần Lan - Tiếng Pháp - Tiếng Gujarati - Tiếng Hindi - Tiếng Croatia - Tiếng Hungary - Tiếng Indonesia - Tiếng Ý - Tiếng Nhật - Tiếng Kazakh - Tiếng Hàn - Tiếng Litva - Tiếng Latvia - Tiếng Macedonia - Tiếng Mông Cổ - Tiếng Marathi - Tiếng Mã Lai - Tiếng Miến Điện - Tiếng Hà Lan - Tiếng Odia - Tiếng Punjabi - Tiếng Ba Lan - Tiếng Bồ Đào Nha - Tiếng Romania - Tiếng Nga - Tiếng Slovak - Tiếng Slovenia - Tiếng Serbia - Tiếng Thụy Điển - Tiếng Swahili - Tiếng Tamil - Tiếng Telugu - Tiếng Thái - Tiếng Thổ Nhĩ Kỳ - Tiếng Ukraina - Tiếng Urdu - Tiếng Việt - Tiếng Trung Nhập / Xuất Nhập / Xuất cài đặt ReVanced @@ -404,7 +353,7 @@ Tính năng này chỉ khả dụng cho các thiết bị cũ hơn" Ẩn thẻ tự tài trợ Thẻ được tài trợ được ẩn Thẻ được tài trợ được hiện - Ẩn biểu ngữ để xem sản phẩm + Ẩn biểu ngữ \'Xem sản phẩm\' Biểu ngữ được ẩn Biểu ngữ được hiện Ẩn biểu ngữ cửa hàng ở cuối màn hình @@ -663,7 +612,7 @@ Nếu việc thay đổi cài đặt này không có hiệu lực, hãy thử ch Trình đơn chất lượng video bên dưới được hiện - Ẩn các nút video trước đó & tiếp theo + Ẩn các nút Trước & Tiếp theo Các nút được ẩn Các nút được hiện Ẩn nút Phát sóng @@ -1121,9 +1070,7 @@ Bố cục máy tính bảng • Bài đăng trên cộng đồng bị ẩn Bố cục ô tô -• Menu lịch sử xem bị ẩn -• Tab khám phá đã được khôi phục -• Kệ Shorts mở trong trình phát thông thường +• Shorts mở trong trình phát thông thường • Bảng Feed được sắp xếp theo chủ đề và kênh" @@ -1247,8 +1194,6 @@ Vuốt để mở rộng hoặc đóng" Bật màn hình tải màu dốc Màn hình tải sẽ có một nền màu dốc Màn hình tải sẽ có một nền màu đặc - - Bật màu tùy chỉnh thanh tiến trình Màu tùy chỉnh thanh tiến trình được hiện Màu gốc thanh tiến trình được hiện @@ -1340,8 +1285,8 @@ Bật tính năng này có thể mở khóa chất lượng video cao hơn" Mở liên kết trong trình duyệt - Đang mở liên kết bên ngoài - Đang mở liên kết trong ứng dụng + Đang mở liên kết trong trình duyệt bên ngoài + Đang mở liên kết trình duyệt trong ứng dụng Loại bỏ tham số truy vấn theo dõi @@ -1368,9 +1313,15 @@ Bật tính năng này có thể mở khóa chất lượng video cao hơn"Thay đổi chất lượng chỉ áp dụng cho video hiện tại Chất lượng mặc định trên mạng Wi-Fi Chất lượng mặc định trên mạng di động + Ghi nhớ các thay đổi chất lượng Shorts + Thay đổi chất lượng áp dụng cho tất cả nội dung Shorts + Thay đổi chất lượng chỉ áp dụng cho Short hiện tại + Chất lượng Shorts mặc định trên mạng Wi-Fi + Chất lượng Shorts mặc định trên mạng di động di động wifi Đã thay đổi chất lượng %1$s mặc định: %2$s + Đã thay đổi chất lượng Shorts %1$s: %2$s Hiện nút hộp thoại tốc độ phát @@ -1401,10 +1352,10 @@ Bật tính năng này có thể mở khóa chất lượng video cao hơn"Video HDR đã bị tắt Video HDR đã được bật - - Khôi phục trình đơn chất lượng video kiểu cũ - Trình đơn chất lượng video kiểu cũ được hiện - Trình đơn chất lượng video kiểu cũ không được hiện + + Hiển thị trình đơn chất lượng video nâng cao + Trình đơn chất lượng video nâng cao được hiển thị + Trình đơn chất lượng video nâng cao không được hiển thị Bật vuốt để tua diff --git a/patches/src/main/resources/addresources/values-zh-rCN/strings.xml b/patches/src/main/resources/addresources/values-zh-rCN/strings.xml index 7450905166..f86f6c6e1c 100644 --- a/patches/src/main/resources/addresources/values-zh-rCN/strings.xml +++ b/patches/src/main/resources/addresources/values-zh-rCN/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" 若要翻译为新语言,请访问 translate.revanced.app" 应用语言 - 阿拉伯语 - 阿塞拜疆语 - 保加利亚语 - 孟加拉语 - 加泰罗尼亚语 - 捷克语 - 丹麦语 - 德语 - 希腊语 - 英语 - 西班牙语 - 爱沙尼亚语 - 波斯语 - 芬兰语 - 法语 - 古吉拉特语 - 印地语 - 克罗地亚语 - 匈牙利语 - 印尼语 - 意大利语 - 日语 - 哈萨克语 - 朝鲜语 - 立陶宛语 - 拉脱维亚语 - 马其顿语 - 蒙古语 - 马拉地语 - 马来语 - 缅甸语 - 荷兰语 - 奥里亚语 - 旁遮普语 - 波兰语 - 葡萄牙语 - 罗马尼亚语 - 俄语 - 斯洛伐克语 - 斯洛文尼亚语 - 塞尔维亚语 - 瑞典语 - 斯瓦希里语 - 泰米尔语 - 泰卢固语 - 泰语 - 土耳其语 - 乌克兰语 - 乌尔都语 - 越南语 - 中文 导入/导出 导入/导出 ReVanced 设置 @@ -404,7 +353,7 @@ Second \"item\" text" 隐藏自我推广卡片 自我推广卡片已隐藏 自我推广卡片已显示 - 隐藏产品横幅 + 隐藏“查看商品”横幅 横幅已隐藏 横幅已显示 隐藏片尾画面商店横幅 @@ -663,7 +612,7 @@ Second \"item\" text" 画质选单页脚已显示 - 隐藏上一个 &下一个视频按钮 + 隐藏上一个和下一个按钮 按钮已隐藏 按钮已显示 隐藏「投屏」按钮 @@ -1123,13 +1072,11 @@ Second \"item\" text" "更改包括: 平板电脑布局 -• 社区帖子隐藏 +• 社区帖子已隐藏 汽车布局 -• 观看历史菜单隐藏 -• 探索选项卡已恢复 -• 在常规播放器中打开 Shorts -• 时间轴按主题和频道排序" +• Shorts 在常规播放器中打开 +• Feed 按主题和频道组织" 伪装应用程序版本 @@ -1154,8 +1101,11 @@ Second \"item\" text" 设置起始页 默认 + 所有订阅频道 浏览频道 + 学习 探索 + 时尚和美容 游戏 历史记录 @@ -1165,11 +1115,13 @@ Second \"item\" text" 音乐 新闻 通知 + 播放列表 搜索 购物 体育 订阅 趋势 + 虚拟实境 稍后观看 你的剪辑 @@ -1194,7 +1146,7 @@ Second \"item\" text" 小型播放器 - 更改应用内小型播放器的样式 + 更改应用内最小化播放器的样式 小型播放器类型 已禁用 默认 @@ -1247,8 +1199,6 @@ Second \"item\" text" 启用渐变加载屏幕 加载屏幕将具有渐变背景 加载屏幕将具有纯色背景 - - 启用自定义进度条颜色 自定义进度条颜色显示 显示原始进度条颜色 @@ -1315,9 +1265,9 @@ Second \"item\" text" 不再显示 - 启用自动重复 - 自动重复已启用 - 自动重复已禁用 + 启用自动重复播放 + 自动重复播放已启用 + 自动重复播放已禁用 伪装设备尺寸 @@ -1340,8 +1290,8 @@ Second \"item\" text" 在浏览器中打开链接 - 在外部打开链接 - 在应用中打开链接 + 在外部浏览器中打开链接 + 在应用内浏览器中打开链接 删除跟踪查询参数 @@ -1368,9 +1318,15 @@ Second \"item\" text" 质量更改仅适用于当前视频 Wi-Fi 网络上的默认视频质量 移动网络上的默认视频质量 + 记住 Shorts 画质更改 + 质量更改适用于所有 Shorts + 质量更改仅适用于当前的 Short + Wi-Fi 网络上的默认 Shorts 画质 + 移动网络上的默认 Shorts 画质 移动网络 无线网络 已将默认 %1$s 质量更改为:%2$s + 已将 Shorts %1$s 的画质更改为:%2$s 显示播放速度对话框按钮 @@ -1401,10 +1357,10 @@ Second \"item\" text" HDR 视频已禁用 HDR 视频已启用 - - 恢复旧的画质菜单 - 旧的画质菜单已显示 - 旧的画质菜单未显示 + + 显示高级视频质量菜单 + 显示高级视频质量菜单 + 不显示高级视频质量菜单 启用滑动拖动进度条 diff --git a/patches/src/main/resources/addresources/values-zh-rTW/strings.xml b/patches/src/main/resources/addresources/values-zh-rTW/strings.xml index 1510ebade6..1e26a25548 100644 --- a/patches/src/main/resources/addresources/values-zh-rTW/strings.xml +++ b/patches/src/main/resources/addresources/values-zh-rTW/strings.xml @@ -48,57 +48,6 @@ Second \"item\" text" 如要翻譯新的語言,請前往 translate.revanced.app。" 應用程式語言 - 阿拉伯文 - 亞塞拜然文 - 保加利亞文 - 孟加拉文 - 加泰隆尼亞文 - 捷克文 - 丹麥文 - 德文 - 希臘文 - 英文 - 西班牙文 - 愛沙尼亞文 - 波斯文 - 芬蘭文 - 法文 - 古吉拉特文 - 印地文 - 克羅埃西亞文 - 匈牙利文 - 印尼文 - 義大利文 - 日文 - 哈薩克文 - 韓文 - 立陶宛文 - 拉脫維亞文 - 馬其頓文 - 蒙古文 - 馬拉地文 - 馬來文 - 緬甸文 - 荷蘭文 - 歐利亞文 - 旁遮普文 - 波蘭文 - 葡萄牙文 - 羅馬尼亞文 - 俄文 - 斯洛伐克文 - 斯洛維尼亞文 - 塞爾維亞文 - 瑞典文 - 斯瓦希里文 - 坦米爾文 - 特拉古文 - 泰文 - 土耳其文 - 烏克蘭文 - 烏都文 - 越南文 - 中文 匯入/匯出 匯入/匯出 ReVanced 設定 @@ -400,7 +349,6 @@ Second \"item\" text" 隱藏自我贊助資訊卡 已隱藏自我贊助資訊卡 已顯示自我贊助資訊卡 - 隱藏檢視產品橫幅 已隱藏橫幅 已顯示橫幅 隱藏片尾商店橫幅 @@ -659,7 +607,6 @@ Second \"item\" text" 已顯示影片畫質選單頁尾 - 隱藏上一部和下一部影片按紐 已隱藏按鈕 已顯示按鈕 隱藏「投影」按鈕 @@ -1112,16 +1059,6 @@ Second \"item\" text" 手機 平板電腦 車用 - "變更包括: - -平板電腦版面配置 -• 隱藏社群貼文 - -車用版面配置 -• 隱藏觀看記錄選單 -• 還原「探索」分頁 -• Shorts 以一般播放器開啟 -• 推薦內容依主題和頻道整理" 偽裝應用程式版本 @@ -1191,7 +1128,6 @@ Second \"item\" text" 迷你播放器 - 變更應用程式中迷你播放器的樣式 迷你播放器類型 停用 預設 @@ -1244,8 +1180,6 @@ Second \"item\" text" 啟用漸層載入畫面 載入畫面將具有漸層背景 載入畫面將具有純色背景 - - 啟用自訂跳轉列顏色 已顯示自訂跳轉列顏色 已顯示原版跳轉列顏色 @@ -1341,8 +1275,6 @@ Second \"item\" text" 在瀏覽器中開啟連結 - 在外部開啟連結 - 在應用程式中開啟連結 移除追蹤查詢參數 @@ -1402,10 +1334,7 @@ Second \"item\" text" 已停用 HDR 影片 已啟用 HDR 影片 - - 還原舊版影片畫質選單 - 已顯示舊版影片畫質選單 - 不顯示舊版影片畫質選單 + 啟用滑動預覽 diff --git a/patches/src/main/resources/addresources/values-zu-rZA/strings.xml b/patches/src/main/resources/addresources/values-zu-rZA/strings.xml index a3d15ba7d4..ca8788fa6d 100644 --- a/patches/src/main/resources/addresources/values-zu-rZA/strings.xml +++ b/patches/src/main/resources/addresources/values-zu-rZA/strings.xml @@ -177,8 +177,6 @@ Second \"item\" text" - - @@ -219,7 +217,7 @@ Second \"item\" text" - + diff --git a/patches/src/main/resources/addresources/values/arrays.xml b/patches/src/main/resources/addresources/values/arrays.xml index 22cfc21cb5..a62906a68b 100644 --- a/patches/src/main/resources/addresources/values/arrays.xml +++ b/patches/src/main/resources/addresources/values/arrays.xml @@ -3,8 +3,10 @@ @string/revanced_language_DEFAULT + @string/revanced_language_AM @string/revanced_language_AR @string/revanced_language_AZ + @string/revanced_language_BE @string/revanced_language_BG @string/revanced_language_BN @string/revanced_language_CA @@ -18,7 +20,9 @@ @string/revanced_language_FA @string/revanced_language_FI @string/revanced_language_FR + @string/revanced_language_GA @string/revanced_language_GU + @string/revanced_language_HE @string/revanced_language_HI @string/revanced_language_HR @string/revanced_language_HU @@ -37,11 +41,13 @@ @string/revanced_language_NL @string/revanced_language_OR @string/revanced_language_PA + @string/revanced_language_PA @string/revanced_language_PL @string/revanced_language_PT @string/revanced_language_RO @string/revanced_language_RU @string/revanced_language_SK + @string/revanced_language_SQ @string/revanced_language_SL @string/revanced_language_SR @string/revanced_language_SV @@ -57,8 +63,10 @@ DEFAULT + AM AR AZ + BE BG BN CA @@ -72,7 +80,9 @@ FA FI FR + GA GU + HE HI HR HU @@ -91,11 +101,13 @@ NL OR PA + PA PL PT RO RU SK + SQ SL SR SV diff --git a/patches/src/main/resources/addresources/values/strings.xml b/patches/src/main/resources/addresources/values/strings.xml index 5a763a3f24..7e015ef08c 100644 --- a/patches/src/main/resources/addresources/values/strings.xml +++ b/patches/src/main/resources/addresources/values/strings.xml @@ -48,57 +48,62 @@ Second \"item\" text" To translate new languages visit translate.revanced.app" App language - Arabic - Azerbaijani - Bulgarian - Bengali - Catalan - Czech - Danish - German - Greek - English - Spanish - Estonian - Persian - Finnish - French - Gujarati - Hindi - Croatian - Hungarian - Indonesian - Italian - Japanese - Kazakh - Korean - Lithuanian - Latvian - Macedonian - Mongolian - Marathi - Malay - Burmese - Dutch - Odia - Punjabi - Polish - Portuguese - Romanian - Russian - Slovak - Slovene - Serbian - Swedish - Swahili - Tamil - Telugu - Thai - Turkish - Ukrainian - Urdu - Vietnamese - Chinese + አማርኛ + العربية + Azərbaycan + беларуская + Български + বাংলা + Català + Čeština + Dansk + Deutsch + Ελληνικάs + English + Español + Eesti + فارسی + Suomi + Français + Gaeilge + ગુજરાતી + עברי + हिन्दी + Hrvatski + Magyar + Indonesia + Italiano + 日本語 + Қазақ тілі + 한국어 + Lietuvių + Latviešu + Македонски + Монгол + मराठी + Melayu + ဗမာ + Nederlands + ଓଡ଼ିଆ + ਪੰਜਾਬੀ + Polski + Português + Română + Русский + Slovenčina + Shqip + Slovenščina + Српски + Svenska + Kiswahili + தமிழ் + తెలుగు + ไทย + Türkçe + Українська + اردو + Tiếng Việt + 中文 Import / Export Import / Export ReVanced settings @@ -409,7 +414,7 @@ This feature is only available for older devices" Hide self sponsored cards Self sponsored cards are hidden Self sponsored cards are shown - Hide banner to view products + Hide \'View products\' banner Banner is hidden Banner is shown Hide end screen store banner @@ -668,7 +673,7 @@ If changing this setting does not take effect, try switching to Incognito mode." Video quality menu footer is shown - Hide previous & next video buttons + Hide Previous & Next buttons Buttons are hidden Buttons are shown Hide Cast button @@ -1042,7 +1047,7 @@ Your user id is like a password and it should never be shared. Skip automatically Skip automatically once Show a Skip button - Show in seek bar + Show in seekbar Disable Unable to submit segment: %s SponsorBlock is temporarily down @@ -1132,10 +1137,8 @@ Tablet layout • Community posts are hidden Automotive layout -• Watch history menu is hidden -• Explore tab is restored • Shorts open in the regular player -• Feed is organized by topics and channel" +• Feed is organized by topics and channels" Spoof app version @@ -1206,7 +1209,7 @@ If later turned off, it is recommended to clear the app data to prevent UI bugs. Miniplayer - Change the style of the in app minimized player + Change the style of the in-app minimized player Miniplayer type Disabled Default @@ -1259,8 +1262,6 @@ Swipe to expand or close" Enable gradient loading screen Loading screen will have a gradient background Loading screen will have a solid background - - Enable custom seekbar color Custom seekbar color is shown Original seekbar color is shown @@ -1353,8 +1354,8 @@ Enabling this can unlock higher video qualities" Open links in browser - Opening links externally - Opening links in app + Opening links in external browser + Opening links in in-app browser Remove tracking query parameter @@ -1381,9 +1382,15 @@ Enabling this can unlock higher video qualities" Quality changes only apply to the current video Default video quality on Wi-Fi network Default video quality on mobile network + Remember Shorts quality changes + Quality changes apply to all Shorts + Quality changes only apply to the current Short + Default Shorts quality on Wi-Fi network + Default Shorts quality on mobile network mobile wifi Changed default %1$s quality to: %2$s + Changed Shorts %1$s quality to: %2$s Show speed dialog button @@ -1414,10 +1421,10 @@ Enabling this can unlock higher video qualities" HDR video is disabled HDR video is enabled - - Restore old video quality menu - Old video quality menu is shown - Old video quality menu is not shown + + Show advanced video quality menu + Advanced video quality menu is shown + Advanced video quality menu is not shown Enable slide to seek