Compare commits

..

26 Commits

Author SHA1 Message Date
semantic-release-bot
2c51de59de chore: Release v5.14.0-dev.5 [skip ci]
# [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)) ([df3dc1c](df3dc1c0b2))
2025-03-06 18:27:44 +00:00
ILoveOpenSourceApplications
df3dc1c0b2 feat(Infinity for Reddit): Add support for package name on IzzyOnDroid (#4554) 2025-03-06 20:24:54 +02:00
github-actions[bot]
074c948581 chore: Sync translations (#4556) 2025-03-06 20:24:22 +02:00
semantic-release-bot
2a88b1f895 chore: Release v5.14.0-dev.4 [skip ci]
# [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)) ([ee5c830](ee5c830df8))
2025-03-06 12:59:39 +00:00
LisoUseInAIKyrios
ee5c830df8 fix(YouTube): Combine Restore old video quality menu and Remember video quality into Video quality patch (#4552) 2025-03-06 14:56:32 +02:00
semantic-release-bot
e63a4b31f3 chore: Release v5.14.0-dev.3 [skip ci]
# [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 ([8d0bca3](8d0bca3b03))
2025-03-06 10:36:52 +00:00
oSumAtrIX
8d0bca3b03 fix(Boost for reddit - Client spoof): Use a different user agent to combat Reddit's API issues 2025-03-06 11:33:06 +01:00
semantic-release-bot
c162d65d5b chore: Release v5.14.0-dev.2 [skip ci]
# [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)) ([67dcd09](67dcd091c4))
2025-03-06 09:30:51 +00:00
ILoveOpenSourceApplications
67dcd091c4 fix(YouTube - Hide ads): Hide new type of buttoned ad (#4528) 2025-03-06 11:27:37 +02:00
github-actions[bot]
ac5ce2d67f chore: Sync translations (#4553) 2025-03-06 11:26:20 +02:00
LisoUseInAIKyrios
4b78d056fd ci: Pull Crowdin strings less often
Crowdin is starting to give errors and pulling less often may help.
2025-03-06 11:25:22 +02:00
semantic-release-bot
f8c901b2c1 chore: Release v5.14.0-dev.1 [skip ci]
# [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)) ([2a67c31](2a67c312e1))
2025-03-06 06:49:39 +00:00
alieRN
2a67c312e1 feat(YouTube - Remember video quality): Add separate Shorts default quality settings (#4543) 2025-03-06 08:46:33 +02:00
semantic-release-bot
a7eed30f46 chore: Release v5.13.1-dev.1 [skip ci]
## [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)) ([e2de2d8](e2de2d8d44))
2025-03-06 06:28:57 +00:00
LisoUseInAIKyrios
e2de2d8d44 fix(YouTube - Change form factor): Restore Automotive form factor watch history menu, channel pages, and community posts (#4541) 2025-03-06 08:26:09 +02:00
github-actions[bot]
7ebbf356c0 chore: Sync translations (#4550) 2025-03-06 08:25:49 +02:00
ILoveOpenSourceApplications
2ced5c6e2a refactor(YouTube): Use more consistent strings (#4526) 2025-03-05 08:55:44 +02:00
semantic-release-bot
4a090ba659 chore: Release v5.13.0 [skip ci]
# [5.13.0](https://github.com/ReVanced/revanced-patches/compare/v5.12.0...v5.13.0) (2025-03-03)

### Bug Fixes

* **TikTok:** Resolve startup app crash ([3c52ab8](3c52ab8017))
* **TikTok:** Resolve startup app crash ([c817977](c8179776ed))
* **TikTok:** Resolve startup app crash ([d5aab3d](d5aab3d464))
* **TikTok:** Resolve startup app crash ([348f7e1](348f7e12cb))
* **YouTube - Copy video URL:** Use correct button ordering ([d77d5bf](d77d5bfbdd))
* **YouTube - Hide filter bar:** Fix `Hide in feed` not working in subscriptions feed ([#4512](https://github.com/ReVanced/revanced-patches/issues/4512)) ([1b60a72](1b60a72ede))
* **YouTube - Hide layout components:** Do not hide 'Show anyway' button in search results ([94fb367](94fb367618))
* **YouTube - Hide player components:** Show correct end video thumbnail if `Hide end screen suggested video` is enabled ([#4502](https://github.com/ReVanced/revanced-patches/issues/4502)) ([7cc939a](7cc939ab03))
* **YouTube - Hide video action buttons:** Move 'Disable Like and Subscribe glow' to action buttons settings menu ([7991c80](7991c80129))
* **YouTube - Return YouTube Dislike:** Use correct number formatting if using a different ReVanced language ([4ae1155](4ae1155e51))
* **YouTube - Spoof app version:** Force old settings menus if spoofing to older app targets ([#4490](https://github.com/ReVanced/revanced-patches/issues/4490)) ([0c0bbb8](0c0bbb8713))
* **YouTube - Spoof video streams:** Resolve playback issues with dynamic player config ([#4521](https://github.com/ReVanced/revanced-patches/issues/4521)) ([cbbf474](cbbf474c50))
* **YouTube - Swipe controls:** Adjust the overlay text size ([#4503](https://github.com/ReVanced/revanced-patches/issues/4503)) ([329f993](329f993024))
* **YouTube:** Do not hide player controls when using double tap to skip forward ([#4487](https://github.com/ReVanced/revanced-patches/issues/4487)) ([e664a24](e664a24f73))
* **YouTube:** Fix player button fade out animations ([#4469](https://github.com/ReVanced/revanced-patches/issues/4469)) ([a2c79f1](a2c79f1349))
* **YouTube:** Resolve button flickering when taping seekbar ([#4500](https://github.com/ReVanced/revanced-patches/issues/4500)) ([f5dd902](f5dd902915))

### Features

* **Infinity for Reddit:** Add support for Infinity for Reddit Plus ([#4511](https://github.com/ReVanced/revanced-patches/issues/4511)) ([fb8dbb4](fb8dbb4723))
* **NU.nl:** Add `Hide ads` and `Spoof Certificate` patch ([#4368](https://github.com/ReVanced/revanced-patches/issues/4368)) ([93ea250](93ea250bf3))
* **YouTube - Navigation buttons:** Add 'Hide notifications' setting ([#4485](https://github.com/ReVanced/revanced-patches/issues/4485)) ([d6eae01](d6eae01e12))
* **YouTube - Swipe controls:** Swipe controls UI improvements ([#4422](https://github.com/ReVanced/revanced-patches/issues/4422)) ([3548359](354835966d))
2025-03-03 07:01:16 +00:00
LisoUseInAIKyrios
cb609a6d9d chore: Merge branch dev to main (#4470) 2025-03-03 08:57:51 +02:00
github-actions[bot]
42e6de9e8f chore: Sync translations (#4525) 2025-03-03 08:55:55 +02:00
semantic-release-bot
c4a5b9a28c chore: Release v5.13.0-dev.19 [skip ci]
# [5.13.0-dev.19](https://github.com/ReVanced/revanced-patches/compare/v5.13.0-dev.18...v5.13.0-dev.19) (2025-03-02)

### Bug Fixes

* **YouTube - Spoof video streams:** Resolve playback issues with dynamic player config ([#4521](https://github.com/ReVanced/revanced-patches/issues/4521)) ([cbbf474](cbbf474c50))
2025-03-02 15:44:18 +00:00
github-actions[bot]
c86c85947f chore: Sync translations (#4523) 2025-03-02 17:40:33 +02:00
LisoUseInAIKyrios
cbbf474c50 fix(YouTube - Spoof video streams): Resolve playback issues with dynamic player config (#4521) 2025-03-02 17:38:43 +02:00
semantic-release-bot
f147b7b73d chore: Release v5.13.0-dev.18 [skip ci]
# [5.13.0-dev.18](https://github.com/ReVanced/revanced-patches/compare/v5.13.0-dev.17...v5.13.0-dev.18) (2025-02-28)

### Features

* **Infinity for Reddit:** Add support for Infinity for Reddit Plus ([#4511](https://github.com/ReVanced/revanced-patches/issues/4511)) ([fb8dbb4](fb8dbb4723))
2025-02-28 08:33:53 +00:00
tillcash
fb8dbb4723 feat(Infinity for Reddit): Add support for Infinity for Reddit Plus (#4511) 2025-02-28 10:31:02 +02:00
github-actions[bot]
1e0d27e689 chore: Sync translations (#4517) 2025-02-28 10:30:30 +02:00
147 changed files with 2235 additions and 1723 deletions

View File

@@ -2,7 +2,7 @@ name: Pull strings
on:
schedule:
- cron: "0 */6 * * *"
- cron: "0 */8 * * *"
workflow_dispatch:
jobs:

View File

@@ -1,3 +1,89 @@
# [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)
### Bug Fixes
* **TikTok:** Resolve startup app crash ([18c0fc2](https://github.com/ReVanced/revanced-patches/commit/18c0fc2a7f186f50a904fd25dbaa739abdd24993))
* **TikTok:** Resolve startup app crash ([6466398](https://github.com/ReVanced/revanced-patches/commit/64663983b84de1f28636205f61bf0a24c83968d1))
* **TikTok:** Resolve startup app crash ([c14bc24](https://github.com/ReVanced/revanced-patches/commit/c14bc244550de30eca975ca7c09e8eb0c47534b5))
* **TikTok:** Resolve startup app crash ([d700076](https://github.com/ReVanced/revanced-patches/commit/d7000768a5e5a688c9f4e48858ac34e352222c1e))
* **YouTube - Copy video URL:** Use correct button ordering ([5e622cc](https://github.com/ReVanced/revanced-patches/commit/5e622ccf66d34af31c6026fa7f4d332460c6ecb0))
* **YouTube - Hide filter bar:** Fix `Hide in feed` not working in subscriptions feed ([#4512](https://github.com/ReVanced/revanced-patches/issues/4512)) ([634d0ee](https://github.com/ReVanced/revanced-patches/commit/634d0ee12e31491c7ee1d4ceb002daf8366a3c15))
* **YouTube - Hide layout components:** Do not hide 'Show anyway' button in search results ([4ac8854](https://github.com/ReVanced/revanced-patches/commit/4ac8854b99808a8957f3b0b7438e1e0cdedffbaf))
* **YouTube - Hide player components:** Show correct end video thumbnail if `Hide end screen suggested video` is enabled ([#4502](https://github.com/ReVanced/revanced-patches/issues/4502)) ([6c4885a](https://github.com/ReVanced/revanced-patches/commit/6c4885a1d5dfff50100b01840b5552d92e83ee4a))
* **YouTube - Hide video action buttons:** Move 'Disable Like and Subscribe glow' to action buttons settings menu ([29b265d](https://github.com/ReVanced/revanced-patches/commit/29b265d8fdaa48502650be9623bfc518a57a0bb1))
* **YouTube - Return YouTube Dislike:** Use correct number formatting if using a different ReVanced language ([edf66f4](https://github.com/ReVanced/revanced-patches/commit/edf66f4e16d46156cb8b8e31d18cb8dbcb87737e))
* **YouTube - Spoof app version:** Force old settings menus if spoofing to older app targets ([#4490](https://github.com/ReVanced/revanced-patches/issues/4490)) ([45e7c46](https://github.com/ReVanced/revanced-patches/commit/45e7c46dd9c70c926b8b1a97ada668f90f5f6f8c))
* **YouTube - Spoof video streams:** Resolve playback issues with dynamic player config ([#4521](https://github.com/ReVanced/revanced-patches/issues/4521)) ([647e764](https://github.com/ReVanced/revanced-patches/commit/647e7642efc0c00db17ccb6a620d1c96ccf4afed))
* **YouTube - Swipe controls:** Adjust the overlay text size ([#4503](https://github.com/ReVanced/revanced-patches/issues/4503)) ([6dc4bf7](https://github.com/ReVanced/revanced-patches/commit/6dc4bf75e09ed6f05534919d7b769b720043abce))
* **YouTube:** Do not hide player controls when using double tap to skip forward ([#4487](https://github.com/ReVanced/revanced-patches/issues/4487)) ([63fe870](https://github.com/ReVanced/revanced-patches/commit/63fe870d48ca2217327b952bde241b7f16ced850))
* **YouTube:** Fix player button fade out animations ([#4469](https://github.com/ReVanced/revanced-patches/issues/4469)) ([bf8e775](https://github.com/ReVanced/revanced-patches/commit/bf8e7759f9bdbdfef419a879fb3dd7cf0dff0098))
* **YouTube:** Resolve button flickering when taping seekbar ([#4500](https://github.com/ReVanced/revanced-patches/issues/4500)) ([1f08047](https://github.com/ReVanced/revanced-patches/commit/1f08047b48cc9555a4887d16ec7219a55a77251f))
### Features
* **Infinity for Reddit:** Add support for Infinity for Reddit Plus ([#4511](https://github.com/ReVanced/revanced-patches/issues/4511)) ([d74732b](https://github.com/ReVanced/revanced-patches/commit/d74732b7596104321bde263201d95649e4bd0eee))
* **NU.nl:** Add `Hide ads` and `Spoof Certificate` patch ([#4368](https://github.com/ReVanced/revanced-patches/issues/4368)) ([f3268fb](https://github.com/ReVanced/revanced-patches/commit/f3268fb03ca25fb5465e36015b6c9dec2c84a655))
* **YouTube - Navigation buttons:** Add 'Hide notifications' setting ([#4485](https://github.com/ReVanced/revanced-patches/issues/4485)) ([506d241](https://github.com/ReVanced/revanced-patches/commit/506d2414bbc760e764e5a514b32926083d6ecb6b))
* **YouTube - Swipe controls:** Swipe controls UI improvements ([#4422](https://github.com/ReVanced/revanced-patches/issues/4422)) ([198e4d2](https://github.com/ReVanced/revanced-patches/commit/198e4d2a2315c24a09eb9ecfefbd131a75384d2c))
# [5.13.0-dev.19](https://github.com/ReVanced/revanced-patches/compare/v5.13.0-dev.18...v5.13.0-dev.19) (2025-03-02)
### Bug Fixes
* **YouTube - Spoof video streams:** Resolve playback issues with dynamic player config ([#4521](https://github.com/ReVanced/revanced-patches/issues/4521)) ([647e764](https://github.com/ReVanced/revanced-patches/commit/647e7642efc0c00db17ccb6a620d1c96ccf4afed))
# [5.13.0-dev.18](https://github.com/ReVanced/revanced-patches/compare/v5.13.0-dev.17...v5.13.0-dev.18) (2025-02-28)
### Features
* **Infinity for Reddit:** Add support for Infinity for Reddit Plus ([#4511](https://github.com/ReVanced/revanced-patches/issues/4511)) ([d74732b](https://github.com/ReVanced/revanced-patches/commit/d74732b7596104321bde263201d95649e4bd0eee))
# [5.13.0-dev.17](https://github.com/ReVanced/revanced-patches/compare/v5.13.0-dev.16...v5.13.0-dev.17) (2025-02-27)

View File

@@ -362,27 +362,18 @@ public class Utils {
}
public static void setContext(Context appContext) {
// Must initially set context as the language settings needs it.
// Must initially set context to check the app language.
context = appContext;
Logger.initializationInfo(Utils.class, "Set context: " + appContext);
AppLanguage language = BaseSettings.REVANCED_LANGUAGE.get();
if (language != AppLanguage.DEFAULT) {
// Create a new context with the desired language.
Logger.printDebug(() -> "Using app language: " + language);
Configuration config = appContext.getResources().getConfiguration();
config.setLocale(language.getLocale());
context = appContext.createConfigurationContext(config);
}
// In some apps like TikTok, the Setting classes can load in weird orders due to cyclic class dependencies.
// Calling the regular printDebug method here can cause a Settings context null pointer exception,
// even though the context is already set before the call.
//
// The initialization logger methods do not directly or indirectly
// reference the Context or any Settings and are unaffected by this problem.
//
// Info level also helps debug if a patch hook is called before
// the context is set since debug logging is off by default.
Logger.initializationInfo(Utils.class, "Set context: " + appContext);
}
public static void setClipboard(@NonNull String text) {

View File

@@ -158,16 +158,16 @@ public abstract class AbstractPreferenceFragment extends PreferenceFragment {
/**
* 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);

View File

@@ -0,0 +1,34 @@
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 empty, zero-height view to eliminate spacing
return new View(getContext());
}
}

View File

@@ -107,6 +107,21 @@ public class SpoofVideoStreamsPatch {
return false;
}
/**
* Injection point.
* Turns off a feature flag that interferes with spoofing.
*/
public static boolean useMediaFetchHotConfigReplacement(boolean original) {
if (original) {
Logger.printDebug(() -> "useMediaFetchHotConfigReplacement is set on");
}
if (!SPOOF_STREAMING_DATA) {
return original;
}
return false;
}
/**
* Injection point.
*/

View File

@@ -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 class BackgroundPlaybackPatch {
// 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();
}
/**

View File

@@ -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 class ChangeFormFactorPatch {
@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);
}
}
}

View File

@@ -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();
}
}

View File

@@ -24,7 +24,7 @@ public final class EnableDebuggingPatch {
/**
* Injection point.
*/
public static boolean isBooleanFeatureFlagEnabled(boolean value, long flag) {
public static boolean isBooleanFeatureFlagEnabled(boolean value, Long flag) {
if (LOG_FEATURE_FLAGS && value) {
if (featureFlags.putIfAbsent(flag, true) == null) {
Logger.printDebug(() -> "boolean feature is enabled: " + flag);

View File

@@ -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 class PlayerTypeHookPatch {
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);
}
});
}
}

View File

@@ -74,6 +74,7 @@ public final class AdsFilter extends Filter {
"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.
);

View File

@@ -2,20 +2,20 @@ package app.revanced.extension.youtube.patches.components;
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"
));
}

View File

@@ -8,30 +8,30 @@ import android.widget.ListView;
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 final class RestoreOldVideoQualityMenuPatch {
}
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 final class RestoreOldVideoQualityMenuPatch {
* 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 final class RestoreOldVideoQualityMenuPatch {
*
* 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

View File

@@ -12,15 +12,19 @@ import java.util.List;
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<Integer> 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 @@ public class RememberVideoQualityPatch {
*/
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 class RememberVideoQualityPatch {
* 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).
}

View File

@@ -47,11 +47,14 @@ import app.revanced.extension.youtube.sponsorblock.SponsorBlockSettings;
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) {

View File

@@ -3,7 +3,9 @@ package app.revanced.extension.youtube.shared;
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 @@ import app.revanced.extension.youtube.settings.Settings;
@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<View> searchBarResultsRef = new WeakReference<>(null);
private static volatile WeakReference<AppCompatToolbarPatchInterface> toolbarResultsRef
= new WeakReference<>(null);
/**
* Injection point.
*/
@@ -37,6 +49,22 @@ public final class NavigationBar {
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 final class NavigationBar {
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.
//
/**

View File

@@ -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

View File

@@ -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<Boolean>()
/**
* If the Shorts player is currently open.
*/
@JvmStatic
fun isOpen(): Boolean {
return isOpen
}
}
}

View File

@@ -3,4 +3,4 @@ org.gradle.jvmargs = -Xms512M -Xmx2048M
org.gradle.parallel = true
android.useAndroidX = true
kotlin.code.style = official
version = 5.13.0-dev.17
version = 5.14.0-dev.5

View File

@@ -776,8 +776,8 @@ public final class app/revanced/patches/shared/misc/settings/preference/TextPref
}
public final class app/revanced/patches/shared/misc/spoof/SpoofVideoStreamsPatchKt {
public static final fun spoofVideoStreamsPatch (Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;)Lapp/revanced/patcher/patch/BytecodePatch;
public static synthetic fun spoofVideoStreamsPatch$default (Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lapp/revanced/patcher/patch/BytecodePatch;
public static final fun spoofVideoStreamsPatch (Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;)Lapp/revanced/patcher/patch/BytecodePatch;
public static synthetic fun spoofVideoStreamsPatch$default (Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lapp/revanced/patcher/patch/BytecodePatch;
}
public final class app/revanced/patches/shared/misc/spoof/UserAgentClientSpoofPatchKt {
@@ -1463,6 +1463,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;
}

View File

@@ -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(

View File

@@ -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 }

View File

@@ -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.

View File

@@ -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<OneRegisterInstruction>(userAgentTemplateIndex).registerA
it.method.replaceInstruction(userAgentTemplateIndex, "const-string v$register, \"$userAgent\"")
}
// endregion
}

View File

@@ -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")
compatibleWith(
"ml.docilealligator.infinityforreddit",
"ml.docilealligator.infinityforreddit.plus",
"ml.docilealligator.infinityforreddit.patreon"
)
val clientId by clientIdOption

View File

@@ -11,7 +11,11 @@ val unlockSubscriptionPatch = bytecodePatch(
) {
dependsOn(spoofClientPatch)
compatibleWith("ml.docilealligator.infinityforreddit")
compatibleWith(
"ml.docilealligator.infinityforreddit",
"ml.docilealligator.infinityforreddit.plus",
"ml.docilealligator.infinityforreddit.patreon"
)
execute {
setOf(

View File

@@ -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)

View File

@@ -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,

View File

@@ -137,3 +137,15 @@ internal val patchIncludedExtensionMethodFingerprint = fingerprint {
classDef.type == EXTENSION_CLASS_DESCRIPTOR && method.name == "isPatchIncluded"
}
}
// Feature flag that turns on Platypus programming language code compiled to native C++.
// This code appears to replace the player config after the streams are loaded.
// Flag is present in YouTube 19.34, but is missing Platypus stream replacement code until 19.43.
// Flag and Platypus code is also present in newer versions of YouTube Music.
internal const val MEDIA_FETCH_HOT_CONFIG_FEATURE_FLAG = 45645570L
internal val mediaFetchHotConfigFingerprint = fingerprint {
literal {
MEDIA_FETCH_HOT_CONFIG_FEATURE_FLAG
}
}

View File

@@ -31,10 +31,11 @@ internal const val EXTENSION_CLASS_DESCRIPTOR =
fun spoofVideoStreamsPatch(
block: BytecodePatchBuilder.() -> Unit = {},
applyMediaFetchHotConfigChanges: BytecodePatchBuilder.() -> Boolean = { false },
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()
@@ -238,6 +239,17 @@ fun spoofVideoStreamsPatch(
// endregion
// region turn off stream config replacement feature flag.
if (applyMediaFetchHotConfigChanges()) {
mediaFetchHotConfigFingerprint.method.insertFeatureFlagBooleanOverride(
MEDIA_FETCH_HOT_CONFIG_FEATURE_FLAG,
"$EXTENSION_CLASS_DESCRIPTOR->useMediaFetchHotConfigReplacement(Z)Z"
)
}
// endregion
executeBlock()
}
}

View File

@@ -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(

View File

@@ -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")

View File

@@ -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(

View File

@@ -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;"

View File

@@ -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,

View File

@@ -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(

View File

@@ -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,

View File

@@ -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

View File

@@ -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(

View File

@@ -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,

View File

@@ -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(

View File

@@ -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,
),

View File

@@ -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,

View File

@@ -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,

View File

@@ -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,31 @@ 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(
key = null,
// The title does not show, but is used for sorting the group.
titleKey = "revanced_spoof_app_version_title",
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"
)
}
)
)
/**

View File

@@ -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,31 @@ val themePatch = bytecodePatch(
dependsOn(
settingsPatch,
resourceMappingPatch,
addResourcesPatch,
)
execute {
addResources("youtube", "layout.theme.themeResourcePatch")
PreferenceScreen.SEEKBAR.addPreferences(
val preferences = mutableSetOf<BasePreference>(
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(
// Title is hidden, but is used for sorting the group.
titleKey = "revanced_seekbar_custom_color_title",
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 +139,6 @@ val themePatch = bytecodePatch(
colorValue: String,
) {
document(resourceFile).use { document ->
val resourcesNode = document.getElementsByTagName("resources").item(0) as Element
resourcesNode.appendChild(
@@ -133,7 +146,7 @@ val themePatch = bytecodePatch(
setAttribute("name", colorName)
setAttribute("category", "color")
textContent = colorValue
},
}
)
}
}
@@ -152,11 +165,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 ->
@@ -200,10 +212,7 @@ val themePatch = bytecodePatch(
}
}
}
},
sharedExtensionPatch,
settingsPatch,
addResourcesPatch,
}
)
compatibleWith(

View File

@@ -1,6 +1,7 @@
package app.revanced.patches.youtube.misc.debugging
import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
import app.revanced.patcher.extensions.InstructionExtensions.getInstruction
import app.revanced.patcher.patch.bytecodePatch
import app.revanced.patches.all.misc.resources.addResources
import app.revanced.patches.all.misc.resources.addResourcesPatch
@@ -11,9 +12,11 @@ import app.revanced.patches.youtube.misc.extension.sharedExtensionPatch
import app.revanced.patches.youtube.misc.playservice.versionCheckPatch
import app.revanced.patches.youtube.misc.settings.PreferenceScreen
import app.revanced.patches.youtube.misc.settings.settingsPatch
import app.revanced.util.findInstructionIndicesReversedOrThrow
import app.revanced.util.indexOfFirstInstructionOrThrow
import app.revanced.util.indexOfFirstInstructionReversedOrThrow
import com.android.tools.smali.dexlib2.Opcode
import com.android.tools.smali.dexlib2.iface.instruction.OneRegisterInstruction
private const val EXTENSION_CLASS_DESCRIPTOR =
"Lapp/revanced/extension/youtube/patches/EnableDebuggingPatch;"
@@ -61,19 +64,17 @@ val enableDebuggingPatch = bytecodePatch(
experimentalBooleanFeatureFlagFingerprint.match(
experimentalFeatureFlagParentFingerprint.originalClassDef
).method.apply {
val insertIndex = indexOfFirstInstructionOrThrow(Opcode.MOVE_RESULT)
findInstructionIndicesReversedOrThrow(Opcode.RETURN).forEach { index ->
val register = getInstruction<OneRegisterInstruction>(index).registerA
// It appears that all usage of this method has a default of 'false',
// so there's no need to pass in the default.
addInstructions(
insertIndex,
"""
move-result v0
invoke-static { v0, p1, p2 }, $EXTENSION_CLASS_DESCRIPTOR->isBooleanFeatureFlagEnabled(ZJ)Z
move-result v0
return v0
"""
)
addInstructions(
index,
"""
invoke-static { v$register, p1 }, $EXTENSION_CLASS_DESCRIPTOR->isBooleanFeatureFlagEnabled(ZLjava/lang/Long;)Z
move-result v$register
"""
)
}
}
experimentalDoubleFeatureFlagFingerprint.match(
@@ -92,7 +93,6 @@ val enableDebuggingPatch = bytecodePatch(
)
}
experimentalLongFeatureFlagFingerprint.match(
experimentalFeatureFlagParentFingerprint.originalClassDef
).method.apply {
@@ -108,21 +108,22 @@ val enableDebuggingPatch = bytecodePatch(
"""
)
experimentalStringFeatureFlagFingerprint.match(
experimentalFeatureFlagParentFingerprint.originalClassDef
).method.apply {
val insertIndex = indexOfFirstInstructionReversedOrThrow(Opcode.MOVE_RESULT_OBJECT)
}
addInstructions(
insertIndex,
"""
move-result-object v0
invoke-static { v0, p1, p2, p3 }, $EXTENSION_CLASS_DESCRIPTOR->isStringFeatureFlagEnabled(Ljava/lang/String;JLjava/lang/String;)Ljava/lang/String;
move-result-object v0
return-object v0
"""
)
}
experimentalStringFeatureFlagFingerprint.match(
experimentalFeatureFlagParentFingerprint.originalClassDef
).method.apply {
val insertIndex = indexOfFirstInstructionReversedOrThrow(Opcode.MOVE_RESULT_OBJECT)
addInstructions(
insertIndex,
"""
move-result-object v0
invoke-static { v0, p1, p2, p3 }, $EXTENSION_CLASS_DESCRIPTOR->isStringFeatureFlagEnabled(Ljava/lang/String;JLjava/lang/String;)Ljava/lang/String;
move-result-object v0
return-object v0
"""
)
}
// There exists other experimental accessor methods for byte[]

View File

@@ -11,9 +11,9 @@ internal val experimentalFeatureFlagParentFingerprint = fingerprint {
}
internal val experimentalBooleanFeatureFlagFingerprint = fingerprint {
accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL)
accessFlags(AccessFlags.PUBLIC, AccessFlags.STATIC)
returns("Z")
parameters("J", "Z")
parameters("L", "J", "Z")
}
internal val experimentalDoubleFeatureFlagFingerprint = fingerprint {
@@ -33,4 +33,3 @@ internal val experimentalStringFeatureFlagFingerprint = fingerprint {
returns("Ljava/lang/String;")
parameters("J", "Ljava/lang/String;")
}

View File

@@ -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(

View File

@@ -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.",

View File

@@ -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].
*/

View File

@@ -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<TypeReference>()?.type ==
"Lcom/google/android/apps/youtube/app/ui/actionbar/MainCollapsingToolbarLayout;"
}
val register = getInstruction<OneRegisterInstruction>(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",
)
}

View File

@@ -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")

View File

@@ -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<OneRegisterInstruction>(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<ReferenceInstruction>(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
"""
)
}
}

View File

@@ -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,

View File

@@ -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) {

View File

@@ -6,6 +6,8 @@ import app.revanced.patches.shared.misc.settings.preference.NonInteractivePrefer
import app.revanced.patches.shared.misc.settings.preference.PreferenceScreenPreference
import app.revanced.patches.shared.misc.settings.preference.SwitchPreference
import app.revanced.patches.shared.misc.spoof.spoofVideoStreamsPatch
import app.revanced.patches.youtube.misc.playservice.is_19_34_or_greater
import app.revanced.patches.youtube.misc.playservice.versionCheckPatch
import app.revanced.patches.youtube.misc.settings.PreferenceScreen
import app.revanced.patches.youtube.misc.settings.settingsPatch
@@ -25,7 +27,10 @@ val spoofVideoStreamsPatch = spoofVideoStreamsPatch({
dependsOn(
userAgentClientSpoofPatch,
settingsPatch,
versionCheckPatch
)
}, {
is_19_34_or_greater
}, {
addResources("youtube", "misc.fix.playback.spoofVideoStreamsPatch")

View File

@@ -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<OneRegisterInstruction>(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<OneRegisterInstruction>(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
}
}

View File

@@ -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 }
}

View File

@@ -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"),
ListPreference(
key = "revanced_video_quality_default_wifi",
summaryKey = null,
entriesKey = "revanced_video_quality_default_entries",
entryValuesKey = "revanced_video_quality_default_entry_values",
),
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_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

View File

@@ -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<BasePreference>()
@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
)
)
}
}

View File

@@ -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<BasePreference>()
@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
)
)
}
}

View File

@@ -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 {

View File

@@ -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),
)
}

View File

@@ -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",

View File

@@ -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 }
}

View File

@@ -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<OneRegisterInstruction>(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<OneRegisterInstruction>(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)
}

View File

@@ -408,10 +408,13 @@ internal fun MutableMethod.insertFeatureFlagBooleanOverride(literal: Long, exten
val index = indexOfFirstInstructionOrThrow(literalIndex, Opcode.MOVE_RESULT)
val register = getInstruction<OneRegisterInstruction>(index).registerA
val operation = if (register < 16) "invoke-static { v$register }"
else "invoke-static/range { v$register .. v$register }"
addInstructions(
index + 1,
"""
invoke-static { v$register }, $extensionsMethod
$operation, $extensionsMethod
move-result v$register
"""
)
@@ -458,7 +461,7 @@ fun MutableMethod.returnEarly(bool: Boolean = false) {
return v0
"""
else -> throw Exception("This case should never happen.")
else -> throw Exception("Return type is not supported: $this")
}
addInstructions(0, stringInstructions)

View File

@@ -177,8 +177,6 @@ Second \"item\" text"</string>
</patch>
<patch id="layout.theme.themePatch">
</patch>
<patch id="layout.theme.themeResourcePatch">
</patch>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch">
</patch>
<patch id="layout.thumbnails.alternativeThumbnailsPatch">
@@ -219,7 +217,7 @@ Second \"item\" text"</string>
</patch>
<patch id="video.hdr.disableHdrPatch">
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>

View File

@@ -177,8 +177,6 @@ Second \"item\" text"</string>
</patch>
<patch id="layout.theme.themePatch">
</patch>
<patch id="layout.theme.themeResourcePatch">
</patch>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch">
</patch>
<patch id="layout.thumbnails.alternativeThumbnailsPatch">
@@ -219,7 +217,7 @@ Second \"item\" text"</string>
</patch>
<patch id="video.hdr.disableHdrPatch">
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>

View File

@@ -301,13 +301,13 @@ Second \"item\" text"</string>
<string name="revanced_hide_description_components_screen_title">وصف الفيديو</string>
<string name="revanced_hide_description_components_screen_summary">إخفاء أو عرض مكونات وصف الفيديو</string>
<string name="revanced_hide_filter_bar_screen_title">شريط التصفية</string>
<string name="revanced_hide_filter_bar_screen_summary">إخفاء شريط التصفية أو عرضه في الموجز والبحث الفيديوهات ذات الصلة</string>
<string name="revanced_hide_filter_bar_screen_summary">إخفاء أو إظهار شريط الفلتر في الخلاصة ونتائج البحث ومقاطع الفيديو ذات الصلة</string>
<string name="revanced_hide_filter_bar_feed_in_feed_title">إخفاء في الموجز</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_on">مخفي في الموجز</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_off">يعرض في الموجز</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">إخفاء في البحث</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">مخفي في البحث</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">يعرض في البحث</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">إخفاء في نتائج البحث</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">مخفي في نتائج البحث</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">يظهر في نتائج البحث</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_title">إخفاء في الفيديوهات ذات الصلة</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_on">مخفي في الفيديوهات ذات الصلة</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_off">يعرض في الفيديوهات ذات الصلة</string>
@@ -404,7 +404,7 @@ Second \"item\" text"</string>
<string name="revanced_hide_self_sponsor_ads_title">إخفاء بطاقات الرعاية الذاتية</string>
<string name="revanced_hide_self_sponsor_ads_summary_on">تم إخفاء بطاقات الرعاية الذاتية</string>
<string name="revanced_hide_self_sponsor_ads_summary_off">يتم عرض بطاقات الرعاية الذاتية</string>
<string name="revanced_hide_products_banner_title">إخفاء لافتة لعرض المنتجات</string>
<string name="revanced_hide_products_banner_title">إخفاء لافتة \"عرض المنتجات\"</string>
<string name="revanced_hide_products_banner_summary_on">تم إخفاء البانر</string>
<string name="revanced_hide_products_banner_summary_off">يتم عرض البانر</string>
<string name="revanced_hide_end_screen_store_banner_title">إخفاء لافتة شاشة المتجر النهائية</string>
@@ -663,7 +663,7 @@ Second \"item\" text"</string>
<string name="revanced_hide_player_flyout_video_quality_footer_summary_off">يتم عرض تذييل قائمة جودة الفيديو</string>
</patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<string name="revanced_hide_player_previous_next_buttons_title">إخفاء أزرار الفيديو السابق &amp; التالي</string>
<string name="revanced_hide_player_previous_next_buttons_title">إخفاء زري \"السابق\" و \"التالي\"</string>
<string name="revanced_hide_player_previous_next_buttons_summary_on">تم إخفاء الأزرار</string>
<string name="revanced_hide_player_previous_next_buttons_summary_off">يتم عرض الأزرار</string>
<string name="revanced_hide_cast_button_title">إخفاء زر البث</string>
@@ -1116,16 +1116,14 @@ Second \"item\" text"</string>
<string name="revanced_change_form_factor_entry_2">الجوّال</string>
<string name="revanced_change_form_factor_entry_3">الجهاز اللوحي</string>
<string name="revanced_change_form_factor_entry_4">Automotive</string>
<string name="revanced_change_form_factor_user_dialog_message">"تتضمن التغييرات:
<string name="revanced_change_form_factor_user_dialog_message">"التغييرات تشمل:
تخطيط الجهاز اللوحي
إخفاء منشورات المجتمع
تصميم الجهاز اللوحي
مشاركات المجتمع مخفية
تخطيط Automotive
إخفاء قائمة سجل المشاهدة
استعادة علامة التبويب \"استكشاف\"
• فتح فيديوهات Shorts في المشغل العادي
• تنظيم الخلاصة حسب الموضوعات والقناة"</string>
تصميم السيارة
يتم فتح Shorts في المشغل العادي
يتم تنظيم الخلاصة حسب المواضيع والقنوات"</string>
</patch>
<patch id="layout.spoofappversion.spoofAppVersionPatch">
<string name="revanced_spoof_app_version_title">خِداع إصدار التطبيق</string>
@@ -1248,8 +1246,6 @@ Second \"item\" text"</string>
<string name="revanced_gradient_loading_screen_title">تمكين شاشة التحميل المتدرجة</string>
<string name="revanced_gradient_loading_screen_summary_on">ستحتوي شاشة التحميل على خلفية متدرجة</string>
<string name="revanced_gradient_loading_screen_summary_off">ستحتوي شاشة التحميل على خلفية ثابتة</string>
</patch>
<patch id="layout.theme.themeResourcePatch">
<string name="revanced_seekbar_custom_color_title">تمكين لون شريط تقدم الفيديو المخصص</string>
<string name="revanced_seekbar_custom_color_summary_on">يتم عرض لون شريط تقدم الفيديو المخصص</string>
<string name="revanced_seekbar_custom_color_summary_off">يتم عرض لون شريط تقدم الفيديو الاصلي</string>
@@ -1341,8 +1337,8 @@ Second \"item\" text"</string>
</patch>
<patch id="misc.links.openLinksExternallyPatch">
<string name="revanced_external_browser_title">فتح الروابط في المتصفح</string>
<string name="revanced_external_browser_summary_on">فتح الروابط خارجيًا</string>
<string name="revanced_external_browser_summary_off">فتح الروابط في التطبيق</string>
<string name="revanced_external_browser_summary_on">فتح الروابط في متصفح خارجي</string>
<string name="revanced_external_browser_summary_off">فتح الروابط في متصفح داخل التطبيق</string>
</patch>
<patch id="misc.privacy.removeTrackingQueryParameterPatch">
<string name="revanced_remove_tracking_query_parameter_title">إزالة معلمة تتبع الاستعلام</string>
@@ -1355,6 +1351,7 @@ Second \"item\" text"</string>
<string name="revanced_disable_zoom_haptics_summary_off">تم تمكين الاهتزاز</string>
</patch>
<patch id="video.audio.forceOriginalAudioPatch">
<string name="revanced_force_original_audio_title">فرض لغة الصوت الأصلية</string>
<string name="revanced_force_original_audio_summary_on">استخدام لغة الصوت الأصلية</string>
<string name="revanced_force_original_audio_summary_off">استخدام الصوت الافتراضي</string>
<!-- 'Spoof video streams' should be the same translation used for revanced_spoof_video_streams_screen_title -->
@@ -1368,9 +1365,15 @@ Second \"item\" text"</string>
<string name="revanced_remember_video_quality_last_selected_summary_off">تنطبق تغييرات الجودة على الفيديو الحالي فقط</string>
<string name="revanced_video_quality_default_wifi_title">جودة الفيديو الافتراضية على شبكة Wi-Fi</string>
<string name="revanced_video_quality_default_mobile_title">جودة الفيديو الافتراضية على شبكة الجوَّال</string>
<string name="revanced_remember_shorts_quality_last_selected_title">تذكر تغييرات جودة Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_on">تنطبق تغييرات الجودة على جميع فيديوهات Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_off">تنطبق تغييرات الجودة فقط على فيديو Short الحالي</string>
<string name="revanced_shorts_quality_default_wifi_title">جودة Shorts الافتراضية على شبكة Wi-Fi</string>
<string name="revanced_shorts_quality_default_mobile_title">جودة Shorts الافتراضية على شبكة الجوال</string>
<string name="revanced_remember_video_quality_mobile">الجوّال</string>
<string name="revanced_remember_video_quality_wifi">Wi-Fi</string>
<string name="revanced_remember_video_quality_toast">تم تغيير جودة %1$s الافتراضية إلى: %2$s</string>
<string name="revanced_remember_video_quality_toast_shorts">تم تغيير جودة Shorts %1$s إلى: %2$s</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">عرض زر مربع حوار السرعة</string>
@@ -1401,10 +1404,10 @@ Second \"item\" text"</string>
<string name="revanced_disable_hdr_video_summary_on">تم تعطيل فيديو HDR</string>
<string name="revanced_disable_hdr_video_summary_off">تم تمكين فيديو HDR</string>
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<string name="revanced_restore_old_video_quality_menu_title">استعادة قائمة جودة الفيديو القديمة</string>
<string name="revanced_restore_old_video_quality_menu_summary_on">يتم عرض قائمة جودة الفيديو القديمة</string>
<string name="revanced_restore_old_video_quality_menu_summary_off">لا يتم عرض قائمة جودة الفيديو القديمة</string>
<patch id="video.quality.advancedVideoQualityMenuPatch">
<string name="revanced_advanced_video_quality_menu_title">إظهار قائمة جودة الفيديو المتقدمة</string>
<string name="revanced_advanced_video_quality_menu_summary_on">يتم عرض قائمة جودة الفيديو المتقدمة</string>
<string name="revanced_advanced_video_quality_menu_summary_off">لا يتم عرض قائمة جودة الفيديو المتقدمة</string>
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
<string name="revanced_slide_to_seek_title">تمكين التمرير للتقديم أو الترجيع</string>

View File

@@ -177,8 +177,6 @@ Second \"item\" text"</string>
</patch>
<patch id="layout.theme.themePatch">
</patch>
<patch id="layout.theme.themeResourcePatch">
</patch>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch">
</patch>
<patch id="layout.thumbnails.alternativeThumbnailsPatch">
@@ -221,7 +219,7 @@ Second \"item\" text"</string>
</patch>
<patch id="video.hdr.disableHdrPatch">
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>

View File

@@ -301,13 +301,13 @@ Gözlənilməz hallardan xəbərdar olmayacaqsınız."</string>
<string name="revanced_hide_description_components_screen_title">Video açıqlaması</string>
<string name="revanced_hide_description_components_screen_summary">Video açıqlaması elementlərini gizlət və ya göstər</string>
<string name="revanced_hide_filter_bar_screen_title">Filtr çubuğu</string>
<string name="revanced_hide_filter_bar_screen_summary">Axında, axtarışda və əlaqəli videolardakı filtr çubuğunu gizlət və ya göstər</string>
<string name="revanced_hide_filter_bar_screen_summary">Axında, axtarış nəticələrində və əlaqəli videolarda filtr cərgəsin gizlət və ya göstər</string>
<string name="revanced_hide_filter_bar_feed_in_feed_title">Axında gizlət</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_on">Axında gizlidir</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_off">Axında göstərilir</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Axtarışda gizlət</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Axtarışda gizlidir</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Axtarışda görünür</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Axtarış nəticələrində gizlət</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Axtarış nəticələrində gizlədilib</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Axtarış nəticələrində göstərilir</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_title">Əlaqəli videolarda gizlət</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_on">Əlaqəli videolarda gizlidir</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_off">Əlaqəli videolarda görünür</string>
@@ -404,7 +404,6 @@ Bu xüsusiyyət yalnız köhnə cihazlar üçün mövcuddur"</string>
<string name="revanced_hide_self_sponsor_ads_title">Öz-sponsorlu kartları gizlət</string>
<string name="revanced_hide_self_sponsor_ads_summary_on">Özünə sponsorluq edilən kartlar gizlidir</string>
<string name="revanced_hide_self_sponsor_ads_summary_off">Özünə sponsorluq edilən kartlar göstərilir</string>
<string name="revanced_hide_products_banner_title">Məhsullara baxma etiketin gizlət</string>
<string name="revanced_hide_products_banner_summary_on">Etiket gizlədilib</string>
<string name="revanced_hide_products_banner_summary_off">Etiket göstərilir</string>
<string name="revanced_hide_end_screen_store_banner_title">Son ekran mağaza etiketini gizlət</string>
@@ -663,7 +662,6 @@ Bu seçimi dəyişdirmə işə düşmürsə, Gizli rejimə keçməyə çalışı
<string name="revanced_hide_player_flyout_video_quality_footer_summary_off">Video keyfiyyət menyusu alt məlumatı göstərilir</string>
</patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<string name="revanced_hide_player_previous_next_buttons_title">Əvvəlki/növbəti video düymələrin gizlət</string>
<string name="revanced_hide_player_previous_next_buttons_summary_on">Düymələr gizlidir</string>
<string name="revanced_hide_player_previous_next_buttons_summary_off">Düymələr göstərilir</string>
<string name="revanced_hide_cast_button_title">Yayımla düyməsini gizlət</string>
@@ -1115,16 +1113,6 @@ Təqdim etməyə hazırdır?"</string>
<string name="revanced_change_form_factor_entry_2">Telefon</string>
<string name="revanced_change_form_factor_entry_3">Planşet</string>
<string name="revanced_change_form_factor_entry_4">Avtomobil</string>
<string name="revanced_change_form_factor_user_dialog_message">"Dəyişikliklərə daxildir:
Planşet tərtibatı
• İcma elanları gizlidir
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"</string>
</patch>
<patch id="layout.spoofappversion.spoofAppVersionPatch">
<string name="revanced_spoof_app_version_title">Tətbiq versiyasını saxtalaşdır</string>
@@ -1194,7 +1182,6 @@ Sonradan qapadılarsa, UI səhvlərin önləmək üçün tətbiq məlumatların
</patch>
<patch id="layout.miniplayer.miniplayerPatch">
<string name="revanced_miniplayer_screen_title">Kiçik oynadıcı</string>
<string name="revanced_miniplayer_screen_summary">Tətbiqdə kiçildilən oynadıcı üslubunu dəyişdir</string>
<string name="revanced_miniplayer_type_title">Kiçik oynadıcı növü</string>
<string name="revanced_miniplayer_type_entry_0">Qeyri-aktivdir</string>
<string name="revanced_miniplayer_type_entry_1">İlkin</string>
@@ -1247,8 +1234,6 @@ Genişləndirmək və ya bağlamaq üçün sürüşdür"</string>
<string name="revanced_gradient_loading_screen_title">Dəyişkən yükləmə ekranını aktivləşdir</string>
<string name="revanced_gradient_loading_screen_summary_on">Yükləmə ekranı, dəyişkən arxa plana malik olacaq</string>
<string name="revanced_gradient_loading_screen_summary_off">Yükləmə ekranı, vahid arxa plana malik olacaq</string>
</patch>
<patch id="layout.theme.themeResourcePatch">
<string name="revanced_seekbar_custom_color_title">Fərdi irəliləmə cizgisi rəngini aktivləşdir</string>
<string name="revanced_seekbar_custom_color_summary_on">Fərdi irəliləmə cizgisi rəngi göstərilir</string>
<string name="revanced_seekbar_custom_color_summary_off">Orijinal irəliləmə cizgisi rəngi göstərilir</string>
@@ -1340,8 +1325,6 @@ Bunu aktivləşdirmə daha yüksək video keyfiyyətləri əngəlin silə bilər
</patch>
<patch id="misc.links.openLinksExternallyPatch">
<string name="revanced_external_browser_title">Bağlantıları brauzerdə aç</string>
<string name="revanced_external_browser_summary_on">Bağlantılar xarici yolla açılır</string>
<string name="revanced_external_browser_summary_off">Bağlantılar tətbiqdə açılır</string>
</patch>
<patch id="misc.privacy.removeTrackingQueryParameterPatch">
<string name="revanced_remove_tracking_query_parameter_title">İzləmə sorğusu faktorun sil</string>
@@ -1401,10 +1384,7 @@ Bunu aktivləşdirmə daha yüksək video keyfiyyətləri əngəlin silə bilər
<string name="revanced_disable_hdr_video_summary_on">HDR video qapalıdır</string>
<string name="revanced_disable_hdr_video_summary_off">HDR video aktivdir</string>
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<string name="revanced_restore_old_video_quality_menu_title">Köhnə video keyfiyyət menusun qaytar</string>
<string name="revanced_restore_old_video_quality_menu_summary_on">Köhnə video keyfiyyət siyahısı göstərilir</string>
<string name="revanced_restore_old_video_quality_menu_summary_off">Köhnə video keyfiyyət siyahısı görünmür</string>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
<string name="revanced_slide_to_seek_title">Axtarmaq üçün sürüşdürməni aktiv et</string>

View File

@@ -301,13 +301,13 @@ Second \"item\" text"</string>
<string name="revanced_hide_description_components_screen_title">Апісанне відэа</string>
<string name="revanced_hide_description_components_screen_summary">Схаваць або паказаць кампаненты апісання відэа</string>
<string name="revanced_hide_filter_bar_screen_title">Панэль фільтраў</string>
<string name="revanced_hide_filter_bar_screen_summary">Схаваць або паказаць панэль фільтраў у стужцы, пошуку і звязаных відэа</string>
<string name="revanced_hide_filter_bar_screen_summary">Схаваць ці паказаць панэль фільтраў у стужцы, выніках пошуку і звязаных відэа</string>
<string name="revanced_hide_filter_bar_feed_in_feed_title">Схаваць у карме</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_on">Схаваны ў стужцы</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_off">Паказваецца ў стужцы</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Схавацца ў пошуку</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Схаваны ў пошуку</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Паказваецца ў пошуку</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Схаваць у выніках пошуку</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Схавана ў выніках пошуку</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Паказана ў выніках пошуку</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_title">Схаваць у звязаных відэа</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_on">Схавана ў звязаных відэа</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_off">Паказана ў звязаных відэа</string>
@@ -404,7 +404,7 @@ Second \"item\" text"</string>
<string name="revanced_hide_self_sponsor_ads_title">Схаваць самі спансаваныя карты</string>
<string name="revanced_hide_self_sponsor_ads_summary_on">Спонсарскія карткі схаваныя</string>
<string name="revanced_hide_self_sponsor_ads_summary_off">Паказваюцца ўласныя карты</string>
<string name="revanced_hide_products_banner_title">Схаваць банер для прагляду прадуктаў</string>
<string name="revanced_hide_products_banner_title">Схаваць банер «Паглядзець прадукты»</string>
<string name="revanced_hide_products_banner_summary_on">Банэр схаваны</string>
<string name="revanced_hide_products_banner_summary_off">Паказваецца банэр</string>
<string name="revanced_hide_end_screen_store_banner_title">Схаваць банер крамы на канчатковым экране</string>
@@ -663,7 +663,7 @@ Second \"item\" text"</string>
<string name="revanced_hide_player_flyout_video_quality_footer_summary_off">Паказваецца ніжні калонтытул меню якасці відэа</string>
</patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<string name="revanced_hide_player_previous_next_buttons_title">Схаваць папярэдні &amp; кнопкі наступнага відэа</string>
<string name="revanced_hide_player_previous_next_buttons_title">Схаваць папярэднія &amp; кнопкі «Далей»</string>
<string name="revanced_hide_player_previous_next_buttons_summary_on">Кнопкі схаваныя</string>
<string name="revanced_hide_player_previous_next_buttons_summary_off">Паказваюцца кнопкі</string>
<string name="revanced_hide_cast_button_title">Схаваць кнопку «Трансляцыя»</string>
@@ -1119,13 +1119,11 @@ Second \"item\" text"</string>
<string name="revanced_change_form_factor_entry_4">Аўтамабільны</string>
<string name="revanced_change_form_factor_user_dialog_message">"Змены ўключаюць:
Раскладка планшэта
• Паведамленні супольнасці схаваны
Макет для планшэта
• Паведамленні супольнасці схаваныя
Раскладка аўтамабіля
Меню гісторыі праглядаў схавана
• Адноўлена ўкладка «Даследаваць»
• Ролікі Shorts адкрываюцца ў звычайным прайгравальніку
Аўтамабільны макет
Shorts адкрываюцца ў звычайным плэеры
• Стужка арганізавана па тэмах і каналах"</string>
</patch>
<patch id="layout.spoofappversion.spoofAppVersionPatch">
@@ -1196,7 +1194,7 @@ Second \"item\" text"</string>
</patch>
<patch id="layout.miniplayer.miniplayerPatch">
<string name="revanced_miniplayer_screen_title">Міні-плэер</string>
<string name="revanced_miniplayer_screen_summary">Змяніце стыль мінімізаванага плэера ў праграме</string>
<string name="revanced_miniplayer_screen_summary">Змяніць стыль згорнутага прайгравальніка ў праграме</string>
<string name="revanced_miniplayer_type_title">Тып мініплэера</string>
<string name="revanced_miniplayer_type_entry_0">Інваліды</string>
<string name="revanced_miniplayer_type_entry_1">Па змаўчанні</string>
@@ -1249,8 +1247,6 @@ Second \"item\" text"</string>
<string name="revanced_gradient_loading_screen_title">Уключыць градыентны экран загрузкі</string>
<string name="revanced_gradient_loading_screen_summary_on">Экран загрузкі будзе мець градыентны фон</string>
<string name="revanced_gradient_loading_screen_summary_off">Экран загрузкі будзе мець суцэльны фон</string>
</patch>
<patch id="layout.theme.themeResourcePatch">
<string name="revanced_seekbar_custom_color_title">Уключыць уласны колер панэлі пошуку</string>
<string name="revanced_seekbar_custom_color_summary_on">Паказваецца карыстальніцкі колер панэлі пошуку</string>
<string name="revanced_seekbar_custom_color_summary_off">Паказаны зыходны колер панэлі пошуку</string>
@@ -1342,8 +1338,8 @@ Second \"item\" text"</string>
</patch>
<patch id="misc.links.openLinksExternallyPatch">
<string name="revanced_external_browser_title">Адкрываць спасылкі ў браўзеры</string>
<string name="revanced_external_browser_summary_on">Адкрыццё спасылак звонку</string>
<string name="revanced_external_browser_summary_off">Адкрыццё спасылак у праграме</string>
<string name="revanced_external_browser_summary_on">Адкрыццё спасылак у знешнім браўзеры</string>
<string name="revanced_external_browser_summary_off">Адкрыццё спасылак ва ўбудаваным браўзеры</string>
</patch>
<patch id="misc.privacy.removeTrackingQueryParameterPatch">
<string name="revanced_remove_tracking_query_parameter_title">Выдаліць параметр запыту адсочвання</string>
@@ -1370,9 +1366,15 @@ Second \"item\" text"</string>
<string name="revanced_remember_video_quality_last_selected_summary_off">Змены якасці прымяняюцца толькі да бягучага відэа</string>
<string name="revanced_video_quality_default_wifi_title">Стандартная якасць відэа ў сетцы Wi-Fi</string>
<string name="revanced_video_quality_default_mobile_title">Стандартная якасць відэа ў мабільнай сетцы</string>
<string name="revanced_remember_shorts_quality_last_selected_title">Запомніць змены якасці Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_on">Змены якасці прымяняюцца да ўсіх Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_off">Змены якасці прымяняюцца толькі да бягучага Short</string>
<string name="revanced_shorts_quality_default_wifi_title">Якасць Shorts па змаўчанні ў сетцы Wi-Fi</string>
<string name="revanced_shorts_quality_default_mobile_title">Якасць Shorts па змаўчанні ў мабільнай сетцы</string>
<string name="revanced_remember_video_quality_mobile">мабільны</string>
<string name="revanced_remember_video_quality_wifi">wi-fi</string>
<string name="revanced_remember_video_quality_toast">Стандартная якасць %1$s зменена на: %2$s</string>
<string name="revanced_remember_video_quality_toast_shorts">Якасць Shorts %1$s зменена на: %2$s</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Паказаць дыялогавую кнопку хуткасці</string>
@@ -1403,10 +1405,10 @@ Second \"item\" text"</string>
<string name="revanced_disable_hdr_video_summary_on">Відэа ў фармаце HDR адключана</string>
<string name="revanced_disable_hdr_video_summary_off">Відэа ў фармаце HDR уключана</string>
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<string name="revanced_restore_old_video_quality_menu_title">Аднавіць старое меню якасці відэа</string>
<string name="revanced_restore_old_video_quality_menu_summary_on">Паказана старое меню якасці відэа</string>
<string name="revanced_restore_old_video_quality_menu_summary_off">Старое меню якасці відэа не паказваецца</string>
<patch id="video.quality.advancedVideoQualityMenuPatch">
<string name="revanced_advanced_video_quality_menu_title">Паказаць пашыранае меню якасці відэа</string>
<string name="revanced_advanced_video_quality_menu_summary_on">Пашыранае меню якасці відэа паказана</string>
<string name="revanced_advanced_video_quality_menu_summary_off">Пашыранае меню якасці відэа не паказана</string>
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
<string name="revanced_slide_to_seek_title">Уключыць слайд для пошуку</string>

View File

@@ -301,13 +301,13 @@ Second \"item\" text"</string>
<string name="revanced_hide_description_components_screen_title">Описание на видеото</string>
<string name="revanced_hide_description_components_screen_summary">Скриване или показване на компонентите за описание на видеоклиповете</string>
<string name="revanced_hide_filter_bar_screen_title">Лента с филтри</string>
<string name="revanced_hide_filter_bar_screen_summary">Скриване или показване на лентата с категории в емисията, резултатите от търсенето и свързаните видеоклипове</string>
<string name="revanced_hide_filter_bar_screen_summary">Скриване или показване на лентата за филтриране в емисията, резултатите от търсенето и свързаните видеоклипове</string>
<string name="revanced_hide_filter_bar_feed_in_feed_title">Скриване на горната лента с категории в емисията</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_on">Скрита</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_off">Показва се</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Филтъри на търсене</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Панелът с филтъри на търсене е скрит</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Панелът с филтъри на търсене се показва</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Скриване в резултатите от търсенето</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Скрито в резултатите от търсенето</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Показано в резултатите от търсенето</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_title">Скриване в сродни видеоклипове</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_on">Скриване в сродни видеоклипове</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_off">Показано в сродни видеоклипове</string>
@@ -404,7 +404,7 @@ Second \"item\" text"</string>
<string name="revanced_hide_self_sponsor_ads_title">Скриване на самоспонсорирани карти</string>
<string name="revanced_hide_self_sponsor_ads_summary_on">Самоспонсорираните карти са скрити</string>
<string name="revanced_hide_self_sponsor_ads_summary_off">Самоспонсорираните карти са показани</string>
<string name="revanced_hide_products_banner_title">Скриване на банера за показване на продукти</string>
<string name="revanced_hide_products_banner_title">Скриване на банера \"Преглед на продукти\"</string>
<string name="revanced_hide_products_banner_summary_on">Банерът е скрит</string>
<string name="revanced_hide_products_banner_summary_off">Банерът е показан</string>
<string name="revanced_hide_end_screen_store_banner_title">Скрий банера за реклама в края на екрана</string>
@@ -663,7 +663,7 @@ Second \"item\" text"</string>
<string name="revanced_hide_player_flyout_video_quality_footer_summary_off">Долният колонтитул на менюто за качество на видеото се показва</string>
</patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<string name="revanced_hide_player_previous_next_buttons_title">Бутони за Предишно &amp; Следващо видео</string>
<string name="revanced_hide_player_previous_next_buttons_title">Скриване на бутоните \"Предишен и Следващ\"</string>
<string name="revanced_hide_player_previous_next_buttons_summary_on">Бутоните са скрити</string>
<string name="revanced_hide_player_previous_next_buttons_summary_off">Бутоните се показват</string>
<string name="revanced_hide_cast_button_title">Скриване на бутона Cast</string>
@@ -1121,11 +1121,9 @@ Second \"item\" text"</string>
Оформление за таблет
• Публикациите на общността са скрити
Оформление за автомобил
• Менюто „История на гледане“ е скрито
• Разделът „Разгледай“ е възстановен
Автомобилно оформление
• Shorts се отварят в обикновения плейър
Лентата е организирана по теми и канал"</string>
Каналът е организиран по теми и канали"</string>
</patch>
<patch id="layout.spoofappversion.spoofAppVersionPatch">
<string name="revanced_spoof_app_version_title">Подлъгване за версията на приложението</string>
@@ -1195,7 +1193,7 @@ Second \"item\" text"</string>
</patch>
<patch id="layout.miniplayer.miniplayerPatch">
<string name="revanced_miniplayer_screen_title">Минимизиран екран за възпроизвеждане</string>
<string name="revanced_miniplayer_screen_summary">Променете стила на минимизирания екран за възпроизвеждане</string>
<string name="revanced_miniplayer_screen_summary">Промяна на стила на минимизиран плейър в приложението</string>
<string name="revanced_miniplayer_type_title">Минимизиран тип екран за гледане</string>
<string name="revanced_miniplayer_type_entry_0">Деактивирано</string>
<string name="revanced_miniplayer_type_entry_1">По подразбиране</string>
@@ -1248,8 +1246,6 @@ Second \"item\" text"</string>
<string name="revanced_gradient_loading_screen_title">Фон на екрана при зареждане на видео</string>
<string name="revanced_gradient_loading_screen_summary_on">Екранът за зареждане ще има градиентен фон</string>
<string name="revanced_gradient_loading_screen_summary_off">Екранът за зареждане ще има плътен фон</string>
</patch>
<patch id="layout.theme.themeResourcePatch">
<string name="revanced_seekbar_custom_color_title">Промяна на цвета на индикатора за време</string>
<string name="revanced_seekbar_custom_color_summary_on">Показва се персонализиран цвят на лентата за напредък</string>
<string name="revanced_seekbar_custom_color_summary_off">Показва се оригиналния цвят на лентата за напредък</string>
@@ -1341,8 +1337,8 @@ Second \"item\" text"</string>
</patch>
<patch id="misc.links.openLinksExternallyPatch">
<string name="revanced_external_browser_title">Отваряне на връзки в браузъра</string>
<string name="revanced_external_browser_summary_on">Отваряне на външни връзки</string>
<string name="revanced_external_browser_summary_off">Отваряне на връзки в приложението</string>
<string name="revanced_external_browser_summary_on">Отваряне на връзки във външен браузър</string>
<string name="revanced_external_browser_summary_off">Отваряне на връзки във вграден браузър</string>
</patch>
<patch id="misc.privacy.removeTrackingQueryParameterPatch">
<string name="revanced_remove_tracking_query_parameter_title">Премахнете параметъра на заявката за проследяване</string>
@@ -1369,9 +1365,15 @@ Second \"item\" text"</string>
<string name="revanced_remember_video_quality_last_selected_summary_off">Промените в качеството се отнасят само за текущия видеоклип</string>
<string name="revanced_video_quality_default_wifi_title">Предпочитано качество при Wi-Fi</string>
<string name="revanced_video_quality_default_mobile_title">Предпочитано качество при мобилни данни</string>
<string name="revanced_remember_shorts_quality_last_selected_title">Запомняне на промените в качеството на Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_on">Промените в качеството се прилагат за всички Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_off">Промените в качеството се прилагат само за текущия Short</string>
<string name="revanced_shorts_quality_default_wifi_title">Качество по подразбиране на Shorts във Wi-Fi мрежа</string>
<string name="revanced_shorts_quality_default_mobile_title">Качество по подразбиране на Shorts в мобилна мрежа</string>
<string name="revanced_remember_video_quality_mobile">мобилни данни</string>
<string name="revanced_remember_video_quality_wifi">wi-fi</string>
<string name="revanced_remember_video_quality_toast">Променено стандартно %1$s качество на: %2$s</string>
<string name="revanced_remember_video_quality_toast_shorts">Променено качество на Shorts %1$s на: %2$s</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Показване бутон за скорост</string>
@@ -1402,10 +1404,10 @@ Second \"item\" text"</string>
<string name="revanced_disable_hdr_video_summary_on">HDR видеото е деактивирано</string>
<string name="revanced_disable_hdr_video_summary_off">HDR видеото е активирано</string>
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<string name="revanced_restore_old_video_quality_menu_title">Възстановете старото меню за качество на видеото</string>
<string name="revanced_restore_old_video_quality_menu_summary_on">Показва се старото меню за видео качество</string>
<string name="revanced_restore_old_video_quality_menu_summary_off">Старото меню за видео качество е скрито</string>
<patch id="video.quality.advancedVideoQualityMenuPatch">
<string name="revanced_advanced_video_quality_menu_title">Показване на менюто за разширено качество на видеото</string>
<string name="revanced_advanced_video_quality_menu_summary_on">Показва се менюто за разширено качество на видеото</string>
<string name="revanced_advanced_video_quality_menu_summary_off">Менюто за разширено качество на видеото не се показва</string>
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
<string name="revanced_slide_to_seek_title">Активиране на слайд за превъртане</string>

View File

@@ -301,13 +301,12 @@ MicroG-এর জন্য ব্যাটারি অপ্টিমাইজ
<string name="revanced_hide_description_components_screen_title">ভিডিওর বিবরণ</string>
<string name="revanced_hide_description_components_screen_summary">ভিডিও বিবরণ এর উপাদান লুকান বা প্রদর্শন করুন</string>
<string name="revanced_hide_filter_bar_screen_title">ফিল্টার বার</string>
<string name="revanced_hide_filter_bar_screen_summary">ফিড, অনুসন্ধান এবং সম্পর্কিত ভিডিওতে ফিল্টার বার লুকান বা প্রদর্শন করুন</string>
<string name="revanced_hide_filter_bar_feed_in_feed_title">ফিডে লুকান</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_on">ফিডে লুকিয়ে রয়েছে</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_off">ফিডে প্রদর্শিত হয়েছে</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">অনুসন্ধানে লুকান</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">অনুসন্ধানে লুকিয়ে রয়েছে</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">অনুসন্ধানে প্রদর্শিত হয়েছে</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">অনুসন্ধান ফলাফলে লুকান</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">অনুসন্ধান ফলাফলে লুকানো আছে</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">অনুসন্ধান ফলাফলে দেখানো হয়েছে</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_title">সম্পর্কিত ভিডিওতে লুকান</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_on">সম্পর্কিত ভিডিওতে লুকিয়ে রয়েছে</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_off">সম্পর্কিত ভিডিওতে প্রদর্শিত হয়েছে</string>
@@ -404,7 +403,7 @@ MicroG-এর জন্য ব্যাটারি অপ্টিমাইজ
<string name="revanced_hide_self_sponsor_ads_title">স্ব-স্পন্সর কার্ড লুকান</string>
<string name="revanced_hide_self_sponsor_ads_summary_on">স্ব-স্পন্সর কার্ড লুকিয়ে রয়েছে</string>
<string name="revanced_hide_self_sponsor_ads_summary_off">স্ব-স্পন্সর কার্ড প্রদর্শিত হয়েছে</string>
<string name="revanced_hide_products_banner_title">প্রোডাক্ট দেখার ব্যানার লুকান</string>
<string name="revanced_hide_products_banner_title">\'পণ্য দেখুন\' ব্যানার লুকান</string>
<string name="revanced_hide_products_banner_summary_on">ব্যানার লুকিয়ে রয়েছে</string>
<string name="revanced_hide_products_banner_summary_off">ব্যানার প্রদর্শিত হয়েছে</string>
<string name="revanced_hide_end_screen_store_banner_title">শেষ পর্দার স্টোর ব্যানার লুকান</string>
@@ -660,7 +659,7 @@ MicroG-এর জন্য ব্যাটারি অপ্টিমাইজ
<string name="revanced_hide_player_flyout_video_quality_footer_summary_off">ভিডিও গুণমান মেনু ফুটার দেখানো হচ্ছে</string>
</patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<string name="revanced_hide_player_previous_next_buttons_title">পূর্ববর্তী লুকান &amp; পরবর্তী ভিডিও বোতাম</string>
<string name="revanced_hide_player_previous_next_buttons_title">পূর্ববর্তী লুকান &amp; পরবর্তী বোতাম</string>
<string name="revanced_hide_player_previous_next_buttons_summary_on">বোতাম লুকানো হয়</string>
<string name="revanced_hide_player_previous_next_buttons_summary_off">বোতাম দেখানো হয়</string>
<string name="revanced_hide_cast_button_title">কাস্ট বোতামটি লুকান</string>
@@ -1113,16 +1112,14 @@ YouTube সেটিংসে অটো প্লে পরিবর্তন
<string name="revanced_change_form_factor_entry_2">ফোন</string>
<string name="revanced_change_form_factor_entry_3">ট্যাবলেট</string>
<string name="revanced_change_form_factor_entry_4">স্বয়ংচালিত</string>
<string name="revanced_change_form_factor_user_dialog_message">"পরিবর্তনগুলো হল:
<string name="revanced_change_form_factor_user_dialog_message">"পরিবর্তনগুলির মধ্যে রয়েছে:
ট্যাবলেট লেআউট
• কমিউনিটি পোস্ট গোপন
• কমিউনিটি পোস্টগুলি লুকানো আছে
স্বয়ংচালিত লেআউট
ঘড়ির ইতিহাস মেনু গোপন
এক্সপ্লোর ট্যাব পুনরুদ্ার করা হয়েছে
• শর্টস নিয়মিত প্লেয়ারে খোলে
• ফিড বিষয় এবং চ্যানেল দ্বারা সংগঠিত হয়"</string>
অটোমোটিভ লেআউট
Shorts নিয়মিত প্লেয়ারে খোলে
ফিড বিষয় এবং চ্যানেল দ্ারা সংগঠিত"</string>
</patch>
<patch id="layout.spoofappversion.spoofAppVersionPatch">
<string name="revanced_spoof_app_version_title">অ্যাপ সংস্করণ স্পুফ করুন</string>
@@ -1192,7 +1189,7 @@ YouTube সেটিংসে অটো প্লে পরিবর্তন
</patch>
<patch id="layout.miniplayer.miniplayerPatch">
<string name="revanced_miniplayer_screen_title">মিনিপ্লেয়ার</string>
<string name="revanced_miniplayer_screen_summary">অ্যাপের মধ্যকার মিনিমাইজড প্লেয়ার এর ধরণ পরিবর্তন করুন</string>
<string name="revanced_miniplayer_screen_summary">ইন-অ্যাপ মিনিমাইজড প্লেয়ারের শৈলী পরিবর্তন করুন</string>
<string name="revanced_miniplayer_type_title">মিনিপ্লেয়ার ধরণ</string>
<string name="revanced_miniplayer_type_entry_0">নিষ্ক্রিয় হয়েছে</string>
<string name="revanced_miniplayer_type_entry_1">পূর্ব-নির্ধারিত</string>
@@ -1245,8 +1242,6 @@ Miniplayer স্ক্রিন থেকে বামে বা ডানে
<string name="revanced_gradient_loading_screen_title">গ্রেডিয়েন্ট লোডিং স্ক্রিণ সক্রিয় করুন</string>
<string name="revanced_gradient_loading_screen_summary_on">লোডিং স্ক্রিণে একটি গ্রেডিয়েন্ড ব্যাকগ্রাউন্ড থাকবে</string>
<string name="revanced_gradient_loading_screen_summary_off">লোডিং স্ক্রিণে একটি সলিড ব্যাকগ্রাউন্ড থাকবে</string>
</patch>
<patch id="layout.theme.themeResourcePatch">
<string name="revanced_seekbar_custom_color_title">সিকবারে নিজস্ব রং সক্রিয় করুন</string>
<string name="revanced_seekbar_custom_color_summary_on">সিকবারে নিজস্ব রং প্রদর্শিত হয়েছে</string>
<string name="revanced_seekbar_custom_color_summary_off">সিকবারে মূল রং প্রদর্শিত হয়েছে</string>
@@ -1338,8 +1333,8 @@ DeArrow সম্পর্কে আরও জানতে এখানে ট
</patch>
<patch id="misc.links.openLinksExternallyPatch">
<string name="revanced_external_browser_title">লিংক ব্রাউজারে খুলুন</string>
<string name="revanced_external_browser_summary_on">লিংক বাহিরে খুলুন</string>
<string name="revanced_external_browser_summary_off">অ্যাপের মধ্যে লিক খুলছে</string>
<string name="revanced_external_browser_summary_on">বাহ্যিক ব্রাউজারে লিঙ্ক খোলা হচ্ছে</string>
<string name="revanced_external_browser_summary_off">ইন-অ্যাপ ব্রাউজারে লিঙ্ক খোলা হচ্ছে</string>
</patch>
<patch id="misc.privacy.removeTrackingQueryParameterPatch">
<string name="revanced_remove_tracking_query_parameter_title">ট্র্যাকিং করার প্যারামিটার মুছুন</string>
@@ -1366,9 +1361,15 @@ DeArrow সম্পর্কে আরও জানতে এখানে ট
<string name="revanced_remember_video_quality_last_selected_summary_off">গুণমান পরিবর্তন বর্তমান ভিডিওতে প্রয়োগ করা হয়েছে</string>
<string name="revanced_video_quality_default_wifi_title">ওয়াই-ফাই নেটওয়ার্কে ডিফল্ট ভিডিও গুণমান</string>
<string name="revanced_video_quality_default_mobile_title">মোবাইল নেটওয়ার্কে ডিফল্ট ভিডিও গুণমান</string>
<string name="revanced_remember_shorts_quality_last_selected_title">Shorts গুণমান পরিবর্তনের কথা মনে রাখুন</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_on">গুণমানের পরিবর্তনগুলি সমস্ত Shorts-এর জন্য প্রযোজ্য</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_off">গুণমানের পরিবর্তনগুলি শুধুমাত্র বর্তমান Short-এর জন্য প্রযোজ্য</string>
<string name="revanced_shorts_quality_default_wifi_title">Wi-Fi নেটওয়ার্কে ডিফল্ট Shorts গুণমান</string>
<string name="revanced_shorts_quality_default_mobile_title">মোবাইল নেটওয়ার্কে ডিফল্ট Shorts গুণমান</string>
<string name="revanced_remember_video_quality_mobile">মোবাইল</string>
<string name="revanced_remember_video_quality_wifi">ওয়াই-ফাই</string>
<string name="revanced_remember_video_quality_toast">ডিফল্ট %1$s গুণমান পরিবর্তন হচ্ছে: %2$s</string>
<string name="revanced_remember_video_quality_toast_shorts">Shorts %1$s এর গুণমান পরিবর্তন করে: %2$s</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">স্পিড ডায়ালগ বোতাম দেখান</string>
@@ -1399,10 +1400,10 @@ DeArrow সম্পর্কে আরও জানতে এখানে ট
<string name="revanced_disable_hdr_video_summary_on">HDR ভিডিও নিষ্ক্রিয় করা হয়েছে</string>
<string name="revanced_disable_hdr_video_summary_off">HDR ভিডিও সক্রিয় হয়েছে</string>
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<string name="revanced_restore_old_video_quality_menu_title">পুরোনো ভিডিও গুণমান উদ্ধার করু</string>
<string name="revanced_restore_old_video_quality_menu_summary_on">পুরোনো ভিডিও গুণমান মেনু প্রদর্শিত হয়েছে</string>
<string name="revanced_restore_old_video_quality_menu_summary_off">পুরোনো ভিডিও গুণমান মেনু প্রদর্শিত হয়নি</string>
<patch id="video.quality.advancedVideoQualityMenuPatch">
<string name="revanced_advanced_video_quality_menu_title">উন্নত ভিডিও গুণমান মেনু দেখা</string>
<string name="revanced_advanced_video_quality_menu_summary_on">উন্নত ভিডিও গুণমান মেনু দেখানো হয়েছে</string>
<string name="revanced_advanced_video_quality_menu_summary_off">উন্নত ভিডিও গুণমান মেনু দেখানো হয়নি</string>
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
<string name="revanced_slide_to_seek_title">ভিডিওর নির্দিষ্ট অংশে যেতে টানুন সক্রিয় করুন</string>

View File

@@ -177,8 +177,6 @@ Second \"item\" text"</string>
</patch>
<patch id="layout.theme.themePatch">
</patch>
<patch id="layout.theme.themeResourcePatch">
</patch>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch">
</patch>
<patch id="layout.thumbnails.alternativeThumbnailsPatch">
@@ -219,7 +217,7 @@ Second \"item\" text"</string>
</patch>
<patch id="video.hdr.disableHdrPatch">
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>

View File

@@ -301,13 +301,13 @@ No se t'informarà de cap esdeveniment inesperat."</string>
<string name="revanced_hide_description_components_screen_title">Descripció del vídeo</string>
<string name="revanced_hide_description_components_screen_summary">Amaga o mostra els components de descripció del vídeo</string>
<string name="revanced_hide_filter_bar_screen_title">Barra de filtre</string>
<string name="revanced_hide_filter_bar_screen_summary">Mostra o amaga la barra de filtre al feed, la cerca i els vídeos relacionats</string>
<string name="revanced_hide_filter_bar_screen_summary">Amaga o mostra la barra de filtre al canal, als resultats de cerca i als vídeos relacionats</string>
<string name="revanced_hide_filter_bar_feed_in_feed_title">Amaga al feed</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_on">Amagat al feed</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_off">Es mostra al feed</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Amaga a la cerca</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Amagat a la cerca</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Mostrat a la cerca</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Amaga als resultats de cerca</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Amagat als resultats de cerca</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Mostrat als resultats de cerca</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_title">Amaga els vídeos relacionats</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_on">Amagats als vídeos relacionats</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_off">Es mostren els vídeos relacionats</string>
@@ -404,7 +404,7 @@ Aquesta funció només està disponible per a dispositius antics"</string>
<string name="revanced_hide_self_sponsor_ads_title">Amaga les targetes d\'auto patrocini</string>
<string name="revanced_hide_self_sponsor_ads_summary_on">Les targetes d\'autopatrocini estan magades</string>
<string name="revanced_hide_self_sponsor_ads_summary_off">Es mostren les targetes d\'autopatrocini</string>
<string name="revanced_hide_products_banner_title">Amaga el bàner per veure productes</string>
<string name="revanced_hide_products_banner_title">Amaga el bàner «Mostra els productes»</string>
<string name="revanced_hide_products_banner_summary_on">La pancarta s\'amaga</string>
<string name="revanced_hide_products_banner_summary_off">La pancarta es mostra</string>
<string name="revanced_hide_end_screen_store_banner_title">Amaga el banner de la botiga a la pantalla final</string>
@@ -663,7 +663,7 @@ Si canviar aquesta opció no té cap efecte, prova a canviar al mode d'incògnit
<string name="revanced_hide_player_flyout_video_quality_footer_summary_off">La part inferior del menú de qualitat del vídeo es mostra</string>
</patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<string name="revanced_hide_player_previous_next_buttons_title">Amaga els botons de vídeo anteriors i següents</string>
<string name="revanced_hide_player_previous_next_buttons_title">Amaga els botons Anterior i següent</string>
<string name="revanced_hide_player_previous_next_buttons_summary_on">Els botons estan amagats</string>
<string name="revanced_hide_player_previous_next_buttons_summary_off">Els botons es mostren</string>
<string name="revanced_hide_cast_button_title">Amaga el botó Emet</string>
@@ -1117,14 +1117,12 @@ Preparat per enviar?"</string>
<string name="revanced_change_form_factor_entry_4">Automoció</string>
<string name="revanced_change_form_factor_user_dialog_message">"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"</string>
Disposició per a automoció
• Els \"Shorts\" s'obren al reproductor normal
• La font està organitzada per temes i canals"</string>
</patch>
<patch id="layout.spoofappversion.spoofAppVersionPatch">
<string name="revanced_spoof_app_version_title">Falsa la versió de l\'aplicació</string>
@@ -1247,8 +1245,6 @@ Desliza para ampliar o cerrar"</string>
<string name="revanced_gradient_loading_screen_title">Habilita la pantalla de càrrega amb degradació</string>
<string name="revanced_gradient_loading_screen_summary_on">La pantalla de càrrega tindrà un fons de degradació</string>
<string name="revanced_gradient_loading_screen_summary_off">La pantalla de càrrega tindrà un fons sòlid</string>
</patch>
<patch id="layout.theme.themeResourcePatch">
<string name="revanced_seekbar_custom_color_title">Habilita el color personalitzat de la barra de cerca</string>
<string name="revanced_seekbar_custom_color_summary_on">El color personalitzat de la barra de cerca es mostra</string>
<string name="revanced_seekbar_custom_color_summary_off">El color original de la barra de cerca es mostra</string>
@@ -1340,8 +1336,8 @@ Si actives aquesta opció, es poden desbloquejar qualitats de vídeo més altes"
</patch>
<patch id="misc.links.openLinksExternallyPatch">
<string name="revanced_external_browser_title">Obri els enllaços al navegador</string>
<string name="revanced_external_browser_summary_on">Obrir els enllaços externament</string>
<string name="revanced_external_browser_summary_off">Obrir els enllaços a l\'aplicació</string>
<string name="revanced_external_browser_summary_on">Obrint enllaços en un navegador extern</string>
<string name="revanced_external_browser_summary_off">Obrint enllaços en un navegador integrat a l\'aplicació</string>
</patch>
<patch id="misc.privacy.removeTrackingQueryParameterPatch">
<string name="revanced_remove_tracking_query_parameter_title">Elimina el paràmetre de consulta de seguiment</string>
@@ -1368,9 +1364,15 @@ Si actives aquesta opció, es poden desbloquejar qualitats de vídeo més altes"
<string name="revanced_remember_video_quality_last_selected_summary_off">Els canvis de qualitat només s\'apliquen al vídeo actual</string>
<string name="revanced_video_quality_default_wifi_title">Qualitat de vídeo predeterminada a la xarxa Wi-Fi</string>
<string name="revanced_video_quality_default_mobile_title">Qualitat de vídeo predeterminada a la xarxa mòbil</string>
<string name="revanced_remember_shorts_quality_last_selected_title">Recorda els canvis de qualitat de Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_on">Els canvis de qualitat s\'apliquen a tots els Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_off">Els canvis de qualitat només s\'apliquen al Short actual</string>
<string name="revanced_shorts_quality_default_wifi_title">Qualitat predeterminada de Shorts a la xarxa Wi-Fi</string>
<string name="revanced_shorts_quality_default_mobile_title">Qualitat predeterminada de Shorts a la xarxa mòbil</string>
<string name="revanced_remember_video_quality_mobile">mòbil</string>
<string name="revanced_remember_video_quality_wifi">wifi</string>
<string name="revanced_remember_video_quality_toast">S\'ha canviat la qualitat predeterminada de %1$s a: %2$s</string>
<string name="revanced_remember_video_quality_toast_shorts">S\'ha canviat la qualitat de Shorts %1$s a: %2$s</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Mostra el botó del diàleg de velocitat</string>
@@ -1401,10 +1403,10 @@ Si actives aquesta opció, es poden desbloquejar qualitats de vídeo més altes"
<string name="revanced_disable_hdr_video_summary_on">El vídeo HDR està desactivat</string>
<string name="revanced_disable_hdr_video_summary_off">El vídeo HDR està activat</string>
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<string name="revanced_restore_old_video_quality_menu_title">Restaura el menú de qualitat de vídeo antic</string>
<string name="revanced_restore_old_video_quality_menu_summary_on">El menú de qualitat de vídeo antic es mostra</string>
<string name="revanced_restore_old_video_quality_menu_summary_off">El menú de qualitat de vídeo antic no es mostra</string>
<patch id="video.quality.advancedVideoQualityMenuPatch">
<string name="revanced_advanced_video_quality_menu_title">Mostra el menú avançat de qualitat de vídeo</string>
<string name="revanced_advanced_video_quality_menu_summary_on">Es mostra el menú avançat de qualitat de vídeo</string>
<string name="revanced_advanced_video_quality_menu_summary_off">No es mostra el menú avançat de qualitat de vídeo</string>
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
<string name="revanced_slide_to_seek_title">Habilita lliscar per buscar</string>

View File

@@ -301,13 +301,13 @@ Nebudete informováni o žádné neočekávané události."</string>
<string name="revanced_hide_description_components_screen_title">Popis videa</string>
<string name="revanced_hide_description_components_screen_summary">Skrýt nebo zobrazit komponenty popisu videa</string>
<string name="revanced_hide_filter_bar_screen_title">Lišta filtrů</string>
<string name="revanced_hide_filter_bar_screen_summary">Skrýt nebo zobrazit lištu filtrů ve feedu, vyhledání a souvisejících videích</string>
<string name="revanced_hide_filter_bar_screen_summary">Skrýt nebo zobrazit lištu filtrů v kanálu, výsledcích hledání a souvisejících videích</string>
<string name="revanced_hide_filter_bar_feed_in_feed_title">Skrýt ve feedu</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_on">Ve feedu skryto</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_off">Ve feedu zobrazeno</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Skrýt ve vyhledávání</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Ve vyhledávání skryto</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Ve vyhledávání zobrazeno</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Skrýt ve výsledcích vyhledávání</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Skryto ve výsledcích vyhledávání</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Zobrazeno ve výsledcích vyhledávání</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_title">Skrýt v souvisejících videích</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_on">V souvisejících videích skryto</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_off">V souvisejících videích zobrazeno</string>
@@ -404,7 +404,7 @@ Tato funkce je dostupná pouze pro starší zařízení"</string>
<string name="revanced_hide_self_sponsor_ads_title">Skrýt karty se sponzorovanými produkty</string>
<string name="revanced_hide_self_sponsor_ads_summary_on">Karty se sponzorovanými produkty jsou skryty</string>
<string name="revanced_hide_self_sponsor_ads_summary_off">Karty se sponzorovanými produkty jsou zobrazeny</string>
<string name="revanced_hide_products_banner_title">Skrýt banner pro prohlížení produktů</string>
<string name="revanced_hide_products_banner_title">Skrýt banner „Zobrazit produkty“</string>
<string name="revanced_hide_products_banner_summary_on">Banner je skryt</string>
<string name="revanced_hide_products_banner_summary_off">Banner je zobrazen</string>
<string name="revanced_hide_end_screen_store_banner_title">Skrýt koncový banner obchodu</string>
@@ -663,7 +663,7 @@ Pokud změna tohoto nastavení nemá žádný účinek, zkuste přepnout do rež
<string name="revanced_hide_player_flyout_video_quality_footer_summary_off">Zápatí menu kvality videa je zobrazeno</string>
</patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<string name="revanced_hide_player_previous_next_buttons_title">Skrýt tlačítka pro předchozí a další video</string>
<string name="revanced_hide_player_previous_next_buttons_title">Skrýt tlačítka Předchozí a Další</string>
<string name="revanced_hide_player_previous_next_buttons_summary_on">Tlačítka jsou skryta</string>
<string name="revanced_hide_player_previous_next_buttons_summary_off">Tlačítka jsou zobrazena</string>
<string name="revanced_hide_cast_button_title">Skrýt tlačítko Odeslat</string>
@@ -1121,10 +1121,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"</string>
• Kanál je uspořádán podle témat a kanálů"</string>
</patch>
<patch id="layout.spoofappversion.spoofAppVersionPatch">
<string name="revanced_spoof_app_version_title">Napodobit verzi aplikace</string>
@@ -1247,8 +1245,6 @@ Přejeďte prstem pro rozbalení nebo zavření"</string>
<string name="revanced_gradient_loading_screen_title">Povolit přechodovou obrazovku načítání</string>
<string name="revanced_gradient_loading_screen_summary_on">Obrazovka načítání bude mít přechodové pozadí</string>
<string name="revanced_gradient_loading_screen_summary_off">Obrazovka načítání bude mít pevné pozadí</string>
</patch>
<patch id="layout.theme.themeResourcePatch">
<string name="revanced_seekbar_custom_color_title">Povolit vlastní barvu posuvníku</string>
<string name="revanced_seekbar_custom_color_summary_on">Vlasní barva posuvníku je zobrazena</string>
<string name="revanced_seekbar_custom_color_summary_off">Původní barva posuvníku je zobrazena</string>
@@ -1340,8 +1336,8 @@ Povolením této funkce lze odemknout vyšší kvality videa"</string>
</patch>
<patch id="misc.links.openLinksExternallyPatch">
<string name="revanced_external_browser_title">Otevírat odkazy v prohlížeči</string>
<string name="revanced_external_browser_summary_on">Otevírání odkazů externě</string>
<string name="revanced_external_browser_summary_off">Otevírání odkazů v aplikaci</string>
<string name="revanced_external_browser_summary_on">Otevírání odkazů v externím prohlížeči</string>
<string name="revanced_external_browser_summary_off">Otevírání odkazů v prohlížeči v aplikaci</string>
</patch>
<patch id="misc.privacy.removeTrackingQueryParameterPatch">
<string name="revanced_remove_tracking_query_parameter_title">Odstranit sledovací parametr dotazu</string>
@@ -1368,9 +1364,15 @@ Povolením této funkce lze odemknout vyšší kvality videa"</string>
<string name="revanced_remember_video_quality_last_selected_summary_off">Změny kvality se vztahují pouze na aktuální video</string>
<string name="revanced_video_quality_default_wifi_title">Výchozí kvalita videa v síti Wi-Fi</string>
<string name="revanced_video_quality_default_mobile_title">Výchozí kvalita videa v mobilní síti</string>
<string name="revanced_remember_shorts_quality_last_selected_title">Zapamatovat si změny kvality u položky Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_on">Změny kvality se vztahují na všechny {Shorts}</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_off">Změny kvality se vztahují pouze na aktuální {Shorts}</string>
<string name="revanced_shorts_quality_default_wifi_title">Výchozí kvalita Shorts v síti Wi-Fi</string>
<string name="revanced_shorts_quality_default_mobile_title">Výchozí kvalita Shorts v mobilní síti</string>
<string name="revanced_remember_video_quality_mobile">mobilní</string>
<string name="revanced_remember_video_quality_wifi">Wi-Fi</string>
<string name="revanced_remember_video_quality_toast">Výchozí kvalita %1$s změněna na: %2$s</string>
<string name="revanced_remember_video_quality_toast_shorts">Změněna kvalita Shorts %1$s na: %2$s</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Zobrazit tlačítko dialogu rychlosti</string>
@@ -1401,10 +1403,10 @@ Povolením této funkce lze odemknout vyšší kvality videa"</string>
<string name="revanced_disable_hdr_video_summary_on">HDR video je vypnuté.</string>
<string name="revanced_disable_hdr_video_summary_off">HDR video je zapnuté.</string>
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<string name="revanced_restore_old_video_quality_menu_title">Obnovit staré menu kvality videa</string>
<string name="revanced_restore_old_video_quality_menu_summary_on">Staré menu kvality videa se zobrazuje</string>
<string name="revanced_restore_old_video_quality_menu_summary_off">Staré menu kvality videa se nezobrazuje</string>
<patch id="video.quality.advancedVideoQualityMenuPatch">
<string name="revanced_advanced_video_quality_menu_title">Zobrazit rozšířené menu kvality videa</string>
<string name="revanced_advanced_video_quality_menu_summary_on">Zobrazuje se rozšířené menu kvality videa</string>
<string name="revanced_advanced_video_quality_menu_summary_off">Nezobrazuje se rozšířené menu kvality videa</string>
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
<string name="revanced_slide_to_seek_title">Povolit posun pro hledání</string>

View File

@@ -278,13 +278,13 @@ Du modtager ikke notifikationer om uventede hændelser."</string>
<string name="revanced_hide_description_components_screen_title">Video beskrivelse</string>
<string name="revanced_hide_description_components_screen_summary">Skjul eller vis komponenter til videobeskrivelse</string>
<string name="revanced_hide_filter_bar_screen_title">Filtrer bjælke</string>
<string name="revanced_hide_filter_bar_screen_summary">Skjul eller vis filterbjælken i feedet, søg og relaterede videoer</string>
<string name="revanced_hide_filter_bar_screen_summary">Skjul eller vis filterlinjen i feedet, søgeresultaterne og relaterede videoer</string>
<string name="revanced_hide_filter_bar_feed_in_feed_title">Skjul i feed</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_on">Skjult i feed</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_off">Vist i feed</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Skjul i søgning</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Skjult i søgning</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Vist i søgning</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Skjul i søgeresultater</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Skjult i søgeresultater</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Vises i søgeresultater</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_title">Skjul i relaterede videoer</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_on">Skjult i relaterede videoer</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_off">Vist i relaterede videoer</string>
@@ -372,7 +372,7 @@ Denne funktion er kun tilgængelig for ældre enheder"</string>
<string name="revanced_hide_self_sponsor_ads_title">Skjul selvsponsorerede kort</string>
<string name="revanced_hide_self_sponsor_ads_summary_on">Selvsponsorerede kort er skjult</string>
<string name="revanced_hide_self_sponsor_ads_summary_off">Selvsponsorerede kort vises</string>
<string name="revanced_hide_products_banner_title">Skjul banner for at se produkter</string>
<string name="revanced_hide_products_banner_title">Skjul banneret \"Se produkter\"</string>
<string name="revanced_hide_products_banner_summary_on">Banner er skjult</string>
<string name="revanced_hide_products_banner_summary_off">Banner er vist</string>
<string name="revanced_hide_end_screen_store_banner_title">Skjul banner fra butikken på slutskærmen</string>
@@ -624,7 +624,7 @@ Hvis ændring af denne indstilling ikke træder i kraft, kan du prøve at skifte
<string name="revanced_hide_player_flyout_video_quality_footer_summary_off">Videokvalitet menu footer er vist</string>
</patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<string name="revanced_hide_player_previous_next_buttons_title">Skjul forrige &amp; næste video knapper</string>
<string name="revanced_hide_player_previous_next_buttons_title">Skjul Forrige &amp; Næste knapper</string>
<string name="revanced_hide_player_previous_next_buttons_summary_on">Knapper er skjult</string>
<string name="revanced_hide_player_previous_next_buttons_summary_off">Knapper vises</string>
<string name="revanced_hide_cast_button_title">Skjul Cast-knappen</string>
@@ -1062,13 +1062,11 @@ Er du klar til at indsende?"</string>
<string name="revanced_change_form_factor_user_dialog_message">"Æ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"</string>
• Feed er organiseret efter emner og kanaler"</string>
</patch>
<patch id="layout.spoofappversion.spoofAppVersionPatch">
<string name="revanced_spoof_app_version_title">Spoof app-version</string>
@@ -1138,7 +1136,7 @@ Hvis det senere slås fra, anbefales det at rydde app-dataene for at forhindre U
</patch>
<patch id="layout.miniplayer.miniplayerPatch">
<string name="revanced_miniplayer_screen_title">Mini-afspiller</string>
<string name="revanced_miniplayer_screen_summary">Ændre stilen for den i app minimeret afspiller</string>
<string name="revanced_miniplayer_screen_summary">Skift stilen den minimerede afspiller i appen</string>
<string name="revanced_miniplayer_type_title">Type af miniplayer</string>
<string name="revanced_miniplayer_type_entry_0">Deaktiveret</string>
<string name="revanced_miniplayer_type_entry_1">Standard</string>
@@ -1191,8 +1189,6 @@ Stryg for at udvide eller lukke"</string>
<string name="revanced_gradient_loading_screen_title">Aktiver gradient indlæsning af skærmen</string>
<string name="revanced_gradient_loading_screen_summary_on">Indlæser skærmen vil have en gradient baggrund</string>
<string name="revanced_gradient_loading_screen_summary_off">Indlæser skærmen vil have en solid baggrund</string>
</patch>
<patch id="layout.theme.themeResourcePatch">
<string name="revanced_seekbar_custom_color_title">Aktivér brugerdefineret søgelinjefarve</string>
<string name="revanced_seekbar_custom_color_summary_on">Brugerdefineret søgelinje farve vises</string>
<string name="revanced_seekbar_custom_color_summary_off">Original søgelinje farve vises</string>
@@ -1280,8 +1276,8 @@ Aktivering af dette kan låse op for højere videokvalitet"</string>
</patch>
<patch id="misc.links.openLinksExternallyPatch">
<string name="revanced_external_browser_title">Åbn links i browser</string>
<string name="revanced_external_browser_summary_on">Åbning af links eksternt</string>
<string name="revanced_external_browser_summary_off">Åbner links i appen</string>
<string name="revanced_external_browser_summary_on">Åbner links i ekstern browser</string>
<string name="revanced_external_browser_summary_off">Åbner links i browser i appen</string>
</patch>
<patch id="misc.privacy.removeTrackingQueryParameterPatch">
<string name="revanced_remove_tracking_query_parameter_title">Fjern sporingsforespørgselsparameter</string>
@@ -1308,9 +1304,15 @@ Aktivering af dette kan låse op for højere videokvalitet"</string>
<string name="revanced_remember_video_quality_last_selected_summary_off">Kvalitetsændringer gælder kun for den aktuelle video</string>
<string name="revanced_video_quality_default_wifi_title">Standard videokvalitet på Wi-Fi-netværk</string>
<string name="revanced_video_quality_default_mobile_title">Standard videokvalitet på mobilnetværk</string>
<string name="revanced_remember_shorts_quality_last_selected_title">Husk kvalitetsændringer for Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_on">Kvalitetsændringer gælder for alle Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_off">Kvalitetsændringer gælder kun for den aktuelle Short</string>
<string name="revanced_shorts_quality_default_wifi_title">Standard Shorts-kvalitet på Wi-Fi-netværk</string>
<string name="revanced_shorts_quality_default_mobile_title">Standard Shorts-kvalitet på mobilnetværk</string>
<string name="revanced_remember_video_quality_mobile">mobil</string>
<string name="revanced_remember_video_quality_wifi">Wi-Fi</string>
<string name="revanced_remember_video_quality_toast">Ændrede standard %1$s kvalitet til: %2$s</string>
<string name="revanced_remember_video_quality_toast_shorts">Ændrede Shorts %1$s kvalitet til: %2$s</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Vis hastigheds dialogknap</string>
@@ -1341,10 +1343,10 @@ Aktivering af dette kan låse op for højere videokvalitet"</string>
<string name="revanced_disable_hdr_video_summary_on">HDR-video er deaktiveret</string>
<string name="revanced_disable_hdr_video_summary_off">HDR-video er aktiveret</string>
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<string name="revanced_restore_old_video_quality_menu_title">Gendan gamle video kvalitet menu</string>
<string name="revanced_restore_old_video_quality_menu_summary_on">Gammel videokvalitetsmenu vises</string>
<string name="revanced_restore_old_video_quality_menu_summary_off">Gammel videokvalitetsmenu vises ikke</string>
<patch id="video.quality.advancedVideoQualityMenuPatch">
<string name="revanced_advanced_video_quality_menu_title">Vis avanceret menu for videokvalitet</string>
<string name="revanced_advanced_video_quality_menu_summary_on">Avanceret menu for videokvalitet vises</string>
<string name="revanced_advanced_video_quality_menu_summary_off">Avanceret menu for videokvalitet vises ikke</string>
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
<string name="revanced_slide_to_seek_title">Aktivér dias for at søge</string>

View File

@@ -297,13 +297,13 @@ Sie werden nicht über unerwartete Ereignisse informiert."</string>
<string name="revanced_hide_description_components_screen_title">Videobeschreibung</string>
<string name="revanced_hide_description_components_screen_summary">Komponenten der Videobeschreibung ausblenden oder anzeigen</string>
<string name="revanced_hide_filter_bar_screen_title">Filterleiste</string>
<string name="revanced_hide_filter_bar_screen_summary">Verstecke oder zeige die Filterleiste im Feed, in der Suche und verwandten Videos</string>
<string name="revanced_hide_filter_bar_screen_summary">Die Filterleiste im Feed, in den Suchergebnissen und in verwandten Videos ein- oder ausblenden</string>
<string name="revanced_hide_filter_bar_feed_in_feed_title">Im Feed ausblenden</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_on">Versteckt im Feed</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_off">Im Feed angezeigt</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">In der Suche ausblenden</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Versteckt in der Suche</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">In der Suche angezeigt</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">In Suchergebnissen ausblenden</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">In Suchergebnissen versteckt</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">In den Suchergebnissen angezeigt</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_title">In verwandten Videos ausblenden</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_on">Versteckt in verwandten Videos</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_off">In verwandten Videos angezeigt</string>
@@ -399,7 +399,7 @@ Diese Funktion ist nur für ältere Geräte verfügbar"</string>
<string name="revanced_hide_self_sponsor_ads_title">Selbst gesponserte Karten ausblenden</string>
<string name="revanced_hide_self_sponsor_ads_summary_on">Selbst gesponserte Karten sind ausgeblendet</string>
<string name="revanced_hide_self_sponsor_ads_summary_off">Selbstgesponserte Karten werden angezeigt</string>
<string name="revanced_hide_products_banner_title">Banner ausblenden, um Produkte anzuzeigen</string>
<string name="revanced_hide_products_banner_title">Banner \"Produkte ansehen\" ausblenden</string>
<string name="revanced_hide_products_banner_summary_on">Banner ist ausgeblendet</string>
<string name="revanced_hide_products_banner_summary_off">Banner wird angezeigt</string>
<string name="revanced_hide_end_screen_store_banner_title">Endbild-Banner ausblenden</string>
@@ -656,7 +656,7 @@ Wenn diese Änderung nicht wirksam wird, versuchen Sie, in den Inkognito-Modus z
<string name="revanced_hide_player_flyout_video_quality_footer_summary_off">Video-Qualität Menü-Fußzeile wird angezeigt</string>
</patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<string name="revanced_hide_player_previous_next_buttons_title">Vorherige &amp; Nächste Video-Tasten ausblenden</string>
<string name="revanced_hide_player_previous_next_buttons_title">Vorherige &amp; Nächste Tasten ausblenden</string>
<string name="revanced_hide_player_previous_next_buttons_summary_on">Buttons sind ausgeblendet</string>
<string name="revanced_hide_player_previous_next_buttons_summary_off">Tasten werden angezeigt</string>
<string name="revanced_hide_cast_button_title">Cast-Button ausblenden</string>
@@ -1109,16 +1109,14 @@ Bereit zum Einreichen?"</string>
<string name="revanced_change_form_factor_entry_2">Telefon</string>
<string name="revanced_change_form_factor_entry_3">Tablets</string>
<string name="revanced_change_form_factor_entry_4">Automobil</string>
<string name="revanced_change_form_factor_user_dialog_message">"Änderungen umfassen:
<string name="revanced_change_form_factor_user_dialog_message">"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"</string>
Automotive-Layout
Shorts werden im normalen Player geöffnet
Feed ist nach Themen und Kanälen geordnet"</string>
</patch>
<patch id="layout.spoofappversion.spoofAppVersionPatch">
<string name="revanced_spoof_app_version_title">Spoof-App-Version</string>
@@ -1188,7 +1186,7 @@ Wenn Sie die Funktion später deaktivieren, wird empfohlen, die App-Daten zu lö
</patch>
<patch id="layout.miniplayer.miniplayerPatch">
<string name="revanced_miniplayer_screen_title">Minispieler</string>
<string name="revanced_miniplayer_screen_summary">Ändere den Stil des in App minimierten Players</string>
<string name="revanced_miniplayer_screen_summary">Das Aussehen des minimierten In-App-Players ändern</string>
<string name="revanced_miniplayer_type_title">Minispielertyp</string>
<string name="revanced_miniplayer_type_entry_0">Deaktiviert</string>
<string name="revanced_miniplayer_type_entry_1">Standard</string>
@@ -1241,8 +1239,6 @@ Wischen Sie, um zu erweitern oder zu schließen"</string>
<string name="revanced_gradient_loading_screen_title">Gradientenladebildschirm aktivieren</string>
<string name="revanced_gradient_loading_screen_summary_on">Lade Bildschirm hat einen Farbverlauf Hintergrund</string>
<string name="revanced_gradient_loading_screen_summary_off">Das Laden des Bildschirms wird einen soliden Hintergrund haben</string>
</patch>
<patch id="layout.theme.themeResourcePatch">
<string name="revanced_seekbar_custom_color_title">Eigene Suchleistenfarbe aktivieren</string>
<string name="revanced_seekbar_custom_color_summary_on">Angepasste Suchleistenfarbe wird angezeigt</string>
<string name="revanced_seekbar_custom_color_summary_off">Originalfarbe der Suchleiste wird angezeigt</string>
@@ -1334,8 +1330,8 @@ Durch Aktivieren dieser Option können höhere Videoqualitäten freigeschaltet w
</patch>
<patch id="misc.links.openLinksExternallyPatch">
<string name="revanced_external_browser_title">Links im Browser öffnen</string>
<string name="revanced_external_browser_summary_on">Links extern öffnen</string>
<string name="revanced_external_browser_summary_off">Öffne Links in der App</string>
<string name="revanced_external_browser_summary_on">Links im externen Browser öffnen</string>
<string name="revanced_external_browser_summary_off">Links im In-App-Browser öffnen</string>
</patch>
<patch id="misc.privacy.removeTrackingQueryParameterPatch">
<string name="revanced_remove_tracking_query_parameter_title">Tracking-Abfrageparameter entfernen</string>
@@ -1362,9 +1358,15 @@ Durch Aktivieren dieser Option können höhere Videoqualitäten freigeschaltet w
<string name="revanced_remember_video_quality_last_selected_summary_off">Qualitätsänderungen gelten nur für das aktuelle Video</string>
<string name="revanced_video_quality_default_wifi_title">Standard-Videoqualität im Wi-Fi-Netzwerk</string>
<string name="revanced_video_quality_default_mobile_title">Standard-Videoqualität im Mobilfunknetz</string>
<string name="revanced_remember_shorts_quality_last_selected_title">Änderungen der Shorts-Qualität speichern</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_on">Qualitätsänderungen gelten für alle Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_off">Qualitätsänderungen gelten nur für den aktuellen Short</string>
<string name="revanced_shorts_quality_default_wifi_title">Standardmäßige Shorts-Qualität im WLAN</string>
<string name="revanced_shorts_quality_default_mobile_title">Standard-Shorts-Qualität im Mobilfunknetz</string>
<string name="revanced_remember_video_quality_mobile">Mobile</string>
<string name="revanced_remember_video_quality_wifi">WLAN</string>
<string name="revanced_remember_video_quality_toast">Standard %1$s Qualität geändert zu: %2$s</string>
<string name="revanced_remember_video_quality_toast_shorts">Shorts-Qualität von %1$s geändert in: %2$s</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Zeige Geschwindigkeitsdialog Taste</string>
@@ -1395,10 +1397,10 @@ Durch Aktivieren dieser Option können höhere Videoqualitäten freigeschaltet w
<string name="revanced_disable_hdr_video_summary_on">HDR-Video ist deaktiviert</string>
<string name="revanced_disable_hdr_video_summary_off">HDR-Video ist aktiviert</string>
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<string name="revanced_restore_old_video_quality_menu_title">Altes Videoqualitätsmenü wiederherstellen</string>
<string name="revanced_restore_old_video_quality_menu_summary_on">Altes Video-Qualitätsmenü wird angezeigt</string>
<string name="revanced_restore_old_video_quality_menu_summary_off">Altes Video-Qualitätsmenü wird nicht angezeigt</string>
<patch id="video.quality.advancedVideoQualityMenuPatch">
<string name="revanced_advanced_video_quality_menu_title">Erweitertes Videoqualitätsmenü anzeigen</string>
<string name="revanced_advanced_video_quality_menu_summary_on">Erweitertes Videoqualitätsmenü wird angezeigt</string>
<string name="revanced_advanced_video_quality_menu_summary_off">Erweitertes Videoqualitätsmenü wird nicht angezeigt</string>
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
<string name="revanced_slide_to_seek_title">Folie zum Suchen aktivieren</string>

View File

@@ -303,7 +303,7 @@ Second \"item\" text"</string>
<string name="revanced_hide_description_components_screen_title">Περιγραφή βίντεο</string>
<string name="revanced_hide_description_components_screen_summary">Απόκρυψη ή εμφάνιση στοιχείων περιγραφής βίντεο</string>
<string name="revanced_hide_filter_bar_screen_title">Γραμμή φίλτρων</string>
<string name="revanced_hide_filter_bar_screen_summary">Απόκρυψη η εμφάνιση της γραμμής φίλτρων στη ροή, αναζήτηση και τα σχετικά βίντεο</string>
<string name="revanced_hide_filter_bar_screen_summary">Απόκρυψη ή εμφάνιση της γραμμής φίλτρων στην ροή, στα αποτελέσματα αναζήτησης και στα σχετικά βίντεο</string>
<string name="revanced_hide_filter_bar_feed_in_feed_title">Απόκρυψη στη ροή</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_on">Κρυμμένη</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_off">Εμφανίζεται</string>
@@ -406,7 +406,7 @@ Second \"item\" text"</string>
<string name="revanced_hide_self_sponsor_ads_title">Κάρτες αυτοπροώθησης</string>
<string name="revanced_hide_self_sponsor_ads_summary_on">Κρυμμένες</string>
<string name="revanced_hide_self_sponsor_ads_summary_off">Εμφανίζονται</string>
<string name="revanced_hide_products_banner_title">Διαφημίσεις προβολής προϊόντων</string>
<string name="revanced_hide_products_banner_title">Ετικέτα «Προβολή προϊόντων»</string>
<string name="revanced_hide_products_banner_summary_on">Κρυμμένες</string>
<string name="revanced_hide_products_banner_summary_off">Εμφανίζονται</string>
<string name="revanced_hide_end_screen_store_banner_title">Ετικέτα καταστήματος στην τελική οθόνη</string>
@@ -1117,16 +1117,14 @@ Second \"item\" text"</string>
<string name="revanced_change_form_factor_entry_2">Τηλέφωνο</string>
<string name="revanced_change_form_factor_entry_3">Ταμπλετ</string>
<string name="revanced_change_form_factor_entry_4">Αυτοκίνητο</string>
<string name="revanced_change_form_factor_user_dialog_message">"Οι αλλαγές στη διάταξη περιλαμβάνουν τα παρακάτω:
<string name="revanced_change_form_factor_user_dialog_message">"Οι αλλαγές περιλαμβάνουν:
Διάταξη ταμπλετ
Οι δημοσιεύσεις κοινότητας είναι κρυμμένες
Διάταξη tablet
Οι δημοσιεύσεις κοινότητας δεν εμφανίζονται
Διάταξη αυτοκινήτου
• Το μενού ιστορικού παρακολούθησης είναι κρυμμένο
Η καρτέλα «Εξερεύνηση» επαναφέρεται
Τα Shorts ανοίγουν στην κανονική οθόνη αναπαραγωγής
Η ροή οργανώνεται ανά θέματα και κανάλι"</string>
Η ροή οργανώνεται ανά θέματα και κανάλια"</string>
</patch>
<patch id="layout.spoofappversion.spoofAppVersionPatch">
<string name="revanced_spoof_app_version_title">Τροποποίηση έκδοσης εφαρμογής</string>
@@ -1196,7 +1194,7 @@ Second \"item\" text"</string>
</patch>
<patch id="layout.miniplayer.miniplayerPatch">
<string name="revanced_miniplayer_screen_title">Ελαχιστοποιημένη οθόνη αναπαραγωγής</string>
<string name="revanced_miniplayer_screen_summary">Αλλάξτε το στυλ της ελαχιστοποιημένης οθόνης αναπαραγωγής</string>
<string name="revanced_miniplayer_screen_summary">Αλλαγή του στυλ της ελαχιστοποιημένης οθόνης αναπαραγωγής της εφαρμογής</string>
<string name="revanced_miniplayer_type_title">Τύπος ελαχιστοποιημένης οθόνης αναπαραγωγής</string>
<string name="revanced_miniplayer_type_entry_0">Απενεργοποιημένη</string>
<string name="revanced_miniplayer_type_entry_1">Προεπιλογή</string>
@@ -1249,8 +1247,6 @@ Second \"item\" text"</string>
<string name="revanced_gradient_loading_screen_title">Διαβάθμιση οθόνης φόρτωσης</string>
<string name="revanced_gradient_loading_screen_summary_on">Η οθόνη φόρτωσης θα έχει σταδιακές αποχρώσεις φόντο</string>
<string name="revanced_gradient_loading_screen_summary_off">Η οθόνη φόρτωσης θα έχει στατική απόχρωση φόντο</string>
</patch>
<patch id="layout.theme.themeResourcePatch">
<string name="revanced_seekbar_custom_color_title">Προσαρμοσμένο χρώμα γραμμής προόδου</string>
<string name="revanced_seekbar_custom_color_summary_on">Η γραμμή προόδου εμφανίζεται με προσαρμοσμένο χρώμα</string>
<string name="revanced_seekbar_custom_color_summary_off">Η γραμμή προόδου εμφανίζεται με το αρχικό χρώμα</string>
@@ -1340,8 +1336,8 @@ Second \"item\" text"</string>
</patch>
<patch id="misc.links.openLinksExternallyPatch">
<string name="revanced_external_browser_title">Άνοιγμα συνδέσμων σε πρόγραμμα περιήγησης</string>
<string name="revanced_external_browser_summary_on">Οι σύνδεσμοι ανοίγουν εξωτερικά</string>
<string name="revanced_external_browser_summary_off">Οι σύνδεσμοι ανοίγουν εντός της εφαρμογής</string>
<string name="revanced_external_browser_summary_on">Οι σύνδεσμοι ανοίγουν σε εξωτερικό πρόγραμμα περιήγησης</string>
<string name="revanced_external_browser_summary_off">Οι σύνδεσμοι ανοίγουν στο εσωτερικό πρόγραμμα περιήγησης της εφαρμογής</string>
</patch>
<patch id="misc.privacy.removeTrackingQueryParameterPatch">
<string name="revanced_remove_tracking_query_parameter_title">Καθαρισμός συνδέσμων κοινοποίησης</string>
@@ -1366,11 +1362,17 @@ Second \"item\" text"</string>
<string name="revanced_remember_video_quality_last_selected_title">Απομνημόνευση αλλαγών ποιότητας βίντεο</string>
<string name="revanced_remember_video_quality_last_selected_summary_on">Οι αλλαγές ποιότητας ισχύουν για όλα τα βίντεο</string>
<string name="revanced_remember_video_quality_last_selected_summary_off">Οι αλλαγές ποιότητας ισχύουν μόνο για το τρέχον βίντεο</string>
<string name="revanced_video_quality_default_wifi_title">Προεπιλεγμένη ποιότητα βίντεο με Wi-Fi</string>
<string name="revanced_video_quality_default_wifi_title">Προεπιλεγμένη ποιότητα βίντεο σε δίκτυο Wi-Fi</string>
<string name="revanced_video_quality_default_mobile_title">Προεπιλεγμένη ποιότητα βίντεο με δεδομένα κινητής τηλεφωνίας</string>
<string name="revanced_remember_shorts_quality_last_selected_title">Απομνημόνευση αλλαγών ποιότητας στα Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_on">Οι αλλαγές ποιότητας ισχύουν για όλα τα Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_off">Οι αλλαγές ποιότητας ισχύουν μόνο για το τρέχον Short</string>
<string name="revanced_shorts_quality_default_wifi_title">Προεπιλεγμένη ποιότητα Shorts σε δίκτυο Wi-Fi</string>
<string name="revanced_shorts_quality_default_mobile_title">Προεπιλεγμένη ποιότητα Shorts σε δίκτυο κινητής τηλεφωνίας</string>
<string name="revanced_remember_video_quality_mobile">δεδομένων</string>
<string name="revanced_remember_video_quality_wifi">Wi-Fi</string>
<string name="revanced_remember_video_quality_toast">Η προεπιλεγμένη ποιότητα %1$s άλλαξε σε: %2$s</string>
<string name="revanced_remember_video_quality_toast_shorts">Η ποιότητα Shorts με %1$s άλλαξε σε: %2$s</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Εμφάνιση κουμπιού αλλαγής ταχύτητας</string>
@@ -1401,10 +1403,10 @@ Second \"item\" text"</string>
<string name="revanced_disable_hdr_video_summary_on">Τα βίντεο HDR είναι απενεργοποιημένα</string>
<string name="revanced_disable_hdr_video_summary_off">Τα βίντεο HDR είναι ενεργοποιημένα</string>
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<string name="revanced_restore_old_video_quality_menu_title">Επαναφορά παλιού μενού ποιότητας βίντεο</string>
<string name="revanced_restore_old_video_quality_menu_summary_on">Το μενού ποιότητας βίντεο εμφανίζεται με το παλιό στυλ</string>
<string name="revanced_restore_old_video_quality_menu_summary_off">Το μενού ποιότητας βίντεο εμφανίζεται με το νέο στυλ</string>
<patch id="video.quality.advancedVideoQualityMenuPatch">
<string name="revanced_advanced_video_quality_menu_title">Εμφάνιση προχωρημένου μενού ποιότητας βίντεο</string>
<string name="revanced_advanced_video_quality_menu_summary_on">Εμφανίζεται το προχωρημένο μενού ποιότητας βίντεο</string>
<string name="revanced_advanced_video_quality_menu_summary_off">Δεν εμφανίζεται το προχωρημένο μενού ποιότητας βίντεο</string>
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
<string name="revanced_slide_to_seek_title">Χειρονομία συρσίματος για αναζήτηση</string>

View File

@@ -291,13 +291,13 @@ Para traducir nuevos idiomas, visita translate.revanced.app"</string>
<string name="revanced_hide_description_components_screen_title">Descripción del vídeo</string>
<string name="revanced_hide_description_components_screen_summary">Ocultar o mostrar componentes de descripción de vídeo</string>
<string name="revanced_hide_filter_bar_screen_title">Barra de filtros</string>
<string name="revanced_hide_filter_bar_screen_summary">Ocultar o mostrar la barra de filtros en el feed, la búsqueda y deos relacionados</string>
<string name="revanced_hide_filter_bar_screen_summary">Ocultar o mostrar la barra de filtro en el feed, los resultados de búsqueda y los videos relacionados</string>
<string name="revanced_hide_filter_bar_feed_in_feed_title">Ocultar en el feed</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_on">Escondido en el feed</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_off">Mostrar en el feed</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Ocultar en búsqueda</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Oculto en la búsqueda</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Mostrar en búsqueda</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Ocultar en los resultados de búsqueda</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Oculto en los resultados de búsqueda</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Mostrado en los resultados de búsqueda</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_title">Ocultar en vídeos relacionados</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_on">Escondido en videos relacionados</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_off">Mostrar en vídeos relacionados</string>
@@ -394,7 +394,7 @@ Esta función solo está disponible para dispositivos antiguos"</string>
<string name="revanced_hide_self_sponsor_ads_title">Ocultar tarjetas autopatrocinadas</string>
<string name="revanced_hide_self_sponsor_ads_summary_on">Las tarjetas autopatrocinadas están ocultas</string>
<string name="revanced_hide_self_sponsor_ads_summary_off">Se muestran las tarjetas autopatrocinadas</string>
<string name="revanced_hide_products_banner_title">Ocultar banner para ver los productos</string>
<string name="revanced_hide_products_banner_title">Ocultar el banner \"Ver productos\"</string>
<string name="revanced_hide_products_banner_summary_on">Banner oculto</string>
<string name="revanced_hide_products_banner_summary_off">Banner mostrado</string>
<string name="revanced_hide_end_screen_store_banner_title">Ocultar banner de la tienda en la pantalla final</string>
@@ -653,7 +653,7 @@ Si cambiar este ajuste no tiene efecto, intenta cambiar al modo incógnito."</st
<string name="revanced_hide_player_flyout_video_quality_footer_summary_off">El pie del menú de calidad de vídeo se muestra</string>
</patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<string name="revanced_hide_player_previous_next_buttons_title">Ocultar botones de vídeo anteriores &amp; siguiente</string>
<string name="revanced_hide_player_previous_next_buttons_title">Ocultar botones Anterior &amp; Siguiente</string>
<string name="revanced_hide_player_previous_next_buttons_summary_on">Los botones están ocultos</string>
<string name="revanced_hide_player_previous_next_buttons_summary_off">Los botones se muestran</string>
<string name="revanced_hide_cast_button_title">Ocultar el botón Transmitir</string>
@@ -1103,10 +1103,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"</string>
Los Shorts se abren en el reproductor normal
El feed está organizado por temas y canales"</string>
</patch>
<patch id="layout.spoofappversion.spoofAppVersionPatch">
<string name="revanced_spoof_app_version_title">Versión de la aplicación Spoof</string>
@@ -1176,7 +1174,7 @@ Si se desactiva posteriormente, se recomienda borrar los datos de la aplicación
</patch>
<patch id="layout.miniplayer.miniplayerPatch">
<string name="revanced_miniplayer_screen_title">Minireproductor</string>
<string name="revanced_miniplayer_screen_summary">Cambiar el estilo del reproductor minimizado de la aplicación</string>
<string name="revanced_miniplayer_screen_summary">Cambiar el estilo del reproductor minimizado en la aplicación</string>
<string name="revanced_miniplayer_type_title">Tipo de minreproductor</string>
<string name="revanced_miniplayer_type_entry_0">Desactivado</string>
<string name="revanced_miniplayer_type_entry_1">Predeterminado</string>
@@ -1229,8 +1227,6 @@ Desliza para expandir o cerrar"</string>
<string name="revanced_gradient_loading_screen_title">Activar la pantalla de carga del degradado</string>
<string name="revanced_gradient_loading_screen_summary_on">La pantalla de carga tendrá un fondo de degradado</string>
<string name="revanced_gradient_loading_screen_summary_off">La pantalla de carga tendrá un fondo sólido</string>
</patch>
<patch id="layout.theme.themeResourcePatch">
<string name="revanced_seekbar_custom_color_title">Activar el color personalizado de la barra de búsqueda</string>
<string name="revanced_seekbar_custom_color_summary_on">Se muestra el color personalizado de la barra de búsqueda</string>
<string name="revanced_seekbar_custom_color_summary_off">Se muestra el color original de la barra de búsqueda</string>
@@ -1322,8 +1318,8 @@ Habilitar esto puede desbloquear calidades de vídeo más altas"</string>
</patch>
<patch id="misc.links.openLinksExternallyPatch">
<string name="revanced_external_browser_title">Abrir enlaces en el navegador</string>
<string name="revanced_external_browser_summary_on">Abriendo enlaces externamente</string>
<string name="revanced_external_browser_summary_off">Abrir enlaces en la aplicación</string>
<string name="revanced_external_browser_summary_on">Abrir enlaces en el navegador externo</string>
<string name="revanced_external_browser_summary_off">Abrir enlaces en el navegador integrado en la aplicación</string>
</patch>
<patch id="misc.privacy.removeTrackingQueryParameterPatch">
<string name="revanced_remove_tracking_query_parameter_title">Quitar parámetro de consulta de rastreo</string>
@@ -1350,9 +1346,15 @@ Habilitar esto puede desbloquear calidades de vídeo más altas"</string>
<string name="revanced_remember_video_quality_last_selected_summary_off">Los cambios de calidad sólo se aplican al vídeo actual</string>
<string name="revanced_video_quality_default_wifi_title">Calidad de vídeo predeterminada en la red Wi-Fi</string>
<string name="revanced_video_quality_default_mobile_title">Calidad de vídeo predeterminada en la red móvil</string>
<string name="revanced_remember_shorts_quality_last_selected_title">Recordar cambios en la calidad de Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_on">Los cambios de calidad se aplican a todos los Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_off">Los cambios de calidad solo se aplican al Short actual</string>
<string name="revanced_shorts_quality_default_wifi_title">Calidad predeterminada de Shorts en la red Wi-Fi</string>
<string name="revanced_shorts_quality_default_mobile_title">Calidad predeterminada de Shorts en la red móvil</string>
<string name="revanced_remember_video_quality_mobile">móvil</string>
<string name="revanced_remember_video_quality_wifi">wifi</string>
<string name="revanced_remember_video_quality_toast">Cambió la calidad predeterminada %1$s a: %2$s</string>
<string name="revanced_remember_video_quality_toast_shorts">Calidad de Shorts %1$s cambiada a: %2$s</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Mostrar botón de diálogo de velocidad</string>
@@ -1383,10 +1385,10 @@ Habilitar esto puede desbloquear calidades de vídeo más altas"</string>
<string name="revanced_disable_hdr_video_summary_on">El vídeo HDR está desactivado</string>
<string name="revanced_disable_hdr_video_summary_off">El vídeo HDR está activado</string>
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<string name="revanced_restore_old_video_quality_menu_title">Restaurar menú de calidad de vídeo antiguo</string>
<string name="revanced_restore_old_video_quality_menu_summary_on">Se muestra el antiguo menú de calidad de vídeo</string>
<string name="revanced_restore_old_video_quality_menu_summary_off">El antiguo menú de calidad de vídeo no se muestra</string>
<patch id="video.quality.advancedVideoQualityMenuPatch">
<string name="revanced_advanced_video_quality_menu_title">Mostrar menú de calidad de vídeo avanzado</string>
<string name="revanced_advanced_video_quality_menu_summary_on">Se muestra el menú de calidad de vídeo avanzado</string>
<string name="revanced_advanced_video_quality_menu_summary_off">No se muestra el menú de calidad de vídeo avanzado</string>
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
<string name="revanced_slide_to_seek_title">Habilitar diapositiva para buscar</string>

View File

@@ -301,13 +301,13 @@ Teid ei teavitata ühestki ootamatust sündmusest."</string>
<string name="revanced_hide_description_components_screen_title">Video kirjeldus</string>
<string name="revanced_hide_description_components_screen_summary">Peida videokirjelduse komponendid või kuva need</string>
<string name="revanced_hide_filter_bar_screen_title">Filtriseriba</string>
<string name="revanced_hide_filter_bar_screen_summary">Peida ja kuva filtririba söötes, otsingus ja seotud videotes</string>
<string name="revanced_hide_filter_bar_screen_summary">Peida või näita filtripaneeli voos, otsingutulemustes ja seotud videotes</string>
<string name="revanced_hide_filter_bar_feed_in_feed_title">Peida söötes</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_on">Peidetud söötes</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_off">Näidatud söötes</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Peida otsingus</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Peidetud otsingus</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Näidatakse otsingus</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Peida otsingutulemustes</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Peidetud otsingutulemustes</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Kuvatakse otsingutulemustes</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_title">Peida seotud videotes</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_on">Peidetud seotud videotes</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_off">Näidatakse seotud videotes</string>
@@ -404,7 +404,7 @@ See funktsioon on saadaval ainult vanemates seadmetes"</string>
<string name="revanced_hide_self_sponsor_ads_title">Peida ise-sponsoritud kaardid</string>
<string name="revanced_hide_self_sponsor_ads_summary_on">Ise-sponsoritud kaardid on peidus</string>
<string name="revanced_hide_self_sponsor_ads_summary_off">Ise-sponsoritud kaardid on näidatud</string>
<string name="revanced_hide_products_banner_title">Peida bänner näha tooteid</string>
<string name="revanced_hide_products_banner_title">Peida bänner „Vaata tooteid</string>
<string name="revanced_hide_products_banner_summary_on">Bänner on peidetud</string>
<string name="revanced_hide_products_banner_summary_off">Bänner on nähtav</string>
<string name="revanced_hide_end_screen_store_banner_title">Peida lõpuekraani poe bänner</string>
@@ -663,7 +663,7 @@ Kui selle sätte muutmine ei avalda mõju, proovige lülituda Inkognito režiimi
<string name="revanced_hide_player_flyout_video_quality_footer_summary_off">Video kvaliteedi menüü jalg on nähtav</string>
</patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<string name="revanced_hide_player_previous_next_buttons_title">Peida eelmine &amp; järgmine video nupp</string>
<string name="revanced_hide_player_previous_next_buttons_title">Peida eelmine &amp; järgmine nupp</string>
<string name="revanced_hide_player_previous_next_buttons_summary_on">Nupud on peidetud</string>
<string name="revanced_hide_player_previous_next_buttons_summary_off">Nupud on nähtavad</string>
<string name="revanced_hide_cast_button_title">Peida Saada kätte nupp</string>
@@ -1119,13 +1119,11 @@ Kas olete esitamiseks valmis?"</string>
<string name="revanced_change_form_factor_user_dialog_message">"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"</string>
Voog on korraldatud teemade ja kanalite järgi"</string>
</patch>
<patch id="layout.spoofappversion.spoofAppVersionPatch">
<string name="revanced_spoof_app_version_title">Võltsitud rakenduse versioon</string>
@@ -1195,7 +1193,7 @@ Kui see hiljem välja lülitatakse, on soovitatav rakenduse andmed kustutada, et
</patch>
<patch id="layout.miniplayer.miniplayerPatch">
<string name="revanced_miniplayer_screen_title">Minimängija</string>
<string name="revanced_miniplayer_screen_summary">Muuda rakenduses minimeeritud esitaja stiili</string>
<string name="revanced_miniplayer_screen_summary">Muuda rakendusesisese minipleieri stiili</string>
<string name="revanced_miniplayer_type_title">Miniplayeri tüüp</string>
<string name="revanced_miniplayer_type_entry_0">Väljas</string>
<string name="revanced_miniplayer_type_entry_1">Vaikimisi</string>
@@ -1248,8 +1246,6 @@ Pühkige laiendamiseks või sulgemiseks"</string>
<string name="revanced_gradient_loading_screen_title">Lülita gradientega laadimiskuva sisse</string>
<string name="revanced_gradient_loading_screen_summary_on">Laadimiskuval on gradientega taust</string>
<string name="revanced_gradient_loading_screen_summary_off">Laadimiskuval on tahke taust</string>
</patch>
<patch id="layout.theme.themeResourcePatch">
<string name="revanced_seekbar_custom_color_title">Lülita kohandatud edastusriba värv sisse</string>
<string name="revanced_seekbar_custom_color_summary_on">Kohandatud edastusriba värv on nähtav</string>
<string name="revanced_seekbar_custom_color_summary_off">Originaal edastusriba värv on nähtav</string>
@@ -1341,8 +1337,8 @@ Selle lubamine võib avada kõrgema video kvaliteedi"</string>
</patch>
<patch id="misc.links.openLinksExternallyPatch">
<string name="revanced_external_browser_title">Ava lingid brauseris</string>
<string name="revanced_external_browser_summary_on">Lingid avatakse välistel</string>
<string name="revanced_external_browser_summary_off">Lingid avatakse rakenduses</string>
<string name="revanced_external_browser_summary_on">Linkide avamine välises brauseris</string>
<string name="revanced_external_browser_summary_off">Linkide avamine rakendusesiseses brauseris</string>
</patch>
<patch id="misc.privacy.removeTrackingQueryParameterPatch">
<string name="revanced_remove_tracking_query_parameter_title">Eemalda jälgimise päringuparameeter</string>
@@ -1369,9 +1365,15 @@ Selle lubamine võib avada kõrgema video kvaliteedi"</string>
<string name="revanced_remember_video_quality_last_selected_summary_off">Kvaliteedi muudatused kehtivad ainult praegusele videole</string>
<string name="revanced_video_quality_default_wifi_title">Vaikimisi video kvaliteet Wi-Fi võrgus</string>
<string name="revanced_video_quality_default_mobile_title">Vaikimisi video kvaliteet mobiilsidevõrgus</string>
<string name="revanced_remember_shorts_quality_last_selected_title">Jäta meelde Shorts\'i kvaliteedimuudatused</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_on">Kvaliteedimuudatused kehtivad kõigile videotele Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_off">Kvaliteedimuudatused kehtivad ainult praegusele videole Short</string>
<string name="revanced_shorts_quality_default_wifi_title">Vaikimisi [Shorts] kvaliteet WiFi võrgus</string>
<string name="revanced_shorts_quality_default_mobile_title">Vaikimisi [Shorts] kvaliteet mobiilivõrgus</string>
<string name="revanced_remember_video_quality_mobile">mobiil</string>
<string name="revanced_remember_video_quality_wifi">wifi</string>
<string name="revanced_remember_video_quality_toast">Vaikimisi %1$s kvaliteet muudeti: %2$s</string>
<string name="revanced_remember_video_quality_toast_shorts">Muudetud Shorts %1$s kvaliteet: %2$s</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Kuva kiiruse dialoogi nupp</string>
@@ -1402,10 +1404,10 @@ Selle lubamine võib avada kõrgema video kvaliteedi"</string>
<string name="revanced_disable_hdr_video_summary_on">HDR video on keelatud</string>
<string name="revanced_disable_hdr_video_summary_off">HDR video on lubatud</string>
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<string name="revanced_restore_old_video_quality_menu_title">Taasta vana video kvaliteedi menüü</string>
<string name="revanced_restore_old_video_quality_menu_summary_on">Vana video kvaliteedi menüü kuvatakse</string>
<string name="revanced_restore_old_video_quality_menu_summary_off">Vana video kvaliteedi menüüd ei kuvata</string>
<patch id="video.quality.advancedVideoQualityMenuPatch">
<string name="revanced_advanced_video_quality_menu_title">Kuva täiustatud video kvaliteedi menüü</string>
<string name="revanced_advanced_video_quality_menu_summary_on">Täiustatud video kvaliteedi menüü on kuvatud</string>
<string name="revanced_advanced_video_quality_menu_summary_off">Täiustatud video kvaliteedi menüü ei ole kuvatud</string>
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
<string name="revanced_slide_to_seek_title">Luba libistamine otsimiseks</string>

View File

@@ -177,8 +177,6 @@ Second \"item\" text"</string>
</patch>
<patch id="layout.theme.themePatch">
</patch>
<patch id="layout.theme.themeResourcePatch">
</patch>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch">
</patch>
<patch id="layout.thumbnails.alternativeThumbnailsPatch">
@@ -219,7 +217,7 @@ Second \"item\" text"</string>
</patch>
<patch id="video.hdr.disableHdrPatch">
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>

View File

@@ -177,8 +177,6 @@ Second \"item\" text"</string>
</patch>
<patch id="layout.theme.themePatch">
</patch>
<patch id="layout.theme.themeResourcePatch">
</patch>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch">
</patch>
<patch id="layout.thumbnails.alternativeThumbnailsPatch">
@@ -219,7 +217,7 @@ Second \"item\" text"</string>
</patch>
<patch id="video.hdr.disableHdrPatch">
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>

View File

@@ -284,6 +284,9 @@ Et saa ilmoituksia odottamattomista tapahtumista."</string>
<string name="revanced_hide_how_this_was_made_section_title">Piilota \"Miten sisältö on luotu\"</string>
<string name="revanced_hide_how_this_was_made_section_summary_on">Miten sisältö on luotu -osio on piilotettu</string>
<string name="revanced_hide_how_this_was_made_section_summary_off">Miten sisältö on luotu -osio näytetään</string>
<string name="revanced_hide_podcast_section_title">Piilota \"Tutustu podcastiin\"</string>
<string name="revanced_hide_podcast_section_summary_on">Tutustu podcastiin -osio on piilotettu</string>
<string name="revanced_hide_podcast_section_summary_off">Tutustu podcastiin -osio näytetään</string>
<string name="revanced_hide_info_cards_section_title">Piilota tietokortit</string>
<string name="revanced_hide_info_cards_section_summary_on">Infokortit-osio on piilotettu</string>
<string name="revanced_hide_info_cards_section_summary_off">Infokortit-osio näytetään</string>
@@ -300,9 +303,9 @@ Et saa ilmoituksia odottamattomista tapahtumista."</string>
<string name="revanced_hide_filter_bar_feed_in_feed_title">Piilota syötteessä</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_on">Piilotettu syötteessä</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_off">Näytetään syötteessä</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Piilota haussa</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Piilotettu haussa</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Näytetään haussa</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Piilota hakutuloksissa</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Piilotettu hakutuloksissa</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Näytetään hakutuloksissa</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_title">Piilota liittyvissä videoissa</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_on">Piilotettu liittyvissä videoissa</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_off">Näytetään liittyvissä videoissa</string>
@@ -399,7 +402,6 @@ Tämä ominaisuus on käytettävissä vain vanhemmilla laitteilla"</string>
<string name="revanced_hide_self_sponsor_ads_title">Piilota itse-sponsoroidut kortit</string>
<string name="revanced_hide_self_sponsor_ads_summary_on">Itse-sponsoroidut kortit ovat piilotettu</string>
<string name="revanced_hide_self_sponsor_ads_summary_off">Itse-sponsoroidut kortit näytetään</string>
<string name="revanced_hide_products_banner_title">Piilota tuotebanneri</string>
<string name="revanced_hide_products_banner_summary_on">Banneri on piilotettu</string>
<string name="revanced_hide_products_banner_summary_off">Banneri näytetään</string>
<string name="revanced_hide_end_screen_store_banner_title">Piilota loppunäytön kauppabanneri</string>
@@ -438,8 +440,10 @@ Tämä ominaisuus on käytettävissä vain vanhemmilla laitteilla"</string>
<string name="revanced_share_copy_url_success">URL-osoite kopioitiin leikepöydälle</string>
<string name="revanced_share_copy_url_timestamp_success">Aikaleimattu URL-osoite kopioitiin</string>
<string name="revanced_copy_video_url_title">Näytä videon URL-osoitteen kopiointipainike</string>
<string name="revanced_copy_video_url_summary_on">Painike näytetään. Napauta kopioidaksesi videon URL-osoitteen. Napauta ja pidä pohjassa kopioidaksesi aikaleimattuna</string>
<string name="revanced_copy_video_url_summary_off">Painiketta ei näytetä</string>
<string name="revanced_copy_video_url_timestamp_title">Näytä videon aikaleimatun URL-osoitteen kopiointipainike</string>
<string name="revanced_copy_video_url_timestamp_summary_on">Painike näytetään. Napauta kopioidaksesi videon URL-osoitteen aikaleimattuna. Napauta ja pidä pohjassa kopioidaksesi ilman aikaleimaa</string>
<string name="revanced_copy_video_url_timestamp_summary_off">Painiketta ei näytetä</string>
</patch>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch">
@@ -575,12 +579,18 @@ Säädä äänenvoimakkuutta pyyhkäisemällä pystysuoraan näytön oikealta pu
<string name="revanced_hide_subscriptions_button_title">Piilota Tilaukset</string>
<string name="revanced_hide_subscriptions_button_summary_on">Tilaukset-painike on piilotettu</string>
<string name="revanced_hide_subscriptions_button_summary_off">Tilaukset-painike näytetään</string>
<string name="revanced_hide_notifications_button_title">Piilota Ilmoitukset</string>
<string name="revanced_hide_notifications_button_summary_on">Ilmoitukset-painike on piilotettu</string>
<string name="revanced_hide_notifications_button_summary_off">Ilmoitukset-painike näytetään</string>
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
<string name="revanced_switch_create_with_notifications_button_title">Vaihda Luo ja Ilmoitukset</string>
<string name="revanced_switch_create_with_notifications_button_summary_on">"Luo- ja Ilmoitukset-painikkeet vaihdetaan
Huomaa: Tämä piilottaa väkisin myös videomainokset"</string>
<string name="revanced_switch_create_with_notifications_button_summary_off">Luo- ja Ilmoitukset-painikkeita ei vaihdeta</string>
<string name="revanced_switch_create_with_notifications_button_user_dialog_message">"Tämän asetuksen poistaminen käytöstä poistaa myös Shorts-mainosten eston käytöstä.
Jos tämän asetuksen muuttaminen ei tule voimaan, kokeile vaihtaa Incognito-tilaan."</string>
<string name="revanced_hide_navigation_button_labels_title">Piilota navigointipainikkeiden tunnisteet</string>
<string name="revanced_hide_navigation_button_labels_summary_on">Tunnisteet on piilotettu</string>
<string name="revanced_hide_navigation_button_labels_summary_off">Tunnisteet näytetään</string>
@@ -650,7 +660,6 @@ Huomaa: Tämä piilottaa väkisin myös videomainokset"</string>
<string name="revanced_hide_player_flyout_video_quality_footer_summary_off">Videolaatuvalikon alatunniste näytetään</string>
</patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<string name="revanced_hide_player_previous_next_buttons_title">Piilota edellinen- ja seuraava video -painikkeet</string>
<string name="revanced_hide_player_previous_next_buttons_summary_on">Painikkeet on piilotettu</string>
<string name="revanced_hide_player_previous_next_buttons_summary_off">Painikkeet näytetään</string>
<string name="revanced_hide_cast_button_title">Piilota Cast-painike</string>
@@ -796,6 +805,12 @@ Huomaa: Tämä piilottaa väkisin myös videomainokset"</string>
<string name="revanced_hide_shorts_navigation_bar_summary_off">Navigointipalkki näytetään</string>
</patch>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch">
<string name="revanced_end_screen_suggested_video_title">Piilota loppunäytön ehdotettu video</string>
<string name="revanced_end_screen_suggested_video_summary_on">"Loppunäytön ehdotettu video on piilotettu, kun automaattinen toisto ei ole käytössä
Automaattista toistoa voidaan muuttaa YouTube-asetuksissa:
Asetukset → Toisto → Toista seuraava video automaattisesti"</string>
<string name="revanced_end_screen_suggested_video_summary_off">Loppunäytön ehdotettu video näytetään</string>
</patch>
<patch id="layout.hide.time.hideTimestampPatch">
<string name="revanced_hide_timestamp_title">Piilota videon aikaleima</string>
@@ -1097,16 +1112,6 @@ Oletko valmis lähettämään?"</string>
<string name="revanced_change_form_factor_entry_2">Puhelin</string>
<string name="revanced_change_form_factor_entry_3">Tabletti</string>
<string name="revanced_change_form_factor_entry_4">Ajoneuvo</string>
<string name="revanced_change_form_factor_user_dialog_message">"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"</string>
</patch>
<patch id="layout.spoofappversion.spoofAppVersionPatch">
<string name="revanced_spoof_app_version_title">Naamioi sovellusversio</string>
@@ -1176,7 +1181,6 @@ Jos tämä poistetaan myöhemmin käytöstä, on suositeltavaa tyhjentää sovel
</patch>
<patch id="layout.miniplayer.miniplayerPatch">
<string name="revanced_miniplayer_screen_title">Minisoitin</string>
<string name="revanced_miniplayer_screen_summary">Muuta sovelluksen sisäisen pienennetyn soittimen tyyliä</string>
<string name="revanced_miniplayer_type_title">Minisoittimen tyyppi</string>
<string name="revanced_miniplayer_type_entry_0">Pois käytöstä</string>
<string name="revanced_miniplayer_type_entry_1">Oletus</string>
@@ -1229,8 +1233,6 @@ Pyyhkäise laajentaaksesi tai sulkeaksesi"</string>
<string name="revanced_gradient_loading_screen_title">Ota liukuvärillinen latausruutu käyttöön</string>
<string name="revanced_gradient_loading_screen_summary_on">Latausruudulla on liukuvärillinen tausta</string>
<string name="revanced_gradient_loading_screen_summary_off">Latausruudulla on yksivärinen tausta</string>
</patch>
<patch id="layout.theme.themeResourcePatch">
<string name="revanced_seekbar_custom_color_title">Ota oma liukusäätimen väri käyttöön</string>
<string name="revanced_seekbar_custom_color_summary_on">Oma liukusäätimen väri näytetään</string>
<string name="revanced_seekbar_custom_color_summary_off">Alkuperäinen liukusäätimen väri näytetään</string>
@@ -1322,8 +1324,6 @@ Tämä voi avata korkealaatuisemmat videot"</string>
</patch>
<patch id="misc.links.openLinksExternallyPatch">
<string name="revanced_external_browser_title">Avaa linkit selaimessa</string>
<string name="revanced_external_browser_summary_on">Linkit avataan ulkoisesti</string>
<string name="revanced_external_browser_summary_off">Linkit avataan sovelluksessa</string>
</patch>
<patch id="misc.privacy.removeTrackingQueryParameterPatch">
<string name="revanced_remove_tracking_query_parameter_title">Poista seurantakyselyparametrit</string>
@@ -1336,8 +1336,11 @@ Tämä voi avata korkealaatuisemmat videot"</string>
<string name="revanced_disable_zoom_haptics_summary_off">Haptiikka on käytössä</string>
</patch>
<patch id="video.audio.forceOriginalAudioPatch">
<string name="revanced_force_original_audio_title">Pakota alkuperäinen äänen kieli</string>
<string name="revanced_force_original_audio_summary_on">Käytetään alkuperäistä ääntä</string>
<string name="revanced_force_original_audio_summary_off">Käytetään oletusääntä</string>
<!-- 'Spoof video streams' should be the same translation used for revanced_spoof_video_streams_screen_title -->
<string name="revanced_force_original_audio_not_available">Voit käyttää tätä ominaisuutta muuttamalla \"Naamioi videovirrat\" iOS TV:ksi</string>
</patch>
<patch id="video.quality.rememberVideoQualityPatch">
<!-- Translations should use the same text as revanced_custom_playback_speeds_auto -->
@@ -1380,10 +1383,7 @@ Tämä voi avata korkealaatuisemmat videot"</string>
<string name="revanced_disable_hdr_video_summary_on">HDR-video ei ole käytössä</string>
<string name="revanced_disable_hdr_video_summary_off">HDR-video on käytössä</string>
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<string name="revanced_restore_old_video_quality_menu_title">Palauta vanha videolaatuvalikko</string>
<string name="revanced_restore_old_video_quality_menu_summary_on">Vanha videolaatuvalikko näytetään</string>
<string name="revanced_restore_old_video_quality_menu_summary_off">Vanhaa videolaatuvalikkoa ei näytetä</string>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
<string name="revanced_slide_to_seek_title">Ota kelaus liu\'uttamalla käyttöön</string>

View File

@@ -301,13 +301,13 @@ Hindi ka aabisuhan ng anumang hindi inaasahang mga kaganapan."</string>
<string name="revanced_hide_description_components_screen_title">Paglalarawan ng video</string>
<string name="revanced_hide_description_components_screen_summary">Itago o ipakita ang mga bahagi ng paglalarawan ng video</string>
<string name="revanced_hide_filter_bar_screen_title">Bar ng filter</string>
<string name="revanced_hide_filter_bar_screen_summary">Itago o ipakita ang filter bar sa feed, paghahanap, at mga kaugnay na video</string>
<string name="revanced_hide_filter_bar_screen_summary">Itago o ipakita ang filter bar sa feed, mga resulta ng paghahanap, at mga kaugnay na video</string>
<string name="revanced_hide_filter_bar_feed_in_feed_title">Itago sa feed</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_on">Nakatago sa feed</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_off">Ipinapakita sa feed</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Itago sa paghahanap</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Nakatago sa paghahanap</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Ipinapakita sa paghahanap</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Itago sa mga resulta ng paghahanap</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Nakatago sa mga resulta ng paghahanap</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Ipinapakita sa mga resulta ng paghahanap</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_title">Itago sa mga kaugnay na video</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_on">Nakatago sa mga kaugnay na video</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_off">Ipinapakita sa mga kaugnay na video</string>
@@ -404,7 +404,7 @@ Ang tampok na ito ay magagamit lamang para sa mga mas lumang device"</string>
<string name="revanced_hide_self_sponsor_ads_title">Itago ang mga self sponsored card</string>
<string name="revanced_hide_self_sponsor_ads_summary_on">Nakatago ang mga self sponsored card</string>
<string name="revanced_hide_self_sponsor_ads_summary_off">Ipinapakita ang mga self sponsored card</string>
<string name="revanced_hide_products_banner_title">Itago ang banner para tingnan ang mga produkto</string>
<string name="revanced_hide_products_banner_title">Itago ang banner na \'Tingnan ang mga produkto\'</string>
<string name="revanced_hide_products_banner_summary_on">Nakatago ang banner</string>
<string name="revanced_hide_products_banner_summary_off">Ipinakita ang banner</string>
<string name="revanced_hide_end_screen_store_banner_title">Itago ang banner ng tindahan ng end screen</string>
@@ -661,7 +661,7 @@ Tandaan: Ang pagpapagana nito ay nagtatago rin ng mga ad ng video"</string>
<string name="revanced_hide_player_flyout_video_quality_footer_summary_off">Ang footer ng menu ng kalidad ng video ay ipinapakita</string>
</patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<string name="revanced_hide_player_previous_next_buttons_title">Itago ang nakaraang &amp; susunod na mga pindutan ng video</string>
<string name="revanced_hide_player_previous_next_buttons_title">Itago ang Nakaraan at Susunod na mga pindutan</string>
<string name="revanced_hide_player_previous_next_buttons_summary_on">Nakatago ang mga pindutan</string>
<string name="revanced_hide_player_previous_next_buttons_summary_off">Ang mga pindutan ay ipinapakita</string>
<string name="revanced_hide_cast_button_title">Itago ang Cast button</string>
@@ -1031,7 +1031,7 @@ Ang iyong user id ay parang isang password at hindi dapat ibahagi.
<string name="revanced_sb_skip_automatically">Awtomatikong lumaktaw</string>
<string name="revanced_sb_skip_automatically_once">Awtomatikong lumaktaw nang isang beses</string>
<string name="revanced_sb_skip_showbutton">Magpakita ng button na Laktawan</string>
<string name="revanced_sb_skip_seekbaronly">Ipakita sa seek bar</string>
<string name="revanced_sb_skip_seekbaronly">Ipakita sa seekbar</string>
<string name="revanced_sb_skip_ignore">Huwag paganahin</string>
<string name="revanced_sb_submit_failed_invalid">Hindi maisumite ang segment: %s</string>
<string name="revanced_sb_submit_failed_timeout">Pansamantalang hindi gumagana ang SponsorBlock</string>
@@ -1117,13 +1117,11 @@ Isumite na ba?"</string>
<string name="revanced_change_form_factor_user_dialog_message">"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"</string>
Layout ng automotive
• Nagbubukas ang Shorts sa regular na player
• Inorganisa ang feed ayon sa mga paksa at channel"</string>
</patch>
<patch id="layout.spoofappversion.spoofAppVersionPatch">
<string name="revanced_spoof_app_version_title">Spoof na bersyon ng app</string>
@@ -1193,7 +1191,6 @@ Kung mamaya ay patayin, inirerekumenda na i-clear ang data ng app upang maiwasan
</patch>
<patch id="layout.miniplayer.miniplayerPatch">
<string name="revanced_miniplayer_screen_title">Miniplayer</string>
<string name="revanced_miniplayer_screen_summary">Baguhin ang istilo ng in app minimized na player</string>
<string name="revanced_miniplayer_type_title">Uri ng miniplayer</string>
<string name="revanced_miniplayer_type_entry_0">Hindi</string>
<string name="revanced_miniplayer_type_entry_1">Regular</string>
@@ -1246,8 +1243,6 @@ Mag-swipe upang palawakin o isara"</string>
<string name="revanced_gradient_loading_screen_title">Paganahin ang gradient loading screen</string>
<string name="revanced_gradient_loading_screen_summary_on">Ang paglo-load ng screen ay magkakaroon ng gradient na background</string>
<string name="revanced_gradient_loading_screen_summary_off">Ang paglo-load ng screen ay magkakaroon ng solidong background</string>
</patch>
<patch id="layout.theme.themeResourcePatch">
<string name="revanced_seekbar_custom_color_title">Paganahin ang custom na kulay ng seekbar</string>
<string name="revanced_seekbar_custom_color_summary_on">Ipinapakita ang kulay ng custom na seekbar</string>
<string name="revanced_seekbar_custom_color_summary_off">Ipinapakita ang orihinal na kulay ng seekbar</string>
@@ -1339,8 +1334,8 @@ Ang pagpapagana nito ay maaaring magbukas ng mas mataas na kalidad ng video"</st
</patch>
<patch id="misc.links.openLinksExternallyPatch">
<string name="revanced_external_browser_title">Buksan ang mga link sa browser</string>
<string name="revanced_external_browser_summary_on">Pagbubukas ng mga link sa labas</string>
<string name="revanced_external_browser_summary_off">Pagbubukas ng mga link sa app</string>
<string name="revanced_external_browser_summary_on">Binubuksan ang mga link sa panlabas na browser</string>
<string name="revanced_external_browser_summary_off">Binubuksan ang mga link sa in-app na browser</string>
</patch>
<patch id="misc.privacy.removeTrackingQueryParameterPatch">
<string name="revanced_remove_tracking_query_parameter_title">Alisin ang parameter ng query sa pagsubaybay</string>
@@ -1367,9 +1362,15 @@ Ang pagpapagana nito ay maaaring magbukas ng mas mataas na kalidad ng video"</st
<string name="revanced_remember_video_quality_last_selected_summary_off">Nalalapat lang ang mga pagbabago sa kalidad sa kasalukuyang video</string>
<string name="revanced_video_quality_default_wifi_title">Default na kalidad ng video sa Wi-Fi network</string>
<string name="revanced_video_quality_default_mobile_title">Default na kalidad ng video sa mobile network</string>
<string name="revanced_remember_shorts_quality_last_selected_title">Tandaan ang mga pagbabago sa kalidad ng Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_on">Nalalapat ang mga pagbabago sa kalidad sa lahat ng Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_off">Nalalapat lamang ang mga pagbabago sa kalidad sa kasalukuyang Short</string>
<string name="revanced_shorts_quality_default_wifi_title">Default na kalidad ng Shorts sa Wi-Fi network</string>
<string name="revanced_shorts_quality_default_mobile_title">Default na kalidad ng Shorts sa mobile network</string>
<string name="revanced_remember_video_quality_mobile">Mobile</string>
<string name="revanced_remember_video_quality_wifi">Wifi</string>
<string name="revanced_remember_video_quality_toast">Binago ang default na kalidad ng %1$s sa: %2$s</string>
<string name="revanced_remember_video_quality_toast_shorts">Binago ang kalidad ng Shorts %1$s sa: %2$s</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Ipakita ang pindutan ng dialog ng bilis</string>
@@ -1400,10 +1401,10 @@ Ang pagpapagana nito ay maaaring magbukas ng mas mataas na kalidad ng video"</st
<string name="revanced_disable_hdr_video_summary_on">Hindi pinagana ang HDR video</string>
<string name="revanced_disable_hdr_video_summary_off">Pinagana ang HDR video</string>
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<string name="revanced_restore_old_video_quality_menu_title">Ibalik ang lumang menu ng kalidad ng video</string>
<string name="revanced_restore_old_video_quality_menu_summary_on">Ipinapakita ang lumang menu ng kalidad ng video</string>
<string name="revanced_restore_old_video_quality_menu_summary_off">Hindi ipinapakita ang lumang menu ng kalidad ng video</string>
<patch id="video.quality.advancedVideoQualityMenuPatch">
<string name="revanced_advanced_video_quality_menu_title">Ipakita ang advanced na menu ng kalidad ng video</string>
<string name="revanced_advanced_video_quality_menu_summary_on">Ipinapakita ang advanced na menu ng kalidad ng video</string>
<string name="revanced_advanced_video_quality_menu_summary_off">Hindi ipinapakita ang advanced na menu ng kalidad ng video</string>
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
<string name="revanced_slide_to_seek_title">Paganahin ang slide para maghanap</string>

View File

@@ -174,9 +174,9 @@ Vous ne serez pas informé des événements inattendus."</string>
<string name="revanced_hide_crowdfunding_box_title">Masquer la boîte de financement participatif</string>
<string name="revanced_hide_crowdfunding_box_summary_on">La boîte de financement participatif est masquée</string>
<string name="revanced_hide_crowdfunding_box_summary_off">La boîte de financement participatif est affichée</string>
<string name="revanced_hide_floating_microphone_button_title">Masquer le bouton de microphone flottant</string>
<string name="revanced_hide_floating_microphone_button_summary_on">Le bouton du microphone est masqué</string>
<string name="revanced_hide_floating_microphone_button_summary_off">Le bouton du microphone est affiché</string>
<string name="revanced_hide_floating_microphone_button_title">Masquer le bouton micro flottant</string>
<string name="revanced_hide_floating_microphone_button_summary_on">Le bouton micro est masqué</string>
<string name="revanced_hide_floating_microphone_button_summary_off">Le bouton micro est affiché</string>
<string name="revanced_hide_channel_watermark_title">Masquer le filigrane de la chaîne</string>
<string name="revanced_hide_channel_watermark_summary_on">Le filigrane est masqué</string>
<string name="revanced_hide_channel_watermark_summary_off">Le filigrane est affiché</string>
@@ -199,7 +199,7 @@ Vous ne serez pas informé des événements inattendus."</string>
<string name="revanced_hide_for_you_shelf_summary_off">L\'étagère est affichée sur la page de chaîne</string>
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the subscription feed for future livestreams or unreleased videos. -->
<string name="revanced_hide_notify_me_button_title">Masquer le bouton \"M\'avertir\"</string>
<string name="revanced_hide_notify_me_button_title">Masquer le bouton M\'avertir</string>
<string name="revanced_hide_notify_me_button_summary_on">Le bouton est masqué</string>
<string name="revanced_hide_notify_me_button_summary_off">Le bouton est affiché</string>
<!-- 'People also watched' should be translated using the same localized wording YouTube displays. -->
@@ -208,7 +208,7 @@ Vous ne serez pas informé des événements inattendus."</string>
<string name="revanced_hide_search_result_recommendations_summary_off">Le libellé est affiché</string>
<!-- 'Show more' should be translated with the same localized wording that YouTube displays.
This button usually appears when searching for a YT creator. -->
<string name="revanced_hide_show_more_button_title">Masquer le bouton \"Afficher plus\"</string>
<string name="revanced_hide_show_more_button_title">Masquer le bouton Afficher plus</string>
<string name="revanced_hide_show_more_button_summary_on">Le bouton est masqué</string>
<string name="revanced_hide_show_more_button_summary_off">Le bouton est affiché</string>
<string name="revanced_hide_timed_reactions_title">Masquer les réactions minutées</string>
@@ -301,13 +301,13 @@ Vous ne serez pas informé des événements inattendus."</string>
<string name="revanced_hide_description_components_screen_title">Description de la vidéo</string>
<string name="revanced_hide_description_components_screen_summary">Masquez ou affichez des éléments dans la description des vidéos</string>
<string name="revanced_hide_filter_bar_screen_title">Barre des filtres</string>
<string name="revanced_hide_filter_bar_screen_summary">Masquez ou affichez la barre des filtres dans le flux, la recherche et les vidéos similaires</string>
<string name="revanced_hide_filter_bar_screen_summary">Masquez ou affichez la barre des filtres dans le flux, les résultats de recherche et les vidéos similaires</string>
<string name="revanced_hide_filter_bar_feed_in_feed_title">Masquer dans le flux</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_on">Masquée dans le flux</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_off">Affichée dans le flux</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Masquer dans la recherche</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Masquée dans la recherche</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Affichée dans la recherche</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Masquer dans les résultats de recherche</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Masquée dans les résultats de recherche</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Affichée dans les résultats de recherche</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_title">Masquer dans les vidéos similaires</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_on">Masquée dans les vidéos similaires</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_off">Affichée dans les vidéos similaires</string>
@@ -417,7 +417,7 @@ Cette fonctionnalité est disponible uniquement pour les appareils anciens"</str
<string name="revanced_hide_shopping_links_summary_on">Les liens de shopping dans la description des vidéos sont masqués</string>
<string name="revanced_hide_shopping_links_summary_off">Les liens de shopping dans la description des vidéos sont affichés</string>
<!-- 'Visit store' should be translated with the same localized wording that YouTube displays. -->
<string name="revanced_hide_visit_store_button_title">Masquer le bouton \"Visiter la boutique\"</string>
<string name="revanced_hide_visit_store_button_title">Masquer le bouton Visiter la boutique</string>
<string name="revanced_hide_visit_store_button_summary_on">Le bouton est masqué sur la page de chaîne</string>
<string name="revanced_hide_visit_store_button_summary_off">Le bouton est affiché sur la page de chaîne</string>
<string name="revanced_hide_web_search_results_title">Masquer les résultats Web</string>
@@ -663,7 +663,7 @@ Si la modification de ce paramètre ne prend pas effet, essayez de passer en mod
<string name="revanced_hide_player_flyout_video_quality_footer_summary_off">Le pied de page du menu de qualité vidéo est affiché</string>
</patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<string name="revanced_hide_player_previous_next_buttons_title">Masquer les boutons de vidéo précédente et suivante</string>
<string name="revanced_hide_player_previous_next_buttons_title">Masquer les boutons Précédent et Suivant</string>
<string name="revanced_hide_player_previous_next_buttons_summary_on">Les boutons sont masqués</string>
<string name="revanced_hide_player_previous_next_buttons_summary_off">Les boutons sont affichés</string>
<string name="revanced_hide_cast_button_title">Masquer le bouton Caster</string>
@@ -1110,20 +1110,18 @@ Prêt à soumettre ?"</string>
<string name="revanced_sb_about_api_sum">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.</string>
</patch>
<patch id="layout.formfactor.changeFormFactorPatch">
<string name="revanced_change_form_factor_title">Facteur de forme de la mise en page</string>
<string name="revanced_change_form_factor_title">Format de mise en page</string>
<string name="revanced_change_form_factor_entry_1">Par défaut</string>
<string name="revanced_change_form_factor_entry_2">Téléphone</string>
<string name="revanced_change_form_factor_entry_3">Tablette</string>
<string name="revanced_change_form_factor_entry_4">Automotive</string>
<string name="revanced_change_form_factor_user_dialog_message">"Les modifications incluent :
<string name="revanced_change_form_factor_user_dialog_message">"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"</string>
</patch>
<patch id="layout.spoofappversion.spoofAppVersionPatch">
@@ -1181,8 +1179,8 @@ Si désactivé ultérieurement, il est recommandé d'effacer les données de l'a
<patch id="layout.shortsplayer.shortsPlayerTypePatch">
<string name="revanced_shorts_player_type_title">Ouvrir les Shorts avec</string>
<string name="revanced_shorts_player_type_shorts">Lecteur Shorts</string>
<string name="revanced_shorts_player_type_regular_player">Lecteur classique</string>
<string name="revanced_shorts_player_type_regular_player_fullscreen">Lecteur classique en plein écran</string>
<string name="revanced_shorts_player_type_regular_player">Lecteur standard</string>
<string name="revanced_shorts_player_type_regular_player_fullscreen">Lecteur standard en plein écran</string>
</patch>
<patch id="layout.shortsautoplay.shortsAutoplayPatch">
<string name="revanced_shorts_autoplay_title">Lire automatiquement les Shorts</string>
@@ -1194,7 +1192,7 @@ Si désactivé ultérieurement, il est recommandé d'effacer les données de l'a
</patch>
<patch id="layout.miniplayer.miniplayerPatch">
<string name="revanced_miniplayer_screen_title">Lecteur réduit</string>
<string name="revanced_miniplayer_screen_summary">Changer le style du lecteur réduit dans l\'application</string>
<string name="revanced_miniplayer_screen_summary">Modifier le style du lecteur réduit à l\'intérieur de l\'application</string>
<string name="revanced_miniplayer_type_title">Type de lecteur réduit</string>
<string name="revanced_miniplayer_type_entry_0">Désactivé</string>
<string name="revanced_miniplayer_type_entry_1">Par défaut</string>
@@ -1247,8 +1245,6 @@ Balayez pour développer ou fermer"</string>
<string name="revanced_gradient_loading_screen_title">Activer le dégradé sur l\'écran de chargement</string>
<string name="revanced_gradient_loading_screen_summary_on">Le fond de l\'écran de chargement sera un dégradé de couleurs</string>
<string name="revanced_gradient_loading_screen_summary_off">Le fond de l\'écran de chargement sera une couleur unie</string>
</patch>
<patch id="layout.theme.themeResourcePatch">
<string name="revanced_seekbar_custom_color_title">Personnaliser la couleur de la barre de progression</string>
<string name="revanced_seekbar_custom_color_summary_on">La couleur de la barre de progression est personnalisée</string>
<string name="revanced_seekbar_custom_color_summary_off">La couleur originale de la barre de progression est affichée</string>
@@ -1340,8 +1336,8 @@ Activer cette option peut déverrouiller des qualités vidéo supérieures"</str
</patch>
<patch id="misc.links.openLinksExternallyPatch">
<string name="revanced_external_browser_title">Ouvrir les liens dans le navigateur</string>
<string name="revanced_external_browser_summary_on">Les liens sont ouverts dans une appli externe</string>
<string name="revanced_external_browser_summary_off">Les liens sont ouverts dans l\'application</string>
<string name="revanced_external_browser_summary_on">Les liens sont ouverts dans le navigateur externe</string>
<string name="revanced_external_browser_summary_off">Les liens sont ouverts dans le navigateur intégré à l\'application</string>
</patch>
<patch id="misc.privacy.removeTrackingQueryParameterPatch">
<string name="revanced_remove_tracking_query_parameter_title">Supprimer le paramètre de suivi</string>
@@ -1363,14 +1359,20 @@ Activer cette option peut déverrouiller des qualités vidéo supérieures"</str
<patch id="video.quality.rememberVideoQualityPatch">
<!-- Translations should use the same text as revanced_custom_playback_speeds_auto -->
<string name="revanced_video_quality_default_entry_1">Automatique</string>
<string name="revanced_remember_video_quality_last_selected_title">Se souvenir des modifications de la qualité vidéo</string>
<string name="revanced_remember_video_quality_last_selected_summary_on">Les modifications de qualité s\'appliquent à toutes les vidéos</string>
<string name="revanced_remember_video_quality_last_selected_summary_off">Les modifications de qualité s\'appliquent uniquement à la vidéo en cours</string>
<string name="revanced_video_quality_default_wifi_title">Qualité vidéo par défaut sur un réseau Wi-Fi</string>
<string name="revanced_remember_video_quality_last_selected_title">Mémoriser les changements de qualité vidéo</string>
<string name="revanced_remember_video_quality_last_selected_summary_on">Les changements de qualité s\'appliquent à toutes les vidéos</string>
<string name="revanced_remember_video_quality_last_selected_summary_off">Les changements de qualité s\'appliquent uniquement à la vidéo actuelle</string>
<string name="revanced_video_quality_default_wifi_title">Qualité vidéo par défaut sur les réseaux Wi-Fi</string>
<string name="revanced_video_quality_default_mobile_title">Qualité vidéo par défaut sur le réseau mobile</string>
<string name="revanced_remember_shorts_quality_last_selected_title">Mémoriser les changements de qualité des Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_on">Les changements de qualité s\'appliquent à tous les Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_off">Les changements de qualité s\'appliquent uniquement au Short actuel</string>
<string name="revanced_shorts_quality_default_wifi_title">Qualité par défaut des Shorts sur les réseaux Wi-Fi</string>
<string name="revanced_shorts_quality_default_mobile_title">Qualité par défaut des Shorts sur le réseau mobile</string>
<string name="revanced_remember_video_quality_mobile">mobile</string>
<string name="revanced_remember_video_quality_wifi">Wi-Fi</string>
<string name="revanced_remember_video_quality_toast">Nouvelle qualité %1$s par défaut : %2$s</string>
<string name="revanced_remember_video_quality_toast_shorts">Nouvelle qualité %1$s des Shorts par défaut : %2$s</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Afficher un bouton Vitesse</string>
@@ -1390,9 +1392,9 @@ Activer cette option peut déverrouiller des qualités vidéo supérieures"</str
<string name="revanced_speed_tap_and_hold_summary">Vitesse de lecture comprise entre 0 et 8</string>
</patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch">
<string name="revanced_remember_playback_speed_last_selected_title">Se souvenir des modifications de la vitesse de lecture</string>
<string name="revanced_remember_playback_speed_last_selected_summary_on">Les modifications de vitesse de lecture s\'appliquent à toutes les vidéos</string>
<string name="revanced_remember_playback_speed_last_selected_summary_off">Les modifications de vitesse de lecture ne s\'appliquent qu\'à la vidéo actuelle</string>
<string name="revanced_remember_playback_speed_last_selected_title">Mémoriser les changements de vitesse de lecture</string>
<string name="revanced_remember_playback_speed_last_selected_summary_on">Les changements de vitesse de lecture s\'appliquent à toutes les vidéos</string>
<string name="revanced_remember_playback_speed_last_selected_summary_off">Les changements de vitesse de lecture ne s\'appliquent qu\'à la vidéo actuelle</string>
<string name="revanced_playback_speed_default_title">Vitesse de lecture par défaut</string>
<string name="revanced_remember_playback_speed_toast">Nouvelle vitesse par défaut : %s</string>
</patch>
@@ -1401,10 +1403,10 @@ Activer cette option peut déverrouiller des qualités vidéo supérieures"</str
<string name="revanced_disable_hdr_video_summary_on">Le HDR est désactivé dans les vidéos</string>
<string name="revanced_disable_hdr_video_summary_off">Le HDR est activé dans les vidéos</string>
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<string name="revanced_restore_old_video_quality_menu_title">Restaurer l\'ancien menu de qualité vidéo</string>
<string name="revanced_restore_old_video_quality_menu_summary_on">L\'ancien menu de qualité vidéo est affiché</string>
<string name="revanced_restore_old_video_quality_menu_summary_off">L\'ancien menu de qualité vidéo n\'est pas affiché</string>
<patch id="video.quality.advancedVideoQualityMenuPatch">
<string name="revanced_advanced_video_quality_menu_title">Afficher le menu de qualité vidéo avancé</string>
<string name="revanced_advanced_video_quality_menu_summary_on">Le menu de qualité vidéo avancé est affiché</string>
<string name="revanced_advanced_video_quality_menu_summary_off">Le menu de qualité vidéo avancé n\'est pas affiché</string>
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
<string name="revanced_slide_to_seek_title">Activer Glisser pour rechercher</string>

View File

@@ -301,13 +301,13 @@ Ní bheidh a fhios agat faoi aon imeachtaí neamhghnácha."</string>
<string name="revanced_hide_description_components_screen_title">Cur síos físeán</string>
<string name="revanced_hide_description_components_screen_summary">Folaigh nó taispeáint comhpháirteanna tuairisc</string>
<string name="revanced_hide_filter_bar_screen_title">Barra scagaire</string>
<string name="revanced_hide_filter_bar_screen_summary">Folaigh nó taispeáin an barra scagaire sna físeáin beatha, cuardaigh agus gaolmhara</string>
<string name="revanced_hide_filter_bar_screen_summary">Folaigh nó taispeáin an barra scagaire sa sruth, torthaí cuardaigh agus físeáin ghaolmhara</string>
<string name="revanced_hide_filter_bar_feed_in_feed_title">Folaigh i mbeatha</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_on">I bhfolach i mbeatha</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_off">Taispeántar i mbeatha</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Folaigh i gcuardach</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">I bhfolach i gcuardach</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Taispeántar i gcuardach</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Folaigh i dtorthaí cuardaigh</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Folaigh i dtorthaí cuardaigh</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Taispeáin i dtorthaí cuardaigh</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_title">Folaigh i bhfíseáin gaolmhara</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_on">I bhfolach i bhfíseáin ghaolmhara</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_off">Taispeántar i bhfíseáin ghaolmhara</string>
@@ -404,7 +404,6 @@ Níl an ghné seo ar fáil ach do ghléasanna níos sine"</string>
<string name="revanced_hide_self_sponsor_ads_title">Folaigh cártaí féin-urraithe</string>
<string name="revanced_hide_self_sponsor_ads_summary_on">Tá cártaí féin-urraithe i bhfolach</string>
<string name="revanced_hide_self_sponsor_ads_summary_off">Taispeántar cártaí féin-urraithe</string>
<string name="revanced_hide_products_banner_title">Folaigh meirge chun táirgí a fheiceáil</string>
<string name="revanced_hide_products_banner_summary_on">Tá bratach i bhfolach</string>
<string name="revanced_hide_products_banner_summary_off">Taispeántar an bhratach</string>
<string name="revanced_hide_end_screen_store_banner_title">Folaigh brat bhranda siopa scáileáin deiridh</string>
@@ -653,7 +652,7 @@ Mura dtagann aon athrú ar an socrú seo, bain triail as mód Incognito a chur a
<string name="revanced_hide_player_flyout_video_quality_footer_summary_off">Taispeántar buntásc roghchlár cáilíochta físeáin</string>
</patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<string name="revanced_hide_player_previous_next_buttons_title">Folaigh &amp; cnaipí físeáin seo chugainn</string>
<string name="revanced_hide_player_previous_next_buttons_title">Folaigh Cnaipí Roimhe &amp; Ar Aghaidh</string>
<string name="revanced_hide_player_previous_next_buttons_summary_on">Tá cnaipí i bhfolach</string>
<string name="revanced_hide_player_previous_next_buttons_summary_off">Taispeántar cnaipí</string>
<string name="revanced_hide_cast_button_title">Folaigh cnaipe an Chasta</string>
@@ -1101,16 +1100,14 @@ Maithe chun cur isteach?"</string>
<string name="revanced_change_form_factor_entry_2">Fón</string>
<string name="revanced_change_form_factor_entry_3">Táibhléad</string>
<string name="revanced_change_form_factor_entry_4">Gluaisrothar</string>
<string name="revanced_change_form_factor_user_dialog_message">"Áirítear na hathruithe seo a leanas:
<string name="revanced_change_form_factor_user_dialog_message">"Á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"</string>
Leagan amach feithicleach
Osclaítear Shorts sa ghnáthsheinnteoir
Eagraítear an fotha de réir topaicí agus bealaí"</string>
</patch>
<patch id="layout.spoofappversion.spoofAppVersionPatch">
<string name="revanced_spoof_app_version_title">Leagan aip spoof</string>
@@ -1180,7 +1177,6 @@ Má dhiúltaítear é níos déanaí, moltar sonraí an aip a ghlanadh chun buga
</patch>
<patch id="layout.miniplayer.miniplayerPatch">
<string name="revanced_miniplayer_screen_title">Minipléir</string>
<string name="revanced_miniplayer_screen_summary">Athraigh stíl an imreora íoslaghdaithe san aip</string>
<string name="revanced_miniplayer_type_title">Cineál Miniplayer</string>
<string name="revanced_miniplayer_type_entry_0">Díchumasaithe</string>
<string name="revanced_miniplayer_type_entry_1">Réamhshocraithe</string>
@@ -1233,8 +1229,6 @@ Swipe chun leathnú nó dúnadh"</string>
<string name="revanced_gradient_loading_screen_title">Cumasaigh scáileán luchtaithe</string>
<string name="revanced_gradient_loading_screen_summary_on">Beidh cúlra grádáin ag an scáileán lódála</string>
<string name="revanced_gradient_loading_screen_summary_off">Beidh cúlra láidir ag scáileán luchtaithe</string>
</patch>
<patch id="layout.theme.themeResourcePatch">
<string name="revanced_seekbar_custom_color_title">Cumasaigh dath barra cuardaigh saincheaptha</string>
<string name="revanced_seekbar_custom_color_summary_on">Taispeántar dath barra cuardaigh saincheaptha</string>
<string name="revanced_seekbar_custom_color_summary_off">Taispeántar dath barr cuardaigh bunaidh</string>
@@ -1326,8 +1320,8 @@ Is féidir le seo caighdeáin físeáin níos airde a dhíghlasáil"</string>
</patch>
<patch id="misc.links.openLinksExternallyPatch">
<string name="revanced_external_browser_title">Oscail naisc sa bhrabhsála</string>
<string name="revanced_external_browser_summary_on">Naisc a oscailt go seachtrach</string>
<string name="revanced_external_browser_summary_off">Naisc a oscailt san aip</string>
<string name="revanced_external_browser_summary_on">Ag oscailt naisc sa bhrabhsálaí seachtrach</string>
<string name="revanced_external_browser_summary_off">Ag oscailt naisc sa bhrabhsálaí in-aip</string>
</patch>
<patch id="misc.privacy.removeTrackingQueryParameterPatch">
<string name="revanced_remove_tracking_query_parameter_title">Bain paraiméadar ceist rianaithe</string>
@@ -1354,9 +1348,15 @@ Is féidir le seo caighdeáin físeáin níos airde a dhíghlasáil"</string>
<string name="revanced_remember_video_quality_last_selected_summary_off">Ní bhaineann athruithe cáilíochta ach leis an bhfíseán reatha</string>
<string name="revanced_video_quality_default_wifi_title">Cáilíocht físe réamhshocraithe ar líonra</string>
<string name="revanced_video_quality_default_mobile_title">Cáilíocht físe réamhshocraithe ar líonra</string>
<string name="revanced_remember_shorts_quality_last_selected_title">Cuimhnigh ar athruithe cáilíochta Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_on">Baineann athruithe ar an gcáilíocht le gach Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_off">Ní bhaineann athruithe ar an gcáilíocht ach leis an Short reatha</string>
<string name="revanced_shorts_quality_default_wifi_title">Cáilíocht réamhshocraithe Shorts ar líonra Wi-Fi</string>
<string name="revanced_shorts_quality_default_mobile_title">Cáilíocht réamhshocraithe Shorts ar líonra soghluaiste</string>
<string name="revanced_remember_video_quality_mobile">soghluaiste</string>
<string name="revanced_remember_video_quality_wifi">Wi-Fi</string>
<string name="revanced_remember_video_quality_toast">Athraigh cáilíocht réamhshocraithe %1$s go dtí: %2$s</string>
<string name="revanced_remember_video_quality_toast_shorts">Athraíodh cáilíocht Shorts %1$s go: %2$s</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Taispeáin cnaipe dialóg luais</string>
@@ -1387,10 +1387,10 @@ Is féidir le seo caighdeáin físeáin níos airde a dhíghlasáil"</string>
<string name="revanced_disable_hdr_video_summary_on"><p style="margin-left: 60px;">Tá físeán HDR díchumasaithe</p></string>
<string name="revanced_disable_hdr_video_summary_off"><p style="margin-left: 60px;">Tá físeán HDR arna chumhachtú</p></string>
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<string name="revanced_restore_old_video_quality_menu_title">Athchóirigh sean-roghchlár cáilíochta físeáin</string>
<string name="revanced_restore_old_video_quality_menu_summary_on">Taispeántar sean-roghchlár cáilíochta físeáin</string>
<string name="revanced_restore_old_video_quality_menu_summary_off">Ní thaispeántar sean-roghchlár cáilíochta físeáin</string>
<patch id="video.quality.advancedVideoQualityMenuPatch">
<string name="revanced_advanced_video_quality_menu_title">Taispeáin roghchlár ardcháilíochta físeáin</string>
<string name="revanced_advanced_video_quality_menu_summary_on">Taispeántar roghchlár ardcháilíochta físeáin</string>
<string name="revanced_advanced_video_quality_menu_summary_off">Ní thaispeántar roghchlár ardcháilíochta físeáin</string>
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
<string name="revanced_slide_to_seek_title">Cumasaigh sleamhnán a lorg</string>

View File

@@ -177,8 +177,6 @@ Second \"item\" text"</string>
</patch>
<patch id="layout.theme.themePatch">
</patch>
<patch id="layout.theme.themeResourcePatch">
</patch>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch">
</patch>
<patch id="layout.thumbnails.alternativeThumbnailsPatch">
@@ -219,7 +217,7 @@ Second \"item\" text"</string>
</patch>
<patch id="video.hdr.disableHdrPatch">
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>

View File

@@ -177,8 +177,6 @@ Second \"item\" text"</string>
</patch>
<patch id="layout.theme.themePatch">
</patch>
<patch id="layout.theme.themeResourcePatch">
</patch>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch">
</patch>
<patch id="layout.thumbnails.alternativeThumbnailsPatch">
@@ -219,7 +217,7 @@ Second \"item\" text"</string>
</patch>
<patch id="video.hdr.disableHdrPatch">
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>

View File

@@ -177,8 +177,6 @@ Second \"item\" text"</string>
</patch>
<patch id="layout.theme.themePatch">
</patch>
<patch id="layout.theme.themeResourcePatch">
</patch>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch">
</patch>
<patch id="layout.thumbnails.alternativeThumbnailsPatch">
@@ -219,7 +217,7 @@ Second \"item\" text"</string>
</patch>
<patch id="video.hdr.disableHdrPatch">
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>

View File

@@ -177,8 +177,6 @@ Second \"item\" text"</string>
</patch>
<patch id="layout.theme.themePatch">
</patch>
<patch id="layout.theme.themeResourcePatch">
</patch>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch">
</patch>
<patch id="layout.thumbnails.alternativeThumbnailsPatch">
@@ -219,7 +217,7 @@ Second \"item\" text"</string>
</patch>
<patch id="video.hdr.disableHdrPatch">
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>

View File

@@ -301,13 +301,13 @@ Nem fog értesülni semmilyen váratlan eseményről."</string>
<string name="revanced_hide_description_components_screen_title">Videóleírás</string>
<string name="revanced_hide_description_components_screen_summary">A videóleírás komponenseinek elrejtése vagy megjelenítése</string>
<string name="revanced_hide_filter_bar_screen_title">Szűrősáv</string>
<string name="revanced_hide_filter_bar_screen_summary">Szűrősáv elrejtése vagy megjelenítése a feedekben, a keresésben és a kapcsolódó videók között</string>
<string name="revanced_hide_filter_bar_screen_summary">Szűrősáv elrejtése vagy megjelenítése a hírfolyamban, a keresési eredményekben és a kapcsolódó videókban</string>
<string name="revanced_hide_filter_bar_feed_in_feed_title">Elrejtés a feedekben</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_on">Elrejtve a feedekben</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_off">Megjelenítés a feedekben</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Elrejtés a keresésben</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Elrejtve a keresésben</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Megjelenik a keresésben</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Elrejtés a keresési eredmények között</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Elrejtve a keresési eredmények között</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Megjelenítve a keresési eredmények között</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_title">Elrejtés a kapcsolódó videók között</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_on">Elrejtve a kapcsolódó videók között</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_off">Megjelenik a kapcsolódó videók között</string>
@@ -404,7 +404,7 @@ Ez a funkció csak régebbi eszközökön érhető el"</string>
<string name="revanced_hide_self_sponsor_ads_title">Önpromóciós kártyák elrejtése</string>
<string name="revanced_hide_self_sponsor_ads_summary_on">Az önpromóciós kártyák rejtve vannak</string>
<string name="revanced_hide_self_sponsor_ads_summary_off">Az önpromóciós kártyák megjelennek</string>
<string name="revanced_hide_products_banner_title">Szalagkép elrejtése a termékek megtekintéséhez</string>
<string name="revanced_hide_products_banner_title">\"View products\" szalagcím elrejtése</string>
<string name="revanced_hide_products_banner_summary_on">A szalagkép rejtett</string>
<string name="revanced_hide_products_banner_summary_off">A szalagkép megjelenik</string>
<string name="revanced_hide_end_screen_store_banner_title">A befejező képernyőn lévő üzletbanner elrejtése</string>
@@ -663,7 +663,7 @@ Ha a beállítás módosítása nem lép életbe, próbáljon meg Inkognitó mó
<string name="revanced_hide_player_flyout_video_quality_footer_summary_off">Megjelenik a videóminőség menü lábléce</string>
</patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<string name="revanced_hide_player_previous_next_buttons_title">Az előző és következő videó gombok elrejtése</string>
<string name="revanced_hide_player_previous_next_buttons_title">Az Előző és a Következő gombok elrejtése</string>
<string name="revanced_hide_player_previous_next_buttons_summary_on">A gombok elrejtve</string>
<string name="revanced_hide_player_previous_next_buttons_summary_off">A gombok megjelennek</string>
<string name="revanced_hide_cast_button_title">Küldés gomb elrejtése</string>
@@ -1115,16 +1115,14 @@ Készen állsz a beküldésre?"</string>
<string name="revanced_change_form_factor_entry_2">Telefon</string>
<string name="revanced_change_form_factor_entry_3">Táblagép</string>
<string name="revanced_change_form_factor_entry_4">Autóipari</string>
<string name="revanced_change_form_factor_user_dialog_message">"Módosítások:
<string name="revanced_change_form_factor_user_dialog_message">"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"</string>
• A \"Shorts\" a szokásos lejátszóban nyílik meg
• A hírcsatorna témák és csatornák szerint van rendezve"</string>
</patch>
<patch id="layout.spoofappversion.spoofAppVersionPatch">
<string name="revanced_spoof_app_version_title">Alkalmazásverzió hamisítása</string>
@@ -1194,7 +1192,7 @@ Ha később kikapcsolja, akkor ajánlott az alkalmazás adatait törölni, hogy
</patch>
<patch id="layout.miniplayer.miniplayerPatch">
<string name="revanced_miniplayer_screen_title">Minilejátszó</string>
<string name="revanced_miniplayer_screen_summary">Módosítsa az alkalmazáson belüli kisméretű lejátszó stílusát</string>
<string name="revanced_miniplayer_screen_summary">Az alkalmazáson belüli minimalizált lejátszó stílusának módosítása</string>
<string name="revanced_miniplayer_type_title">Minilejátszó típus</string>
<string name="revanced_miniplayer_type_entry_0">Kikapcsolva</string>
<string name="revanced_miniplayer_type_entry_1">Alapértelmezett</string>
@@ -1247,8 +1245,6 @@ Húzza el a képernyőt a kibontáshoz vagy bezáráshoz"</string>
<string name="revanced_gradient_loading_screen_title">Színátmenetes betöltési képernyő engedélyezése</string>
<string name="revanced_gradient_loading_screen_summary_on">A betöltési képernyő színátmenetes hatterű lesz</string>
<string name="revanced_gradient_loading_screen_summary_off">A betöltési képernyő egyszínű hátterű lesz</string>
</patch>
<patch id="layout.theme.themeResourcePatch">
<string name="revanced_seekbar_custom_color_title">Egyéni keresősáv szín engedélyezése</string>
<string name="revanced_seekbar_custom_color_summary_on">Az egyéni keresősáv szín megjelenik</string>
<string name="revanced_seekbar_custom_color_summary_off">Az egyéni keresősáv szín nem jelenik meg</string>
@@ -1340,8 +1336,8 @@ Ez a beállítás lehetővé teszi a magasabb videóminőségek feloldását"</s
</patch>
<patch id="misc.links.openLinksExternallyPatch">
<string name="revanced_external_browser_title">Hivatkozások megnyitása a böngészőben</string>
<string name="revanced_external_browser_summary_on">Hivatkozások külső megnyitása</string>
<string name="revanced_external_browser_summary_off">Hivatkozások megnyitása az alkalmazásban</string>
<string name="revanced_external_browser_summary_on">Hivatkozások megnyitása külső böngészőben</string>
<string name="revanced_external_browser_summary_off">Hivatkozások megnyitása az alkalmazáson belüli böngészőben</string>
</patch>
<patch id="misc.privacy.removeTrackingQueryParameterPatch">
<string name="revanced_remove_tracking_query_parameter_title">Nyomkövetési lekérdezési paraméter eltávolítása</string>
@@ -1368,9 +1364,15 @@ Ez a beállítás lehetővé teszi a magasabb videóminőségek feloldását"</s
<string name="revanced_remember_video_quality_last_selected_summary_off">Felbontás változtatások alkalmazása a jelenlegi videóra</string>
<string name="revanced_video_quality_default_wifi_title">Alapértelmezett videó minőség Wi-Fi hálózaton</string>
<string name="revanced_video_quality_default_mobile_title">Alapértelmezett videó minőség mobilhálózaton</string>
<string name="revanced_remember_shorts_quality_last_selected_title">A Shorts minőség módosításainak megjegyzése</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_on">A minőségi beállítások az összes Shorts videóra vonatkoznak</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_off">A minőségi beállítások csak a jelenlegi Short videóra vonatkoznak</string>
<string name="revanced_shorts_quality_default_wifi_title">Alapértelmezett Shorts minőség Wi-Fi hálózaton</string>
<string name="revanced_shorts_quality_default_mobile_title">Alapértelmezett Shorts minőség mobilhálózaton</string>
<string name="revanced_remember_video_quality_mobile">mobil</string>
<string name="revanced_remember_video_quality_wifi">wi-fi</string>
<string name="revanced_remember_video_quality_toast">A(z) %1$s alapértelmezett felbontása erre módosult: %2$s</string>
<string name="revanced_remember_video_quality_toast_shorts">A Shorts %1$s minősége megváltozott: %2$s</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Sebesség párbeszédpanel megjelenítése</string>
@@ -1401,10 +1403,10 @@ Ez a beállítás lehetővé teszi a magasabb videóminőségek feloldását"</s
<string name="revanced_disable_hdr_video_summary_on">Az HDR videó le van tiltva</string>
<string name="revanced_disable_hdr_video_summary_off">Az HDR videó engedélyezve van</string>
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<string name="revanced_restore_old_video_quality_menu_title">Régi videóminőség menü visszaállítása</string>
<string name="revanced_restore_old_video_quality_menu_summary_on">A régi videóminőség menü jelenik meg</string>
<string name="revanced_restore_old_video_quality_menu_summary_off">A régi videóminőség menü nem jelenik meg</string>
<patch id="video.quality.advancedVideoQualityMenuPatch">
<string name="revanced_advanced_video_quality_menu_title">Speciális videóminőség menü megjelenítése</string>
<string name="revanced_advanced_video_quality_menu_summary_on">A speciális videóminőség menü látható</string>
<string name="revanced_advanced_video_quality_menu_summary_off">A speciális videóminőség menü nem látható</string>
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
<string name="revanced_slide_to_seek_title">Csúsztatás engedélyezése a kereséshez</string>

View File

@@ -301,13 +301,13 @@ MicroG-ի համար մարտկոցի օպտիմալացումը անջատել
<string name="revanced_hide_description_components_screen_title">Տեսանյութի նկարագրություն</string>
<string name="revanced_hide_description_components_screen_summary">Թաքցնել կամ ցույց տալ տեսանյութի նկարագրության բաղադրամասերը</string>
<string name="revanced_hide_filter_bar_screen_title">Ֆիլտրի գիծ</string>
<string name="revanced_hide_filter_bar_screen_summary">Թաքցնել կամ ցույց տալ ֆիլտրի գիծը լեզվական, որոնման և կապված տեսանյութերում</string>
<string name="revanced_hide_filter_bar_screen_summary">Թաքցնել կամ ցուցադրել ֆիլտրի գոտին լրահոսում, որոնման արդյունքներում և հարակից տեսանյութերում</string>
<string name="revanced_hide_filter_bar_feed_in_feed_title">Թաքցնել լեզվականում</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_on">Թաքցված է լեզվականում</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_off">Ցույց է տրվում լեզվականում</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Թաքցնել որոնման մեջ</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Թաքցված է որոնման մեջ</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Ցույց է տրվում որոնման մեջ</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Թաքցնել որոնման արդյունքներում</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Թաքնված է որոնման արդյունքներում</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Ցուցադրված է որոնման արդյունքներում</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_title">Թաքցնել կապված տեսանյութերում</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_on">Թաքցված է կապված տեսանյութերում</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_off">Ցույց է տրվում կապված տեսանյութերում</string>
@@ -404,7 +404,6 @@ MicroG-ի համար մարտկոցի օպտիմալացումը անջատել
<string name="revanced_hide_self_sponsor_ads_title">Թաքցնել ինքնահովանավորված քարտերը</string>
<string name="revanced_hide_self_sponsor_ads_summary_on">Ինքնահովանավորված քարտերը թաքցված են</string>
<string name="revanced_hide_self_sponsor_ads_summary_off">Ինքնահովանավորված քարտերը երևում են</string>
<string name="revanced_hide_products_banner_title">Թաքցնել ապրանքների դիտման բաները</string>
<string name="revanced_hide_products_banner_summary_on">Բաները թաքցված են</string>
<string name="revanced_hide_products_banner_summary_off">Բաները երևում են</string>
<string name="revanced_hide_end_screen_store_banner_title">Թաքցնել վերջնական էկրանի խանութի բաները</string>
@@ -663,7 +662,7 @@ MicroG-ի համար մարտկոցի օպտիմալացումը անջատել
<string name="revanced_hide_player_flyout_video_quality_footer_summary_off">Տեսանյութի որակի մենյուի ստորագրությունը երևում է</string>
</patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<string name="revanced_hide_player_previous_next_buttons_title">Թաքցնել \"Նախորդ\" և \"Հաջորդ\" տեսանյութի կոճակները</string>
<string name="revanced_hide_player_previous_next_buttons_title">Թաքցնել \"Նախորդ\" և \"Հաջորդ\" կոճակները</string>
<string name="revanced_hide_player_previous_next_buttons_summary_on">Կոճակները թաքցված են</string>
<string name="revanced_hide_player_previous_next_buttons_summary_off">Կոճակները երևում են</string>
<string name="revanced_hide_cast_button_title">Թաքցնել Cast կոճակը</string>
@@ -1116,16 +1115,14 @@ Seekbar thumbnails-ները կօգտագործեն նույն որակը, ինչ
<string name="revanced_change_form_factor_entry_2">Հեռախոս</string>
<string name="revanced_change_form_factor_entry_3">Պլանշետ</string>
<string name="revanced_change_form_factor_entry_4">Ավտոմոբիլային</string>
<string name="revanced_change_form_factor_user_dialog_message">"Փոփոխությունները ներառում են.
<string name="revanced_change_form_factor_user_dialog_message">"Փոփոխությունները ներառում են.
Պլանշետի ինտերֆեյս
Թաքցված են համայնքի հրապարակումները
Պլանշետի դասավորություն
Համայնքային գրառումները թաքնված են
Ավտոմոբիլային ինտերֆեյս
Թաքցված է դիտումների պատմության ընտրանին
Վերականգնված է ուսումնասիրել էջը
• Հոլովակները բացվում են ստանդարտ նվագարկչում
• Նորությունները կազմակերպված են ըստ թեմաների և ալիքների"</string>
Ավտոմեքենայի դասավորություն
Shorts-ը բացվում է սովորական նվագարկչում
Ֆիդը կազմակերպվում է ըստ թեմաների և ալիքների"</string>
</patch>
<patch id="layout.spoofappversion.spoofAppVersionPatch">
<string name="revanced_spoof_app_version_title">Կեղծել հավելվածի տարբերակը</string>
@@ -1195,7 +1192,6 @@ Seekbar thumbnails-ները կօգտագործեն նույն որակը, ինչ
</patch>
<patch id="layout.miniplayer.miniplayerPatch">
<string name="revanced_miniplayer_screen_title">Մինի նվագարկիչ</string>
<string name="revanced_miniplayer_screen_summary">Փոխել կիրառության մեջ փոքրացված պլեյերի ոճը</string>
<string name="revanced_miniplayer_type_title">Miniplayer-ի տեսակ</string>
<string name="revanced_miniplayer_type_entry_0">Անջատված է</string>
<string name="revanced_miniplayer_type_entry_1">Ըստ լռելյայնի</string>
@@ -1248,8 +1244,6 @@ Mini-player-ը կարող է գրավվել էկրանից դուրս՝ դեպի
<string name="revanced_gradient_loading_screen_title">Աктиվացնել գրադիենտի բեռնման էկրանը</string>
<string name="revanced_gradient_loading_screen_summary_on">Բեռնման էկրանը կունենա գրադիենտի ֆոն</string>
<string name="revanced_gradient_loading_screen_summary_off">Բեռնման էկրանը կունենա մեկ գույնի ֆոն</string>
</patch>
<patch id="layout.theme.themeResourcePatch">
<string name="revanced_seekbar_custom_color_title">Աктиվացնել հարմարեցված seekbar-ի գույնը</string>
<string name="revanced_seekbar_custom_color_summary_on">Հարմարեցված seekbar-ի գույնը ցուցադրվում է</string>
<string name="revanced_seekbar_custom_color_summary_off">Սկզբնական seekbar-ի գույնը ցուցադրվում է</string>
@@ -1341,8 +1335,8 @@ Mini-player-ը կարող է գրավվել էկրանից դուրս՝ դեպի
</patch>
<patch id="misc.links.openLinksExternallyPatch">
<string name="revanced_external_browser_title">Բրաուզերում հղումներ բացել</string>
<string name="revanced_external_browser_summary_on">Հղումները բացվում են արտաքին</string>
<string name="revanced_external_browser_summary_off">Հղումները բացվում են ծրագրում</string>
<string name="revanced_external_browser_summary_on">Բացել հղումները արտաքին բրաուզերում</string>
<string name="revanced_external_browser_summary_off">Բացել հղումները ներծրագրային բրաուզերում</string>
</patch>
<patch id="misc.privacy.removeTrackingQueryParameterPatch">
<string name="revanced_remove_tracking_query_parameter_title">Հետևողականության հարցումի պարամետրը հեռացնել</string>
@@ -1369,9 +1363,15 @@ Mini-player-ը կարող է գրավվել էկրանից դուրս՝ դեպի
<string name="revanced_remember_video_quality_last_selected_summary_off">Որակի փոփոխությունները կիրառվում են միայն ներկայիս տեսանյութի համար</string>
<string name="revanced_video_quality_default_wifi_title">Wi-Fi ցանցի դեֆոլտ տեսանյութի որակը</string>
<string name="revanced_video_quality_default_mobile_title">Մೊբայլ ցանցի դեֆոլտ տեսանյութի որակը</string>
<string name="revanced_remember_shorts_quality_last_selected_title">Հիշել Shorts-ի որակի փոփոխությունները</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_on">Որակի փոփոխություններն ազդում են բոլոր Shorts-ի վրա</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_off">Որակի փոփոխություններն ազդում են միայն ընթացիկ Short-ի վրա</string>
<string name="revanced_shorts_quality_default_wifi_title">Shorts-ի լռելյայն որակը Wi-Fi ցանցում</string>
<string name="revanced_shorts_quality_default_mobile_title">Shorts-ի լռելյայն որակը բջջային ցանցում</string>
<string name="revanced_remember_video_quality_mobile">վարկանիշ</string>
<string name="revanced_remember_video_quality_wifi">ուայ-ֆայ</string>
<string name="revanced_remember_video_quality_toast">Փոփոխվել է դեֆոլտ %1$s որակը: %2$s</string>
<string name="revanced_remember_video_quality_toast_shorts">Փոխվել է Shorts %1$s-ի որակը հետևյալի վրա. %2$s</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Ցուցադրել արագության դիալոգի պատուհանի կոճակը</string>
@@ -1402,10 +1402,10 @@ Mini-player-ը կարող է գրավվել էկրանից դուրս՝ դեպի
<string name="revanced_disable_hdr_video_summary_on">HDR տեսանյութը անջատված է</string>
<string name="revanced_disable_hdr_video_summary_off">HDR տեսանյութը միացված է</string>
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<string name="revanced_restore_old_video_quality_menu_title">Վերականգնել տեսանյութի որակի հին մենյու</string>
<string name="revanced_restore_old_video_quality_menu_summary_on">Տեսանյութի որակի հին մենյուը ցուցադրվում է</string>
<string name="revanced_restore_old_video_quality_menu_summary_off">Տեսանյութի որակի հին մենյուը չի ցուցադրվում</string>
<patch id="video.quality.advancedVideoQualityMenuPatch">
<string name="revanced_advanced_video_quality_menu_title">Ցուցադրել տեսանյութի որակի ընդլայնված մենյուն</string>
<string name="revanced_advanced_video_quality_menu_summary_on">Տեսանյութի որակի ընդլայնված մենյուն ցուցադրվում է</string>
<string name="revanced_advanced_video_quality_menu_summary_off">Տեսանյութի որակի ընդլայնված մենյուն չի ցուցադրվում</string>
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
<string name="revanced_slide_to_seek_title">Ակտիվացնել սահելը համար ընտրելու</string>

View File

@@ -301,13 +301,13 @@ Anda tidak akan diberi tahu tentang kejadian yang tidak terduga."</string>
<string name="revanced_hide_description_components_screen_title">Keterangan video</string>
<string name="revanced_hide_description_components_screen_summary">Sembunyikan atau tampilkan komponen keterangan video</string>
<string name="revanced_hide_filter_bar_screen_title">Bilah saring</string>
<string name="revanced_hide_filter_bar_screen_summary">Sembunyikan atau tampilkan bilah saring di bagian umpan, pencarian, dan video terkait</string>
<string name="revanced_hide_filter_bar_screen_summary">Sembunyikan atau tampilkan bilah saring di bagian umpan, hasil pencarian, dan video terkait</string>
<string name="revanced_hide_filter_bar_feed_in_feed_title">Sembunyikan di bagian umpan</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_on">Disembunyikan di bagian umpan</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_off">Tampilkan di bagian umpan</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Sembunyikan di pencarian</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Disembunyikan di pencarian</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Ditampilkan di pencarian</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Sembunyikan di hasil penelusuran</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Disembunyikan di hasil penelusuran</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Ditampilkan di hasil penelusuran</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_title">Sembunyikan di video terkait</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_on">Disembunyikan di video terkait</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_off">Ditampilkan di video terkait</string>
@@ -404,9 +404,9 @@ Fitur ini hanya tersedia untuk perangkat yang lebih lama"</string>
<string name="revanced_hide_self_sponsor_ads_title">Sembunyikan kartu bersponsor pribadi</string>
<string name="revanced_hide_self_sponsor_ads_summary_on">Kartu bersponsor pribadi disembunyikan</string>
<string name="revanced_hide_self_sponsor_ads_summary_off">Kartu bersponsor pribadi ditampilkan</string>
<string name="revanced_hide_products_banner_title">Sembunyikan banner untuk melihat produk</string>
<string name="revanced_hide_products_banner_summary_on">Banner disembunyikan</string>
<string name="revanced_hide_products_banner_summary_off">Banner ditampilkan</string>
<string name="revanced_hide_products_banner_title">Sembunyikan spanduk \'Lihat produk\'</string>
<string name="revanced_hide_products_banner_summary_on">Spanduk disembunyikan</string>
<string name="revanced_hide_products_banner_summary_off">Spanduk ditampilkan</string>
<string name="revanced_hide_end_screen_store_banner_title">Sembunyikan spanduk toko di layar akhir</string>
<string name="revanced_hide_end_screen_store_banner_summary_on">Spanduk toko disembunyikan</string>
<string name="revanced_hide_end_screen_store_banner_summary_off">Spanduk toko ditampilkan</string>
@@ -663,7 +663,7 @@ Jika mengubah setelan ini tidak berpengaruh, coba beralih ke mode Penyamaran."</
<string name="revanced_hide_player_flyout_video_quality_footer_summary_off">Footer menu kualitas video ditampilkan</string>
</patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<string name="revanced_hide_player_previous_next_buttons_title">Sembunyikan tombol video sebelumnya &amp; berikutnya</string>
<string name="revanced_hide_player_previous_next_buttons_title">Sembunyikan tombol Sebelumnya &amp; Berikutnya</string>
<string name="revanced_hide_player_previous_next_buttons_summary_on">Tombol disembunyikan</string>
<string name="revanced_hide_player_previous_next_buttons_summary_off">Tombol ditampilkan</string>
<string name="revanced_hide_cast_button_title">Sembunyikan tombol Transmisi</string>
@@ -809,12 +809,12 @@ Jika mengubah setelan ini tidak berpengaruh, coba beralih ke mode Penyamaran."</
<string name="revanced_hide_shorts_navigation_bar_summary_off">Bilah navigasi ditampilkan</string>
</patch>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch">
<string name="revanced_end_screen_suggested_video_title">Sembunyikan video saran layar akhir</string>
<string name="revanced_end_screen_suggested_video_summary_on">"Video saran layar akhir disembunyikan ketika putar otomatis dimatikan
<string name="revanced_end_screen_suggested_video_title">Sembunyikan video yang disarankan di layar akhir</string>
<string name="revanced_end_screen_suggested_video_summary_on">"Video yang disarankan di layar akhir disembunyikan saat pemutaran otomatis dimatikan
Putar otomatis dapat diubah di setelan YouTube:
Setelan → Pemutaran → Putar otomatis video berikutnya"</string>
<string name="revanced_end_screen_suggested_video_summary_off">Video saran layar akhir ditampilkan</string>
Pemutaran otomatis dapat diubah di pengaturan YouTube:
Pengaturan → Pemutaran → Putar otomatis video berikutnya"</string>
<string name="revanced_end_screen_suggested_video_summary_off">Video yang disarankan di layar akhir ditampilkan</string>
</patch>
<patch id="layout.hide.time.hideTimestampPatch">
<string name="revanced_hide_timestamp_title">Sembunyikan timestamp video</string>
@@ -1117,14 +1117,12 @@ Siap mengirim?"</string>
<string name="revanced_change_form_factor_entry_4">Otomotif</string>
<string name="revanced_change_form_factor_user_dialog_message">"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"</string>
Tata letak otomotif
Shorts dibuka di pemutar biasa
Umpan diatur berdasarkan topik dan channel"</string>
</patch>
<patch id="layout.spoofappversion.spoofAppVersionPatch">
<string name="revanced_spoof_app_version_title">Palsukan versi app</string>
@@ -1194,7 +1192,7 @@ Jika kemudian dimatikan, disarankan untuk menghapus data aplikasi untuk mencegah
</patch>
<patch id="layout.miniplayer.miniplayerPatch">
<string name="revanced_miniplayer_screen_title">Pemutar Mini</string>
<string name="revanced_miniplayer_screen_summary">Mengubah gaya pemutar aplikasi saat diciuitkan</string>
<string name="revanced_miniplayer_screen_summary">Ubah gaya pemutar mini dalam aplikasi</string>
<string name="revanced_miniplayer_type_title">Jenis pemutar mini</string>
<string name="revanced_miniplayer_type_entry_0">Nonaktif</string>
<string name="revanced_miniplayer_type_entry_1">Bawaan</string>
@@ -1247,8 +1245,6 @@ Usap untuk memperluas atau menutup"</string>
<string name="revanced_gradient_loading_screen_title">Aktifkan layar pemuatan gradien</string>
<string name="revanced_gradient_loading_screen_summary_on">Layar pemuatan akan memiliki latar belakang gradien</string>
<string name="revanced_gradient_loading_screen_summary_off">Layar pemuatan akan memiliki latar belakang yang solid</string>
</patch>
<patch id="layout.theme.themeResourcePatch">
<string name="revanced_seekbar_custom_color_title">Aktifkan warna seekbar khusus</string>
<string name="revanced_seekbar_custom_color_summary_on">Warna seekbar khusus ditampilkan</string>
<string name="revanced_seekbar_custom_color_summary_off">Warna seekbar asli ditampilkan</string>
@@ -1340,8 +1336,8 @@ Mengaktifkan ini dapat membuka kualitas video yang lebih tinggi"</string>
</patch>
<patch id="misc.links.openLinksExternallyPatch">
<string name="revanced_external_browser_title">Buka tautan di peramban</string>
<string name="revanced_external_browser_summary_on">Membuka tautan di eksternal</string>
<string name="revanced_external_browser_summary_off">Membuka tautan di aplikasi</string>
<string name="revanced_external_browser_summary_on">Membuka tautan di peramban eksternal</string>
<string name="revanced_external_browser_summary_off">Membuka tautan di peramban dalam aplikasi</string>
</patch>
<patch id="misc.privacy.removeTrackingQueryParameterPatch">
<string name="revanced_remove_tracking_query_parameter_title">Hapus parameter kueri pelacakan</string>
@@ -1368,9 +1364,15 @@ Mengaktifkan ini dapat membuka kualitas video yang lebih tinggi"</string>
<string name="revanced_remember_video_quality_last_selected_summary_off">Perubahan kualitas hanya diatur di video saat ini</string>
<string name="revanced_video_quality_default_wifi_title">Kualitas video bawaan di jaringan Wi-Fi</string>
<string name="revanced_video_quality_default_mobile_title">Kualitas video bawaan di jaringan selular</string>
<string name="revanced_remember_shorts_quality_last_selected_title">Ingat perubahan kualitas Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_on">Perubahan kualitas berlaku untuk semua Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_off">Perubahan kualitas hanya berlaku untuk Short saat ini</string>
<string name="revanced_shorts_quality_default_wifi_title">Kualitas Shorts bawaan di jaringan Wi-Fi</string>
<string name="revanced_shorts_quality_default_mobile_title">Kualitas Shorts bawaan di jaringan seluler</string>
<string name="revanced_remember_video_quality_mobile">seluler</string>
<string name="revanced_remember_video_quality_wifi">wifi</string>
<string name="revanced_remember_video_quality_toast">Kualitas bawaan %1$s diubah ke: %2$s</string>
<string name="revanced_remember_video_quality_toast_shorts">Kualitas Shorts %1$s diubah menjadi: %2$s</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Tampilkan tombol dialog kecepatan</string>
@@ -1401,10 +1403,10 @@ Mengaktifkan ini dapat membuka kualitas video yang lebih tinggi"</string>
<string name="revanced_disable_hdr_video_summary_on">Video HDR dinonaktifkan</string>
<string name="revanced_disable_hdr_video_summary_off">Video HDR diaktifkan</string>
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<string name="revanced_restore_old_video_quality_menu_title">Pulihkan menu kualitas video lawas</string>
<string name="revanced_restore_old_video_quality_menu_summary_on">Menu kualitas video lawas ditampilkan</string>
<string name="revanced_restore_old_video_quality_menu_summary_off">Menu kualitas video lawas tidak ditampilkan</string>
<patch id="video.quality.advancedVideoQualityMenuPatch">
<string name="revanced_advanced_video_quality_menu_title">Tampilkan menu kualitas video lanjutan</string>
<string name="revanced_advanced_video_quality_menu_summary_on">Menu kualitas video lanjutan ditampilkan</string>
<string name="revanced_advanced_video_quality_menu_summary_off">Menu kualitas video lanjutan tidak ditampilkan</string>
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
<string name="revanced_slide_to_seek_title">Aktifkan geser untuk mencari</string>

View File

@@ -177,8 +177,6 @@ Second \"item\" text"</string>
</patch>
<patch id="layout.theme.themePatch">
</patch>
<patch id="layout.theme.themeResourcePatch">
</patch>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch">
</patch>
<patch id="layout.thumbnails.alternativeThumbnailsPatch">
@@ -219,7 +217,7 @@ Second \"item\" text"</string>
</patch>
<patch id="video.hdr.disableHdrPatch">
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>

View File

@@ -301,13 +301,13 @@ Non sarai notificato di eventi imprevisti."</string>
<string name="revanced_hide_description_components_screen_title">Descrizione del video</string>
<string name="revanced_hide_description_components_screen_summary">Mostra o nascondi i componenti della descrizione del video</string>
<string name="revanced_hide_filter_bar_screen_title">Barra dei filtri</string>
<string name="revanced_hide_filter_bar_screen_summary">Mostra o nascondi la barra dei filtri nel feed, nella ricerca e nei video correlati</string>
<string name="revanced_hide_filter_bar_screen_summary">Nascondi o mostra la barra dei filtri nel feed, nei risultati di ricerca e nei video correlati</string>
<string name="revanced_hide_filter_bar_feed_in_feed_title">Nascondi nel feed</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_on">È nascosto nel feed</string>
<string name="revanced_hide_filter_bar_feed_in_feed_summary_off">È visibile nel feed</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Nascondi nella ricerca</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">È nascosto nella ricerca</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">È visibile nella ricerca</string>
<string name="revanced_hide_filter_bar_feed_in_search_title">Nascondi nei risultati di ricerca</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_on">Nascosto nei risultati di ricerca</string>
<string name="revanced_hide_filter_bar_feed_in_search_summary_off">Mostrato nei risultati di ricerca</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_title">Nascondi nei video correlati</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_on">Nascosto nei video correlati</string>
<string name="revanced_hide_filter_bar_feed_in_related_videos_summary_off">È visibile nei video correlati</string>
@@ -404,7 +404,7 @@ Questa funzione è disponibile solo per i dispositivi più vecchi"</string>
<string name="revanced_hide_self_sponsor_ads_title">Nascondi le schede autopromozionali</string>
<string name="revanced_hide_self_sponsor_ads_summary_on">Le schede autopromozionali sono nascoste</string>
<string name="revanced_hide_self_sponsor_ads_summary_off">Le schede autopromozionali sono visibili</string>
<string name="revanced_hide_products_banner_title">Nascondi banner per visualizzare i prodotti</string>
<string name="revanced_hide_products_banner_title">Nascondi il banner \"Visualizza prodotti\"</string>
<string name="revanced_hide_products_banner_summary_on">Il banner è nascosto</string>
<string name="revanced_hide_products_banner_summary_off">Il banner è visibile</string>
<string name="revanced_hide_end_screen_store_banner_title">Nascondi banner del negozio della schermata finale</string>
@@ -663,7 +663,7 @@ Se la modifica di questa impostazione non ha effetto, prova a passare alla modal
<string name="revanced_hide_player_flyout_video_quality_footer_summary_off">Il piè di pagina del menu di qualità video è visibile</string>
</patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<string name="revanced_hide_player_previous_next_buttons_title">Nascondi i pulsanti video precedenti &amp; successivi</string>
<string name="revanced_hide_player_previous_next_buttons_title">Nascondi i pulsanti Precedente e Successivo</string>
<string name="revanced_hide_player_previous_next_buttons_summary_on">I pulsanti sono nascosti</string>
<string name="revanced_hide_player_previous_next_buttons_summary_off">I pulsanti sono visibili</string>
<string name="revanced_hide_cast_button_title">Nascondi il pulsante Trasmetti</string>
@@ -1117,13 +1117,11 @@ Pronto per l'invio?"</string>
<string name="revanced_change_form_factor_entry_4">Automotive</string>
<string name="revanced_change_form_factor_user_dialog_message">"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"</string>
</patch>
<patch id="layout.spoofappversion.spoofAppVersionPatch">
@@ -1194,7 +1192,7 @@ Se in seguito verrà disattivato, si consiglia di cancellare i dati dell'app per
</patch>
<patch id="layout.miniplayer.miniplayerPatch">
<string name="revanced_miniplayer_screen_title">Miniplayer</string>
<string name="revanced_miniplayer_screen_summary">Cambia lo stile del miniplayer nell\'app</string>
<string name="revanced_miniplayer_screen_summary">Modifica lo stile del player minimizzato in-app</string>
<string name="revanced_miniplayer_type_title">Tipo di Miniplayer</string>
<string name="revanced_miniplayer_type_entry_0">Disattivato</string>
<string name="revanced_miniplayer_type_entry_1">Predefinito</string>
@@ -1247,8 +1245,6 @@ Scorrere per espandere o chiudere"</string>
<string name="revanced_gradient_loading_screen_title">Abilita la schermata di caricamento col gradiente</string>
<string name="revanced_gradient_loading_screen_summary_on">La schermata di caricamento avrà uno sfondo col gradiente</string>
<string name="revanced_gradient_loading_screen_summary_off">La schermata di caricamento avrà uno sfondo a tinta unita</string>
</patch>
<patch id="layout.theme.themeResourcePatch">
<string name="revanced_seekbar_custom_color_title">Abilita colore personalizzato della barra di avanzamento</string>
<string name="revanced_seekbar_custom_color_summary_on">Il colore personalizzato della barra di avanzamento è visibile</string>
<string name="revanced_seekbar_custom_color_summary_off">Il colore originale della barra di avanzamento è visibile</string>
@@ -1340,8 +1336,8 @@ Abilitare questa opzione può sbloccare qualità video più elevate"</string>
</patch>
<patch id="misc.links.openLinksExternallyPatch">
<string name="revanced_external_browser_title">Apri link nel browser</string>
<string name="revanced_external_browser_summary_on">Apertura dei link esternamente</string>
<string name="revanced_external_browser_summary_off">Apertura dei link nell\'app</string>
<string name="revanced_external_browser_summary_on">Apertura dei link nel browser esterno</string>
<string name="revanced_external_browser_summary_off">Apertura dei link nel browser in-app</string>
</patch>
<patch id="misc.privacy.removeTrackingQueryParameterPatch">
<string name="revanced_remove_tracking_query_parameter_title">Rimuovi il parametro di tracciamento della query</string>
@@ -1368,9 +1364,15 @@ Abilitare questa opzione può sbloccare qualità video più elevate"</string>
<string name="revanced_remember_video_quality_last_selected_summary_off">Le modifiche della qualità si applicano solo al video corrente</string>
<string name="revanced_video_quality_default_wifi_title">Qualità video predefinita sulla rete Wi-Fi</string>
<string name="revanced_video_quality_default_mobile_title">Qualità video predefinita sulla rete mobile</string>
<string name="revanced_remember_shorts_quality_last_selected_title">Ricorda le modifiche alla qualità di Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_on">Le modifiche della qualità si applicano a tutti gli Shorts</string>
<string name="revanced_remember_shorts_quality_last_selected_summary_off">Le modifiche della qualità si applicano solo allo Short corrente</string>
<string name="revanced_shorts_quality_default_wifi_title">Qualità predefinita di Shorts sulla rete Wi-Fi</string>
<string name="revanced_shorts_quality_default_mobile_title">Qualità predefinita di Shorts sulla rete mobile</string>
<string name="revanced_remember_video_quality_mobile">cellulare</string>
<string name="revanced_remember_video_quality_wifi">wifi</string>
<string name="revanced_remember_video_quality_toast">Modificato la qualità predefinita %1$s in: %2$s</string>
<string name="revanced_remember_video_quality_toast_shorts">Modificata la qualità Shorts %1$s in: %2$s</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Mostra il pulsante Velocità Video</string>
@@ -1401,10 +1403,10 @@ Abilitare questa opzione può sbloccare qualità video più elevate"</string>
<string name="revanced_disable_hdr_video_summary_on">I video in HDR sono disabilitati</string>
<string name="revanced_disable_hdr_video_summary_off">I video in HDR sono abilitati</string>
</patch>
<patch id="video.videoqualitymenu.restoreOldVideoQualityMenuResourcePatch">
<string name="revanced_restore_old_video_quality_menu_title">Ripristina il vecchio menu di qualità video</string>
<string name="revanced_restore_old_video_quality_menu_summary_on">Il vecchio menu di qualità video è visibile</string>
<string name="revanced_restore_old_video_quality_menu_summary_off">Il vecchio menu di qualità video non è visibile</string>
<patch id="video.quality.advancedVideoQualityMenuPatch">
<string name="revanced_advanced_video_quality_menu_title">Mostra il menu avanzato della qualità video</string>
<string name="revanced_advanced_video_quality_menu_summary_on">Viene mostrato il menu avanzato della qualità video</string>
<string name="revanced_advanced_video_quality_menu_summary_off">Il menu avanzato della qualità video non viene mostrato</string>
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
<string name="revanced_slide_to_seek_title">Abilita scorri per avanzare</string>

Some files were not shown because too many files have changed in this diff Show More