mirror of
https://github.com/revanced/revanced-patches.git
synced 2025-12-09 10:53:55 +01:00
Compare commits
50 Commits
v5.14.0-de
...
v5.16.0-de
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d9ccd73b5f | ||
|
|
5c5a1e4b8b | ||
|
|
66a2ee2416 | ||
|
|
d8c276cf96 | ||
|
|
d5845abd08 | ||
|
|
54eef22ce7 | ||
|
|
e287bdc59d | ||
|
|
20a82ef956 | ||
|
|
1e29da9e06 | ||
|
|
56e6a90a90 | ||
|
|
76d32e21c2 | ||
|
|
54a7afa540 | ||
|
|
ef86438bac | ||
|
|
0683cedac0 | ||
|
|
35753410aa | ||
|
|
df838ed91d | ||
|
|
8e494d26d4 | ||
|
|
7d834e5421 | ||
|
|
60a31cf4e1 | ||
|
|
edb8bd66bc | ||
|
|
04a170054e | ||
|
|
79e6349a69 | ||
|
|
bbf3a34a2f | ||
|
|
1db7c49514 | ||
|
|
ef0506a4f8 | ||
|
|
9b38da35ff | ||
|
|
afdb771066 | ||
|
|
1b2b536d2e | ||
|
|
f39e70c648 | ||
|
|
556acdd9c1 | ||
|
|
7adfc637dc | ||
|
|
9cc0c075ad | ||
|
|
ead11e7f46 | ||
|
|
e9bc201641 | ||
|
|
99baedf355 | ||
|
|
0338d0acd3 | ||
|
|
99879f6e0a | ||
|
|
f0c70de602 | ||
|
|
737ae07a06 | ||
|
|
2c51de59de | ||
|
|
df3dc1c0b2 | ||
|
|
074c948581 | ||
|
|
2a88b1f895 | ||
|
|
ee5c830df8 | ||
|
|
e63a4b31f3 | ||
|
|
8d0bca3b03 | ||
|
|
c162d65d5b | ||
|
|
67dcd091c4 | ||
|
|
ac5ce2d67f | ||
|
|
4b78d056fd |
2
.github/workflows/pull_strings.yml
vendored
2
.github/workflows/pull_strings.yml
vendored
@@ -2,7 +2,7 @@ name: Pull strings
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: "0 */6 * * *"
|
||||
- cron: "0 */12 * * *"
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
|
||||
138
CHANGELOG.md
138
CHANGELOG.md
@@ -1,3 +1,141 @@
|
||||
# [5.16.0-dev.2](https://github.com/ReVanced/revanced-patches/compare/v5.16.0-dev.1...v5.16.0-dev.2) (2025-03-26)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **Spotify:** Add `Unlock premium` patch ([#4644](https://github.com/ReVanced/revanced-patches/issues/4644)) ([f048c50](https://github.com/ReVanced/revanced-patches/commit/f048c50e56fc1f5a5c607860be4206ef83b528fe))
|
||||
|
||||
# [5.16.0-dev.1](https://github.com/ReVanced/revanced-patches/compare/v5.15.0...v5.16.0-dev.1) (2025-03-24)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **YouTube - Settings:** System navigation bar is located above the settings ui on Android 15+ ([f7497be](https://github.com/ReVanced/revanced-patches/commit/f7497be2c5e4abcde6eb55b84955124a28f55cae))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **YouTube - Comments:** Add `Hide AI Comments summary` ([#4634](https://github.com/ReVanced/revanced-patches/issues/4634)) ([e9b7f26](https://github.com/ReVanced/revanced-patches/commit/e9b7f263f739bd130f6ea79913851a52355977c5))
|
||||
* **YouTube - Video description:** Add `Hide AI-generated video summary` ([#4636](https://github.com/ReVanced/revanced-patches/issues/4636)) ([521fd48](https://github.com/ReVanced/revanced-patches/commit/521fd48602432ab436d8711c19d7130b2b05af12))
|
||||
|
||||
# [5.15.0](https://github.com/ReVanced/revanced-patches/compare/v5.14.0...v5.15.0) (2025-03-21)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **YouTube - Spoof app version:** Change oldest spoof target to 19.01.34 ([5012439](https://github.com/ReVanced/revanced-patches/commit/5012439a8e53b2a4ab5e85c47976e1ab28a51208))
|
||||
* **YouTube - Spoof app version:** Remove broken spoof targets that YouTube no longer supports ([#4610](https://github.com/ReVanced/revanced-patches/issues/4610)) ([883fbe7](https://github.com/ReVanced/revanced-patches/commit/883fbe71233c57cb1241e57c122b43f40722acc7))
|
||||
* **YouTube:** Do not show restart prompt more than once if setting change is canceled ([49797fe](https://github.com/ReVanced/revanced-patches/commit/49797fe8d0c4a0981ef621a31356c4315ae3777b))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **YouTube - SponsorBlock:** Add opacity setting to category segment colors ([#4582](https://github.com/ReVanced/revanced-patches/issues/4582)) ([6e8ffba](https://github.com/ReVanced/revanced-patches/commit/6e8ffbade9e03658f725622631e44dabf2995861))
|
||||
|
||||
# [5.15.0-dev.4](https://github.com/ReVanced/revanced-patches/compare/v5.15.0-dev.3...v5.15.0-dev.4) (2025-03-21)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **YouTube - Spoof app version:** Change oldest spoof target to 19.01.34 ([5012439](https://github.com/ReVanced/revanced-patches/commit/5012439a8e53b2a4ab5e85c47976e1ab28a51208))
|
||||
|
||||
# [5.15.0-dev.3](https://github.com/ReVanced/revanced-patches/compare/v5.15.0-dev.2...v5.15.0-dev.3) (2025-03-20)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **YouTube:** Do not show restart prompt more than once if setting change is canceled ([49797fe](https://github.com/ReVanced/revanced-patches/commit/49797fe8d0c4a0981ef621a31356c4315ae3777b))
|
||||
|
||||
# [5.15.0-dev.2](https://github.com/ReVanced/revanced-patches/compare/v5.15.0-dev.1...v5.15.0-dev.2) (2025-03-19)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **YouTube - Spoof app version:** Remove broken spoof targets that YouTube no longer supports ([#4610](https://github.com/ReVanced/revanced-patches/issues/4610)) ([883fbe7](https://github.com/ReVanced/revanced-patches/commit/883fbe71233c57cb1241e57c122b43f40722acc7))
|
||||
|
||||
# [5.15.0-dev.1](https://github.com/ReVanced/revanced-patches/compare/v5.14.0...v5.15.0-dev.1) (2025-03-19)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **YouTube - SponsorBlock:** Add opacity setting to category segment colors ([#4582](https://github.com/ReVanced/revanced-patches/issues/4582)) ([6e8ffba](https://github.com/ReVanced/revanced-patches/commit/6e8ffbade9e03658f725622631e44dabf2995861))
|
||||
|
||||
# [5.14.0](https://github.com/ReVanced/revanced-patches/compare/v5.13.0...v5.14.0) (2025-03-09)
|
||||
|
||||
|
||||
### 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))
|
||||
* **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))
|
||||
* **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))
|
||||
* **YouTube - Hide layout components:** Do not hide Movie/Courses start page content if 'Hide horizontal shelves' is enabled ([62a6164](https://github.com/ReVanced/revanced-patches/commit/62a6164b88b64200b517a5ba6b800d8214dbbad8))
|
||||
* **YouTube - Theme:** Resolve dark mode startup crash with Android 9.0 ([741c2d5](https://github.com/ReVanced/revanced-patches/commit/741c2d59406f5d602554bb3a3c0b8982f42848b4))
|
||||
* **YouTube:** Change language settings menu to use native language names ([#4568](https://github.com/ReVanced/revanced-patches/issues/4568)) ([6f3f8fd](https://github.com/ReVanced/revanced-patches/commit/6f3f8fdce05501e4fa4423c2170a916fbea3b199))
|
||||
* **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))
|
||||
|
||||
|
||||
### 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))
|
||||
* **Spotify:** Add `Spoof signature` patch ([#4576](https://github.com/ReVanced/revanced-patches/issues/4576)) ([3646c70](https://github.com/ReVanced/revanced-patches/commit/3646c70556b67a6b7ecf9b86869ebf03c3611333))
|
||||
* **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.14.0-dev.9](https://github.com/ReVanced/revanced-patches/compare/v5.14.0-dev.8...v5.14.0-dev.9) (2025-03-09)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **Spotify:** Add `Spoof signature` patch ([#4576](https://github.com/ReVanced/revanced-patches/issues/4576)) ([3646c70](https://github.com/ReVanced/revanced-patches/commit/3646c70556b67a6b7ecf9b86869ebf03c3611333))
|
||||
|
||||
# [5.14.0-dev.8](https://github.com/ReVanced/revanced-patches/compare/v5.14.0-dev.7...v5.14.0-dev.8) (2025-03-09)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **YouTube - Theme:** Resolve dark mode startup crash with Android 9.0 ([741c2d5](https://github.com/ReVanced/revanced-patches/commit/741c2d59406f5d602554bb3a3c0b8982f42848b4))
|
||||
|
||||
# [5.14.0-dev.7](https://github.com/ReVanced/revanced-patches/compare/v5.14.0-dev.6...v5.14.0-dev.7) (2025-03-08)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **YouTube:** Change language settings menu to use native language names ([#4568](https://github.com/ReVanced/revanced-patches/issues/4568)) ([6f3f8fd](https://github.com/ReVanced/revanced-patches/commit/6f3f8fdce05501e4fa4423c2170a916fbea3b199))
|
||||
|
||||
# [5.14.0-dev.6](https://github.com/ReVanced/revanced-patches/compare/v5.14.0-dev.5...v5.14.0-dev.6) (2025-03-07)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **YouTube - Hide layout components:** Do not hide Movie/Courses start page content if 'Hide horizontal shelves' is enabled ([62a6164](https://github.com/ReVanced/revanced-patches/commit/62a6164b88b64200b517a5ba6b800d8214dbbad8))
|
||||
|
||||
# [5.14.0-dev.5](https://github.com/ReVanced/revanced-patches/compare/v5.14.0-dev.4...v5.14.0-dev.5) (2025-03-06)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **Infinity for Reddit:** Add support for package name on IzzyOnDroid ([#4554](https://github.com/ReVanced/revanced-patches/issues/4554)) ([cf9f959](https://github.com/ReVanced/revanced-patches/commit/cf9f959923076c10a7f0a29f6ba277f5a055ec07))
|
||||
|
||||
# [5.14.0-dev.4](https://github.com/ReVanced/revanced-patches/compare/v5.14.0-dev.3...v5.14.0-dev.4) (2025-03-06)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **YouTube:** Combine `Restore old video quality menu` and `Remember video quality` into `Video quality` patch ([#4552](https://github.com/ReVanced/revanced-patches/issues/4552)) ([ee67b76](https://github.com/ReVanced/revanced-patches/commit/ee67b763d5c5947a5b1ef4420b1efa820ed6af83))
|
||||
|
||||
# [5.14.0-dev.3](https://github.com/ReVanced/revanced-patches/compare/v5.14.0-dev.2...v5.14.0-dev.3) (2025-03-06)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **Boost for reddit - Client spoof:** Use a different user agent to combat Reddit's API issues ([5d3c817](https://github.com/ReVanced/revanced-patches/commit/5d3c8175b34a3f6ae2732b25db0851773a8c000d))
|
||||
|
||||
# [5.14.0-dev.2](https://github.com/ReVanced/revanced-patches/compare/v5.14.0-dev.1...v5.14.0-dev.2) (2025-03-06)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **YouTube - Hide ads:** Hide new type of buttoned ad ([#4528](https://github.com/ReVanced/revanced-patches/issues/4528)) ([4387a7b](https://github.com/ReVanced/revanced-patches/commit/4387a7b131f49729e902e008bb4cec073635c040))
|
||||
|
||||
# [5.14.0-dev.1](https://github.com/ReVanced/revanced-patches/compare/v5.13.1-dev.1...v5.14.0-dev.1) (2025-03-06)
|
||||
|
||||
|
||||
|
||||
@@ -8,6 +8,9 @@ public enum AppLanguage {
|
||||
*/
|
||||
DEFAULT,
|
||||
|
||||
// Languages codes not included with YouTube, but are translated on Crowdin
|
||||
GA,
|
||||
|
||||
// Language codes found in locale_config.xml
|
||||
// All region specific variants have been removed.
|
||||
AF,
|
||||
|
||||
@@ -22,12 +22,23 @@ import app.revanced.extension.shared.settings.Setting;
|
||||
|
||||
@SuppressWarnings("deprecation")
|
||||
public abstract class AbstractPreferenceFragment extends PreferenceFragment {
|
||||
|
||||
/**
|
||||
* Indicates that if a preference changes,
|
||||
* to apply the change from the Setting to the UI component.
|
||||
*/
|
||||
public static boolean settingImportInProgress;
|
||||
|
||||
/**
|
||||
* Prevents recursive calls during preference <-> UI syncing from showing extra dialogs.
|
||||
*/
|
||||
private static boolean updatingPreference;
|
||||
|
||||
/**
|
||||
* Used to prevent showing reboot dialog, if user cancels a setting user dialog.
|
||||
*/
|
||||
private static boolean showingUserDialogMessage;
|
||||
|
||||
/**
|
||||
* Confirm and restart dialog button text and title.
|
||||
* Set by subclasses if Strings cannot be added as a resource.
|
||||
@@ -35,13 +46,13 @@ public abstract class AbstractPreferenceFragment extends PreferenceFragment {
|
||||
@Nullable
|
||||
protected static String restartDialogButtonText, restartDialogTitle, confirmDialogTitle;
|
||||
|
||||
/**
|
||||
* Used to prevent showing reboot dialog, if user cancels a setting user dialog.
|
||||
*/
|
||||
private boolean showingUserDialogMessage;
|
||||
|
||||
private final SharedPreferences.OnSharedPreferenceChangeListener listener = (sharedPreferences, str) -> {
|
||||
try {
|
||||
if (updatingPreference) {
|
||||
Logger.printDebug(() -> "Ignoring preference change as sync is in progress");
|
||||
return;
|
||||
}
|
||||
|
||||
Setting<?> setting = Setting.getSettingFromPath(Objects.requireNonNull(str));
|
||||
if (setting == null) {
|
||||
return;
|
||||
@@ -63,10 +74,13 @@ public abstract class AbstractPreferenceFragment extends PreferenceFragment {
|
||||
}
|
||||
}
|
||||
|
||||
updatingPreference = true;
|
||||
// Apply 'Setting <- Preference', unless during importing when it needs to be 'Setting -> Preference'.
|
||||
// Updating here can can cause a recursive call back into this same method.
|
||||
updatePreference(pref, setting, true, settingImportInProgress);
|
||||
// Update any other preference availability that may now be different.
|
||||
updateUIAvailability();
|
||||
updatingPreference = false;
|
||||
} catch (Exception ex) {
|
||||
Logger.printException(() -> "OnSharedPreferenceChangeListener failure", ex);
|
||||
}
|
||||
@@ -97,7 +111,9 @@ public abstract class AbstractPreferenceFragment extends PreferenceFragment {
|
||||
if (confirmDialogTitle == null) {
|
||||
confirmDialogTitle = str("revanced_settings_confirm_user_dialog_title");
|
||||
}
|
||||
|
||||
showingUserDialogMessage = true;
|
||||
|
||||
new AlertDialog.Builder(context)
|
||||
.setTitle(confirmDialogTitle)
|
||||
.setMessage(Objects.requireNonNull(setting.userDialogMessage).toString())
|
||||
@@ -141,14 +157,16 @@ public abstract class AbstractPreferenceFragment extends PreferenceFragment {
|
||||
* @return If the preference is currently set to the default value of the Setting.
|
||||
*/
|
||||
protected boolean prefIsSetToDefault(Preference pref, Setting<?> setting) {
|
||||
Object defaultValue = setting.defaultValue;
|
||||
if (pref instanceof SwitchPreference switchPref) {
|
||||
return switchPref.isChecked() == (Boolean) setting.defaultValue;
|
||||
return switchPref.isChecked() == (Boolean) defaultValue;
|
||||
}
|
||||
String defaultValueString = defaultValue.toString();
|
||||
if (pref instanceof EditTextPreference editPreference) {
|
||||
return editPreference.getText().equals(setting.defaultValue.toString());
|
||||
return editPreference.getText().equals(defaultValueString);
|
||||
}
|
||||
if (pref instanceof ListPreference listPref) {
|
||||
return listPref.getValue().equals(setting.defaultValue.toString());
|
||||
return listPref.getValue().equals(defaultValueString);
|
||||
}
|
||||
|
||||
throw new IllegalStateException("Must override method to handle "
|
||||
@@ -255,7 +273,7 @@ public abstract class AbstractPreferenceFragment extends PreferenceFragment {
|
||||
}
|
||||
}
|
||||
|
||||
public static void showRestartDialog(@NonNull final Context context) {
|
||||
public static void showRestartDialog(Context context) {
|
||||
Utils.verifyOnMainThread();
|
||||
if (restartDialogTitle == null) {
|
||||
restartDialogTitle = str("revanced_settings_restart_title");
|
||||
@@ -263,6 +281,7 @@ public abstract class AbstractPreferenceFragment extends PreferenceFragment {
|
||||
if (restartDialogButtonText == null) {
|
||||
restartDialogButtonText = str("revanced_settings_restart");
|
||||
}
|
||||
|
||||
new AlertDialog.Builder(context)
|
||||
.setMessage(restartDialogTitle)
|
||||
.setPositiveButton(restartDialogButtonText, (dialog, id)
|
||||
|
||||
@@ -12,6 +12,7 @@ import android.view.ViewGroup;
|
||||
*/
|
||||
@SuppressWarnings({"unused", "deprecation"})
|
||||
public class NoTitlePreferenceCategory extends PreferenceCategory {
|
||||
|
||||
public NoTitlePreferenceCategory(Context context, AttributeSet attrs) {
|
||||
super(context, attrs);
|
||||
}
|
||||
@@ -27,8 +28,27 @@ public class NoTitlePreferenceCategory extends PreferenceCategory {
|
||||
@Override
|
||||
@SuppressLint("MissingSuperCall")
|
||||
protected View onCreateView(ViewGroup parent) {
|
||||
// Return an empty, zero-height view to eliminate spacing
|
||||
// Return an zero-height view to eliminate empty title space.
|
||||
return new View(getContext());
|
||||
}
|
||||
|
||||
@Override
|
||||
public CharSequence getTitle() {
|
||||
// Title can be used for sorting. Return the first sub preference title.
|
||||
if (getPreferenceCount() > 0) {
|
||||
return getPreference(0).getTitle();
|
||||
}
|
||||
|
||||
return super.getTitle();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getTitleRes() {
|
||||
if (getPreferenceCount() > 0) {
|
||||
return getPreference(0).getTitleRes();
|
||||
}
|
||||
|
||||
return super.getTitleRes();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package app.revanced.extension.shared.settings.preference;
|
||||
|
||||
import static app.revanced.extension.shared.StringRef.str;
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.content.Context;
|
||||
import android.os.Bundle;
|
||||
@@ -8,17 +10,23 @@ import android.util.AttributeSet;
|
||||
import android.widget.Button;
|
||||
import android.widget.EditText;
|
||||
|
||||
import app.revanced.extension.shared.Utils;
|
||||
import app.revanced.extension.shared.settings.Setting;
|
||||
import app.revanced.extension.shared.Logger;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
import static app.revanced.extension.shared.StringRef.str;
|
||||
import app.revanced.extension.shared.Logger;
|
||||
import app.revanced.extension.shared.Utils;
|
||||
import app.revanced.extension.shared.settings.Setting;
|
||||
|
||||
@SuppressWarnings({"unused", "deprecation"})
|
||||
public class ResettableEditTextPreference extends EditTextPreference {
|
||||
|
||||
/**
|
||||
* Setting to reset.
|
||||
*/
|
||||
@Nullable
|
||||
private Setting<?> setting;
|
||||
|
||||
public ResettableEditTextPreference(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
|
||||
super(context, attrs, defStyleAttr, defStyleRes);
|
||||
}
|
||||
@@ -32,12 +40,22 @@ public class ResettableEditTextPreference extends EditTextPreference {
|
||||
super(context);
|
||||
}
|
||||
|
||||
public void setSetting(@Nullable Setting<?> setting) {
|
||||
this.setting = setting;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onPrepareDialogBuilder(AlertDialog.Builder builder) {
|
||||
super.onPrepareDialogBuilder(builder);
|
||||
Utils.setEditTextDialogTheme(builder);
|
||||
|
||||
Setting<?> setting = Setting.getSettingFromPath(getKey());
|
||||
if (setting == null) {
|
||||
String key = getKey();
|
||||
if (key != null) {
|
||||
setting = Setting.getSettingFromPath(key);
|
||||
}
|
||||
}
|
||||
|
||||
if (setting != null) {
|
||||
builder.setNeutralButton(str("revanced_settings_reset"), null);
|
||||
}
|
||||
@@ -54,8 +72,7 @@ public class ResettableEditTextPreference extends EditTextPreference {
|
||||
}
|
||||
button.setOnClickListener(v -> {
|
||||
try {
|
||||
Setting<?> setting = Objects.requireNonNull(Setting.getSettingFromPath(getKey()));
|
||||
String defaultStringValue = setting.defaultValue.toString();
|
||||
String defaultStringValue = Objects.requireNonNull(setting).defaultValue.toString();
|
||||
EditText editText = getEditText();
|
||||
editText.setText(defaultStringValue);
|
||||
editText.setSelection(defaultStringValue.length()); // move cursor to end of text
|
||||
|
||||
3
extensions/spotify/build.gradle.kts
Normal file
3
extensions/spotify/build.gradle.kts
Normal file
@@ -0,0 +1,3 @@
|
||||
dependencies {
|
||||
compileOnly(project(":extensions:spotify:stub"))
|
||||
}
|
||||
1
extensions/spotify/src/main/AndroidManifest.xml
Normal file
1
extensions/spotify/src/main/AndroidManifest.xml
Normal file
@@ -0,0 +1 @@
|
||||
<manifest/>
|
||||
17
extensions/spotify/stub/build.gradle.kts
Normal file
17
extensions/spotify/stub/build.gradle.kts
Normal file
@@ -0,0 +1,17 @@
|
||||
plugins {
|
||||
id(libs.plugins.android.library.get().pluginId)
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "app.revanced.extension"
|
||||
compileSdk = 34
|
||||
|
||||
defaultConfig {
|
||||
minSdk = 26
|
||||
}
|
||||
|
||||
compileOptions {
|
||||
sourceCompatibility = JavaVersion.VERSION_17
|
||||
targetCompatibility = JavaVersion.VERSION_17
|
||||
}
|
||||
}
|
||||
1
extensions/spotify/stub/src/main/AndroidManifest.xml
Normal file
1
extensions/spotify/stub/src/main/AndroidManifest.xml
Normal file
@@ -0,0 +1 @@
|
||||
<manifest/>
|
||||
@@ -0,0 +1,5 @@
|
||||
package com.spotify.remoteconfig.internal;
|
||||
|
||||
public final class AccountAttribute {
|
||||
public Object value_;
|
||||
}
|
||||
@@ -21,7 +21,6 @@ import java.util.Objects;
|
||||
import app.revanced.extension.shared.Logger;
|
||||
import app.revanced.extension.shared.Utils;
|
||||
import app.revanced.extension.youtube.patches.components.ReturnYouTubeDislikeFilterPatch;
|
||||
import app.revanced.extension.youtube.patches.spoof.SpoofAppVersionPatch;
|
||||
import app.revanced.extension.youtube.returnyoutubedislike.ReturnYouTubeDislike;
|
||||
import app.revanced.extension.youtube.returnyoutubedislike.requests.ReturnYouTubeDislikeApi;
|
||||
import app.revanced.extension.youtube.settings.Settings;
|
||||
@@ -47,9 +46,6 @@ import app.revanced.extension.youtube.shared.PlayerType;
|
||||
@SuppressWarnings("unused")
|
||||
public class ReturnYouTubeDislikePatch {
|
||||
|
||||
public static final boolean IS_SPOOFING_TO_NON_LITHO_SHORTS_PLAYER =
|
||||
SpoofAppVersionPatch.isSpoofingToLessThan("18.34.00");
|
||||
|
||||
/**
|
||||
* RYD data for the current video on screen.
|
||||
*/
|
||||
@@ -347,137 +343,6 @@ public class ReturnYouTubeDislikePatch {
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Non litho Shorts player.
|
||||
//
|
||||
|
||||
/**
|
||||
* Replacement text to use for "Dislikes" while RYD is fetching.
|
||||
*/
|
||||
private static final Spannable SHORTS_LOADING_SPAN = new SpannableString("-");
|
||||
|
||||
/**
|
||||
* Dislikes TextViews used by Shorts.
|
||||
*
|
||||
* Multiple TextViews are loaded at once (for the prior and next videos to swipe to).
|
||||
* Keep track of all of them, and later pick out the correct one based on their on screen position.
|
||||
*/
|
||||
private static final List<WeakReference<TextView>> shortsTextViewRefs = new ArrayList<>();
|
||||
|
||||
private static void clearRemovedShortsTextViews() {
|
||||
shortsTextViewRefs.removeIf(ref -> ref.get() == null);
|
||||
}
|
||||
|
||||
/**
|
||||
* Injection point. Called when a Shorts dislike is updated. Always on main thread.
|
||||
* Handles update asynchronously, otherwise Shorts video will be frozen while the UI thread is blocked.
|
||||
*
|
||||
* @return if RYD is enabled and the TextView was updated.
|
||||
*/
|
||||
public static boolean setShortsDislikes(@NonNull View likeDislikeView) {
|
||||
try {
|
||||
if (!Settings.RYD_ENABLED.get()) {
|
||||
return false;
|
||||
}
|
||||
if (!Settings.RYD_SHORTS.get() || Settings.HIDE_SHORTS_DISLIKE_BUTTON.get()) {
|
||||
// Must clear the data here, in case a new video was loaded while PlayerType
|
||||
// suggested the video was not a short (can happen when spoofing to an old app version).
|
||||
clearData();
|
||||
return false;
|
||||
}
|
||||
Logger.printDebug(() -> "setShortsDislikes");
|
||||
|
||||
TextView textView = (TextView) likeDislikeView;
|
||||
textView.setText(SHORTS_LOADING_SPAN); // Change 'Dislike' text to the loading text.
|
||||
shortsTextViewRefs.add(new WeakReference<>(textView));
|
||||
|
||||
if (likeDislikeView.isSelected() && isShortTextViewOnScreen(textView)) {
|
||||
Logger.printDebug(() -> "Shorts dislike is already selected");
|
||||
ReturnYouTubeDislike videoData = currentVideoData;
|
||||
if (videoData != null) videoData.setUserVote(Vote.DISLIKE);
|
||||
}
|
||||
|
||||
// For the first short played, the Shorts dislike hook is called after the video id hook.
|
||||
// But for most other times this hook is called before the video id (which is not ideal).
|
||||
// Must update the TextViews here, and also after the videoId changes.
|
||||
updateOnScreenShortsTextViews(false);
|
||||
|
||||
return true;
|
||||
} catch (Exception ex) {
|
||||
Logger.printException(() -> "setShortsDislikes failure", ex);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param forceUpdate if false, then only update the 'loading text views.
|
||||
* If true, update all on screen text views.
|
||||
*/
|
||||
private static void updateOnScreenShortsTextViews(boolean forceUpdate) {
|
||||
try {
|
||||
clearRemovedShortsTextViews();
|
||||
if (shortsTextViewRefs.isEmpty()) {
|
||||
return;
|
||||
}
|
||||
ReturnYouTubeDislike videoData = currentVideoData;
|
||||
if (videoData == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
Logger.printDebug(() -> "updateShortsTextViews");
|
||||
|
||||
Runnable update = () -> {
|
||||
Spanned shortsDislikesSpan = videoData.getDislikeSpanForShort(SHORTS_LOADING_SPAN);
|
||||
Utils.runOnMainThreadNowOrLater(() -> {
|
||||
String videoId = videoData.getVideoId();
|
||||
if (!videoId.equals(VideoInformation.getVideoId())) {
|
||||
// User swiped to new video before fetch completed
|
||||
Logger.printDebug(() -> "Ignoring stale dislikes data for short: " + videoId);
|
||||
return;
|
||||
}
|
||||
|
||||
// Update text views that appear to be visible on screen.
|
||||
// Only 1 will be the actual textview for the current Short,
|
||||
// but discarded and not yet garbage collected views can remain.
|
||||
// So must set the dislike span on all views that match.
|
||||
for (WeakReference<TextView> textViewRef : shortsTextViewRefs) {
|
||||
TextView textView = textViewRef.get();
|
||||
if (textView == null) {
|
||||
continue;
|
||||
}
|
||||
if (isShortTextViewOnScreen(textView)
|
||||
&& (forceUpdate || textView.getText().toString().equals(SHORTS_LOADING_SPAN.toString()))) {
|
||||
Logger.printDebug(() -> "Setting Shorts TextView to: " + shortsDislikesSpan);
|
||||
textView.setText(shortsDislikesSpan);
|
||||
}
|
||||
}
|
||||
});
|
||||
};
|
||||
if (videoData.fetchCompleted()) {
|
||||
update.run(); // Network call is completed, no need to wait on background thread.
|
||||
} else {
|
||||
Utils.runOnBackgroundThread(update);
|
||||
}
|
||||
} catch (Exception ex) {
|
||||
Logger.printException(() -> "updateOnScreenShortsTextViews failure", ex);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a view is within the screen bounds.
|
||||
*/
|
||||
private static boolean isShortTextViewOnScreen(@NonNull View view) {
|
||||
final int[] location = new int[2];
|
||||
view.getLocationInWindow(location);
|
||||
if (location[0] <= 0 && location[1] <= 0) { // Lower bound
|
||||
return false;
|
||||
}
|
||||
Rect windowRect = new Rect();
|
||||
view.getWindowVisibleDisplayFrame(windowRect); // Upper bound
|
||||
return location[0] < windowRect.width() && location[1] < windowRect.height();
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Video Id and voting hooks (all players).
|
||||
//
|
||||
@@ -503,8 +368,7 @@ public class ReturnYouTubeDislikePatch {
|
||||
if (videoIdIsShort && (!isShortAndOpeningOrPlaying || !Settings.RYD_SHORTS.get())) {
|
||||
return;
|
||||
}
|
||||
final boolean waitForFetchToComplete = !IS_SPOOFING_TO_NON_LITHO_SHORTS_PLAYER
|
||||
&& videoIdIsShort && !lastPlayerResponseWasShort;
|
||||
final boolean waitForFetchToComplete = videoIdIsShort && !lastPlayerResponseWasShort;
|
||||
|
||||
Logger.printDebug(() -> "Prefetching RYD for video: " + videoId);
|
||||
ReturnYouTubeDislike fetch = ReturnYouTubeDislike.getFetchForVideoId(videoId);
|
||||
@@ -557,12 +421,6 @@ public class ReturnYouTubeDislikePatch {
|
||||
data.setVideoIdIsShort(true);
|
||||
}
|
||||
currentVideoData = data;
|
||||
|
||||
// Current video id hook can be called out of order with the non litho Shorts text view hook.
|
||||
// Must manually update again here.
|
||||
if (isNoneHiddenOrSlidingMinimized) {
|
||||
updateOnScreenShortsTextViews(true);
|
||||
}
|
||||
} catch (Exception ex) {
|
||||
Logger.printException(() -> "newVideoLoaded failure", ex);
|
||||
}
|
||||
|
||||
@@ -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.
|
||||
);
|
||||
|
||||
@@ -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"
|
||||
));
|
||||
}
|
||||
@@ -12,10 +12,12 @@ final class CommentsFilter extends Filter {
|
||||
|
||||
private final StringFilterGroup commentComposer;
|
||||
private final ByteArrayFilterGroup emojiPickerBufferGroup;
|
||||
private final StringFilterGroup filterChipBar;
|
||||
private final ByteArrayFilterGroup aiCommentsSummary;
|
||||
|
||||
public CommentsFilter() {
|
||||
var chatSummary = new StringFilterGroup(
|
||||
Settings.HIDE_COMMENTS_CHAT_SUMMARY,
|
||||
Settings.HIDE_COMMENTS_AI_CHAT_SUMMARY,
|
||||
"live_chat_summary_banner.eml"
|
||||
);
|
||||
|
||||
@@ -58,6 +60,16 @@ final class CommentsFilter extends Filter {
|
||||
"id.comment.quick_emoji.button"
|
||||
);
|
||||
|
||||
filterChipBar = new StringFilterGroup(
|
||||
Settings.HIDE_COMMENTS_AI_SUMMARY,
|
||||
"filter_chip_bar.eml"
|
||||
);
|
||||
|
||||
aiCommentsSummary = new ByteArrayFilterGroup(
|
||||
null,
|
||||
"yt_fill_spark_"
|
||||
);
|
||||
|
||||
addPathCallbacks(
|
||||
chatSummary,
|
||||
commentsByMembers,
|
||||
@@ -65,7 +77,8 @@ final class CommentsFilter extends Filter {
|
||||
createAShort,
|
||||
previewComment,
|
||||
thanksButton,
|
||||
commentComposer
|
||||
commentComposer,
|
||||
filterChipBar
|
||||
);
|
||||
}
|
||||
|
||||
@@ -84,6 +97,13 @@ final class CommentsFilter extends Filter {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (matchedGroup == filterChipBar) {
|
||||
if (aiCommentsSummary.check(protobufBufferArray).isFiltered()) {
|
||||
return super.isFiltered(identifier, path, protobufBufferArray, matchedGroup, contentType, contentIndex);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
return super.isFiltered(identifier, path, protobufBufferArray, matchedGroup, contentType, contentIndex);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,6 +23,11 @@ final class DescriptionComponentsFilter extends Filter {
|
||||
"metadata"
|
||||
);
|
||||
|
||||
final StringFilterGroup aiGeneratedVideoSummarySection = new StringFilterGroup(
|
||||
Settings.HIDE_AI_GENERATED_VIDEO_SUMMARY_SECTION,
|
||||
"cell_expandable_metadata.eml"
|
||||
);
|
||||
|
||||
final StringFilterGroup attributesSection = new StringFilterGroup(
|
||||
Settings.HIDE_ATTRIBUTES_SECTION,
|
||||
"gaming_section",
|
||||
@@ -67,6 +72,7 @@ final class DescriptionComponentsFilter extends Filter {
|
||||
);
|
||||
|
||||
addPathCallbacks(
|
||||
aiGeneratedVideoSummarySection,
|
||||
attributesSection,
|
||||
infoCardsSection,
|
||||
howThisWasMadeSection,
|
||||
|
||||
@@ -462,6 +462,12 @@ public final class LayoutComponentsFilter extends Filter {
|
||||
return true;
|
||||
}
|
||||
|
||||
// Do not hide if the navigation back button is visible,
|
||||
// otherwise the content shelves in the YouTube Movie/Courses pages is hidden.
|
||||
if (NavigationBar.isBackButtonVisible()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// Check navigation button last.
|
||||
// Only filter if the library tab is not selected.
|
||||
// This check is important as the shelf layout is used for the library tab playlists.
|
||||
|
||||
@@ -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
|
||||
@@ -37,7 +37,6 @@ import java.util.concurrent.*;
|
||||
import app.revanced.extension.shared.Logger;
|
||||
import app.revanced.extension.shared.Utils;
|
||||
import app.revanced.extension.youtube.ThemeHelper;
|
||||
import app.revanced.extension.youtube.patches.spoof.SpoofAppVersionPatch;
|
||||
import app.revanced.extension.youtube.returnyoutubedislike.requests.RYDVoteData;
|
||||
import app.revanced.extension.youtube.returnyoutubedislike.requests.ReturnYouTubeDislikeApi;
|
||||
import app.revanced.extension.youtube.settings.Settings;
|
||||
@@ -87,9 +86,6 @@ public class ReturnYouTubeDislike {
|
||||
*/
|
||||
private static final char MIDDLE_SEPARATOR_CHARACTER = '◎'; // 'bullseye'
|
||||
|
||||
private static final boolean IS_SPOOFING_TO_OLD_SEPARATOR_COLOR
|
||||
= SpoofAppVersionPatch.isSpoofingToLessThan("18.10.00");
|
||||
|
||||
/**
|
||||
* Cached lookup of all video ids.
|
||||
*/
|
||||
@@ -184,17 +180,8 @@ public class ReturnYouTubeDislike {
|
||||
* Color of the left and middle separator, based on the color of the right separator.
|
||||
* It's unknown where YT gets the color from, and the values here are approximated by hand.
|
||||
* Ideally, this would be the actual color YT uses at runtime.
|
||||
*
|
||||
* Older versions before the 'Me' library tab use a slightly different color.
|
||||
* If spoofing was previously used and is now turned off,
|
||||
* or an old version was recently upgraded then the old colors are sometimes still used.
|
||||
*/
|
||||
private static int getSeparatorColor() {
|
||||
if (IS_SPOOFING_TO_OLD_SEPARATOR_COLOR) {
|
||||
return ThemeHelper.isDarkTheme()
|
||||
? 0x29AAAAAA // transparent dark gray
|
||||
: 0xFFD9D9D9; // light gray
|
||||
}
|
||||
return ThemeHelper.isDarkTheme()
|
||||
? 0x33FFFFFF
|
||||
: 0xFFD9D9D9;
|
||||
|
||||
@@ -3,7 +3,6 @@ package app.revanced.extension.youtube.settings;
|
||||
import static java.lang.Boolean.FALSE;
|
||||
import static java.lang.Boolean.TRUE;
|
||||
import static app.revanced.extension.shared.settings.Setting.Availability;
|
||||
import static app.revanced.extension.shared.settings.Setting.migrateFromOldPreferences;
|
||||
import static app.revanced.extension.shared.settings.Setting.migrateOldSettingToNew;
|
||||
import static app.revanced.extension.shared.settings.Setting.parent;
|
||||
import static app.revanced.extension.shared.settings.Setting.parentsAny;
|
||||
@@ -21,7 +20,6 @@ import static app.revanced.extension.youtube.patches.MiniplayerPatch.MiniplayerT
|
||||
import static app.revanced.extension.youtube.patches.MiniplayerPatch.MiniplayerType.MODERN_4;
|
||||
import static app.revanced.extension.youtube.patches.OpenShortsInRegularPlayerPatch.ShortsPlayerType;
|
||||
import static app.revanced.extension.youtube.patches.SeekbarThumbnailsPatch.SeekbarThumbnailsHighQualityAvailability;
|
||||
import static app.revanced.extension.youtube.patches.VersionCheckPatch.IS_19_17_OR_GREATER;
|
||||
import static app.revanced.extension.youtube.sponsorblock.objects.CategoryBehaviour.IGNORE;
|
||||
import static app.revanced.extension.youtube.sponsorblock.objects.CategoryBehaviour.MANUAL_SKIP;
|
||||
import static app.revanced.extension.youtube.sponsorblock.objects.CategoryBehaviour.SKIP_AUTOMATICALLY;
|
||||
@@ -38,7 +36,6 @@ import app.revanced.extension.shared.settings.IntegerSetting;
|
||||
import app.revanced.extension.shared.settings.LongSetting;
|
||||
import app.revanced.extension.shared.settings.Setting;
|
||||
import app.revanced.extension.shared.settings.StringSetting;
|
||||
import app.revanced.extension.shared.settings.preference.SharedPrefCategory;
|
||||
import app.revanced.extension.youtube.patches.AlternativeThumbnailsPatch.DeArrowAvailability;
|
||||
import app.revanced.extension.youtube.patches.AlternativeThumbnailsPatch.StillImagesAvailability;
|
||||
import app.revanced.extension.youtube.patches.AlternativeThumbnailsPatch.ThumbnailOption;
|
||||
@@ -47,14 +44,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 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 RESTORE_OLD_VIDEO_QUALITY_MENU = new BooleanSetting("revanced_restore_old_video_quality_menu", TRUE);
|
||||
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,7 +168,8 @@ public class Settings extends BaseSettings {
|
||||
public static final StringSetting EXTERNAL_DOWNLOADER_PACKAGE_NAME = new StringSetting("revanced_external_downloader_name",
|
||||
"org.schabi.newpipe" /* NewPipe */, parentsAny(EXTERNAL_DOWNLOADER, EXTERNAL_DOWNLOADER_ACTION_BUTTON));
|
||||
// Comments
|
||||
public static final BooleanSetting HIDE_COMMENTS_CHAT_SUMMARY = new BooleanSetting("revanced_hide_comments_chat_summary", FALSE);
|
||||
public static final BooleanSetting HIDE_COMMENTS_AI_CHAT_SUMMARY = new BooleanSetting("revanced_hide_comments_ai_chat_summary", FALSE);
|
||||
public static final BooleanSetting HIDE_COMMENTS_AI_SUMMARY = new BooleanSetting("revanced_hide_comments_ai_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);
|
||||
@@ -179,6 +177,7 @@ public class Settings extends BaseSettings {
|
||||
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);
|
||||
// Description
|
||||
public static final BooleanSetting HIDE_AI_GENERATED_VIDEO_SUMMARY_SECTION = new BooleanSetting("revanced_hide_ai_generated_video_summary_section", FALSE);
|
||||
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);
|
||||
public static final BooleanSetting HIDE_HOW_THIS_WAS_MADE_SECTION = new BooleanSetting("revanced_hide_how_this_was_made_section", FALSE);
|
||||
@@ -221,7 +220,7 @@ public class Settings extends BaseSettings {
|
||||
public static final BooleanSetting SPOOF_APP_VERSION = new BooleanSetting("revanced_spoof_app_version", FALSE, true, "revanced_spoof_app_version_user_dialog_message");
|
||||
public static final BooleanSetting WIDE_SEARCHBAR = new BooleanSetting("revanced_wide_searchbar", FALSE, true);
|
||||
public static final EnumSetting<StartPage> CHANGE_START_PAGE = new EnumSetting<>("revanced_change_start_page", StartPage.DEFAULT, true);
|
||||
public static final StringSetting SPOOF_APP_VERSION_TARGET = new StringSetting("revanced_spoof_app_version_target", IS_19_17_OR_GREATER ? "19.26.42" : "17.33.42", true, parent(SPOOF_APP_VERSION));
|
||||
public static final StringSetting SPOOF_APP_VERSION_TARGET = new StringSetting("revanced_spoof_app_version_target", "19.01.34", true, parent(SPOOF_APP_VERSION));
|
||||
// Custom filter
|
||||
public static final BooleanSetting CUSTOM_FILTER = new BooleanSetting("revanced_custom_filter", FALSE);
|
||||
public static final StringSetting CUSTOM_FILTER_STRINGS = new StringSetting("revanced_custom_filter_strings", "", true, parent(CUSTOM_FILTER));
|
||||
@@ -365,52 +364,54 @@ public class Settings extends BaseSettings {
|
||||
public static final BooleanSetting SB_SEEN_GUIDELINES = new BooleanSetting("sb_seen_guidelines", FALSE, false, false);
|
||||
public static final StringSetting SB_CATEGORY_SPONSOR = new StringSetting("sb_sponsor", SKIP_AUTOMATICALLY_ONCE.reVancedKeyValue);
|
||||
public static final StringSetting SB_CATEGORY_SPONSOR_COLOR = new StringSetting("sb_sponsor_color", "#00D400");
|
||||
public static final FloatSetting SB_CATEGORY_SPONSOR_OPACITY = new FloatSetting("sb_sponsor_opacity", 0.8f);
|
||||
public static final StringSetting SB_CATEGORY_SELF_PROMO = new StringSetting("sb_selfpromo", MANUAL_SKIP.reVancedKeyValue);
|
||||
public static final StringSetting SB_CATEGORY_SELF_PROMO_COLOR = new StringSetting("sb_selfpromo_color", "#FFFF00");
|
||||
public static final FloatSetting SB_CATEGORY_SELF_PROMO_OPACITY = new FloatSetting("sb_selfpromo_opacity", 0.8f);
|
||||
public static final StringSetting SB_CATEGORY_INTERACTION = new StringSetting("sb_interaction", MANUAL_SKIP.reVancedKeyValue);
|
||||
public static final StringSetting SB_CATEGORY_INTERACTION_COLOR = new StringSetting("sb_interaction_color", "#CC00FF");
|
||||
public static final FloatSetting SB_CATEGORY_INTERACTION_OPACITY = new FloatSetting("sb_interaction_opacity", 0.8f);
|
||||
public static final StringSetting SB_CATEGORY_HIGHLIGHT = new StringSetting("sb_highlight", MANUAL_SKIP.reVancedKeyValue);
|
||||
public static final StringSetting SB_CATEGORY_HIGHLIGHT_COLOR = new StringSetting("sb_highlight_color", "#FF1684");
|
||||
public static final FloatSetting SB_CATEGORY_HIGHLIGHT_OPACITY = new FloatSetting("sb_highlight_opacity", 0.8f);
|
||||
public static final StringSetting SB_CATEGORY_INTRO = new StringSetting("sb_intro", MANUAL_SKIP.reVancedKeyValue);
|
||||
public static final StringSetting SB_CATEGORY_INTRO_COLOR = new StringSetting("sb_intro_color", "#00FFFF");
|
||||
public static final FloatSetting SB_CATEGORY_INTRO_OPACITY = new FloatSetting("sb_intro_opacity", 0.8f);
|
||||
public static final StringSetting SB_CATEGORY_OUTRO = new StringSetting("sb_outro", MANUAL_SKIP.reVancedKeyValue);
|
||||
public static final StringSetting SB_CATEGORY_OUTRO_COLOR = new StringSetting("sb_outro_color", "#0202ED");
|
||||
public static final FloatSetting SB_CATEGORY_OUTRO_OPACITY = new FloatSetting("sb_outro_opacity", 0.8f);
|
||||
public static final StringSetting SB_CATEGORY_PREVIEW = new StringSetting("sb_preview", IGNORE.reVancedKeyValue);
|
||||
public static final StringSetting SB_CATEGORY_PREVIEW_COLOR = new StringSetting("sb_preview_color", "#008FD6");
|
||||
public static final FloatSetting SB_CATEGORY_PREVIEW_OPACITY = new FloatSetting("sb_preview_opacity", 0.8f);
|
||||
public static final StringSetting SB_CATEGORY_FILLER = new StringSetting("sb_filler", IGNORE.reVancedKeyValue);
|
||||
public static final StringSetting SB_CATEGORY_FILLER_COLOR = new StringSetting("sb_filler_color", "#7300FF");
|
||||
public static final FloatSetting SB_CATEGORY_FILLER_OPACITY = new FloatSetting("sb_filler_opacity", 0.8f);
|
||||
public static final StringSetting SB_CATEGORY_MUSIC_OFFTOPIC = new StringSetting("sb_music_offtopic", MANUAL_SKIP.reVancedKeyValue);
|
||||
public static final StringSetting SB_CATEGORY_MUSIC_OFFTOPIC_COLOR = new StringSetting("sb_music_offtopic_color", "#FF9900");
|
||||
public static final FloatSetting SB_CATEGORY_MUSIC_OFFTOPIC_OPACITY = new FloatSetting("sb_music_offtopic_opacity", 0.8f);
|
||||
public static final StringSetting SB_CATEGORY_UNSUBMITTED = new StringSetting("sb_unsubmitted", SKIP_AUTOMATICALLY.reVancedKeyValue);
|
||||
public static final StringSetting SB_CATEGORY_UNSUBMITTED_COLOR = new StringSetting("sb_unsubmitted_color", "#FFFFFF");
|
||||
public static final FloatSetting SB_CATEGORY_UNSUBMITTED_OPACITY = new FloatSetting("sb_unsubmitted_opacity", 1.0f);
|
||||
|
||||
// Deprecated migrations
|
||||
private static final StringSetting DEPRECATED_SB_UUID_OLD_MIGRATION_SETTING = new StringSetting("uuid", ""); // Delete sometime in 2024
|
||||
private static final BooleanSetting DEPRECATED_HIDE_PLAYER_BUTTONS = new BooleanSetting("revanced_hide_player_buttons", FALSE, true);
|
||||
private static final BooleanSetting DEPRECATED_HIDE_PLAYER_FLYOUT_VIDEO_QUALITY_FOOTER = new BooleanSetting("revanced_hide_video_quality_menu_footer", FALSE);
|
||||
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
|
||||
|
||||
// Do _not_ delete this SB private user id migration property until sometime in early 2025.
|
||||
// This is the only setting that cannot be reconfigured if lost,
|
||||
// and more time should be given for users who rarely upgrade.
|
||||
SharedPrefCategory sbPrefs = new SharedPrefCategory("sponsor-block");
|
||||
// Remove the "sb_" prefix, as old settings are saved without it.
|
||||
String key = DEPRECATED_SB_UUID_OLD_MIGRATION_SETTING.key.substring(3);
|
||||
migrateFromOldPreferences(sbPrefs, DEPRECATED_SB_UUID_OLD_MIGRATION_SETTING, key);
|
||||
|
||||
migrateOldSettingToNew(DEPRECATED_SB_UUID_OLD_MIGRATION_SETTING, SB_PRIVATE_USER_ID);
|
||||
|
||||
migrateOldSettingToNew(DEPRECATED_HIDE_PLAYER_BUTTONS, HIDE_PLAYER_PREVIOUS_NEXT_BUTTONS);
|
||||
|
||||
migrateOldSettingToNew(DEPRECATED_HIDE_PLAYER_FLYOUT_VIDEO_QUALITY_FOOTER, HIDE_PLAYER_FLYOUT_VIDEO_QUALITY_FOOTER);
|
||||
|
||||
migrateOldSettingToNew(DEPRECATED_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) {
|
||||
@@ -446,6 +447,12 @@ public class Settings extends BaseSettings {
|
||||
DEPRECATED_SWIPE_OVERLAY_BACKGROUND_ALPHA.resetToDefault();
|
||||
}
|
||||
|
||||
// Old spoof versions that no longer work.
|
||||
if (SPOOF_APP_VERSION_TARGET.get().compareTo(SPOOF_APP_VERSION_TARGET.defaultValue) < 0) {
|
||||
Logger.printInfo(() -> "Resetting spoof app version target");
|
||||
SPOOF_APP_VERSION_TARGET.resetToDefault();
|
||||
}
|
||||
|
||||
// endregion
|
||||
|
||||
// region SB import/export callbacks
|
||||
|
||||
@@ -18,7 +18,6 @@ import android.widget.TextView;
|
||||
import android.widget.Toolbar;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
import app.revanced.extension.shared.Logger;
|
||||
@@ -74,7 +73,8 @@ public class ReVancedPreferenceFragment extends AbstractPreferenceFragment {
|
||||
}
|
||||
}
|
||||
|
||||
Collections.sort(pairsToSort, (pair1, pair2) -> pair1.first.compareToIgnoreCase(pair2.first));
|
||||
pairsToSort.sort((pair1, pair2)
|
||||
-> pair1.first.compareToIgnoreCase(pair2.first));
|
||||
|
||||
CharSequence[] sortedEntries = new CharSequence[entrySize];
|
||||
CharSequence[] sortedEntryValues = new CharSequence[entrySize];
|
||||
@@ -109,6 +109,7 @@ public class ReVancedPreferenceFragment extends AbstractPreferenceFragment {
|
||||
CustomPlaybackSpeedPatch.initializeListPreference(playbackPreference);
|
||||
}
|
||||
|
||||
sortPreferenceListMenu(Settings.CHANGE_START_PAGE);
|
||||
sortPreferenceListMenu(Settings.SPOOF_VIDEO_STREAMS_LANGUAGE);
|
||||
sortPreferenceListMenu(BaseSettings.REVANCED_LANGUAGE);
|
||||
} catch (Exception ex) {
|
||||
@@ -137,11 +138,13 @@ public class ReVancedPreferenceFragment extends AbstractPreferenceFragment {
|
||||
.findViewById(android.R.id.content)
|
||||
.getParent();
|
||||
|
||||
// Fix required for Android 15 and YT 19.45+
|
||||
// Fix edge-to-edge screen with Android 15 and YT 19.45+
|
||||
// https://developer.android.com/develop/ui/views/layout/edge-to-edge#system-bars-insets
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
|
||||
rootView.setOnApplyWindowInsetsListener((v, insets) -> {
|
||||
Insets statusInsets = insets.getInsets(WindowInsets.Type.statusBars());
|
||||
v.setPadding(0, statusInsets.top, 0, 0);
|
||||
Insets navInsets = insets.getInsets(WindowInsets.Type.navigationBars());
|
||||
v.setPadding(0, statusInsets.top, 0, navInsets.bottom);
|
||||
return insets;
|
||||
});
|
||||
}
|
||||
|
||||
@@ -14,6 +14,7 @@ import android.preference.PreferenceScreen;
|
||||
import android.preference.SwitchPreference;
|
||||
|
||||
import app.revanced.extension.shared.Logger;
|
||||
import app.revanced.extension.shared.Utils;
|
||||
import app.revanced.extension.shared.settings.Setting;
|
||||
import app.revanced.extension.shared.settings.BaseSettings;
|
||||
import app.revanced.extension.youtube.patches.ReturnYouTubeDislikePatch;
|
||||
@@ -85,9 +86,7 @@ public class ReturnYouTubeDislikePreferenceFragment extends PreferenceFragment {
|
||||
shortsPreference = new SwitchPreference(context);
|
||||
shortsPreference.setChecked(Settings.RYD_SHORTS.get());
|
||||
shortsPreference.setTitle(str("revanced_ryd_shorts_title"));
|
||||
String shortsSummary = ReturnYouTubeDislikePatch.IS_SPOOFING_TO_NON_LITHO_SHORTS_PLAYER
|
||||
? str("revanced_ryd_shorts_summary_on")
|
||||
: str("revanced_ryd_shorts_summary_on_disclaimer");
|
||||
String shortsSummary = str("revanced_ryd_shorts_summary_on_disclaimer");
|
||||
shortsPreference.setSummaryOn(shortsSummary);
|
||||
shortsPreference.setSummaryOff(str("revanced_ryd_shorts_summary_off"));
|
||||
shortsPreference.setOnPreferenceChangeListener((pref, newValue) -> {
|
||||
@@ -237,6 +236,8 @@ public class ReturnYouTubeDislikePreferenceFragment extends PreferenceFragment {
|
||||
"revanced_ryd_statistics_getNumberOfRateLimitRequestsEncountered_non_zero_summary"));
|
||||
preferenceScreen.addPreference(statisticPreference);
|
||||
}
|
||||
|
||||
Utils.setPreferenceTitlesToMultiLineIfNeeded(preferenceScreen);
|
||||
} catch (Exception ex) {
|
||||
Logger.printException(() -> "onCreate failure", ex);
|
||||
}
|
||||
|
||||
@@ -17,6 +17,7 @@ import androidx.annotation.Nullable;
|
||||
import app.revanced.extension.shared.Logger;
|
||||
import app.revanced.extension.shared.Utils;
|
||||
import app.revanced.extension.shared.settings.Setting;
|
||||
import app.revanced.extension.shared.settings.preference.ResettableEditTextPreference;
|
||||
import app.revanced.extension.youtube.settings.Settings;
|
||||
import app.revanced.extension.youtube.sponsorblock.SegmentPlaybackController;
|
||||
import app.revanced.extension.youtube.sponsorblock.SponsorBlockSettings;
|
||||
@@ -44,8 +45,8 @@ public class SponsorBlockPreferenceFragment extends PreferenceFragment {
|
||||
private SwitchPreference showTimeWithoutSegments;
|
||||
private SwitchPreference toastOnConnectionError;
|
||||
|
||||
private EditTextPreference newSegmentStep;
|
||||
private EditTextPreference minSegmentDuration;
|
||||
private ResettableEditTextPreference newSegmentStep;
|
||||
private ResettableEditTextPreference minSegmentDuration;
|
||||
private EditTextPreference privateUserId;
|
||||
private EditTextPreference importExport;
|
||||
private Preference apiUrl;
|
||||
@@ -159,6 +160,8 @@ public class SponsorBlockPreferenceFragment extends PreferenceFragment {
|
||||
|
||||
addAboutCategory(context, preferenceScreen);
|
||||
|
||||
Utils.setPreferenceTitlesToMultiLineIfNeeded(preferenceScreen);
|
||||
|
||||
updateUI();
|
||||
} catch (Exception ex) {
|
||||
Logger.printException(() -> "onCreate failure", ex);
|
||||
@@ -268,7 +271,8 @@ public class SponsorBlockPreferenceFragment extends PreferenceFragment {
|
||||
return true;
|
||||
});
|
||||
|
||||
newSegmentStep = new EditTextPreference(context);
|
||||
newSegmentStep = new ResettableEditTextPreference(context);
|
||||
newSegmentStep.setSetting(Settings.SB_CREATE_NEW_SEGMENT_STEP);
|
||||
newSegmentStep.setTitle(str("revanced_sb_general_adjusting"));
|
||||
newSegmentStep.setSummary(str("revanced_sb_general_adjusting_sum"));
|
||||
newSegmentStep.getEditText().setInputType(InputType.TYPE_CLASS_NUMBER);
|
||||
@@ -326,7 +330,8 @@ public class SponsorBlockPreferenceFragment extends PreferenceFragment {
|
||||
});
|
||||
category.addPreference(trackSkips);
|
||||
|
||||
minSegmentDuration = new EditTextPreference(context);
|
||||
minSegmentDuration = new ResettableEditTextPreference(context);
|
||||
minSegmentDuration.setSetting(Settings.SB_SEGMENT_MIN_DURATION);
|
||||
minSegmentDuration.setTitle(str("revanced_sb_general_min_duration"));
|
||||
minSegmentDuration.setSummary(str("revanced_sb_general_min_duration_sum"));
|
||||
minSegmentDuration.getEditText().setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL);
|
||||
@@ -345,7 +350,15 @@ public class SponsorBlockPreferenceFragment extends PreferenceFragment {
|
||||
});
|
||||
category.addPreference(minSegmentDuration);
|
||||
|
||||
privateUserId = new EditTextPreference(context);
|
||||
privateUserId = new EditTextPreference(context) {
|
||||
protected void onPrepareDialogBuilder(AlertDialog.Builder builder) {
|
||||
Utils.setEditTextDialogTheme(builder);
|
||||
|
||||
builder.setNeutralButton(str("revanced_sb_settings_copy"), (dialog, which) -> {
|
||||
Utils.setClipboard(getEditText().getText().toString());
|
||||
});
|
||||
}
|
||||
};
|
||||
privateUserId.setTitle(str("revanced_sb_general_uuid"));
|
||||
privateUserId.setSummary(str("revanced_sb_general_uuid_sum"));
|
||||
privateUserId.setOnPreferenceChangeListener((preference1, newValue) -> {
|
||||
@@ -504,7 +517,7 @@ public class SponsorBlockPreferenceFragment extends PreferenceFragment {
|
||||
|
||||
if (stats.totalSegmentCountIncludingIgnored > 0) {
|
||||
// If user has not created any segments, there's no reason to set a username.
|
||||
EditTextPreference preference = new EditTextPreference(context);
|
||||
EditTextPreference preference = new ResettableEditTextPreference(context);
|
||||
statsCategory.addPreference(preference);
|
||||
String userName = stats.userName;
|
||||
preference.setTitle(fromHtml(str("revanced_sb_stats_username", userName)));
|
||||
|
||||
@@ -73,6 +73,7 @@ public class SpoofStreamingDataSideEffectsPreference extends Preference {
|
||||
if (currentClientType == clientType) {
|
||||
return;
|
||||
}
|
||||
currentClientType = clientType;
|
||||
|
||||
Logger.printDebug(() -> "Updating spoof stream side effects preference");
|
||||
setEnabled(BaseSettings.SPOOF_VIDEO_STREAMS.get());
|
||||
|
||||
@@ -136,7 +136,7 @@ public class SponsorBlockSettings {
|
||||
for (SegmentCategory category : categories) {
|
||||
JSONObject categoryObject = new JSONObject();
|
||||
String categoryKey = category.keyValue;
|
||||
categoryObject.put("color", category.colorString());
|
||||
categoryObject.put("color", category.getColorString());
|
||||
barTypesObject.put(categoryKey, categoryObject);
|
||||
|
||||
if (category.behaviour != CategoryBehaviour.IGNORE) {
|
||||
|
||||
@@ -5,7 +5,12 @@ import static app.revanced.extension.shared.StringRef.str;
|
||||
import android.app.AlertDialog;
|
||||
import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
import android.text.Html;
|
||||
import android.graphics.Color;
|
||||
import android.text.Spannable;
|
||||
import android.text.SpannableString;
|
||||
import android.text.SpannableStringBuilder;
|
||||
import android.text.style.ForegroundColorSpan;
|
||||
import android.text.style.StyleSpan;
|
||||
import android.widget.EditText;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
@@ -33,7 +38,7 @@ import app.revanced.extension.youtube.sponsorblock.ui.SponsorBlockViewController
|
||||
* Not thread safe. All fields/methods must be accessed from the main thread.
|
||||
*/
|
||||
public class SponsorBlockUtils {
|
||||
private static final String LOCKED_COLOR = "#FFC83D";
|
||||
private static final int LOCKED_COLOR = Color.parseColor("#FFC83D");
|
||||
private static final String MANUAL_EDIT_TIME_TEXT_HINT = "hh:mm:ss.sss";
|
||||
private static final Pattern manualEditTimePattern
|
||||
= Pattern.compile("((\\d{1,2}):)?(\\d{1,2}):(\\d{2})(\\.(\\d{1,3}))?");
|
||||
@@ -160,32 +165,34 @@ public class SponsorBlockUtils {
|
||||
SegmentVote[] voteOptions = (segment.category == SegmentCategory.HIGHLIGHT)
|
||||
? SegmentVote.voteTypesWithoutCategoryChange // highlight segments cannot change category
|
||||
: SegmentVote.values();
|
||||
CharSequence[] items = new CharSequence[voteOptions.length];
|
||||
final int voteOptionsLength = voteOptions.length;
|
||||
final boolean userIsVip = Settings.SB_USER_IS_VIP.get();
|
||||
CharSequence[] items = new CharSequence[voteOptionsLength];
|
||||
|
||||
for (int i = 0; i < voteOptions.length; i++) {
|
||||
for (int i = 0; i < voteOptionsLength; i++) {
|
||||
SegmentVote voteOption = voteOptions[i];
|
||||
String title = voteOption.title.toString();
|
||||
if (Settings.SB_USER_IS_VIP.get() && segment.isLocked && voteOption.shouldHighlight) {
|
||||
items[i] = Html.fromHtml(String.format("<font color=\"%s\">%s</font>", LOCKED_COLOR, title));
|
||||
} else {
|
||||
items[i] = title;
|
||||
CharSequence title = voteOption.title.toString();
|
||||
if (userIsVip && segment.isLocked && voteOption.highlightIfVipAndVideoIsLocked) {
|
||||
SpannableString coloredTitle = new SpannableString(title);
|
||||
coloredTitle.setSpan(new ForegroundColorSpan(LOCKED_COLOR),
|
||||
0, title.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
|
||||
title = coloredTitle;
|
||||
}
|
||||
items[i] = title;
|
||||
}
|
||||
|
||||
new AlertDialog.Builder(context)
|
||||
.setItems(items, (dialog1, which1) -> {
|
||||
SegmentVote voteOption = voteOptions[which1];
|
||||
switch (voteOption) {
|
||||
case UPVOTE:
|
||||
case DOWNVOTE:
|
||||
SBRequester.voteForSegmentOnBackgroundThread(segment, voteOption);
|
||||
break;
|
||||
case CATEGORY_CHANGE:
|
||||
onNewCategorySelect(segment, context);
|
||||
break;
|
||||
}
|
||||
})
|
||||
.show();
|
||||
new AlertDialog.Builder(context).setItems(items, (dialog1, which1) -> {
|
||||
SegmentVote voteOption = voteOptions[which1];
|
||||
switch (voteOption) {
|
||||
case UPVOTE:
|
||||
case DOWNVOTE:
|
||||
SBRequester.voteForSegmentOnBackgroundThread(segment, voteOption);
|
||||
break;
|
||||
case CATEGORY_CHANGE:
|
||||
onNewCategorySelect(segment, context);
|
||||
break;
|
||||
}
|
||||
}).show();
|
||||
} catch (Exception ex) {
|
||||
Logger.printException(() -> "segmentVoteClickListener failure", ex);
|
||||
}
|
||||
@@ -282,7 +289,6 @@ public class SponsorBlockUtils {
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
final int numberOfSegments = segments.length;
|
||||
CharSequence[] titles = new CharSequence[numberOfSegments];
|
||||
for (int i = 0; i < numberOfSegments; i++) {
|
||||
@@ -290,22 +296,33 @@ public class SponsorBlockUtils {
|
||||
if (segment.category == SegmentCategory.UNSUBMITTED) {
|
||||
continue;
|
||||
}
|
||||
StringBuilder htmlBuilder = new StringBuilder();
|
||||
htmlBuilder.append(String.format("<b><font color=\"#%06X\">⬤</font> %s<br>",
|
||||
segment.category.color, segment.category.title));
|
||||
htmlBuilder.append(formatSegmentTime(segment.start));
|
||||
if (segment.category != SegmentCategory.HIGHLIGHT) {
|
||||
htmlBuilder.append(" to ").append(formatSegmentTime(segment.end));
|
||||
|
||||
SpannableStringBuilder spannableBuilder = new SpannableStringBuilder();
|
||||
|
||||
spannableBuilder.append(segment.category.getTitleWithColorDot());
|
||||
spannableBuilder.append('\n');
|
||||
|
||||
String startTime = formatSegmentTime(segment.start);
|
||||
if (segment.category == SegmentCategory.HIGHLIGHT) {
|
||||
spannableBuilder.append(startTime);
|
||||
} else {
|
||||
String toFromString = str("revanced_sb_vote_segment_time_to_from",
|
||||
startTime, formatSegmentTime(segment.end));
|
||||
spannableBuilder.append(toFromString);
|
||||
}
|
||||
htmlBuilder.append("</b>");
|
||||
if (i + 1 != numberOfSegments) // prevents trailing new line after last segment
|
||||
htmlBuilder.append("<br>");
|
||||
titles[i] = Html.fromHtml(htmlBuilder.toString());
|
||||
|
||||
if (i + 1 != numberOfSegments) {
|
||||
// prevents trailing new line after last segment
|
||||
spannableBuilder.append('\n');
|
||||
}
|
||||
|
||||
spannableBuilder.setSpan(new StyleSpan(android.graphics.Typeface.BOLD),
|
||||
0, spannableBuilder.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
|
||||
|
||||
titles[i] = spannableBuilder;
|
||||
}
|
||||
|
||||
new AlertDialog.Builder(context)
|
||||
.setItems(titles, segmentVoteClickListener)
|
||||
.show();
|
||||
new AlertDialog.Builder(context).setItems(titles, segmentVoteClickListener).show();
|
||||
} catch (Exception ex) {
|
||||
Logger.printException(() -> "onVotingClicked failure", ex);
|
||||
}
|
||||
|
||||
@@ -1,13 +1,14 @@
|
||||
package app.revanced.extension.youtube.sponsorblock.objects;
|
||||
|
||||
import static app.revanced.extension.youtube.settings.Settings.*;
|
||||
import static app.revanced.extension.shared.StringRef.sf;
|
||||
import static app.revanced.extension.youtube.settings.Settings.*;
|
||||
|
||||
import android.graphics.Color;
|
||||
import android.graphics.Paint;
|
||||
import android.text.Html;
|
||||
import android.text.Spanned;
|
||||
import android.text.Spannable;
|
||||
import android.text.SpannableString;
|
||||
import android.text.TextUtils;
|
||||
import android.text.style.ForegroundColorSpan;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
@@ -15,43 +16,45 @@ import androidx.annotation.Nullable;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
|
||||
import app.revanced.extension.shared.Utils;
|
||||
import app.revanced.extension.shared.settings.StringSetting;
|
||||
import app.revanced.extension.youtube.settings.Settings;
|
||||
import app.revanced.extension.shared.Logger;
|
||||
import app.revanced.extension.shared.StringRef;
|
||||
import app.revanced.extension.shared.Utils;
|
||||
import app.revanced.extension.shared.settings.FloatSetting;
|
||||
import app.revanced.extension.shared.settings.StringSetting;
|
||||
import app.revanced.extension.youtube.settings.Settings;
|
||||
|
||||
public enum SegmentCategory {
|
||||
SPONSOR("sponsor", sf("revanced_sb_segments_sponsor"), sf("revanced_sb_segments_sponsor_sum"), sf("revanced_sb_skip_button_sponsor"), sf("revanced_sb_skipped_sponsor"),
|
||||
SB_CATEGORY_SPONSOR, SB_CATEGORY_SPONSOR_COLOR),
|
||||
SB_CATEGORY_SPONSOR, SB_CATEGORY_SPONSOR_COLOR, SB_CATEGORY_SPONSOR_OPACITY),
|
||||
SELF_PROMO("selfpromo", sf("revanced_sb_segments_selfpromo"), sf("revanced_sb_segments_selfpromo_sum"), sf("revanced_sb_skip_button_selfpromo"), sf("revanced_sb_skipped_selfpromo"),
|
||||
SB_CATEGORY_SELF_PROMO, SB_CATEGORY_SELF_PROMO_COLOR),
|
||||
SB_CATEGORY_SELF_PROMO, SB_CATEGORY_SELF_PROMO_COLOR, SB_CATEGORY_SELF_PROMO_OPACITY),
|
||||
INTERACTION("interaction", sf("revanced_sb_segments_interaction"), sf("revanced_sb_segments_interaction_sum"), sf("revanced_sb_skip_button_interaction"), sf("revanced_sb_skipped_interaction"),
|
||||
SB_CATEGORY_INTERACTION, SB_CATEGORY_INTERACTION_COLOR),
|
||||
SB_CATEGORY_INTERACTION, SB_CATEGORY_INTERACTION_COLOR, SB_CATEGORY_INTERACTION_OPACITY),
|
||||
/**
|
||||
* Unique category that is treated differently than the rest.
|
||||
*/
|
||||
HIGHLIGHT("poi_highlight", sf("revanced_sb_segments_highlight"), sf("revanced_sb_segments_highlight_sum"), sf("revanced_sb_skip_button_highlight"), sf("revanced_sb_skipped_highlight"),
|
||||
SB_CATEGORY_HIGHLIGHT, SB_CATEGORY_HIGHLIGHT_COLOR),
|
||||
SB_CATEGORY_HIGHLIGHT, SB_CATEGORY_HIGHLIGHT_COLOR, SB_CATEGORY_HIGHLIGHT_OPACITY),
|
||||
INTRO("intro", sf("revanced_sb_segments_intro"), sf("revanced_sb_segments_intro_sum"),
|
||||
sf("revanced_sb_skip_button_intro_beginning"), sf("revanced_sb_skip_button_intro_middle"), sf("revanced_sb_skip_button_intro_end"),
|
||||
sf("revanced_sb_skipped_intro_beginning"), sf("revanced_sb_skipped_intro_middle"), sf("revanced_sb_skipped_intro_end"),
|
||||
SB_CATEGORY_INTRO, SB_CATEGORY_INTRO_COLOR),
|
||||
SB_CATEGORY_INTRO, SB_CATEGORY_INTRO_COLOR, SB_CATEGORY_INTRO_OPACITY),
|
||||
OUTRO("outro", sf("revanced_sb_segments_outro"), sf("revanced_sb_segments_outro_sum"), sf("revanced_sb_skip_button_outro"), sf("revanced_sb_skipped_outro"),
|
||||
SB_CATEGORY_OUTRO, SB_CATEGORY_OUTRO_COLOR),
|
||||
SB_CATEGORY_OUTRO, SB_CATEGORY_OUTRO_COLOR, SB_CATEGORY_OUTRO_OPACITY),
|
||||
PREVIEW("preview", sf("revanced_sb_segments_preview"), sf("revanced_sb_segments_preview_sum"),
|
||||
sf("revanced_sb_skip_button_preview_beginning"), sf("revanced_sb_skip_button_preview_middle"), sf("revanced_sb_skip_button_preview_end"),
|
||||
sf("revanced_sb_skipped_preview_beginning"), sf("revanced_sb_skipped_preview_middle"), sf("revanced_sb_skipped_preview_end"),
|
||||
SB_CATEGORY_PREVIEW, SB_CATEGORY_PREVIEW_COLOR),
|
||||
SB_CATEGORY_PREVIEW, SB_CATEGORY_PREVIEW_COLOR, SB_CATEGORY_PREVIEW_OPACITY),
|
||||
FILLER("filler", sf("revanced_sb_segments_filler"), sf("revanced_sb_segments_filler_sum"), sf("revanced_sb_skip_button_filler"), sf("revanced_sb_skipped_filler"),
|
||||
SB_CATEGORY_FILLER, SB_CATEGORY_FILLER_COLOR),
|
||||
SB_CATEGORY_FILLER, SB_CATEGORY_FILLER_COLOR, SB_CATEGORY_FILLER_OPACITY),
|
||||
MUSIC_OFFTOPIC("music_offtopic", sf("revanced_sb_segments_nomusic"), sf("revanced_sb_segments_nomusic_sum"), sf("revanced_sb_skip_button_nomusic"), sf("revanced_sb_skipped_nomusic"),
|
||||
SB_CATEGORY_MUSIC_OFFTOPIC, SB_CATEGORY_MUSIC_OFFTOPIC_COLOR),
|
||||
SB_CATEGORY_MUSIC_OFFTOPIC, SB_CATEGORY_MUSIC_OFFTOPIC_COLOR, SB_CATEGORY_MUSIC_OFFTOPIC_OPACITY),
|
||||
UNSUBMITTED("unsubmitted", StringRef.empty, StringRef.empty, sf("revanced_sb_skip_button_unsubmitted"), sf("revanced_sb_skipped_unsubmitted"),
|
||||
SB_CATEGORY_UNSUBMITTED, SB_CATEGORY_UNSUBMITTED_COLOR),;
|
||||
SB_CATEGORY_UNSUBMITTED, SB_CATEGORY_UNSUBMITTED_COLOR, SB_CATEGORY_UNSUBMITTED_OPACITY);
|
||||
|
||||
private static final StringRef skipSponsorTextCompact = sf("revanced_sb_skip_button_compact");
|
||||
private static final StringRef skipSponsorTextCompactHighlight = sf("revanced_sb_skip_button_compact_highlight");
|
||||
@@ -90,12 +93,10 @@ public enum SegmentCategory {
|
||||
mValuesMap.put(value.keyValue, value);
|
||||
}
|
||||
|
||||
@NonNull
|
||||
public static SegmentCategory[] categoriesWithoutUnsubmitted() {
|
||||
return categoriesWithoutUnsubmitted;
|
||||
}
|
||||
|
||||
@NonNull
|
||||
public static SegmentCategory[] categoriesWithoutHighlights() {
|
||||
return categoriesWithoutHighlights;
|
||||
}
|
||||
@@ -106,7 +107,7 @@ public enum SegmentCategory {
|
||||
}
|
||||
|
||||
/**
|
||||
* Must be called if behavior of any category is changed
|
||||
* Must be called if behavior of any category is changed.
|
||||
*/
|
||||
public static void updateEnabledCategories() {
|
||||
Utils.verifyOnMainThread();
|
||||
@@ -133,32 +134,33 @@ public enum SegmentCategory {
|
||||
updateEnabledCategories();
|
||||
}
|
||||
|
||||
@NonNull
|
||||
public final String keyValue;
|
||||
@NonNull
|
||||
public final StringSetting behaviorSetting;
|
||||
@NonNull
|
||||
private final StringSetting colorSetting;
|
||||
public static int applyOpacityToColor(int color, float opacity) {
|
||||
if (opacity < 0 || opacity > 1.0f) {
|
||||
throw new IllegalArgumentException("Invalid opacity: " + opacity);
|
||||
}
|
||||
final int opacityInt = (int) (255 * opacity);
|
||||
return (color & 0x00FFFFFF) | (opacityInt << 24);
|
||||
}
|
||||
|
||||
public final String keyValue;
|
||||
public final StringSetting behaviorSetting; // TODO: Replace with EnumSetting.
|
||||
private final StringSetting colorSetting;
|
||||
private final FloatSetting opacitySetting;
|
||||
|
||||
@NonNull
|
||||
public final StringRef title;
|
||||
@NonNull
|
||||
public final StringRef description;
|
||||
|
||||
/**
|
||||
* Skip button text, if the skip occurs in the first quarter of the video
|
||||
*/
|
||||
@NonNull
|
||||
public final StringRef skipButtonTextBeginning;
|
||||
/**
|
||||
* Skip button text, if the skip occurs in the middle half of the video
|
||||
*/
|
||||
@NonNull
|
||||
public final StringRef skipButtonTextMiddle;
|
||||
/**
|
||||
* Skip button text, if the skip occurs in the last quarter of the video
|
||||
*/
|
||||
@NonNull
|
||||
public final StringRef skipButtonTextEnd;
|
||||
/**
|
||||
* Skipped segment toast, if the skip occurred in the first quarter of the video
|
||||
@@ -179,10 +181,7 @@ public enum SegmentCategory {
|
||||
@NonNull
|
||||
public final Paint paint;
|
||||
|
||||
/**
|
||||
* Value must be changed using {@link #setColor(String)}.
|
||||
*/
|
||||
public int color;
|
||||
private int color;
|
||||
|
||||
/**
|
||||
* Value must be changed using {@link #setBehaviour(CategoryBehaviour)}.
|
||||
@@ -194,17 +193,20 @@ public enum SegmentCategory {
|
||||
SegmentCategory(String keyValue, StringRef title, StringRef description,
|
||||
StringRef skipButtonText,
|
||||
StringRef skippedToastText,
|
||||
StringSetting behavior, StringSetting color) {
|
||||
StringSetting behavior,
|
||||
StringSetting color, FloatSetting opacity) {
|
||||
this(keyValue, title, description,
|
||||
skipButtonText, skipButtonText, skipButtonText,
|
||||
skippedToastText, skippedToastText, skippedToastText,
|
||||
behavior, color);
|
||||
behavior,
|
||||
color, opacity);
|
||||
}
|
||||
|
||||
SegmentCategory(String keyValue, StringRef title, StringRef description,
|
||||
StringRef skipButtonTextBeginning, StringRef skipButtonTextMiddle, StringRef skipButtonTextEnd,
|
||||
StringRef skippedToastBeginning, StringRef skippedToastMiddle, StringRef skippedToastEnd,
|
||||
StringSetting behavior, StringSetting color) {
|
||||
StringSetting behavior,
|
||||
StringSetting color, FloatSetting opacity) {
|
||||
this.keyValue = Objects.requireNonNull(keyValue);
|
||||
this.title = Objects.requireNonNull(title);
|
||||
this.description = Objects.requireNonNull(description);
|
||||
@@ -216,6 +218,7 @@ public enum SegmentCategory {
|
||||
this.skippedToastEnd = Objects.requireNonNull(skippedToastEnd);
|
||||
this.behaviorSetting = Objects.requireNonNull(behavior);
|
||||
this.colorSetting = Objects.requireNonNull(color);
|
||||
this.opacitySetting = Objects.requireNonNull(opacity);
|
||||
this.paint = new Paint();
|
||||
loadFromSettings();
|
||||
}
|
||||
@@ -232,11 +235,14 @@ public enum SegmentCategory {
|
||||
this.behaviour = savedBehavior;
|
||||
|
||||
String colorString = colorSetting.get();
|
||||
final float opacity = opacitySetting.get();
|
||||
try {
|
||||
setColor(colorString);
|
||||
setOpacity(opacity);
|
||||
} catch (Exception ex) {
|
||||
Logger.printException(() -> "Invalid color: " + colorString, ex);
|
||||
Logger.printException(() -> "Invalid color: " + colorString + " opacity: " + opacity, ex);
|
||||
colorSetting.resetToDefault();
|
||||
opacitySetting.resetToDefault();
|
||||
loadFromSettings();
|
||||
}
|
||||
}
|
||||
@@ -245,45 +251,78 @@ public enum SegmentCategory {
|
||||
this.behaviour = Objects.requireNonNull(behaviour);
|
||||
this.behaviorSetting.save(behaviour.reVancedKeyValue);
|
||||
}
|
||||
/**
|
||||
* @return HTML color format string
|
||||
*/
|
||||
@NonNull
|
||||
public String colorString() {
|
||||
return String.format("#%06X", color);
|
||||
}
|
||||
|
||||
public void setColor(@NonNull String colorString) throws IllegalArgumentException {
|
||||
final int color = Color.parseColor(colorString) & 0xFFFFFF;
|
||||
this.color = color;
|
||||
private void updateColor() {
|
||||
color = applyOpacityToColor(color, opacitySetting.get());
|
||||
paint.setColor(color);
|
||||
paint.setAlpha(255);
|
||||
colorSetting.save(colorString); // Save after parsing.
|
||||
}
|
||||
|
||||
public void resetColor() {
|
||||
/**
|
||||
* @param opacity Segment color opacity between [0, 1].
|
||||
*/
|
||||
public void setOpacity(float opacity) throws IllegalArgumentException {
|
||||
if (opacity < 0 || opacity > 1) {
|
||||
throw new IllegalArgumentException("Invalid opacity: " + opacity);
|
||||
}
|
||||
|
||||
opacitySetting.save(opacity);
|
||||
updateColor();
|
||||
}
|
||||
|
||||
public float getOpacity() {
|
||||
return opacitySetting.get();
|
||||
}
|
||||
|
||||
public void resetColorAndOpacity() {
|
||||
setColor(colorSetting.defaultValue);
|
||||
setOpacity(opacitySetting.defaultValue);
|
||||
}
|
||||
|
||||
@NonNull
|
||||
private static String getCategoryColorDotHTML(int color) {
|
||||
color &= 0xFFFFFF;
|
||||
return String.format("<font color=\"#%06X\">⬤</font>", color);
|
||||
/**
|
||||
* @param colorString Segment color with #RRGGBB format.
|
||||
*/
|
||||
public void setColor(String colorString) throws IllegalArgumentException {
|
||||
color = Color.parseColor(colorString);
|
||||
colorSetting.save(colorString);
|
||||
|
||||
updateColor();
|
||||
}
|
||||
|
||||
@NonNull
|
||||
public static Spanned getCategoryColorDot(int color) {
|
||||
return Html.fromHtml(getCategoryColorDotHTML(color));
|
||||
/**
|
||||
* @return Integer color of #RRGGBB format.
|
||||
*/
|
||||
public int getColorNoOpacity() {
|
||||
return color & 0x00FFFFFF;
|
||||
}
|
||||
|
||||
@NonNull
|
||||
public Spanned getCategoryColorDot() {
|
||||
/**
|
||||
* @return Hex color string of #RRGGBB format with no opacity level.
|
||||
*/
|
||||
public String getColorString() {
|
||||
return String.format(Locale.US, "#%06X", getColorNoOpacity());
|
||||
}
|
||||
|
||||
private static SpannableString getCategoryColorDotSpan(String text, int color) {
|
||||
SpannableString dotSpan = new SpannableString('⬤' + text);
|
||||
dotSpan.setSpan(new ForegroundColorSpan(color), 0, 1,
|
||||
Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
|
||||
return dotSpan;
|
||||
}
|
||||
|
||||
public static SpannableString getCategoryColorDot(int color) {
|
||||
return getCategoryColorDotSpan("", color);
|
||||
}
|
||||
|
||||
public SpannableString getCategoryColorDot() {
|
||||
return getCategoryColorDot(color);
|
||||
}
|
||||
|
||||
@NonNull
|
||||
public Spanned getTitleWithColorDot() {
|
||||
return Html.fromHtml(getCategoryColorDotHTML(color) + " " + title);
|
||||
public SpannableString getTitleWithColorDot(int categoryColor) {
|
||||
return getCategoryColorDotSpan(" " + title, categoryColor);
|
||||
}
|
||||
|
||||
public SpannableString getTitleWithColorDot() {
|
||||
return getTitleWithColorDot(color);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -291,7 +330,6 @@ public enum SegmentCategory {
|
||||
* @param videoLength length of the video
|
||||
* @return the skip button text
|
||||
*/
|
||||
@NonNull
|
||||
StringRef getSkipButtonText(long segmentStartTime, long videoLength) {
|
||||
if (Settings.SB_COMPACT_SKIP_BUTTON.get()) {
|
||||
return (this == SegmentCategory.HIGHLIGHT)
|
||||
@@ -300,7 +338,7 @@ public enum SegmentCategory {
|
||||
}
|
||||
|
||||
if (videoLength == 0) {
|
||||
return skipButtonTextBeginning; // video is still loading. Assume it's the beginning
|
||||
return skipButtonTextBeginning; // Video is still loading. Assume it's the beginning.
|
||||
}
|
||||
final float position = segmentStartTime / (float) videoLength;
|
||||
if (position < 0.25f) {
|
||||
@@ -316,10 +354,9 @@ public enum SegmentCategory {
|
||||
* @param videoLength length of the video
|
||||
* @return 'skipped segment' toast message
|
||||
*/
|
||||
@NonNull
|
||||
StringRef getSkippedToastText(long segmentStartTime, long videoLength) {
|
||||
if (videoLength == 0) {
|
||||
return skippedToastBeginning; // video is still loading. Assume it's the beginning
|
||||
return skippedToastBeginning; // Video is still loading. Assume it's the beginning.
|
||||
}
|
||||
final float position = segmentStartTime / (float) videoLength;
|
||||
if (position < 0.25f) {
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package app.revanced.extension.youtube.sponsorblock.objects;
|
||||
|
||||
import static app.revanced.extension.shared.StringRef.str;
|
||||
import static app.revanced.extension.youtube.sponsorblock.objects.SegmentCategory.applyOpacityToColor;
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.content.Context;
|
||||
@@ -11,11 +12,10 @@ import android.text.Editable;
|
||||
import android.text.InputType;
|
||||
import android.text.TextWatcher;
|
||||
import android.widget.EditText;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.TableLayout;
|
||||
import android.widget.TableRow;
|
||||
import android.widget.GridLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import java.util.Locale;
|
||||
import java.util.Objects;
|
||||
|
||||
import app.revanced.extension.shared.Logger;
|
||||
@@ -24,27 +24,38 @@ import app.revanced.extension.shared.Utils;
|
||||
@SuppressWarnings("deprecation")
|
||||
public class SegmentCategoryListPreference extends ListPreference {
|
||||
private final SegmentCategory category;
|
||||
private EditText mEditText;
|
||||
private int mClickedDialogEntryIndex;
|
||||
private TextView colorDotView;
|
||||
private EditText colorEditText;
|
||||
private EditText opacityEditText;
|
||||
/**
|
||||
* #RRGGBB
|
||||
*/
|
||||
private int categoryColor;
|
||||
/**
|
||||
* [0, 1]
|
||||
*/
|
||||
private float categoryOpacity;
|
||||
private int selectedDialogEntryIndex;
|
||||
|
||||
public SegmentCategoryListPreference(Context context, SegmentCategory category) {
|
||||
super(context);
|
||||
final boolean isHighlightCategory = category == SegmentCategory.HIGHLIGHT;
|
||||
this.category = Objects.requireNonNull(category);
|
||||
|
||||
// Edit: Using preferences to sync together multiple pieces
|
||||
// of code together is messy and should be rethought.
|
||||
// of code is messy and should be rethought.
|
||||
setKey(category.behaviorSetting.key);
|
||||
setDefaultValue(category.behaviorSetting.defaultValue);
|
||||
|
||||
final boolean isHighlightCategory = category == SegmentCategory.HIGHLIGHT;
|
||||
setEntries(isHighlightCategory
|
||||
? CategoryBehaviour.getBehaviorDescriptionsWithoutSkipOnce()
|
||||
: CategoryBehaviour.getBehaviorDescriptions());
|
||||
setEntryValues(isHighlightCategory
|
||||
? CategoryBehaviour.getBehaviorKeyValuesWithoutSkipOnce()
|
||||
: CategoryBehaviour.getBehaviorKeyValues());
|
||||
|
||||
setSummary(category.description.toString());
|
||||
updateTitle();
|
||||
|
||||
updateTitleFromCategory();
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -52,26 +63,40 @@ public class SegmentCategoryListPreference extends ListPreference {
|
||||
try {
|
||||
Utils.setEditTextDialogTheme(builder);
|
||||
|
||||
categoryColor = category.getColorNoOpacity();
|
||||
categoryOpacity = category.getOpacity();
|
||||
|
||||
Context context = builder.getContext();
|
||||
TableLayout table = new TableLayout(context);
|
||||
table.setOrientation(LinearLayout.HORIZONTAL);
|
||||
table.setPadding(70, 0, 150, 0);
|
||||
|
||||
TableRow row = new TableRow(context);
|
||||
GridLayout gridLayout = new GridLayout(context);
|
||||
gridLayout.setPadding(70, 0, 150, 0); // Padding for the entire layout.
|
||||
gridLayout.setColumnCount(3);
|
||||
gridLayout.setRowCount(2);
|
||||
|
||||
GridLayout.LayoutParams gridParams = new GridLayout.LayoutParams();
|
||||
gridParams.rowSpec = GridLayout.spec(0); // First row.
|
||||
gridParams.columnSpec = GridLayout.spec(0); // First column.
|
||||
TextView colorTextLabel = new TextView(context);
|
||||
colorTextLabel.setText(str("revanced_sb_color_dot_label"));
|
||||
row.addView(colorTextLabel);
|
||||
colorTextLabel.setLayoutParams(gridParams);
|
||||
gridLayout.addView(colorTextLabel);
|
||||
|
||||
TextView colorDotView = new TextView(context);
|
||||
colorDotView.setText(category.getCategoryColorDot());
|
||||
colorDotView.setPadding(30, 0, 30, 0);
|
||||
row.addView(colorDotView);
|
||||
gridParams = new GridLayout.LayoutParams();
|
||||
gridParams.rowSpec = GridLayout.spec(0); // First row.
|
||||
gridParams.columnSpec = GridLayout.spec(1); // Second column.
|
||||
gridParams.setMargins(0, 0, 10, 0);
|
||||
colorDotView = new TextView(context);
|
||||
colorDotView.setLayoutParams(gridParams);
|
||||
gridLayout.addView(colorDotView);
|
||||
updateCategoryColorDot();
|
||||
|
||||
mEditText = new EditText(context);
|
||||
mEditText.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_CAP_CHARACTERS);
|
||||
mEditText.setText(category.colorString());
|
||||
mEditText.addTextChangedListener(new TextWatcher() {
|
||||
gridParams = new GridLayout.LayoutParams();
|
||||
gridParams.rowSpec = GridLayout.spec(0); // First row.
|
||||
gridParams.columnSpec = GridLayout.spec(2); // Third column.
|
||||
colorEditText = new EditText(context);
|
||||
colorEditText.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_CAP_CHARACTERS);
|
||||
colorEditText.setTextLocale(Locale.US);
|
||||
colorEditText.setText(category.getColorString());
|
||||
colorEditText.addTextChangedListener(new TextWatcher() {
|
||||
@Override
|
||||
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
|
||||
}
|
||||
@@ -81,29 +106,94 @@ public class SegmentCategoryListPreference extends ListPreference {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void afterTextChanged(Editable s) {
|
||||
public void afterTextChanged(Editable edit) {
|
||||
try {
|
||||
String colorString = s.toString();
|
||||
String colorString = edit.toString();
|
||||
final int colorStringLength = colorString.length();
|
||||
|
||||
if (!colorString.startsWith("#")) {
|
||||
s.insert(0, "#"); // recursively calls back into this method
|
||||
edit.insert(0, "#"); // Recursively calls back into this method.
|
||||
return;
|
||||
}
|
||||
if (colorString.length() > 7) {
|
||||
s.delete(7, colorString.length());
|
||||
|
||||
final int maxColorStringLength = 7; // #RRGGBB
|
||||
if (colorStringLength > maxColorStringLength) {
|
||||
edit.delete(maxColorStringLength, colorStringLength);
|
||||
return;
|
||||
}
|
||||
final int color = Color.parseColor(colorString);
|
||||
colorDotView.setText(SegmentCategory.getCategoryColorDot(color));
|
||||
|
||||
categoryColor = Color.parseColor(colorString);
|
||||
updateCategoryColorDot();
|
||||
} catch (IllegalArgumentException ex) {
|
||||
// ignore
|
||||
// Ignore.
|
||||
}
|
||||
}
|
||||
});
|
||||
mEditText.setLayoutParams(new TableRow.LayoutParams(0, TableRow.LayoutParams.WRAP_CONTENT, 1f));
|
||||
row.addView(mEditText);
|
||||
colorEditText.setLayoutParams(gridParams);
|
||||
gridLayout.addView(colorEditText);
|
||||
|
||||
table.addView(row);
|
||||
builder.setView(table);
|
||||
gridParams = new GridLayout.LayoutParams();
|
||||
gridParams.rowSpec = GridLayout.spec(1); // Second row.
|
||||
gridParams.columnSpec = GridLayout.spec(0, 1); // First and second column.
|
||||
TextView opacityLabel = new TextView(context);
|
||||
opacityLabel.setText(str("revanced_sb_color_opacity_label"));
|
||||
opacityLabel.setLayoutParams(gridParams);
|
||||
gridLayout.addView(opacityLabel);
|
||||
|
||||
gridParams = new GridLayout.LayoutParams();
|
||||
gridParams.rowSpec = GridLayout.spec(1); // Second row.
|
||||
gridParams.columnSpec = GridLayout.spec(2); // Third column.
|
||||
opacityEditText = new EditText(context);
|
||||
opacityEditText.setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL);
|
||||
opacityEditText.addTextChangedListener(new TextWatcher() {
|
||||
@Override
|
||||
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTextChanged(CharSequence s, int start, int before, int count) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void afterTextChanged(Editable edit) {
|
||||
try {
|
||||
String editString = edit.toString();
|
||||
final int opacityStringLength = editString.length();
|
||||
|
||||
final int maxOpacityStringLength = 4; // [0.00, 1.00]
|
||||
if (opacityStringLength > maxOpacityStringLength) {
|
||||
edit.delete(maxOpacityStringLength, opacityStringLength);
|
||||
return;
|
||||
}
|
||||
|
||||
final float opacity = opacityStringLength == 0
|
||||
? 0
|
||||
: Float.parseFloat(editString);
|
||||
if (opacity < 0) {
|
||||
categoryOpacity = 0;
|
||||
edit.replace(0, opacityStringLength, "0");
|
||||
return;
|
||||
} else if (opacity > 1.0f) {
|
||||
categoryOpacity = 1;
|
||||
edit.replace(0, opacityStringLength, "1.0");
|
||||
return;
|
||||
} else if (!editString.endsWith(".")) {
|
||||
// Ignore "0." and "1." until the user finishes entering a valid number.
|
||||
categoryOpacity = opacity;
|
||||
}
|
||||
|
||||
updateCategoryColorDot();
|
||||
} catch (NumberFormatException ex) {
|
||||
// Should never happen.
|
||||
Logger.printException(() -> "Could not parse opacity string", ex);
|
||||
}
|
||||
}
|
||||
});
|
||||
opacityEditText.setLayoutParams(gridParams);
|
||||
gridLayout.addView(opacityEditText);
|
||||
updateOpacityText();
|
||||
|
||||
builder.setView(gridLayout);
|
||||
builder.setTitle(category.title.toString());
|
||||
|
||||
builder.setPositiveButton(android.R.string.ok, (dialog, which) -> {
|
||||
@@ -111,8 +201,8 @@ public class SegmentCategoryListPreference extends ListPreference {
|
||||
});
|
||||
builder.setNeutralButton(str("revanced_sb_reset_color"), (dialog, which) -> {
|
||||
try {
|
||||
category.resetColor();
|
||||
updateTitle();
|
||||
category.resetColorAndOpacity();
|
||||
updateTitleFromCategory();
|
||||
Utils.showToastShort(str("revanced_sb_color_reset"));
|
||||
} catch (Exception ex) {
|
||||
Logger.printException(() -> "setNeutralButton failure", ex);
|
||||
@@ -120,8 +210,9 @@ public class SegmentCategoryListPreference extends ListPreference {
|
||||
});
|
||||
builder.setNegativeButton(android.R.string.cancel, null);
|
||||
|
||||
mClickedDialogEntryIndex = findIndexOfValue(getValue());
|
||||
builder.setSingleChoiceItems(getEntries(), mClickedDialogEntryIndex, (dialog, which) -> mClickedDialogEntryIndex = which);
|
||||
selectedDialogEntryIndex = findIndexOfValue(getValue());
|
||||
builder.setSingleChoiceItems(getEntries(), selectedDialogEntryIndex,
|
||||
(dialog, which) -> selectedDialogEntryIndex = which);
|
||||
} catch (Exception ex) {
|
||||
Logger.printException(() -> "onPrepareDialogBuilder failure", ex);
|
||||
}
|
||||
@@ -130,30 +221,51 @@ public class SegmentCategoryListPreference extends ListPreference {
|
||||
@Override
|
||||
protected void onDialogClosed(boolean positiveResult) {
|
||||
try {
|
||||
if (positiveResult && mClickedDialogEntryIndex >= 0 && getEntryValues() != null) {
|
||||
String value = getEntryValues()[mClickedDialogEntryIndex].toString();
|
||||
if (positiveResult && selectedDialogEntryIndex >= 0 && getEntryValues() != null) {
|
||||
String value = getEntryValues()[selectedDialogEntryIndex].toString();
|
||||
if (callChangeListener(value)) {
|
||||
setValue(value);
|
||||
category.setBehaviour(Objects.requireNonNull(CategoryBehaviour.byReVancedKeyValue(value)));
|
||||
SegmentCategory.updateEnabledCategories();
|
||||
}
|
||||
String colorString = mEditText.getText().toString();
|
||||
|
||||
try {
|
||||
if (!colorString.equals(category.colorString())) {
|
||||
String colorString = colorEditText.getText().toString();
|
||||
if (!colorString.equals(category.getColorString()) || categoryOpacity != category.getOpacity()) {
|
||||
category.setColor(colorString);
|
||||
category.setOpacity(categoryOpacity);
|
||||
Utils.showToastShort(str("revanced_sb_color_changed"));
|
||||
}
|
||||
} catch (IllegalArgumentException ex) {
|
||||
Utils.showToastShort(str("revanced_sb_color_invalid"));
|
||||
}
|
||||
updateTitle();
|
||||
|
||||
updateTitleFromCategory();
|
||||
}
|
||||
} catch (Exception ex) {
|
||||
Logger.printException(() -> "onDialogClosed failure", ex);
|
||||
}
|
||||
}
|
||||
|
||||
private void updateTitle() {
|
||||
setTitle(category.getTitleWithColorDot());
|
||||
private void applyOpacityToCategoryColor() {
|
||||
categoryColor = applyOpacityToColor(categoryColor, categoryOpacity);
|
||||
}
|
||||
|
||||
private void updateTitleFromCategory() {
|
||||
categoryColor = category.getColorNoOpacity();
|
||||
categoryOpacity = category.getOpacity();
|
||||
applyOpacityToCategoryColor();
|
||||
|
||||
setTitle(category.getTitleWithColorDot(categoryColor));
|
||||
}
|
||||
|
||||
private void updateCategoryColorDot() {
|
||||
applyOpacityToCategoryColor();
|
||||
|
||||
colorDotView.setText(SegmentCategory.getCategoryColorDot(categoryColor));
|
||||
}
|
||||
|
||||
private void updateOpacityText() {
|
||||
opacityEditText.setText(String.format(Locale.US, "%.2f", categoryOpacity));
|
||||
}
|
||||
}
|
||||
@@ -23,12 +23,15 @@ public class SponsorSegment implements Comparable<SponsorSegment> {
|
||||
@NonNull
|
||||
public final StringRef title;
|
||||
public final int apiVoteType;
|
||||
public final boolean shouldHighlight;
|
||||
/**
|
||||
* If the option should be highlighted for VIP users.
|
||||
*/
|
||||
public final boolean highlightIfVipAndVideoIsLocked;
|
||||
|
||||
SegmentVote(@NonNull StringRef title, int apiVoteType, boolean shouldHighlight) {
|
||||
SegmentVote(@NonNull StringRef title, int apiVoteType, boolean highlightIfVipAndVideoIsLocked) {
|
||||
this.title = title;
|
||||
this.apiVoteType = apiVoteType;
|
||||
this.shouldHighlight = shouldHighlight;
|
||||
this.highlightIfVipAndVideoIsLocked = highlightIfVipAndVideoIsLocked;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -3,4 +3,4 @@ org.gradle.jvmargs = -Xms512M -Xmx2048M
|
||||
org.gradle.parallel = true
|
||||
android.useAndroidX = true
|
||||
kotlin.code.style = official
|
||||
version = 5.14.0-dev.1
|
||||
version = 5.16.0-dev.2
|
||||
|
||||
@@ -816,6 +816,14 @@ public final class app/revanced/patches/spotify/lite/ondemand/OnDemandPatchKt {
|
||||
public static final fun getOnDemandPatch ()Lapp/revanced/patcher/patch/BytecodePatch;
|
||||
}
|
||||
|
||||
public final class app/revanced/patches/spotify/misc/UnlockPremiumPatchKt {
|
||||
public static final fun getUnlockPremiumPatch ()Lapp/revanced/patcher/patch/BytecodePatch;
|
||||
}
|
||||
|
||||
public final class app/revanced/patches/spotify/misc/fix/SpoofSignaturePatchKt {
|
||||
public static final fun getSpoofSignaturePatch ()Lapp/revanced/patcher/patch/BytecodePatch;
|
||||
}
|
||||
|
||||
public final class app/revanced/patches/spotify/navbar/PremiumNavbarTabPatchKt {
|
||||
public static final fun getPremiumNavbarTabPatch ()Lapp/revanced/patcher/patch/BytecodePatch;
|
||||
}
|
||||
@@ -1463,6 +1471,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;
|
||||
}
|
||||
|
||||
@@ -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(
|
||||
|
||||
@@ -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.
|
||||
|
||||
@@ -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
|
||||
}
|
||||
|
||||
@@ -8,7 +8,11 @@ import com.android.tools.smali.dexlib2.immutable.ImmutableMethod
|
||||
import com.android.tools.smali.dexlib2.immutable.ImmutableMethodImplementation
|
||||
|
||||
val spoofClientPatch = spoofClientPatch(redirectUri = "infinity://localhost") { clientIdOption ->
|
||||
compatibleWith("ml.docilealligator.infinityforreddit", "ml.docilealligator.infinityforreddit.plus")
|
||||
compatibleWith(
|
||||
"ml.docilealligator.infinityforreddit",
|
||||
"ml.docilealligator.infinityforreddit.plus",
|
||||
"ml.docilealligator.infinityforreddit.patreon"
|
||||
)
|
||||
|
||||
val clientId by clientIdOption
|
||||
|
||||
|
||||
@@ -11,7 +11,11 @@ val unlockSubscriptionPatch = bytecodePatch(
|
||||
) {
|
||||
dependsOn(spoofClientPatch)
|
||||
|
||||
compatibleWith("ml.docilealligator.infinityforreddit", "ml.docilealligator.infinityforreddit.plus")
|
||||
compatibleWith(
|
||||
"ml.docilealligator.infinityforreddit",
|
||||
"ml.docilealligator.infinityforreddit.plus",
|
||||
"ml.docilealligator.infinityforreddit.patreon"
|
||||
)
|
||||
|
||||
execute {
|
||||
setOf(
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
package app.revanced.patches.spotify.misc
|
||||
|
||||
import app.revanced.patcher.fingerprint
|
||||
|
||||
internal val accountAttributeFingerprint = fingerprint {
|
||||
custom { _, c -> c.endsWith("internal/AccountAttribute;") }
|
||||
}
|
||||
|
||||
internal val productStateProtoFingerprint = fingerprint {
|
||||
returns("Ljava/util/Map;")
|
||||
custom { _, classDef ->
|
||||
classDef.endsWith("ProductStateProto;")
|
||||
}
|
||||
}
|
||||
|
||||
internal val buildQueryParametersFingerprint = fingerprint {
|
||||
strings("trackRows", "device_type:tablet")
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
package app.revanced.patches.spotify.misc.fix
|
||||
|
||||
import app.revanced.patcher.fingerprint
|
||||
|
||||
internal val getAppSignatureFingerprint = fingerprint { strings("Failed to get the application signatures") }
|
||||
@@ -0,0 +1,33 @@
|
||||
package app.revanced.patches.spotify.misc.fix
|
||||
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.getInstruction
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.replaceInstruction
|
||||
import app.revanced.patcher.patch.bytecodePatch
|
||||
import app.revanced.util.indexOfFirstInstructionReversedOrThrow
|
||||
import com.android.tools.smali.dexlib2.Opcode
|
||||
import com.android.tools.smali.dexlib2.iface.instruction.OneRegisterInstruction
|
||||
|
||||
@Suppress("unused")
|
||||
val spoofSignaturePatch = bytecodePatch(
|
||||
name = "Spoof signature",
|
||||
description = "Spoofs the signature of the app to fix various functions of the app.",
|
||||
) {
|
||||
compatibleWith("com.spotify.music")
|
||||
|
||||
execute {
|
||||
getAppSignatureFingerprint.method.apply {
|
||||
val failedToGetSignaturesStringMatch = getAppSignatureFingerprint.stringMatches!!.first()
|
||||
|
||||
val concatSignaturesIndex = indexOfFirstInstructionReversedOrThrow(
|
||||
failedToGetSignaturesStringMatch.index,
|
||||
Opcode.MOVE_RESULT_OBJECT,
|
||||
)
|
||||
|
||||
val register = getInstruction<OneRegisterInstruction>(concatSignaturesIndex).registerA
|
||||
|
||||
val expectedSignature = "d6a6dced4a85f24204bf9505ccc1fce114cadb32"
|
||||
|
||||
replaceInstruction(concatSignaturesIndex, "const-string v$register, \"$expectedSignature\"")
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
package app.revanced.patches.spotify.navbar
|
||||
|
||||
import app.revanced.patcher.fingerprint
|
||||
import app.revanced.util.literal
|
||||
import com.android.tools.smali.dexlib2.AccessFlags
|
||||
|
||||
internal val addNavBarItemFingerprint = fingerprint {
|
||||
accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL)
|
||||
returns("V")
|
||||
literal { showBottomNavigationItemsTextId }
|
||||
}
|
||||
@@ -1,50 +1,12 @@
|
||||
package app.revanced.patches.spotify.navbar
|
||||
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
|
||||
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
|
||||
|
||||
internal var showBottomNavigationItemsTextId = -1L
|
||||
private set
|
||||
internal var premiumTabId = -1L
|
||||
private set
|
||||
|
||||
private val premiumNavbarTabResourcePatch = resourcePatch {
|
||||
dependsOn(resourceMappingPatch)
|
||||
|
||||
execute {
|
||||
premiumTabId = resourceMappings["id", "premium_tab"]
|
||||
|
||||
showBottomNavigationItemsTextId = resourceMappings[
|
||||
"bool",
|
||||
"show_bottom_navigation_items_text",
|
||||
]
|
||||
}
|
||||
}
|
||||
import app.revanced.patches.spotify.misc.unlockPremiumPatch
|
||||
|
||||
@Deprecated("Superseded by unlockPremiumPatch", ReplaceWith("unlockPremiumPatch"))
|
||||
@Suppress("unused")
|
||||
val premiumNavbarTabPatch = bytecodePatch(
|
||||
name = "Premium navbar tab",
|
||||
description = "Hides the premium tab from the navigation bar.",
|
||||
) {
|
||||
dependsOn(premiumNavbarTabResourcePatch)
|
||||
|
||||
compatibleWith("com.spotify.music")
|
||||
|
||||
// If the navigation bar item is the premium tab, do not add it.
|
||||
execute {
|
||||
addNavBarItemFingerprint.method.addInstructions(
|
||||
0,
|
||||
"""
|
||||
const v1, $premiumTabId
|
||||
if-ne p5, v1, :continue
|
||||
return-void
|
||||
:continue
|
||||
nop
|
||||
""",
|
||||
)
|
||||
}
|
||||
dependsOn(unlockPremiumPatch)
|
||||
}
|
||||
|
||||
@@ -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(
|
||||
|
||||
@@ -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")
|
||||
|
||||
@@ -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(
|
||||
|
||||
@@ -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;"
|
||||
|
||||
|
||||
@@ -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(
|
||||
|
||||
@@ -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(
|
||||
|
||||
@@ -142,6 +142,7 @@ val hideLayoutComponentsPatch = bytecodePatch(
|
||||
PreferenceScreenPreference(
|
||||
key = "revanced_hide_description_components_screen",
|
||||
preferences = setOf(
|
||||
SwitchPreference("revanced_hide_ai_generated_video_summary_section"),
|
||||
SwitchPreference("revanced_hide_attributes_section"),
|
||||
SwitchPreference("revanced_hide_chapters_section"),
|
||||
SwitchPreference("revanced_hide_info_cards_section"),
|
||||
@@ -154,7 +155,8 @@ val hideLayoutComponentsPatch = bytecodePatch(
|
||||
PreferenceScreenPreference(
|
||||
"revanced_comments_screen",
|
||||
preferences = setOf(
|
||||
SwitchPreference("revanced_hide_comments_chat_summary"),
|
||||
SwitchPreference("revanced_hide_comments_ai_chat_summary"),
|
||||
SwitchPreference("revanced_hide_comments_ai_summary"),
|
||||
SwitchPreference("revanced_hide_comments_by_members_header"),
|
||||
SwitchPreference("revanced_hide_comments_section"),
|
||||
SwitchPreference("revanced_hide_comments_create_a_short_button"),
|
||||
|
||||
@@ -98,20 +98,6 @@ internal val rollingNumberTextViewFingerprint = fingerprint {
|
||||
}
|
||||
}
|
||||
|
||||
internal val shortsTextViewFingerprint = fingerprint {
|
||||
accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL)
|
||||
returns("V")
|
||||
parameters("L", "L")
|
||||
opcodes(
|
||||
Opcode.INVOKE_SUPER, // first instruction of method
|
||||
Opcode.IF_NEZ,
|
||||
null,
|
||||
Opcode.INVOKE_VIRTUAL,
|
||||
Opcode.MOVE_RESULT_OBJECT,
|
||||
Opcode.CHECK_CAST,
|
||||
)
|
||||
}
|
||||
|
||||
internal val textComponentConstructorFingerprint = fingerprint {
|
||||
accessFlags(AccessFlags.CONSTRUCTOR, AccessFlags.PRIVATE)
|
||||
strings("TextComponent")
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
package app.revanced.patches.youtube.layout.returnyoutubedislike
|
||||
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.addInstructionsWithLabels
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.getInstruction
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.instructions
|
||||
import app.revanced.patcher.patch.PatchException
|
||||
import app.revanced.patcher.patch.bytecodePatch
|
||||
import app.revanced.patches.all.misc.resources.addResources
|
||||
@@ -169,51 +167,7 @@ val returnYouTubeDislikePatch = bytecodePatch(
|
||||
|
||||
// endregion
|
||||
|
||||
// region Hook for non-litho Short videos.
|
||||
shortsTextViewFingerprint.method.apply {
|
||||
val insertIndex = shortsTextViewFingerprint.patternMatch!!.endIndex + 1
|
||||
|
||||
// If the field is true, the TextView is for a dislike button.
|
||||
val isDisLikesBooleanInstruction = instructions.first { instruction ->
|
||||
instruction.opcode == Opcode.IGET_BOOLEAN
|
||||
} as ReferenceInstruction
|
||||
|
||||
val isDisLikesBooleanReference = isDisLikesBooleanInstruction.reference
|
||||
|
||||
// Like/Dislike button TextView field.
|
||||
val textViewFieldInstruction = instructions.first { instruction ->
|
||||
instruction.opcode == Opcode.IGET_OBJECT
|
||||
} as ReferenceInstruction
|
||||
|
||||
val textViewFieldReference = textViewFieldInstruction.reference
|
||||
|
||||
// Check if the hooked TextView object is that of the dislike button.
|
||||
// If RYD is disabled, or the TextView object is not that of the dislike button, the execution flow is not interrupted.
|
||||
// Otherwise, the TextView object is modified, and the execution flow is interrupted to prevent it from being changed afterward.
|
||||
addInstructionsWithLabels(
|
||||
insertIndex,
|
||||
"""
|
||||
# Check, if the TextView is for a dislike button
|
||||
iget-boolean v0, p0, $isDisLikesBooleanReference
|
||||
if-eqz v0, :is_like
|
||||
|
||||
# Hook the TextView, if it is for the dislike button
|
||||
iget-object v0, p0, $textViewFieldReference
|
||||
invoke-static {v0}, $EXTENSION_CLASS_DESCRIPTOR->setShortsDislikes(Landroid/view/View;)Z
|
||||
move-result v0
|
||||
if-eqz v0, :ryd_disabled
|
||||
return-void
|
||||
|
||||
:is_like
|
||||
:ryd_disabled
|
||||
nop
|
||||
""",
|
||||
)
|
||||
}
|
||||
|
||||
// endregion
|
||||
|
||||
// region Hook for litho Shorts
|
||||
// region Hook Shorts
|
||||
|
||||
// Filter that parses the video id from the UI
|
||||
addLithoFilter(FILTER_CLASS_DESCRIPTOR)
|
||||
@@ -255,22 +209,25 @@ val returnYouTubeDislikePatch = bytecodePatch(
|
||||
)
|
||||
}
|
||||
|
||||
// Rolling Number text views use the measured width of the raw string for layout.
|
||||
// Modify the measure text calculation to include the left drawable separator if needed.
|
||||
val patternMatch = rollingNumberMeasureAnimatedTextFingerprint.patternMatch!!
|
||||
// Additional check to verify the opcodes are at the start of the method
|
||||
if (patternMatch.startIndex != 0) throw PatchException("Unexpected opcode location")
|
||||
val endIndex = patternMatch.endIndex
|
||||
rollingNumberMeasureAnimatedTextFingerprint.method.apply {
|
||||
val measuredTextWidthRegister = getInstruction<OneRegisterInstruction>(endIndex).registerA
|
||||
rollingNumberMeasureAnimatedTextFingerprint.let {
|
||||
// Rolling Number text views use the measured width of the raw string for layout.
|
||||
// Modify the measure text calculation to include the left drawable separator if needed.
|
||||
val patternMatch = it.patternMatch!!
|
||||
// Verify the opcodes are at the start of the method.
|
||||
if (patternMatch.startIndex != 0) throw PatchException("Unexpected opcode location")
|
||||
val endIndex = patternMatch.endIndex
|
||||
|
||||
addInstructions(
|
||||
endIndex + 1,
|
||||
"""
|
||||
invoke-static {p1, v$measuredTextWidthRegister}, $EXTENSION_CLASS_DESCRIPTOR->onRollingNumberMeasured(Ljava/lang/String;F)F
|
||||
move-result v$measuredTextWidthRegister
|
||||
""",
|
||||
)
|
||||
it.method.apply {
|
||||
val measuredTextWidthRegister = getInstruction<OneRegisterInstruction>(endIndex).registerA
|
||||
|
||||
addInstructions(
|
||||
endIndex + 1,
|
||||
"""
|
||||
invoke-static {p1, v$measuredTextWidthRegister}, $EXTENSION_CLASS_DESCRIPTOR->onRollingNumberMeasured(Ljava/lang/String;F)F
|
||||
move-result v$measuredTextWidthRegister
|
||||
"""
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
// Additional text measurement method. Used if YouTube decides not to animate the likes count
|
||||
@@ -291,15 +248,14 @@ val returnYouTubeDislikePatch = bytecodePatch(
|
||||
)
|
||||
}
|
||||
}
|
||||
// The rolling number Span is missing styling since it's initially set as a String.
|
||||
// Modify the UI text view and use the styled like/dislike Span.
|
||||
// Initial TextView is set in this method.
|
||||
val initiallyCreatedTextViewMethod = rollingNumberTextViewFingerprint.method
|
||||
|
||||
// Videos less than 24 hours after uploaded, like counts will be updated in real time.
|
||||
// Whenever like counts are updated, TextView is set in this method.
|
||||
arrayOf(
|
||||
initiallyCreatedTextViewMethod,
|
||||
// The rolling number Span is missing styling since it's initially set as a String.
|
||||
// Modify the UI text view and use the styled like/dislike Span.
|
||||
// Initial TextView is set in this method.
|
||||
rollingNumberTextViewFingerprint.method,
|
||||
// Videos less than 24 hours after uploaded, like counts will be updated in real time.
|
||||
// Whenever like counts are updated, TextView is set in this method.
|
||||
rollingNumberTextViewAnimationUpdateFingerprint.method,
|
||||
).forEach { insertMethod ->
|
||||
insertMethod.apply {
|
||||
@@ -315,9 +271,9 @@ val returnYouTubeDislikePatch = bytecodePatch(
|
||||
addInstructions(
|
||||
setTextIndex,
|
||||
"""
|
||||
invoke-static {v$textViewRegister, v$textSpanRegister}, $EXTENSION_CLASS_DESCRIPTOR->updateRollingNumber(Landroid/widget/TextView;Ljava/lang/CharSequence;)Ljava/lang/CharSequence;
|
||||
move-result-object v$textSpanRegister
|
||||
""",
|
||||
invoke-static {v$textViewRegister, v$textSpanRegister}, $EXTENSION_CLASS_DESCRIPTOR->updateRollingNumber(Landroid/widget/TextView;Ljava/lang/CharSequence;)Ljava/lang/CharSequence;
|
||||
move-result-object v$textSpanRegister
|
||||
"""
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@ private const val EXTENSION_CLASS_DESCRIPTOR =
|
||||
"Lapp/revanced/extension/youtube/patches/WideSearchbarPatch;"
|
||||
|
||||
val wideSearchbarPatch = bytecodePatch(
|
||||
name = "Wide searchbar",
|
||||
name = "Wide search bar",
|
||||
description = "Adds an option to replace the search icon with a wide search bar. This will hide the YouTube logo when active.",
|
||||
) {
|
||||
dependsOn(
|
||||
|
||||
@@ -16,7 +16,7 @@ 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
|
||||
import app.revanced.patches.youtube.misc.playservice.is_19_43_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
|
||||
@@ -46,8 +46,7 @@ private const val EXTENSION_CLASS_DESCRIPTOR =
|
||||
val spoofAppVersionPatch = bytecodePatch(
|
||||
name = "Spoof app version",
|
||||
description = "Adds an option to trick YouTube into thinking you are running an older version of the app. " +
|
||||
"This can be used to restore old UI elements and features. " +
|
||||
"Patching 19.16.39 includes additional older spoofing targets.",
|
||||
"This can be used to restore old UI elements and features."
|
||||
) {
|
||||
dependsOn(
|
||||
spoofAppVersionResourcePatch,
|
||||
@@ -60,8 +59,8 @@ val spoofAppVersionPatch = bytecodePatch(
|
||||
compatibleWith(
|
||||
"com.google.android.youtube"(
|
||||
"19.16.39",
|
||||
// "19.25.37", // Cannot be supported because the lowest spoof target is higher.
|
||||
// "19.34.42", // Cannot be supported because the lowest spoof target is higher.
|
||||
"19.25.37",
|
||||
"19.34.42",
|
||||
"19.43.41",
|
||||
"19.45.38",
|
||||
"19.46.42",
|
||||
@@ -76,14 +75,12 @@ val spoofAppVersionPatch = bytecodePatch(
|
||||
// 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",
|
||||
titleKey = null,
|
||||
sorting = Sorting.UNSORTED,
|
||||
tag = "app.revanced.extension.shared.settings.preference.NoTitlePreferenceCategory",
|
||||
preferences = setOf(
|
||||
SwitchPreference("revanced_spoof_app_version"),
|
||||
if (is_19_17_or_greater) {
|
||||
if (is_19_43_or_greater) {
|
||||
ListPreference(
|
||||
key = "revanced_spoof_app_version_target",
|
||||
summaryKey = null,
|
||||
@@ -101,10 +98,9 @@ val spoofAppVersionPatch = bytecodePatch(
|
||||
)
|
||||
|
||||
/**
|
||||
* If a user really wants to spoof to very old versions with the latest app target
|
||||
* they can modify the import/export spoof version. But when spoofing the 19.20.xx
|
||||
* or earlier the Library tab can crash due to missing image resources trying to load.
|
||||
* As a temporary workaround, do not set an image in the toolbar when the enum name is UNKNOWN.
|
||||
* If spoofing to target 19.20 or earlier the Library tab can crash due to
|
||||
* missing image resources. As a workaround, do not set an image in the
|
||||
* toolbar when the enum name is UNKNOWN.
|
||||
*/
|
||||
toolBarButtonFingerprint.method.apply {
|
||||
val getDrawableIndex = indexOfGetDrawableInstruction(this)
|
||||
|
||||
@@ -8,7 +8,10 @@ import app.revanced.patcher.patch.stringOption
|
||||
import app.revanced.patches.all.misc.resources.addResources
|
||||
import app.revanced.patches.all.misc.resources.addResourcesPatch
|
||||
import app.revanced.patches.shared.misc.mapping.resourceMappingPatch
|
||||
import app.revanced.patches.shared.misc.settings.preference.BasePreference
|
||||
import app.revanced.patches.shared.misc.settings.preference.InputType
|
||||
import app.revanced.patches.shared.misc.settings.preference.PreferenceCategory
|
||||
import app.revanced.patches.shared.misc.settings.preference.PreferenceScreenPreference.Sorting
|
||||
import app.revanced.patches.shared.misc.settings.preference.SwitchPreference
|
||||
import app.revanced.patches.shared.misc.settings.preference.TextPreference
|
||||
import app.revanced.patches.youtube.layout.seekbar.seekbarColorPatch
|
||||
@@ -71,6 +74,9 @@ val themePatch = bytecodePatch(
|
||||
)
|
||||
|
||||
dependsOn(
|
||||
sharedExtensionPatch,
|
||||
settingsPatch,
|
||||
addResourcesPatch,
|
||||
lithoColorHookPatch,
|
||||
seekbarColorPatch,
|
||||
versionCheckPatch,
|
||||
@@ -78,23 +84,30 @@ val themePatch = bytecodePatch(
|
||||
dependsOn(
|
||||
settingsPatch,
|
||||
resourceMappingPatch,
|
||||
addResourcesPatch,
|
||||
)
|
||||
|
||||
execute {
|
||||
addResources("youtube", "layout.theme.themeResourcePatch")
|
||||
|
||||
PreferenceScreen.SEEKBAR.addPreferences(
|
||||
val preferences = mutableSetOf<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(
|
||||
titleKey = null,
|
||||
sorting = Sorting.UNSORTED,
|
||||
tag = "app.revanced.extension.shared.settings.preference.NoTitlePreferenceCategory",
|
||||
preferences = preferences
|
||||
)
|
||||
)
|
||||
|
||||
// Edit theme colors via resources.
|
||||
document("res/values/colors.xml").use { document ->
|
||||
|
||||
@@ -125,7 +138,6 @@ val themePatch = bytecodePatch(
|
||||
colorValue: String,
|
||||
) {
|
||||
document(resourceFile).use { document ->
|
||||
|
||||
val resourcesNode = document.getElementsByTagName("resources").item(0) as Element
|
||||
|
||||
resourcesNode.appendChild(
|
||||
@@ -133,7 +145,7 @@ val themePatch = bytecodePatch(
|
||||
setAttribute("name", colorName)
|
||||
setAttribute("category", "color")
|
||||
textContent = colorValue
|
||||
},
|
||||
}
|
||||
)
|
||||
}
|
||||
}
|
||||
@@ -152,11 +164,10 @@ val themePatch = bytecodePatch(
|
||||
// Edit splash screen files and change the background color,
|
||||
// if the background colors are set.
|
||||
if (darkThemeBackgroundColor != null && lightThemeBackgroundColor != null) {
|
||||
val splashScreenResourceFiles =
|
||||
listOf(
|
||||
"res/drawable/quantum_launchscreen_youtube.xml",
|
||||
"res/drawable-sw600dp/quantum_launchscreen_youtube.xml",
|
||||
)
|
||||
val splashScreenResourceFiles = listOf(
|
||||
"res/drawable/quantum_launchscreen_youtube.xml",
|
||||
"res/drawable-sw600dp/quantum_launchscreen_youtube.xml",
|
||||
)
|
||||
|
||||
splashScreenResourceFiles.forEach editSplashScreen@{ resourceFile ->
|
||||
document(resourceFile).use { document ->
|
||||
@@ -174,36 +185,34 @@ val themePatch = bytecodePatch(
|
||||
// Fix the splash screen dark mode background color.
|
||||
// In 19.32+ the dark mode splash screen is white and fades to black.
|
||||
// Maybe it's a bug in YT, or maybe it intentionally. Who knows.
|
||||
document("res/values-night/styles.xml").use { document ->
|
||||
val resourcesNode = document.getElementsByTagName("resources").item(0) as Element
|
||||
val childNodes = resourcesNode.childNodes
|
||||
document("res/values-night-v27/styles.xml").use { document ->
|
||||
// Create a night mode specific override for the splash screen background.
|
||||
val style = document.createElement("style")
|
||||
style.setAttribute("name", "Theme.YouTube.Home")
|
||||
style.setAttribute("parent", "@style/Base.V27.Theme.YouTube.Home")
|
||||
|
||||
for (i in 0 until childNodes.length) {
|
||||
val node = childNodes.item(i) as? Element ?: continue
|
||||
val nodeAttributeName = node.getAttribute("name")
|
||||
if (nodeAttributeName.startsWith("Theme.YouTube.Launcher")) {
|
||||
val nodeAttributeParent = node.getAttribute("parent")
|
||||
|
||||
val style = document.createElement("style")
|
||||
style.setAttribute("name", "Theme.YouTube.Home")
|
||||
style.setAttribute("parent", nodeAttributeParent)
|
||||
|
||||
val windowItem = document.createElement("item")
|
||||
windowItem.setAttribute("name", "android:windowBackground")
|
||||
windowItem.textContent = "@color/$splashBackgroundColor"
|
||||
style.appendChild(windowItem)
|
||||
|
||||
resourcesNode.removeChild(node)
|
||||
resourcesNode.appendChild(style)
|
||||
}
|
||||
// Fix status and navigation bar showing white on some Android devices,
|
||||
// such as SDK 28 Android 10 medium tablet.
|
||||
val colorSplashBackgroundColor = "@color/$splashBackgroundColor"
|
||||
arrayOf(
|
||||
"android:navigationBarColor" to colorSplashBackgroundColor,
|
||||
"android:windowBackground" to colorSplashBackgroundColor,
|
||||
"android:colorBackground" to colorSplashBackgroundColor,
|
||||
"colorPrimaryDark" to colorSplashBackgroundColor,
|
||||
"android:windowLightStatusBar" to "false",
|
||||
).forEach { (name, value) ->
|
||||
val styleItem = document.createElement("item")
|
||||
styleItem.setAttribute("name", name)
|
||||
styleItem.textContent = value
|
||||
style.appendChild(styleItem)
|
||||
}
|
||||
|
||||
val resourcesNode = document.getElementsByTagName("resources").item(0) as Element
|
||||
resourcesNode.appendChild(style)
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
sharedExtensionPatch,
|
||||
settingsPatch,
|
||||
addResourcesPatch,
|
||||
}
|
||||
)
|
||||
|
||||
compatibleWith(
|
||||
|
||||
@@ -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.",
|
||||
|
||||
@@ -15,7 +15,7 @@ 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
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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
|
||||
}
|
||||
}
|
||||
@@ -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 }
|
||||
}
|
||||
|
||||
@@ -8,12 +8,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.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.playertype.playerTypeHookPatch
|
||||
import app.revanced.patches.youtube.misc.settings.PreferenceScreen
|
||||
import app.revanced.patches.youtube.misc.settings.settingsPatch
|
||||
import app.revanced.patches.youtube.shared.newVideoQualityChangedFingerprint
|
||||
import app.revanced.patches.youtube.video.information.onCreateHook
|
||||
@@ -25,10 +22,7 @@ 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,
|
||||
@@ -37,59 +31,38 @@ val rememberVideoQualityPatch = bytecodePatch(
|
||||
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(
|
||||
// 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 = setOf(
|
||||
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"),
|
||||
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")
|
||||
)
|
||||
)
|
||||
)
|
||||
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
|
||||
|
||||
@@ -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
|
||||
)
|
||||
)
|
||||
}
|
||||
}
|
||||
@@ -17,13 +17,13 @@ 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(
|
||||
@@ -38,10 +38,10 @@ val playbackSpeedPatch = bytecodePatch(
|
||||
)
|
||||
)
|
||||
|
||||
finalize {
|
||||
execute {
|
||||
PreferenceScreen.VIDEO.addPreferences(
|
||||
PreferenceCategory(
|
||||
key = "revanced_zz_key", // Dummy key to force the speed settings last.
|
||||
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",
|
||||
|
||||
@@ -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 {
|
||||
|
||||
@@ -60,12 +60,12 @@ internal val customPlaybackSpeedPatch = bytecodePatch(
|
||||
) {
|
||||
dependsOn(
|
||||
sharedExtensionPatch,
|
||||
lithoFilterPatch,
|
||||
settingsPatch,
|
||||
recyclerViewTreeHookPatch,
|
||||
customPlaybackSpeedResourcePatch,
|
||||
addResourcesPatch,
|
||||
versionCheckPatch
|
||||
lithoFilterPatch,
|
||||
versionCheckPatch,
|
||||
recyclerViewTreeHookPatch,
|
||||
customPlaybackSpeedResourcePatch
|
||||
)
|
||||
|
||||
execute {
|
||||
|
||||
@@ -22,9 +22,9 @@ internal val rememberPlaybackSpeedPatch = bytecodePatch {
|
||||
dependsOn(
|
||||
sharedExtensionPatch,
|
||||
settingsPatch,
|
||||
videoInformationPatch,
|
||||
customPlaybackSpeedPatch,
|
||||
addResourcesPatch,
|
||||
videoInformationPatch,
|
||||
customPlaybackSpeedPatch
|
||||
)
|
||||
|
||||
execute {
|
||||
@@ -44,6 +44,7 @@ internal val rememberPlaybackSpeedPatch = bytecodePatch {
|
||||
)
|
||||
|
||||
onCreateHook(EXTENSION_CLASS_DESCRIPTOR, "newVideoStarted")
|
||||
|
||||
userSelectedPlaybackSpeedHook(
|
||||
EXTENSION_CLASS_DESCRIPTOR,
|
||||
"userSelectedPlaybackSpeed",
|
||||
|
||||
@@ -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 }
|
||||
}
|
||||
@@ -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)
|
||||
}
|
||||
@@ -178,8 +178,7 @@ fun Method.indexOfFirstLiteralInstructionReversedOrThrow(literal: Long): Int {
|
||||
*
|
||||
* @return if the method contains a literal with the given value.
|
||||
*/
|
||||
fun Method.containsLiteralInstruction(literal: Long) =
|
||||
indexOfFirstLiteralInstruction(literal) >= 0
|
||||
fun Method.containsLiteralInstruction(literal: Long) = indexOfFirstLiteralInstruction(literal) >= 0
|
||||
|
||||
/**
|
||||
* Traverse the class hierarchy starting from the given root class.
|
||||
@@ -205,25 +204,22 @@ fun BytecodePatchContext.traverseClassHierarchy(targetClass: MutableClass, callb
|
||||
* if the [Instruction] is not a [ReferenceInstruction] or the [Reference] is not of type [T].
|
||||
* @see ReferenceInstruction
|
||||
*/
|
||||
inline fun <reified T : Reference> Instruction.getReference() =
|
||||
(this as? ReferenceInstruction)?.reference as? T
|
||||
inline fun <reified T : Reference> Instruction.getReference() = (this as? ReferenceInstruction)?.reference as? T
|
||||
|
||||
/**
|
||||
* @return The index of the first opcode specified, or -1 if not found.
|
||||
* @see indexOfFirstInstructionOrThrow
|
||||
*/
|
||||
fun Method.indexOfFirstInstruction(targetOpcode: Opcode): Int =
|
||||
indexOfFirstInstruction(0, targetOpcode)
|
||||
fun Method.indexOfFirstInstruction(targetOpcode: Opcode): Int = indexOfFirstInstruction(0, targetOpcode)
|
||||
|
||||
/**
|
||||
* @param startIndex Optional starting index to start searching from.
|
||||
* @return The index of the first opcode specified, or -1 if not found.
|
||||
* @see indexOfFirstInstructionOrThrow
|
||||
*/
|
||||
fun Method.indexOfFirstInstruction(startIndex: Int = 0, targetOpcode: Opcode): Int =
|
||||
indexOfFirstInstruction(startIndex) {
|
||||
opcode == targetOpcode
|
||||
}
|
||||
fun Method.indexOfFirstInstruction(startIndex: Int = 0, targetOpcode: Opcode): Int = indexOfFirstInstruction(startIndex) {
|
||||
opcode == targetOpcode
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the index of the first [Instruction] that matches the predicate, starting from [startIndex].
|
||||
@@ -251,23 +247,21 @@ fun Method.indexOfFirstInstruction(startIndex: Int = 0, filter: Instruction.() -
|
||||
* @throws PatchException
|
||||
* @see indexOfFirstInstruction
|
||||
*/
|
||||
fun Method.indexOfFirstInstructionOrThrow(targetOpcode: Opcode): Int =
|
||||
indexOfFirstInstructionOrThrow(0, targetOpcode)
|
||||
fun Method.indexOfFirstInstructionOrThrow(targetOpcode: Opcode): Int = indexOfFirstInstructionOrThrow(0, targetOpcode)
|
||||
|
||||
/**
|
||||
* @return The index of the first opcode specified, starting from the index specified.
|
||||
* @throws PatchException
|
||||
* @see indexOfFirstInstruction
|
||||
*/
|
||||
fun Method.indexOfFirstInstructionOrThrow(startIndex: Int = 0, targetOpcode: Opcode): Int =
|
||||
indexOfFirstInstructionOrThrow(startIndex) {
|
||||
opcode == targetOpcode
|
||||
}
|
||||
fun Method.indexOfFirstInstructionOrThrow(startIndex: Int = 0, targetOpcode: Opcode): Int = indexOfFirstInstructionOrThrow(startIndex) {
|
||||
opcode == targetOpcode
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the index of the first [Instruction] that matches the predicate, starting from [startIndex].
|
||||
*
|
||||
* @return the index of the instruction
|
||||
* @return The index of the instruction.
|
||||
* @throws PatchException
|
||||
* @see indexOfFirstInstruction
|
||||
*/
|
||||
@@ -288,10 +282,9 @@ fun Method.indexOfFirstInstructionOrThrow(startIndex: Int = 0, filter: Instructi
|
||||
* @return -1 if the instruction is not found.
|
||||
* @see indexOfFirstInstructionReversedOrThrow
|
||||
*/
|
||||
fun Method.indexOfFirstInstructionReversed(startIndex: Int? = null, targetOpcode: Opcode): Int =
|
||||
indexOfFirstInstructionReversed(startIndex) {
|
||||
opcode == targetOpcode
|
||||
}
|
||||
fun Method.indexOfFirstInstructionReversed(startIndex: Int? = null, targetOpcode: Opcode): Int = indexOfFirstInstructionReversed(startIndex) {
|
||||
opcode == targetOpcode
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the index of matching instruction,
|
||||
@@ -316,23 +309,21 @@ fun Method.indexOfFirstInstructionReversed(startIndex: Int? = null, filter: Inst
|
||||
*
|
||||
* @return -1 if the instruction is not found.
|
||||
*/
|
||||
fun Method.indexOfFirstInstructionReversed(targetOpcode: Opcode): Int =
|
||||
indexOfFirstInstructionReversed {
|
||||
opcode == targetOpcode
|
||||
}
|
||||
fun Method.indexOfFirstInstructionReversed(targetOpcode: Opcode): Int = indexOfFirstInstructionReversed {
|
||||
opcode == targetOpcode
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the index of matching instruction,
|
||||
* starting from and [startIndex] and searching down.
|
||||
*
|
||||
* @param startIndex Optional starting index to search down from. Searching includes the start index.
|
||||
* @return -1 if the instruction is not found.
|
||||
* @return The index of the instruction.
|
||||
* @see indexOfFirstInstructionReversed
|
||||
*/
|
||||
fun Method.indexOfFirstInstructionReversedOrThrow(startIndex: Int? = null, targetOpcode: Opcode): Int =
|
||||
indexOfFirstInstructionReversedOrThrow(startIndex) {
|
||||
opcode == targetOpcode
|
||||
}
|
||||
fun Method.indexOfFirstInstructionReversedOrThrow(startIndex: Int? = null, targetOpcode: Opcode): Int = indexOfFirstInstructionReversedOrThrow(startIndex) {
|
||||
opcode == targetOpcode
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the index of matching instruction,
|
||||
@@ -340,16 +331,16 @@ fun Method.indexOfFirstInstructionReversedOrThrow(startIndex: Int? = null, targe
|
||||
*
|
||||
* @return -1 if the instruction is not found.
|
||||
*/
|
||||
fun Method.indexOfFirstInstructionReversedOrThrow(targetOpcode: Opcode): Int =
|
||||
indexOfFirstInstructionReversedOrThrow {
|
||||
opcode == targetOpcode
|
||||
}
|
||||
fun Method.indexOfFirstInstructionReversedOrThrow(targetOpcode: Opcode): Int = indexOfFirstInstructionReversedOrThrow {
|
||||
opcode == targetOpcode
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the index of matching instruction,
|
||||
* starting from and [startIndex] and searching down.
|
||||
*
|
||||
* @param startIndex Optional starting index to search down from. Searching includes the start index.
|
||||
* @return -1 if the instruction is not found.
|
||||
* @return The index of the instruction.
|
||||
* @see indexOfFirstInstructionReversed
|
||||
*/
|
||||
fun Method.indexOfFirstInstructionReversedOrThrow(startIndex: Int? = null, filter: Instruction.() -> Boolean): Int {
|
||||
@@ -389,8 +380,7 @@ fun Method.findInstructionIndicesReversedOrThrow(filter: Instruction.() -> Boole
|
||||
* _Returns an empty list if no indices are found_
|
||||
* @see findInstructionIndicesReversedOrThrow
|
||||
*/
|
||||
fun Method.findInstructionIndicesReversed(opcode: Opcode): List<Int> =
|
||||
findInstructionIndicesReversed { this.opcode == opcode }
|
||||
fun Method.findInstructionIndicesReversed(opcode: Opcode): List<Int> = findInstructionIndicesReversed { this.opcode == opcode }
|
||||
|
||||
/**
|
||||
* @return An immutable list of indices of the opcode in reverse order.
|
||||
@@ -408,15 +398,18 @@ internal fun MutableMethod.insertFeatureFlagBooleanOverride(literal: Long, exten
|
||||
val index = indexOfFirstInstructionOrThrow(literalIndex, Opcode.MOVE_RESULT)
|
||||
val register = getInstruction<OneRegisterInstruction>(index).registerA
|
||||
|
||||
val operation = if (register < 16) "invoke-static { v$register }"
|
||||
else "invoke-static/range { v$register .. v$register }"
|
||||
val operation = if (register < 16) {
|
||||
"invoke-static { v$register }"
|
||||
} else {
|
||||
"invoke-static/range { v$register .. v$register }"
|
||||
}
|
||||
|
||||
addInstructions(
|
||||
index + 1,
|
||||
"""
|
||||
$operation, $extensionsMethod
|
||||
move-result v$register
|
||||
"""
|
||||
""",
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
@@ -156,6 +156,7 @@ Second \"item\" text"</string>
|
||||
<patch id="layout.sponsorblock.sponsorBlockResourcePatch">
|
||||
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title' -->
|
||||
<!-- Toast shown if network connection times out. Translations of this should not be longer than the original English or the text can be clipped and not entirely shown. -->
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<!-- Shown in the settings preferences, and translations can be any text length. -->
|
||||
</patch>
|
||||
<patch id="layout.formfactor.changeFormFactorPatch">
|
||||
@@ -163,7 +164,6 @@ Second \"item\" text"</string>
|
||||
<patch id="layout.spoofappversion.spoofAppVersionPatch">
|
||||
<!-- It is ideal, but not required, if the text here appears is alphabetically after the text used for 'revanced_spoof_app_version_title'.
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
</patch>
|
||||
@@ -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>
|
||||
|
||||
@@ -156,6 +156,7 @@ Second \"item\" text"</string>
|
||||
<patch id="layout.sponsorblock.sponsorBlockResourcePatch">
|
||||
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title' -->
|
||||
<!-- Toast shown if network connection times out. Translations of this should not be longer than the original English or the text can be clipped and not entirely shown. -->
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<!-- Shown in the settings preferences, and translations can be any text length. -->
|
||||
</patch>
|
||||
<patch id="layout.formfactor.changeFormFactorPatch">
|
||||
@@ -163,7 +164,6 @@ Second \"item\" text"</string>
|
||||
<patch id="layout.spoofappversion.spoofAppVersionPatch">
|
||||
<!-- It is ideal, but not required, if the text here appears is alphabetically after the text used for 'revanced_spoof_app_version_title'.
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
</patch>
|
||||
@@ -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>
|
||||
|
||||
@@ -48,57 +48,6 @@ Second \"item\" text"</string>
|
||||
|
||||
لترجمة لغات جديدة، تفضل بزيارة translate.revanced.app"</string>
|
||||
<string name="revanced_language_DEFAULT">لغة التطبيق</string>
|
||||
<string name="revanced_language_AR">العربية</string>
|
||||
<string name="revanced_language_AZ">Azerbaijani</string>
|
||||
<string name="revanced_language_BG">Bulgarian</string>
|
||||
<string name="revanced_language_BN">Bengali</string>
|
||||
<string name="revanced_language_CA">Catalan</string>
|
||||
<string name="revanced_language_CS">Czech</string>
|
||||
<string name="revanced_language_DA">Danish</string>
|
||||
<string name="revanced_language_DE">German</string>
|
||||
<string name="revanced_language_EL">Greek</string>
|
||||
<string name="revanced_language_EN">English</string>
|
||||
<string name="revanced_language_ES">Spanish</string>
|
||||
<string name="revanced_language_ET">Estonian</string>
|
||||
<string name="revanced_language_FA">فارسى</string>
|
||||
<string name="revanced_language_FI">Finnish</string>
|
||||
<string name="revanced_language_FR">French - Français</string>
|
||||
<string name="revanced_language_GU">Gujarati</string>
|
||||
<string name="revanced_language_HI">Hindi</string>
|
||||
<string name="revanced_language_HR">Croatian</string>
|
||||
<string name="revanced_language_HU">Hungarian</string>
|
||||
<string name="revanced_language_ID">Indonesian</string>
|
||||
<string name="revanced_language_IT">Italian</string>
|
||||
<string name="revanced_language_JA">Japanese</string>
|
||||
<string name="revanced_language_KK">Kazakh</string>
|
||||
<string name="revanced_language_KO">Korean</string>
|
||||
<string name="revanced_language_LT">Lithuanian</string>
|
||||
<string name="revanced_language_LV">Latvian</string>
|
||||
<string name="revanced_language_MK">Macedonian</string>
|
||||
<string name="revanced_language_MN">Mongolian</string>
|
||||
<string name="revanced_language_MR">Marathi</string>
|
||||
<string name="revanced_language_MS">Malay</string>
|
||||
<string name="revanced_language_MY">Burmese</string>
|
||||
<string name="revanced_language_NL">Dutch</string>
|
||||
<string name="revanced_language_OR">Odia</string>
|
||||
<string name="revanced_language_PA">Punjabi</string>
|
||||
<string name="revanced_language_PL">Polish</string>
|
||||
<string name="revanced_language_PT">Portugese</string>
|
||||
<string name="revanced_language_RO">Romanian</string>
|
||||
<string name="revanced_language_RU">Russian - Русский</string>
|
||||
<string name="revanced_language_SK">Slovak</string>
|
||||
<string name="revanced_language_SL">Slovene</string>
|
||||
<string name="revanced_language_SR">Serbian</string>
|
||||
<string name="revanced_language_SV">Swedish</string>
|
||||
<string name="revanced_language_SW">Swahili</string>
|
||||
<string name="revanced_language_TA">Tamil</string>
|
||||
<string name="revanced_language_TE">Telugu</string>
|
||||
<string name="revanced_language_TH">Thai</string>
|
||||
<string name="revanced_language_TR">Turkish</string>
|
||||
<string name="revanced_language_UK">Ukrainian</string>
|
||||
<string name="revanced_language_UR">Urdu</string>
|
||||
<string name="revanced_language_VI">Vietnamese</string>
|
||||
<string name="revanced_language_ZH">Chinese</string>
|
||||
<string name="revanced_pref_import_export_title">استيراد / تصدير</string>
|
||||
<string name="revanced_pref_import_export_summary">استيراد / تصدير إعدادات ReVanced</string>
|
||||
<!-- Settings about dialog. -->
|
||||
@@ -856,7 +805,6 @@ Second \"item\" text"</string>
|
||||
<string name="revanced_ryd_enable_summary_on">يتم عرض لم يعجبني</string>
|
||||
<string name="revanced_ryd_enable_summary_off">لا يتم عرض لم يعجبني</string>
|
||||
<string name="revanced_ryd_shorts_title">عرض لم يعجني في فيديوهات Shorts</string>
|
||||
<string name="revanced_ryd_shorts_summary_on">يتم عرض عدم الإعجاب على فيديوهات Shorts</string>
|
||||
<string name="revanced_ryd_shorts_summary_on_disclaimer">"يتم عرض مرات عدم الإعجاب في فيديوهات Shorts
|
||||
|
||||
التقييد: قد لا تظهر مرات عدم الإعجاب في وضع التصفح المتخفي"</string>
|
||||
@@ -1054,6 +1002,8 @@ Second \"item\" text"</string>
|
||||
<string name="revanced_sb_vote_downvote">اعتراض</string>
|
||||
<string name="revanced_sb_vote_category">تغيير الفئة</string>
|
||||
<string name="revanced_sb_vote_no_segments">لا توجد مقاطع للتصويت عليها</string>
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<string name="revanced_sb_vote_segment_time_to_from">%1$s إلى %2$s</string>
|
||||
<string name="revanced_sb_new_segment_choose_category">اختيار فئة المقطع</string>
|
||||
<string name="revanced_sb_new_segment_disabled_category">الفئة معطلة في الإعدادات. تمكين الفئة للإرسال.</string>
|
||||
<string name="revanced_sb_new_segment_title">مقطع SponsorBlock جديد</string>
|
||||
@@ -1101,6 +1051,7 @@ Second \"item\" text"</string>
|
||||
<string name="revanced_sb_stats_saved_hour_format">%1$s ساعة %2$s دقيقة</string>
|
||||
<string name="revanced_sb_stats_saved_minute_format">%1$s دقيقة %2$s ثانية</string>
|
||||
<string name="revanced_sb_stats_saved_second_format">%s ثانية</string>
|
||||
<string name="revanced_sb_color_opacity_label">الشفافية:</string>
|
||||
<string name="revanced_sb_color_dot_label">اللون:</string>
|
||||
<string name="revanced_sb_color_changed">تم تغيير اللون</string>
|
||||
<string name="revanced_sb_color_reset">إعادة ضبط اللون</string>
|
||||
@@ -1116,16 +1067,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>
|
||||
@@ -1140,12 +1089,7 @@ Second \"item\" text"</string>
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<string name="revanced_spoof_app_version_target_title">الهدف من تغيير إصدار التطبيق</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_1">19.35.36 - استعادة أيقونات مشغل Shorts القديمة</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.26.42 - استعادة أيقونات التنقل القديمة</string>
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_1">18.33.40 - استعادة RYD على Shorts بوضع التخفي</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_2">18.20.39 - استعادة قائمة سرعة الفيديو العريضة & الجودة</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_3">18.09.39 - استعادة علامة تبويب المكتبة</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_4">17.33.42 - استعادة رف قائمة التشغيل القديم</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.01.34 - استعادة أيقونات التنقل القديمة</string>
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
<string name="revanced_change_start_page_title">تعيين صفحة البداية</string>
|
||||
@@ -1248,8 +1192,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>
|
||||
@@ -1355,6 +1297,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 +1311,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 +1350,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>
|
||||
|
||||
@@ -156,6 +156,7 @@ Second \"item\" text"</string>
|
||||
<patch id="layout.sponsorblock.sponsorBlockResourcePatch">
|
||||
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title' -->
|
||||
<!-- Toast shown if network connection times out. Translations of this should not be longer than the original English or the text can be clipped and not entirely shown. -->
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<!-- Shown in the settings preferences, and translations can be any text length. -->
|
||||
</patch>
|
||||
<patch id="layout.formfactor.changeFormFactorPatch">
|
||||
@@ -163,7 +164,6 @@ Second \"item\" text"</string>
|
||||
<patch id="layout.spoofappversion.spoofAppVersionPatch">
|
||||
<!-- It is ideal, but not required, if the text here appears is alphabetically after the text used for 'revanced_spoof_app_version_title'.
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
</patch>
|
||||
@@ -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>
|
||||
|
||||
@@ -48,57 +48,6 @@ Second \"item\" text"</string>
|
||||
|
||||
Yeni dilləri tərcümə etmək üçün translate.revanced.app 'ə daxil olun"</string>
|
||||
<string name="revanced_language_DEFAULT">Tətbiq dili</string>
|
||||
<string name="revanced_language_AR">Ərəbcə</string>
|
||||
<string name="revanced_language_AZ">Azərbaycanca</string>
|
||||
<string name="revanced_language_BG">Bolqarca</string>
|
||||
<string name="revanced_language_BN">Benqalca</string>
|
||||
<string name="revanced_language_CA">Katalan dili</string>
|
||||
<string name="revanced_language_CS">Çexcə</string>
|
||||
<string name="revanced_language_DA">Dan dili</string>
|
||||
<string name="revanced_language_DE">Almanca</string>
|
||||
<string name="revanced_language_EL">Yunanca</string>
|
||||
<string name="revanced_language_EN">İngiliscə</string>
|
||||
<string name="revanced_language_ES">İspanca</string>
|
||||
<string name="revanced_language_ET">Estonca</string>
|
||||
<string name="revanced_language_FA">Farsca</string>
|
||||
<string name="revanced_language_FI">Fincə</string>
|
||||
<string name="revanced_language_FR">Fransızca</string>
|
||||
<string name="revanced_language_GU">Qücərat dili</string>
|
||||
<string name="revanced_language_HI">Hindcə</string>
|
||||
<string name="revanced_language_HR">Xorvatca</string>
|
||||
<string name="revanced_language_HU">Macarca</string>
|
||||
<string name="revanced_language_ID">İndoneziya dili</string>
|
||||
<string name="revanced_language_IT">İtalyanca</string>
|
||||
<string name="revanced_language_JA">Yaponca</string>
|
||||
<string name="revanced_language_KK">Qazax dili</string>
|
||||
<string name="revanced_language_KO">Koreya dili</string>
|
||||
<string name="revanced_language_LT">Litva Dili</string>
|
||||
<string name="revanced_language_LV">Letonca</string>
|
||||
<string name="revanced_language_MK">Makedon Dili</string>
|
||||
<string name="revanced_language_MN">Monqolca</string>
|
||||
<string name="revanced_language_MR">Marathi dili</string>
|
||||
<string name="revanced_language_MS">Malay dili</string>
|
||||
<string name="revanced_language_MY">Birmanca</string>
|
||||
<string name="revanced_language_NL">Hollandca</string>
|
||||
<string name="revanced_language_OR">Oriya dili</string>
|
||||
<string name="revanced_language_PA">Pəncabca</string>
|
||||
<string name="revanced_language_PL">Polyak dili</string>
|
||||
<string name="revanced_language_PT">Portuqal dili</string>
|
||||
<string name="revanced_language_RO">Rumınca</string>
|
||||
<string name="revanced_language_RU">Rusca</string>
|
||||
<string name="revanced_language_SK">Slovak dili</string>
|
||||
<string name="revanced_language_SL">Slovencə</string>
|
||||
<string name="revanced_language_SR">Serbcə</string>
|
||||
<string name="revanced_language_SV">İsveçcə</string>
|
||||
<string name="revanced_language_SW">Suahili dili</string>
|
||||
<string name="revanced_language_TA">Tamilcə</string>
|
||||
<string name="revanced_language_TE">Teluqu dili</string>
|
||||
<string name="revanced_language_TH">Tayca</string>
|
||||
<string name="revanced_language_TR">Türkcə</string>
|
||||
<string name="revanced_language_UK">Ukrayna dili</string>
|
||||
<string name="revanced_language_UR">Urdu dili</string>
|
||||
<string name="revanced_language_VI">Vyetnamca</string>
|
||||
<string name="revanced_language_ZH">Çincə</string>
|
||||
<string name="revanced_pref_import_export_title">İdxal/İxrac et</string>
|
||||
<string name="revanced_pref_import_export_summary">ReVanced tənzimləmələrin idxal/ixrac et</string>
|
||||
<!-- Settings about dialog. -->
|
||||
@@ -278,12 +227,12 @@ Gözlənilməz hallardan xəbərdar olmayacaqsınız."</string>
|
||||
<string name="revanced_hide_artist_cards_summary_on">Sənətçi kartları gizlidir</string>
|
||||
<string name="revanced_hide_artist_cards_summary_off">Sənətçi kartları göstərilir</string>
|
||||
<string name="revanced_hide_attributes_section_title">Atributları Gizlət</string>
|
||||
<string name="revanced_hide_attributes_section_summary_on">Seçilən məkanlar, Oyunlar, Musiqi və qeyd edilən insanlar bölmələri gizlədilir</string>
|
||||
<string name="revanced_hide_attributes_section_summary_off">Seçilən məkanlar, Oyunlar, Musiqi və qeyd edilən insanlar bölmələri görünür</string>
|
||||
<string name="revanced_hide_attributes_section_summary_on">Seçilən yerlər, Oyunlar, Musiqi və qeyd edilən insanlar bölmələri gizlədilir</string>
|
||||
<string name="revanced_hide_attributes_section_summary_off">Seçilən yerlər, Oyunlar, Musiqi və qeyd edilən insanlar bölmələri görünür</string>
|
||||
<string name="revanced_hide_chapters_section_title">Fəsilləri Gizlət</string>
|
||||
<string name="revanced_hide_chapters_section_summary_on">Bölümlər bölməsi gizlidir</string>
|
||||
<string name="revanced_hide_chapters_section_summary_off">Bölümlər bölməsi göstərilir</string>
|
||||
<string name="revanced_hide_how_this_was_made_section_title">\'Bu məzmun necə hazırlanıb\'ı Gizlət</string>
|
||||
<string name="revanced_hide_how_this_was_made_section_title">\'Bu kontent necə hazırlanıb\'ı Gizlət</string>
|
||||
<string name="revanced_hide_how_this_was_made_section_summary_on">Bu məzmunun necə hazırlandığı bölməsi gizlidir</string>
|
||||
<string name="revanced_hide_how_this_was_made_section_summary_off">Bu məzmunun necə hazırlandığı bölməsi görünür</string>
|
||||
<string name="revanced_hide_podcast_section_title">\'Podkastı araşdırın\"-ı Gizlət</string>
|
||||
@@ -292,14 +241,14 @@ Gözlənilməz hallardan xəbərdar olmayacaqsınız."</string>
|
||||
<string name="revanced_hide_info_cards_section_title">Məlumat Kartlarını Gizlət</string>
|
||||
<string name="revanced_hide_info_cards_section_summary_on">Məlumat kartları bölməsi gizlədilir</string>
|
||||
<string name="revanced_hide_info_cards_section_summary_off">Məlumat kartları bölməsi göstərilir</string>
|
||||
<string name="revanced_hide_key_concepts_section_title">\"Əsas anlayışları\" gizlət</string>
|
||||
<string name="revanced_hide_key_concepts_section_summary_on">Əsas anlayışlar bölməsi gizlidir</string>
|
||||
<string name="revanced_hide_key_concepts_section_summary_off">Əsas anlayışlar bölməsi görünür</string>
|
||||
<string name="revanced_hide_key_concepts_section_title">\"Əsas konseptlər-i\" gizlət</string>
|
||||
<string name="revanced_hide_key_concepts_section_summary_on">Əsas konseptlər bölməsi gizlidir</string>
|
||||
<string name="revanced_hide_key_concepts_section_summary_off">Əsas konseptlər bölməsi görünür</string>
|
||||
<string name="revanced_hide_transcript_section_title">Transkript-i Gizlət</string>
|
||||
<string name="revanced_hide_transcript_section_summary_on">Transkripsiya bölməsi gizlidir</string>
|
||||
<string name="revanced_hide_transcript_section_summary_off">Transkripsiya bölməsi göstərilir</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_description_components_screen_title">Video təsviri</string>
|
||||
<string name="revanced_hide_description_components_screen_summary">Video təsviri 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ış 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>
|
||||
@@ -404,6 +353,7 @@ 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 baxın\" 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>
|
||||
@@ -662,6 +612,7 @@ 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 və Növbəti 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>
|
||||
@@ -853,7 +804,6 @@ Avtomatik oynatma YouTube ayarlarında dəyişdirilə bilər: Ayarlar → Oxunu
|
||||
<string name="revanced_ryd_enable_summary_on">Bəyənməmələr göstərilir</string>
|
||||
<string name="revanced_ryd_enable_summary_off">Bəyənməmələr göstərilmir</string>
|
||||
<string name="revanced_ryd_shorts_title">\"Shorts\"da bəyənməmə sayını göstər</string>
|
||||
<string name="revanced_ryd_shorts_summary_on">Bəyənməmələr Shorts-da göstərilir</string>
|
||||
<string name="revanced_ryd_shorts_summary_on_disclaimer">"Bəyənməmələr Shorts-da göstərilir
|
||||
|
||||
Məhdudiyyət: Bəyənməmələr gizli rejimdə görünməyə bilər"</string>
|
||||
@@ -1051,6 +1001,8 @@ Artıq mövcuddur"</string>
|
||||
<string name="revanced_sb_vote_downvote">Mənfi səs</string>
|
||||
<string name="revanced_sb_vote_category">Kateqoriyanı dəyişdir</string>
|
||||
<string name="revanced_sb_vote_no_segments">Səsvermə üçün bölüm yoxdur</string>
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<string name="revanced_sb_vote_segment_time_to_from">%1$s - %2$s</string>
|
||||
<string name="revanced_sb_new_segment_choose_category">Bölüm kateqoriyasını seçin</string>
|
||||
<string name="revanced_sb_new_segment_disabled_category">Seçimlərdə kateqoriya qeyri-aktivdir. Göndərmək üçün kateqoriyanı aktiv et.</string>
|
||||
<string name="revanced_sb_new_segment_title">Yeni SponsorBlock bölümü</string>
|
||||
@@ -1098,6 +1050,7 @@ Təqdim etməyə hazırdır?"</string>
|
||||
<string name="revanced_sb_stats_saved_hour_format">%1$s saat %2$s dəqiqə</string>
|
||||
<string name="revanced_sb_stats_saved_minute_format">%1$s dəqiqə %2$s saniyə</string>
|
||||
<string name="revanced_sb_stats_saved_second_format">%s saniyə</string>
|
||||
<string name="revanced_sb_color_opacity_label">Qeyri-şəffaflıq:</string>
|
||||
<string name="revanced_sb_color_dot_label">Rəng:</string>
|
||||
<string name="revanced_sb_color_changed">Rəng dəyişdirildi</string>
|
||||
<string name="revanced_sb_color_reset">Rəngi sıfırla</string>
|
||||
@@ -1113,16 +1066,14 @@ 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:
|
||||
<string name="revanced_change_form_factor_user_dialog_message">"Dəyişikliklər ehtiva edir:
|
||||
|
||||
Planşet tərtibatı
|
||||
• İcma elanları gizlidir
|
||||
• İcma elanları gizlədilib
|
||||
|
||||
Avtomobil tərtibatı
|
||||
• Baxış tarixçəsi seçimi gizlidir
|
||||
• \"Kəşf et\" bölməsi qaytarılıb
|
||||
• Shorts daimi oynadıcıda açılır
|
||||
• Axın mövzulara və kanala görə hazırlanıb"</string>
|
||||
• Shorts müntəzəm oynadıcıda açılır
|
||||
• Axın mövzular və kanallardan ibarətdir"</string>
|
||||
</patch>
|
||||
<patch id="layout.spoofappversion.spoofAppVersionPatch">
|
||||
<string name="revanced_spoof_app_version_title">Tətbiq versiyasını saxtalaşdır</string>
|
||||
@@ -1137,12 +1088,7 @@ Sonradan qapadılarsa, UI səhvlərin önləmək üçün tətbiq məlumatların
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<string name="revanced_spoof_app_version_target_title">Saxta tətbiq versiyası hədəfi</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_1">19.35.36 - Köhnə Shorts oynadıcı işarələrin bərpa et</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.26.42 - Köhnə fəaliyyət simvolların bərpa et</string>
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_1">18.33.40 - Shorts gizli rejimində RYD-ni bərpa et</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_2">18.20.39 - Geniş video sürəti & keyfiyyət menyusunu bərpa et</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_3">18.09.39 - Kitabxana panelini bərpa et</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_4">17.33.42 - Köhnə pleylist bölməsin bərpa et</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.01.34 - Köhnə fəaliyyət simvolların bərpa et</string>
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
<string name="revanced_change_start_page_title">Başlanğıc səhifəsini təyin et</string>
|
||||
@@ -1192,6 +1138,7 @@ 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ətbiqdaxili kiçilə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>
|
||||
@@ -1244,8 +1191,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>
|
||||
@@ -1337,6 +1282,8 @@ 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">Xarici brauzerdə bağlantıların açılması</string>
|
||||
<string name="revanced_external_browser_summary_off">Tətbiqdaxili brauzerdə bağlantıların açılması</string>
|
||||
</patch>
|
||||
<patch id="misc.privacy.removeTrackingQueryParameterPatch">
|
||||
<string name="revanced_remove_tracking_query_parameter_title">İzləmə sorğusu faktorun sil</string>
|
||||
@@ -1363,9 +1310,15 @@ Bunu aktivləşdirmə daha yüksək video keyfiyyətləri əngəlin silə bilər
|
||||
<string name="revanced_remember_video_quality_last_selected_summary_off">Keyfiyyət dəyişiklikləri yalnız cari videoya tətbiq edilir</string>
|
||||
<string name="revanced_video_quality_default_wifi_title">Wi-Fi şəbəkəsində ilkin video keyfiyyəti</string>
|
||||
<string name="revanced_video_quality_default_mobile_title">Mobil şəbəkədə ilkin video keyfiyyəti</string>
|
||||
<string name="revanced_remember_shorts_quality_last_selected_title">Shorts keyfiyyət dəyişikliklərini xatırla</string>
|
||||
<string name="revanced_remember_shorts_quality_last_selected_summary_on">Keyfiyyət dəyişiklikləri bütün Shorts-a tətbiq edilir</string>
|
||||
<string name="revanced_remember_shorts_quality_last_selected_summary_off">Keyfiyyət dəyişiklikləri yalnız cari Short-a tətbiq edilir</string>
|
||||
<string name="revanced_shorts_quality_default_wifi_title">Wi-Fi şəbəkəsində ilkin Shorts keyfiyyəti</string>
|
||||
<string name="revanced_shorts_quality_default_mobile_title">Mobil şəbəkədə ilkin Shorts keyfiyyəti</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">İlkin %1$s keyfiyyəti %2$s kimi dəyişdi</string>
|
||||
<string name="revanced_remember_video_quality_toast_shorts">Shorts-un %1$s keyfiyyəti %2$s olaraq dəyişdirildi</string>
|
||||
</patch>
|
||||
<patch id="video.speed.button.playbackSpeedButtonPatch">
|
||||
<string name="revanced_playback_speed_dialog_button_title">Sürət dialoq düyməsini göstər</string>
|
||||
@@ -1396,10 +1349,10 @@ 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">
|
||||
<string name="revanced_advanced_video_quality_menu_title">Qabaqcıl video keyfiyyət siyahısın göstər</string>
|
||||
<string name="revanced_advanced_video_quality_menu_summary_on">Qabaqcıl video keyfiyyət siyahısı göstərilir</string>
|
||||
<string name="revanced_advanced_video_quality_menu_summary_off">Qabaqcıl video keyfiyyət siyahısı göstərilmir</string>
|
||||
</patch>
|
||||
<patch id="interaction.seekbar.enableSlideToSeekPatch">
|
||||
<string name="revanced_slide_to_seek_title">Axtarmaq üçün sürüşdürməni aktiv et</string>
|
||||
|
||||
@@ -48,57 +48,6 @@ Second \"item\" text"</string>
|
||||
|
||||
Каб дадаць новыя мовы, наведайце translate.revanced.app"</string>
|
||||
<string name="revanced_language_DEFAULT">Мова праграмы</string>
|
||||
<string name="revanced_language_AR">Арабская</string>
|
||||
<string name="revanced_language_AZ">Азербайджанскі</string>
|
||||
<string name="revanced_language_BG">Балгарская</string>
|
||||
<string name="revanced_language_BN">Бенгальская</string>
|
||||
<string name="revanced_language_CA">Каталонская</string>
|
||||
<string name="revanced_language_CS">Чэшскі</string>
|
||||
<string name="revanced_language_DA">Дацкі</string>
|
||||
<string name="revanced_language_DE">Нямецкі</string>
|
||||
<string name="revanced_language_EL">Грэцкі</string>
|
||||
<string name="revanced_language_EN">Англійская</string>
|
||||
<string name="revanced_language_ES">Іспанская</string>
|
||||
<string name="revanced_language_ET">Эстонская</string>
|
||||
<string name="revanced_language_FA">Персідская</string>
|
||||
<string name="revanced_language_FI">Фінская</string>
|
||||
<string name="revanced_language_FR">Французская</string>
|
||||
<string name="revanced_language_GU">Гуджараці</string>
|
||||
<string name="revanced_language_HI">Хіндзі</string>
|
||||
<string name="revanced_language_HR">Харвацкая</string>
|
||||
<string name="revanced_language_HU">Венгерская</string>
|
||||
<string name="revanced_language_ID">Інданезійская</string>
|
||||
<string name="revanced_language_IT">Італьянская</string>
|
||||
<string name="revanced_language_JA">Японская</string>
|
||||
<string name="revanced_language_KK">Казахская</string>
|
||||
<string name="revanced_language_KO">Карэйская</string>
|
||||
<string name="revanced_language_LT">Літоўская</string>
|
||||
<string name="revanced_language_LV">Латышская</string>
|
||||
<string name="revanced_language_MK">Македонская</string>
|
||||
<string name="revanced_language_MN">Мангольская</string>
|
||||
<string name="revanced_language_MR">Малаялам</string>
|
||||
<string name="revanced_language_MS">Малайская</string>
|
||||
<string name="revanced_language_MY">Бірманская</string>
|
||||
<string name="revanced_language_NL">Нідэрландская</string>
|
||||
<string name="revanced_language_OR">Одыя</string>
|
||||
<string name="revanced_language_PA">Пенджабі</string>
|
||||
<string name="revanced_language_PL">Польская</string>
|
||||
<string name="revanced_language_PT">Партугальская</string>
|
||||
<string name="revanced_language_RO">Румынская</string>
|
||||
<string name="revanced_language_RU">Руская</string>
|
||||
<string name="revanced_language_SK">Славацкая</string>
|
||||
<string name="revanced_language_SL">Славенская</string>
|
||||
<string name="revanced_language_SR">Сербская</string>
|
||||
<string name="revanced_language_SV">Шведская</string>
|
||||
<string name="revanced_language_SW">Суахілі</string>
|
||||
<string name="revanced_language_TA">Тамільская</string>
|
||||
<string name="revanced_language_TE">Тэлугу</string>
|
||||
<string name="revanced_language_TH">Тайская</string>
|
||||
<string name="revanced_language_TR">Турецкая</string>
|
||||
<string name="revanced_language_UK">Украінская</string>
|
||||
<string name="revanced_language_UR">Урду</string>
|
||||
<string name="revanced_language_VI">В\'етнамская</string>
|
||||
<string name="revanced_language_ZH">Кітайская</string>
|
||||
<string name="revanced_pref_import_export_title">Імпарт / Экспарт</string>
|
||||
<string name="revanced_pref_import_export_summary">Імпарт / Экспарт налад ReVanced</string>
|
||||
<!-- Settings about dialog. -->
|
||||
@@ -856,7 +805,6 @@ Second \"item\" text"</string>
|
||||
<string name="revanced_ryd_enable_summary_on">Дызлайкі паказаны</string>
|
||||
<string name="revanced_ryd_enable_summary_off">Дызлайкі не паказваюцца</string>
|
||||
<string name="revanced_ryd_shorts_title">Паказвайце \"не падабаецца\" на Shorts</string>
|
||||
<string name="revanced_ryd_shorts_summary_on">Дызлайкі на Shorts паказаныя</string>
|
||||
<string name="revanced_ryd_shorts_summary_on_disclaimer">"Дызлайкі на Shorts паказаныя
|
||||
|
||||
Абмежаванне: дызлайкі могуць не адлюстроўвацца ў рэжыме інкогніта"</string>
|
||||
@@ -1055,6 +1003,8 @@ Second \"item\" text"</string>
|
||||
<string name="revanced_sb_vote_downvote">Галасаваць супраць</string>
|
||||
<string name="revanced_sb_vote_category">Змяніць катэгорыю</string>
|
||||
<string name="revanced_sb_vote_no_segments">Няма сегментаў для галасавання</string>
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<string name="revanced_sb_vote_segment_time_to_from">%1$s да %2$s</string>
|
||||
<string name="revanced_sb_new_segment_choose_category">Выберыце катэгорыю сегмента</string>
|
||||
<string name="revanced_sb_new_segment_disabled_category">Катэгорыя адключана ў наладах. Уключыце катэгорыю для адпраўкі.</string>
|
||||
<string name="revanced_sb_new_segment_title">Новы сегмент SponsorBlock</string>
|
||||
@@ -1102,6 +1052,7 @@ Second \"item\" text"</string>
|
||||
<string name="revanced_sb_stats_saved_hour_format">%1$s гадзін %2$s хвілін</string>
|
||||
<string name="revanced_sb_stats_saved_minute_format">%1$s хвілін %2$s секунд</string>
|
||||
<string name="revanced_sb_stats_saved_second_format">%s секунд</string>
|
||||
<string name="revanced_sb_color_opacity_label">Непразрыстасць:</string>
|
||||
<string name="revanced_sb_color_dot_label">колер:</string>
|
||||
<string name="revanced_sb_color_changed">Колер змяніўся</string>
|
||||
<string name="revanced_sb_color_reset">Скід колеру</string>
|
||||
@@ -1119,13 +1070,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">
|
||||
@@ -1141,12 +1090,7 @@ Second \"item\" text"</string>
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<string name="revanced_spoof_app_version_target_title">Падробка мэтавай версіі праграмы</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_1">19.35.36 — Восстановить старые значки плеера Shorts</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.26.42 - Аднаўленне старых значкоў навігацыі</string>
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_1">18.33.40 - Аднаўленне RYD на Shorts у рэжыме інкогніта</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_2">18.20.39 - Аднавіць хуткасць шырокага відэа & якаснае меню</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_3">18.09.39 - Аднаўленне ўкладкі бібліятэкі</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_4">17.33.42 - Аднаўленне старой паліцы плэйлістоў</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.01.34 - Аднаўленне старых значкоў навігацыі</string>
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
<string name="revanced_change_start_page_title">Усталяваць стартавую старонку</string>
|
||||
@@ -1249,8 +1193,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>
|
||||
@@ -1370,9 +1312,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 +1351,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>
|
||||
|
||||
@@ -48,57 +48,6 @@ Second \"item\" text"</string>
|
||||
|
||||
За да преведете нови езици, посетете translate.revanced.app"</string>
|
||||
<string name="revanced_language_DEFAULT">Език на приложението</string>
|
||||
<string name="revanced_language_AR">арабски</string>
|
||||
<string name="revanced_language_AZ">Азербайджански</string>
|
||||
<string name="revanced_language_BG">български</string>
|
||||
<string name="revanced_language_BN">бенгалски</string>
|
||||
<string name="revanced_language_CA">каталонски</string>
|
||||
<string name="revanced_language_CS">Чешки</string>
|
||||
<string name="revanced_language_DA">Датски</string>
|
||||
<string name="revanced_language_DE">Немски</string>
|
||||
<string name="revanced_language_EL">Гръцки</string>
|
||||
<string name="revanced_language_EN">Английски</string>
|
||||
<string name="revanced_language_ES">Испански</string>
|
||||
<string name="revanced_language_ET">Естонски</string>
|
||||
<string name="revanced_language_FA">Персийски</string>
|
||||
<string name="revanced_language_FI">Финландски</string>
|
||||
<string name="revanced_language_FR">Френски</string>
|
||||
<string name="revanced_language_GU">Гуджарати</string>
|
||||
<string name="revanced_language_HI">Хинди</string>
|
||||
<string name="revanced_language_HR">Хърватски</string>
|
||||
<string name="revanced_language_HU">Унгарски</string>
|
||||
<string name="revanced_language_ID">Индонезийски</string>
|
||||
<string name="revanced_language_IT">Италиански</string>
|
||||
<string name="revanced_language_JA">Японски</string>
|
||||
<string name="revanced_language_KK">Казахски</string>
|
||||
<string name="revanced_language_KO">Корейски</string>
|
||||
<string name="revanced_language_LT">Литовски</string>
|
||||
<string name="revanced_language_LV">Латвийски</string>
|
||||
<string name="revanced_language_MK">Македонски</string>
|
||||
<string name="revanced_language_MN">Монголски</string>
|
||||
<string name="revanced_language_MR">Маратхи</string>
|
||||
<string name="revanced_language_MS">Малайски</string>
|
||||
<string name="revanced_language_MY">Бирмански</string>
|
||||
<string name="revanced_language_NL">Холандски</string>
|
||||
<string name="revanced_language_OR">Одия</string>
|
||||
<string name="revanced_language_PA">Пенджаби</string>
|
||||
<string name="revanced_language_PL">Полски</string>
|
||||
<string name="revanced_language_PT">Португалски</string>
|
||||
<string name="revanced_language_RO">Румънски</string>
|
||||
<string name="revanced_language_RU">Руски</string>
|
||||
<string name="revanced_language_SK">Словашки</string>
|
||||
<string name="revanced_language_SL">Словенски</string>
|
||||
<string name="revanced_language_SR">Сръбски</string>
|
||||
<string name="revanced_language_SV">Шведски</string>
|
||||
<string name="revanced_language_SW">Суахили</string>
|
||||
<string name="revanced_language_TA">Тамилски</string>
|
||||
<string name="revanced_language_TE">Телугу</string>
|
||||
<string name="revanced_language_TH">Тайландски</string>
|
||||
<string name="revanced_language_TR">Турски</string>
|
||||
<string name="revanced_language_UK">Украински</string>
|
||||
<string name="revanced_language_UR">Урду</string>
|
||||
<string name="revanced_language_VI">Виетнамски</string>
|
||||
<string name="revanced_language_ZH">Китайски</string>
|
||||
<string name="revanced_pref_import_export_title">Импортиране / Експортиране</string>
|
||||
<string name="revanced_pref_import_export_summary">Импортиране / Експортиране на ReVanced настройките</string>
|
||||
<!-- Settings about dialog. -->
|
||||
@@ -856,7 +805,6 @@ Second \"item\" text"</string>
|
||||
<string name="revanced_ryd_enable_summary_on">Нехаресванията се показват</string>
|
||||
<string name="revanced_ryd_enable_summary_off">Нехаресванията не се показват</string>
|
||||
<string name="revanced_ryd_shorts_title">Пок. нехаресвания в кратките клипове</string>
|
||||
<string name="revanced_ryd_shorts_summary_on">Нехаресванията на Shorts са показани</string>
|
||||
<string name="revanced_ryd_shorts_summary_on_disclaimer">"Нехаресванията на Shorts са показани
|
||||
|
||||
Ограничение: Нехаресванията може да не се показват в режим инкогнито"</string>
|
||||
@@ -1054,6 +1002,8 @@ Second \"item\" text"</string>
|
||||
<string name="revanced_sb_vote_downvote">Отрицателен вот</string>
|
||||
<string name="revanced_sb_vote_category">Промяна на категорията</string>
|
||||
<string name="revanced_sb_vote_no_segments">Няма сегменти, за които да гласувате</string>
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<string name="revanced_sb_vote_segment_time_to_from">%1$s до %2$s</string>
|
||||
<string name="revanced_sb_new_segment_choose_category">Изберете категория сегмент</string>
|
||||
<string name="revanced_sb_new_segment_disabled_category">Категорията е изкл. в настройките. Вкл. я за да можете да изпратите.</string>
|
||||
<string name="revanced_sb_new_segment_title">Нова част в SponsorBlock</string>
|
||||
@@ -1101,6 +1051,7 @@ Second \"item\" text"</string>
|
||||
<string name="revanced_sb_stats_saved_hour_format">%1$s часове %2$s минути</string>
|
||||
<string name="revanced_sb_stats_saved_minute_format">%1$s минути %2$s секунди</string>
|
||||
<string name="revanced_sb_stats_saved_second_format">%s секунди</string>
|
||||
<string name="revanced_sb_color_opacity_label">Непрозрачност:</string>
|
||||
<string name="revanced_sb_color_dot_label">Цвят:</string>
|
||||
<string name="revanced_sb_color_changed">Цветът е променен</string>
|
||||
<string name="revanced_sb_color_reset">Възстанови цвета</string>
|
||||
@@ -1121,11 +1072,9 @@ Second \"item\" text"</string>
|
||||
Оформление за таблет
|
||||
• Публикациите на общността са скрити
|
||||
|
||||
Оформление за автомобил
|
||||
• Менюто „История на гледане“ е скрито
|
||||
• Разделът „Разгледай“ е възстановен
|
||||
Автомобилно оформление
|
||||
• Shorts се отварят в обикновения плейър
|
||||
• Лентата е организирана по теми и канал"</string>
|
||||
• Каналът е организиран по теми и канали"</string>
|
||||
</patch>
|
||||
<patch id="layout.spoofappversion.spoofAppVersionPatch">
|
||||
<string name="revanced_spoof_app_version_title">Подлъгване за версията на приложението</string>
|
||||
@@ -1140,12 +1089,7 @@ Second \"item\" text"</string>
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<string name="revanced_spoof_app_version_target_title">Подлъгване за версията на</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_1">19.35.36 - Възстановете старите икони на Shorts в плейъра</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.26.42 - Възстановяване на старите икони за навигация</string>
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_1">18.33.40 - Възстановете RYD в режим „инкогнито“ на Shorts</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_2">18.20.39 - Възстановяване на видео скорост & в менюто за качество</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_3">18.09.39 - Възстановяване на таб \"Библиотека\"</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_4">17.33.42 - Връщане на секцията с плейлиста към стария стил</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.01.34 - Възстановяване на старите икони за навигация</string>
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
<string name="revanced_change_start_page_title">Задай начална страница</string>
|
||||
@@ -1248,8 +1192,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>
|
||||
@@ -1369,9 +1311,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 +1350,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>
|
||||
|
||||
@@ -48,57 +48,6 @@ Second \"item\" text"</string>
|
||||
|
||||
নতুন ভাষা অনুবাদ করতে translate.revanced.app দেখুন"</string>
|
||||
<string name="revanced_language_DEFAULT">অ্যাপ্লিকেশনের ভাষা</string>
|
||||
<string name="revanced_language_AR">আরবি</string>
|
||||
<string name="revanced_language_AZ">আজারবাইজানি</string>
|
||||
<string name="revanced_language_BG">বুলগেরিয়ান</string>
|
||||
<string name="revanced_language_BN">বাংলা</string>
|
||||
<string name="revanced_language_CA">কাতালান</string>
|
||||
<string name="revanced_language_CS">চেক</string>
|
||||
<string name="revanced_language_DA">ড্যানিশ</string>
|
||||
<string name="revanced_language_DE">জার্মান</string>
|
||||
<string name="revanced_language_EL">গ্রিক</string>
|
||||
<string name="revanced_language_EN">ইংরেজি</string>
|
||||
<string name="revanced_language_ES">স্প্যানিশ</string>
|
||||
<string name="revanced_language_ET">এস্তোনিয়ান</string>
|
||||
<string name="revanced_language_FA">ফার্সি</string>
|
||||
<string name="revanced_language_FI">ফিনিশ</string>
|
||||
<string name="revanced_language_FR">ফরাসি</string>
|
||||
<string name="revanced_language_GU">গুজরাটি</string>
|
||||
<string name="revanced_language_HI">হিন্দি</string>
|
||||
<string name="revanced_language_HR">ক্রোয়েশীয়</string>
|
||||
<string name="revanced_language_HU">হাঙ্গেরিয়ান</string>
|
||||
<string name="revanced_language_ID">ইন্দোনেশিয়ান</string>
|
||||
<string name="revanced_language_IT">ইতালীয়</string>
|
||||
<string name="revanced_language_JA">জাপানি</string>
|
||||
<string name="revanced_language_KK">কাজাখ</string>
|
||||
<string name="revanced_language_KO">কোরিয়ান</string>
|
||||
<string name="revanced_language_LT">লিথুয়ানিয়ান</string>
|
||||
<string name="revanced_language_LV">লাতভিয়ান</string>
|
||||
<string name="revanced_language_MK">ম্যাসেডোনিয়ান</string>
|
||||
<string name="revanced_language_MN">মঙ্গোলীয়</string>
|
||||
<string name="revanced_language_MR">মারাঠি</string>
|
||||
<string name="revanced_language_MS">মালয়</string>
|
||||
<string name="revanced_language_MY">বর্মি</string>
|
||||
<string name="revanced_language_NL">ডাচ</string>
|
||||
<string name="revanced_language_OR">ওড়িয়া</string>
|
||||
<string name="revanced_language_PA">পাঞ্জাবি</string>
|
||||
<string name="revanced_language_PL">পোলিশ</string>
|
||||
<string name="revanced_language_PT">পর্তুগিজ</string>
|
||||
<string name="revanced_language_RO">রোমানীয়</string>
|
||||
<string name="revanced_language_RU">রুশ</string>
|
||||
<string name="revanced_language_SK">স্লোভাক</string>
|
||||
<string name="revanced_language_SL">স্লোভেন</string>
|
||||
<string name="revanced_language_SR">সার্বিয়ান</string>
|
||||
<string name="revanced_language_SV">সুইডিশ</string>
|
||||
<string name="revanced_language_SW">সোয়াহিলি</string>
|
||||
<string name="revanced_language_TA">তামিল</string>
|
||||
<string name="revanced_language_TE">তেলুগু</string>
|
||||
<string name="revanced_language_TH">থাই</string>
|
||||
<string name="revanced_language_TR">তুর্কি</string>
|
||||
<string name="revanced_language_UK">ইউক্রেনীয়</string>
|
||||
<string name="revanced_language_UR">উর্দু</string>
|
||||
<string name="revanced_language_VI">ভিয়েতনামী</string>
|
||||
<string name="revanced_language_ZH">চাইনিজ</string>
|
||||
<string name="revanced_pref_import_export_title">আমদানি এবং রপ্তানি</string>
|
||||
<string name="revanced_pref_import_export_summary">ReVanced সেটিং আমদানি বা রপ্তানি করুন</string>
|
||||
<!-- Settings about dialog. -->
|
||||
@@ -852,7 +801,6 @@ YouTube সেটিংসে অটো প্লে পরিবর্তন
|
||||
<string name="revanced_ryd_enable_summary_on">অপছন্দগুলো প্রদর্শিত হয়েছে</string>
|
||||
<string name="revanced_ryd_enable_summary_off">অপছন্দগুলো প্রদর্শিত হয়নি</string>
|
||||
<string name="revanced_ryd_shorts_title">Shorts এ অপছন্দ দেখান</string>
|
||||
<string name="revanced_ryd_shorts_summary_on">Shorts-এ অপছন্দগুলি দেখানো হয়েছে</string>
|
||||
<string name="revanced_ryd_shorts_summary_on_disclaimer">"Shorts-এ অপছন্দগুলি দেখানো হয়েছে
|
||||
|
||||
সীমাবদ্ধতা: ছদ্মবেশী মোডে অপছন্দগুলি নাও দেখা যেতে পারে"</string>
|
||||
@@ -1049,6 +997,8 @@ YouTube সেটিংসে অটো প্লে পরিবর্তন
|
||||
<string name="revanced_sb_vote_downvote">ডাউন ভোট</string>
|
||||
<string name="revanced_sb_vote_category">বিভাগ পরিবর্তন করুন</string>
|
||||
<string name="revanced_sb_vote_no_segments">ভোট দেয়ার জন্য আর কোন সেগমেন্ট নেই</string>
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<string name="revanced_sb_vote_segment_time_to_from">%1$s থেকে %2$s</string>
|
||||
<string name="revanced_sb_new_segment_choose_category">সেগমেন্টের বিভাগ নির্বাচন করুন</string>
|
||||
<string name="revanced_sb_new_segment_disabled_category">সেটিং থেকে বিভাগ নিস্ক্রিয় করা হয়েছে। জমা দিতে বিভাগ সক্রিয় করুন।</string>
|
||||
<string name="revanced_sb_new_segment_title">নতুন স্পন্সরব্লক সেগমেন্ট</string>
|
||||
@@ -1097,6 +1047,7 @@ YouTube সেটিংসে অটো প্লে পরিবর্তন
|
||||
<string name="revanced_sb_stats_saved_hour_format">%1$s ঘন্টা %2$s মিনিট</string>
|
||||
<string name="revanced_sb_stats_saved_minute_format">%1$s মিনিট %2$s সেকেন্ড</string>
|
||||
<string name="revanced_sb_stats_saved_second_format">%s সেকেন্ড</string>
|
||||
<string name="revanced_sb_color_opacity_label">স্বচ্ছতা:</string>
|
||||
<string name="revanced_sb_color_dot_label">রং:</string>
|
||||
<string name="revanced_sb_color_changed">রং পরিবর্তন করা হয়েছে</string>
|
||||
<string name="revanced_sb_color_reset">রং আবার সেট করুন</string>
|
||||
@@ -1112,16 +1063,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>
|
||||
@@ -1136,12 +1085,7 @@ YouTube সেটিংসে অটো প্লে পরিবর্তন
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<string name="revanced_spoof_app_version_target_title">স্পুফ অ্যাপ সংস্করণ লক্ষ্য</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_1">19.35.36 - পুরনো Shorts প্লেয়ার আইকন পুনরুদ্ধার করুন</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.26.42 - পুরনো নেভিগেশন আইকন পুনরুদ্ধার করুন</string>
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_1">18.33.40 - ছদ্মবেশি মোডে RYD পুনরুদ্ধার করে</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_2">18.20.39 - প্রশ্বস্ত ভিডিও স্পিড এবং গুণমান মেনু পুনরুদ্ধার করে</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_3">18.09.39 - লাইব্রেরি ট্যাপ পুনরুদ্ধার করে</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_4">17.33.42 - পুরোনো প্লেলিস্ট শেলফ পুনরুদ্ধার করে</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.01.34 - পুরনো নেভিগেশন আইকন পুনরুদ্ধার করুন</string>
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
<string name="revanced_change_start_page_title">শুরুর পৃষ্ঠা সেট করুন</string>
|
||||
@@ -1244,8 +1188,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>
|
||||
@@ -1365,9 +1307,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>
|
||||
@@ -1398,10 +1346,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>
|
||||
|
||||
@@ -156,6 +156,7 @@ Second \"item\" text"</string>
|
||||
<patch id="layout.sponsorblock.sponsorBlockResourcePatch">
|
||||
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title' -->
|
||||
<!-- Toast shown if network connection times out. Translations of this should not be longer than the original English or the text can be clipped and not entirely shown. -->
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<!-- Shown in the settings preferences, and translations can be any text length. -->
|
||||
</patch>
|
||||
<patch id="layout.formfactor.changeFormFactorPatch">
|
||||
@@ -163,7 +164,6 @@ Second \"item\" text"</string>
|
||||
<patch id="layout.spoofappversion.spoofAppVersionPatch">
|
||||
<!-- It is ideal, but not required, if the text here appears is alphabetically after the text used for 'revanced_spoof_app_version_title'.
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
</patch>
|
||||
@@ -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>
|
||||
|
||||
@@ -48,57 +48,6 @@ Second \"item\" text"</string>
|
||||
|
||||
Per traduir nous idiomes, visiteu translate.revanced.app"</string>
|
||||
<string name="revanced_language_DEFAULT">Llengua de l\'aplicació</string>
|
||||
<string name="revanced_language_AR">Àrab</string>
|
||||
<string name="revanced_language_AZ">Azerbaidjanès</string>
|
||||
<string name="revanced_language_BG">Búlgaro</string>
|
||||
<string name="revanced_language_BN">Bengalí</string>
|
||||
<string name="revanced_language_CA">Català</string>
|
||||
<string name="revanced_language_CS">Txec</string>
|
||||
<string name="revanced_language_DA">Danès</string>
|
||||
<string name="revanced_language_DE">Alemany</string>
|
||||
<string name="revanced_language_EL">Grec</string>
|
||||
<string name="revanced_language_EN">Anglès</string>
|
||||
<string name="revanced_language_ES">Espanyol</string>
|
||||
<string name="revanced_language_ET">Estonià</string>
|
||||
<string name="revanced_language_FA">Persa</string>
|
||||
<string name="revanced_language_FI">Finès</string>
|
||||
<string name="revanced_language_FR">Francès</string>
|
||||
<string name="revanced_language_GU">Gujarati</string>
|
||||
<string name="revanced_language_HI">Hindi</string>
|
||||
<string name="revanced_language_HR">Croat</string>
|
||||
<string name="revanced_language_HU">Hongarès</string>
|
||||
<string name="revanced_language_ID">Indonesi</string>
|
||||
<string name="revanced_language_IT">Italià</string>
|
||||
<string name="revanced_language_JA">Japonès</string>
|
||||
<string name="revanced_language_KK">Kazakhstanès</string>
|
||||
<string name="revanced_language_KO">Coreà</string>
|
||||
<string name="revanced_language_LT">Lituà</string>
|
||||
<string name="revanced_language_LV">Letó</string>
|
||||
<string name="revanced_language_MK">Macedoni</string>
|
||||
<string name="revanced_language_MN">Mongol</string>
|
||||
<string name="revanced_language_MR">Marathi</string>
|
||||
<string name="revanced_language_MS">Malai</string>
|
||||
<string name="revanced_language_MY">Birmà</string>
|
||||
<string name="revanced_language_NL">Neerlandès</string>
|
||||
<string name="revanced_language_OR">Odia</string>
|
||||
<string name="revanced_language_PA">Panjabi</string>
|
||||
<string name="revanced_language_PL">Polonès</string>
|
||||
<string name="revanced_language_PT">Portuguès</string>
|
||||
<string name="revanced_language_RO">Romanès</string>
|
||||
<string name="revanced_language_RU">Rus</string>
|
||||
<string name="revanced_language_SK">Eslovac</string>
|
||||
<string name="revanced_language_SL">Eslovè</string>
|
||||
<string name="revanced_language_SR">Serbi</string>
|
||||
<string name="revanced_language_SV">Suec</string>
|
||||
<string name="revanced_language_SW">Suahili</string>
|
||||
<string name="revanced_language_TA">Tàmil</string>
|
||||
<string name="revanced_language_TE">Telugu</string>
|
||||
<string name="revanced_language_TH">Tailandès</string>
|
||||
<string name="revanced_language_TR">Turc</string>
|
||||
<string name="revanced_language_UK">Ucraïnès</string>
|
||||
<string name="revanced_language_UR">Urdu</string>
|
||||
<string name="revanced_language_VI">Vietnamita</string>
|
||||
<string name="revanced_language_ZH">Xinès</string>
|
||||
<string name="revanced_pref_import_export_title">Importa / Exporta</string>
|
||||
<string name="revanced_pref_import_export_summary">Importa / Exporta els ajustos de ReVanced</string>
|
||||
<!-- Settings about dialog. -->
|
||||
@@ -856,7 +805,6 @@ Configuració → Reproducció → Reprodueix el vídeo següent automàticament
|
||||
<string name="revanced_ryd_enable_summary_on">Els \"no m\'agrada\" es mostren</string>
|
||||
<string name="revanced_ryd_enable_summary_off">Els \"no m\'agrada\" no es mostren</string>
|
||||
<string name="revanced_ryd_shorts_title">Mostrar \"no m\'agrada\" a Shorts</string>
|
||||
<string name="revanced_ryd_shorts_summary_on">Els \"no m\'agrada\" als Shorts es mostren</string>
|
||||
<string name="revanced_ryd_shorts_summary_on_disclaimer">"Els \"no m'agrada\" als Shorts es mostren
|
||||
|
||||
Limitació: és possible que els \"no m'agrada\" no apareguin en mode d'incògnit"</string>
|
||||
@@ -1053,6 +1001,8 @@ Ja existeix"</string>
|
||||
<string name="revanced_sb_vote_downvote">Vota en contra</string>
|
||||
<string name="revanced_sb_vote_category">Canvia la categoria</string>
|
||||
<string name="revanced_sb_vote_no_segments">No hi ha segments per votar</string>
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<string name="revanced_sb_vote_segment_time_to_from">%1$s a %2$s</string>
|
||||
<string name="revanced_sb_new_segment_choose_category">Trieu la categoria del segment</string>
|
||||
<string name="revanced_sb_new_segment_disabled_category">La categoria està desactivada a la configuració. Habiliteu la categoria per enviar.</string>
|
||||
<string name="revanced_sb_new_segment_title">Nou segment de SponsorBlock</string>
|
||||
@@ -1100,6 +1050,7 @@ Preparat per enviar?"</string>
|
||||
<string name="revanced_sb_stats_saved_hour_format">%1$s hores %2$s minuts</string>
|
||||
<string name="revanced_sb_stats_saved_minute_format">%1$s minuts %2$s segons</string>
|
||||
<string name="revanced_sb_stats_saved_second_format">%s segons</string>
|
||||
<string name="revanced_sb_color_opacity_label">Opacitat:</string>
|
||||
<string name="revanced_sb_color_dot_label">Color:</string>
|
||||
<string name="revanced_sb_color_changed">Color canviat</string>
|
||||
<string name="revanced_sb_color_reset">Color restablert</string>
|
||||
@@ -1117,14 +1068,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>
|
||||
@@ -1139,12 +1088,7 @@ Si després es desactiva, es recomana esborrar les dades de l'aplicació per evi
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<string name="revanced_spoof_app_version_target_title">Objectiu de la versió falsa de l\'aplicació</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_1">19.35.36 - Restaura els icones vells del reproductor de Shorts</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.26.42 - Restaura les icones de navegació antigues</string>
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_1">18.33.40 - Restaura RYD al mode d\'incògnit de Shorts</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_2">18.20.39 - Restaura la velocitat àmplia del vídeo & menú de qualitat</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_3">18.09.39 - Restaura la pestanya de la biblioteca</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_4">17.33.42 - Restaura l\'antic prestatge de la llista de reproducció</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.01.34 - Restaura les icones de navegació antigues</string>
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
<string name="revanced_change_start_page_title">Defineix la pàgina d\'inici</string>
|
||||
@@ -1247,8 +1191,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>
|
||||
@@ -1368,9 +1310,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 +1349,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>
|
||||
|
||||
@@ -23,7 +23,7 @@ Second \"item\" text"</string>
|
||||
<app id="shared">
|
||||
<patch id="misc.checks.checkEnvironmentPatch">
|
||||
<string name="revanced_check_environment_failed_title">Kontrola proběhla neúspěšně</string>
|
||||
<string name="revanced_check_environment_dialog_open_official_source_button">Otevřít oficiální webové stránky</string>
|
||||
<string name="revanced_check_environment_dialog_open_official_source_button">Otevřít oficiální webovou stránku</string>
|
||||
<string name="revanced_check_environment_dialog_ignore_button">Ignorovat</string>
|
||||
<string name="revanced_check_environment_failed_message"><h5>Zdá se, že jste tuto upravenou verzi aplikace nevygenerovali vy.</h5><br>Aplikace nemusí fungovat správně, <b>může být škodlivá nebo nebezpečná</b>.<br><br>Z následujících kontrol vyplývá, že úpravy této aplikace byly provedeny někým jiným:<br><br><small>%1$s</small><br>Je důrazně doporučeno <b>odinstalovat tuto aplikaci a vygenerovat ji sami</b>, abyste měli jistotu, že je aplikace ověřená a bezpečná.<p><br>Pokud zvolíte Ignorovat, toto varování se zobrazí pouze dvakrát.</string>
|
||||
<string name="revanced_check_environment_not_same_patching_device">Vygenerována na jiném zařízení</string>
|
||||
@@ -48,57 +48,6 @@ Second \"item\" text"</string>
|
||||
|
||||
Nové jazyky přeložíte na translate.revanced.app"</string>
|
||||
<string name="revanced_language_DEFAULT">Jazyk aplikace</string>
|
||||
<string name="revanced_language_AR">Arabština</string>
|
||||
<string name="revanced_language_AZ">Ázerbájdžánština</string>
|
||||
<string name="revanced_language_BG">Bulharština</string>
|
||||
<string name="revanced_language_BN">Bengálština</string>
|
||||
<string name="revanced_language_CA">Katalánština</string>
|
||||
<string name="revanced_language_CS">Čeština</string>
|
||||
<string name="revanced_language_DA">Dánština</string>
|
||||
<string name="revanced_language_DE">Němčina</string>
|
||||
<string name="revanced_language_EL">Řečtina</string>
|
||||
<string name="revanced_language_EN">Angličtina</string>
|
||||
<string name="revanced_language_ES">Španělština</string>
|
||||
<string name="revanced_language_ET">Estonština</string>
|
||||
<string name="revanced_language_FA">Perština</string>
|
||||
<string name="revanced_language_FI">Finština</string>
|
||||
<string name="revanced_language_FR">Francouzština</string>
|
||||
<string name="revanced_language_GU">Gudžarátština</string>
|
||||
<string name="revanced_language_HI">Hindština</string>
|
||||
<string name="revanced_language_HR">Chorvatština</string>
|
||||
<string name="revanced_language_HU">Maďarština</string>
|
||||
<string name="revanced_language_ID">Indonéština</string>
|
||||
<string name="revanced_language_IT">Italština</string>
|
||||
<string name="revanced_language_JA">Japonština</string>
|
||||
<string name="revanced_language_KK">Kazachština</string>
|
||||
<string name="revanced_language_KO">Korejština</string>
|
||||
<string name="revanced_language_LT">Litevština</string>
|
||||
<string name="revanced_language_LV">Lotyština</string>
|
||||
<string name="revanced_language_MK">Makedonština</string>
|
||||
<string name="revanced_language_MN">Mongolština</string>
|
||||
<string name="revanced_language_MR">Maráthština</string>
|
||||
<string name="revanced_language_MS">Malajština</string>
|
||||
<string name="revanced_language_MY">Barmština</string>
|
||||
<string name="revanced_language_NL">Nizozemština</string>
|
||||
<string name="revanced_language_OR">Uríjština</string>
|
||||
<string name="revanced_language_PA">Paňdžábština</string>
|
||||
<string name="revanced_language_PL">Polština</string>
|
||||
<string name="revanced_language_PT">Portugalština</string>
|
||||
<string name="revanced_language_RO">Rumunština</string>
|
||||
<string name="revanced_language_RU">Ruština</string>
|
||||
<string name="revanced_language_SK">Slovenština</string>
|
||||
<string name="revanced_language_SL">Slověnština</string>
|
||||
<string name="revanced_language_SR">Srbština</string>
|
||||
<string name="revanced_language_SV">Švédština</string>
|
||||
<string name="revanced_language_SW">Svahilština</string>
|
||||
<string name="revanced_language_TA">Tamilština</string>
|
||||
<string name="revanced_language_TE">Telugština</string>
|
||||
<string name="revanced_language_TH">Thajština</string>
|
||||
<string name="revanced_language_TR">Turečtina</string>
|
||||
<string name="revanced_language_UK">Ukrajinština</string>
|
||||
<string name="revanced_language_UR">Urdština</string>
|
||||
<string name="revanced_language_VI">Vietnamština</string>
|
||||
<string name="revanced_language_ZH">Čínština</string>
|
||||
<string name="revanced_pref_import_export_title">Importovat / Exportovat</string>
|
||||
<string name="revanced_pref_import_export_summary">Importovat/exportovat nastavení ReVanced</string>
|
||||
<!-- Settings about dialog. -->
|
||||
@@ -178,20 +127,20 @@ Nebudete informováni o žádné neočekávané události."</string>
|
||||
<string name="revanced_hide_floating_microphone_button_summary_on">Tlačítko mikrofonu je skryté</string>
|
||||
<string name="revanced_hide_floating_microphone_button_summary_off">Tlačítko mikrofonu se zobrazuje</string>
|
||||
<string name="revanced_hide_channel_watermark_title">Skrýt vodoznak kanálu</string>
|
||||
<string name="revanced_hide_channel_watermark_summary_on">Vodoznak kanála je skrytý</string>
|
||||
<string name="revanced_hide_channel_watermark_summary_on">Vodoznak kanálu je skrytý</string>
|
||||
<string name="revanced_hide_channel_watermark_summary_off">Vodoznak je zobrazen</string>
|
||||
<string name="revanced_hide_horizontal_shelves_title">Skryť horizontálne police</string>
|
||||
<string name="revanced_hide_horizontal_shelves_title">Skrýt horizontální police</string>
|
||||
<string name="revanced_hide_horizontal_shelves_summary_on">"Police jsou skryté, například:
|
||||
• Novinky
|
||||
• Pokračovat v sledování
|
||||
• Prozkoumat další kanály
|
||||
• Nákupy
|
||||
• Podívat se znovu"</string>
|
||||
<string name="revanced_hide_horizontal_shelves_summary_off">Police sú zobrazené</string>
|
||||
<string name="revanced_hide_horizontal_shelves_summary_off">Police jsou zobrazené</string>
|
||||
<!-- 'Join' should be translated using the same localized wording YouTube displays.
|
||||
This appears in the video player for certain videos. -->
|
||||
<string name="revanced_hide_join_membership_button_title">Skrýt tlačítko Připojit se</string>
|
||||
<string name="revanced_hide_join_membership_button_summary_on">Tlačidlo je skryté</string>
|
||||
<string name="revanced_hide_join_membership_button_summary_on">Tlačitko je skryté</string>
|
||||
<string name="revanced_hide_join_membership_button_summary_off">Tlačítko je zobrazeno</string>
|
||||
<!-- 'For you' should be translated using the same localized wording YouTube displays. -->
|
||||
<string name="revanced_hide_for_you_shelf_title">Skrýt panel „Pro vás“</string>
|
||||
@@ -199,7 +148,7 @@ Nebudete informováni o žádné neočekávané události."</string>
|
||||
<string name="revanced_hide_for_you_shelf_summary_off">Panel polic ve stránce kanálu je zobrazen</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">Skryť tlačidlo \'Upozornite ma\'</string>
|
||||
<string name="revanced_hide_notify_me_button_title">Skrýt tlačitko \'Upozorněte mě\'</string>
|
||||
<string name="revanced_hide_notify_me_button_summary_on">Tlačítko je skryté</string>
|
||||
<string name="revanced_hide_notify_me_button_summary_off">Tlačítko je zobrazeno</string>
|
||||
<!-- 'People also watched' should be translated using the same localized wording YouTube displays. -->
|
||||
@@ -216,7 +165,7 @@ Nebudete informováni o žádné neočekávané události."</string>
|
||||
<string name="revanced_hide_timed_reactions_summary_off">Reakce se zobrazují po čase</string>
|
||||
<string name="revanced_hide_channel_guidelines_title">Skrýt pravidla kanálu</string>
|
||||
<string name="revanced_hide_channel_guidelines_summary_on">Pokyny kanálu sa nezobrazujú</string>
|
||||
<string name="revanced_hide_channel_guidelines_summary_off">Zobrazujú sa pokyny kanálu</string>
|
||||
<string name="revanced_hide_channel_guidelines_summary_off">Zobrazují se pokyny kanálu</string>
|
||||
<string name="revanced_hide_chips_shelf_title">Skryť police \"Ďalsej videá\"</string>
|
||||
<string name="revanced_hide_chips_shelf_summary_on">Police \"Další videá\" sa nezobrazuje</string>
|
||||
<string name="revanced_hide_chips_shelf_summary_off">Zobrazuje sa polícia \"Další videá\"</string>
|
||||
@@ -856,7 +805,6 @@ Nastavení → Přehrávání → Automatické přehrávání dalšího videa"</
|
||||
<string name="revanced_ryd_enable_summary_on">Nelíbí se se zobrazují</string>
|
||||
<string name="revanced_ryd_enable_summary_off">Nelíbí se se nezobrazují</string>
|
||||
<string name="revanced_ryd_shorts_title">Zobrazit nelíbí se v Shorts</string>
|
||||
<string name="revanced_ryd_shorts_summary_on">Počty „Nelíbí se mi“ u Shorts jsou zobrazeny</string>
|
||||
<string name="revanced_ryd_shorts_summary_on_disclaimer">"Počty „Nelíbí se mi“ u Shorts jsou zobrazeny
|
||||
|
||||
Omezení: Počty „Nelíbí se mi“ se nemusí zobrazit v anonymním režimu"</string>
|
||||
@@ -1053,6 +1001,8 @@ Již existuje"</string>
|
||||
<string name="revanced_sb_vote_downvote">Hlasovat dolů</string>
|
||||
<string name="revanced_sb_vote_category">Změnit kategorii</string>
|
||||
<string name="revanced_sb_vote_no_segments">Nejsou žádné segmenty, pro které by se dalo hlasovat</string>
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<string name="revanced_sb_vote_segment_time_to_from">%1$s až %2$s</string>
|
||||
<string name="revanced_sb_new_segment_choose_category">Zvolte kategorii segmentu</string>
|
||||
<string name="revanced_sb_new_segment_disabled_category">Kategorie je v nastavení zakázána. Povolte kategorii, abyste ji mohli odeslat.</string>
|
||||
<string name="revanced_sb_new_segment_title">Nový segment SponsorBlock</string>
|
||||
@@ -1100,6 +1050,7 @@ Jste připraveni k odeslání?"</string>
|
||||
<string name="revanced_sb_stats_saved_hour_format">%1$s hodin %2$s minut</string>
|
||||
<string name="revanced_sb_stats_saved_minute_format">%1$s minut %2$s sekund</string>
|
||||
<string name="revanced_sb_stats_saved_second_format">%s sekund</string>
|
||||
<string name="revanced_sb_color_opacity_label">Průhlednost:</string>
|
||||
<string name="revanced_sb_color_dot_label">Barva:</string>
|
||||
<string name="revanced_sb_color_changed">Barva změněna</string>
|
||||
<string name="revanced_sb_color_reset">Barva resetována</string>
|
||||
@@ -1121,10 +1072,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>
|
||||
@@ -1139,12 +1088,7 @@ Pokud bude později vypnuta, doporučujeme vymazat data aplikace, aby se zabrán
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<string name="revanced_spoof_app_version_target_title">Cíl napodobení verze aplikace</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_1">19.35.36 - Obnovuje staré ikony Shorts přehrávače</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.26.42 - Navrátit staré ikony pro navigaci</string>
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_1">18.33.40 - Obnovení RYD v režimu inkognito Shorts</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_2">18.20.39 - Obnovení široké nabídky rychlosti a kvality videa</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_3">18.09.39 - Obnovení karty Knihovna</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_4">17.33.42 - Obnovení staré police se seznamy skladeb</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.01.34 - Navrátit staré ikony pro navigaci</string>
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
<string name="revanced_change_start_page_title">Nastavit úvodní stránku</string>
|
||||
@@ -1247,8 +1191,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>
|
||||
@@ -1368,9 +1310,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 +1349,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>
|
||||
|
||||
@@ -48,57 +48,6 @@ Second \"item\" text"</string>
|
||||
|
||||
For at oversætte til nye sprog skal du besøge translate.revanced.app"</string>
|
||||
<string name="revanced_language_DEFAULT">App-sprog</string>
|
||||
<string name="revanced_language_AR">Arabisk</string>
|
||||
<string name="revanced_language_AZ">Aserbajdsjansk</string>
|
||||
<string name="revanced_language_BG">Bulgarsk</string>
|
||||
<string name="revanced_language_BN">Bengalsk</string>
|
||||
<string name="revanced_language_CA">Catalansk</string>
|
||||
<string name="revanced_language_CS">Tjekkisk</string>
|
||||
<string name="revanced_language_DA">Dansk</string>
|
||||
<string name="revanced_language_DE">Tysk</string>
|
||||
<string name="revanced_language_EL">Græsk</string>
|
||||
<string name="revanced_language_EN">Engelsk</string>
|
||||
<string name="revanced_language_ES">Spansk</string>
|
||||
<string name="revanced_language_ET">Estisk</string>
|
||||
<string name="revanced_language_FA">Persisk</string>
|
||||
<string name="revanced_language_FI">Finsk</string>
|
||||
<string name="revanced_language_FR">Fransk</string>
|
||||
<string name="revanced_language_GU">Gujarati</string>
|
||||
<string name="revanced_language_HI">Hindi</string>
|
||||
<string name="revanced_language_HR">Kroatisk</string>
|
||||
<string name="revanced_language_HU">Ungarsk</string>
|
||||
<string name="revanced_language_ID">Indonesisk</string>
|
||||
<string name="revanced_language_IT">Italiensk</string>
|
||||
<string name="revanced_language_JA">Japansk</string>
|
||||
<string name="revanced_language_KK">Kasakhisk</string>
|
||||
<string name="revanced_language_KO">Koreansk</string>
|
||||
<string name="revanced_language_LT">Litauisk</string>
|
||||
<string name="revanced_language_LV">Lettisk</string>
|
||||
<string name="revanced_language_MK">Makedonsk</string>
|
||||
<string name="revanced_language_MN">Mongolsk</string>
|
||||
<string name="revanced_language_MR">Marathi</string>
|
||||
<string name="revanced_language_MS">Malaysisk</string>
|
||||
<string name="revanced_language_MY">Burmesisk</string>
|
||||
<string name="revanced_language_NL">Hollandsk</string>
|
||||
<string name="revanced_language_OR">Odia</string>
|
||||
<string name="revanced_language_PA">Punjabi</string>
|
||||
<string name="revanced_language_PL">Polsk</string>
|
||||
<string name="revanced_language_PT">Portugisisk</string>
|
||||
<string name="revanced_language_RO">Rumænsk</string>
|
||||
<string name="revanced_language_RU">Russisk</string>
|
||||
<string name="revanced_language_SK">Slovakisk</string>
|
||||
<string name="revanced_language_SL">Slovensk</string>
|
||||
<string name="revanced_language_SR">Serbisk</string>
|
||||
<string name="revanced_language_SV">Svensk</string>
|
||||
<string name="revanced_language_SW">Swahili</string>
|
||||
<string name="revanced_language_TA">Tamil</string>
|
||||
<string name="revanced_language_TE">Telugu</string>
|
||||
<string name="revanced_language_TH">Thai</string>
|
||||
<string name="revanced_language_TR">Tyrkisk</string>
|
||||
<string name="revanced_language_UK">Ukrainisk</string>
|
||||
<string name="revanced_language_UR">Urdu</string>
|
||||
<string name="revanced_language_VI">Vietnamesisk</string>
|
||||
<string name="revanced_language_ZH">Kinesisk</string>
|
||||
<string name="revanced_pref_import_export_title">Importér/Eksportér</string>
|
||||
<string name="revanced_pref_import_export_summary">Importér/Eksportér ReVanced-indstillinger</string>
|
||||
<!-- Settings about dialog. -->
|
||||
@@ -1001,6 +950,8 @@ Eksisterer allerede"</string>
|
||||
<string name="revanced_sb_vote_downvote">Ned</string>
|
||||
<string name="revanced_sb_vote_category">Skift kategori</string>
|
||||
<string name="revanced_sb_vote_no_segments">Der er ingen segmenter at stemme for</string>
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<string name="revanced_sb_vote_segment_time_to_from">%1$s til %2$s</string>
|
||||
<string name="revanced_sb_new_segment_choose_category">Vælg segmentkategori</string>
|
||||
<string name="revanced_sb_new_segment_disabled_category">Kategori er deaktiveret i indstillinger. Aktivér kategori for at indsende.</string>
|
||||
<string name="revanced_sb_new_segment_title">Nyt SponsorBlock segment</string>
|
||||
@@ -1044,6 +995,7 @@ Er du klar til at indsende?"</string>
|
||||
<string name="revanced_sb_stats_saved_hour_format">%1$s timer %2$s minutter</string>
|
||||
<string name="revanced_sb_stats_saved_minute_format">%1$s minutter %2$s sekunder</string>
|
||||
<string name="revanced_sb_stats_saved_second_format">%s sekunder</string>
|
||||
<string name="revanced_sb_color_opacity_label">Opacitet:</string>
|
||||
<string name="revanced_sb_color_dot_label">Farve:</string>
|
||||
<string name="revanced_sb_color_changed">Farve ændret</string>
|
||||
<string name="revanced_sb_color_reset">Nulstil farve</string>
|
||||
@@ -1062,13 +1014,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>
|
||||
@@ -1083,12 +1033,7 @@ Hvis det senere slås fra, anbefales det at rydde app-dataene for at forhindre U
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<string name="revanced_spoof_app_version_target_title">Spoof app version mål</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_1">19.35.36 - Gendan gamle Shorts player ikoner</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.26.42 - Gendan gamle navigationsikoner</string>
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_1">18.33.40 - Gendan RYD på Shorts inkognitotilstand</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_2">18.20.39 - Gendan bred video hastighed & kvalitet menu</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_3">18.09.39 - Genopret biblioteks fane</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_4">17.33.42 - Gendan gammel spilleliste hylde</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.01.34 - Gendan gamle navigationsikoner</string>
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
<string name="revanced_change_start_page_title">Indstil startside</string>
|
||||
@@ -1191,8 +1136,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>
|
||||
@@ -1308,9 +1251,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 +1290,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>
|
||||
|
||||
@@ -48,57 +48,6 @@ Second \"item\" text"</string>
|
||||
|
||||
Um neue Sprachen zu übersetzen, besuchen Sie translate.revanced.app"</string>
|
||||
<string name="revanced_language_DEFAULT">App-Sprache</string>
|
||||
<string name="revanced_language_AR">Arabisch</string>
|
||||
<string name="revanced_language_AZ">Aserbaidschanisch</string>
|
||||
<string name="revanced_language_BG">Bulgarisch</string>
|
||||
<string name="revanced_language_BN">Bengali</string>
|
||||
<string name="revanced_language_CA">Katalanisch</string>
|
||||
<string name="revanced_language_CS">Tschechisch</string>
|
||||
<string name="revanced_language_DA">Dänisch</string>
|
||||
<string name="revanced_language_DE">Deutsch</string>
|
||||
<string name="revanced_language_EL">Griechisch</string>
|
||||
<string name="revanced_language_EN">Englisch</string>
|
||||
<string name="revanced_language_ES">Spanisch</string>
|
||||
<string name="revanced_language_ET">Estnisch</string>
|
||||
<string name="revanced_language_FA">Persisch</string>
|
||||
<string name="revanced_language_FI">Finnisch</string>
|
||||
<string name="revanced_language_FR">Französisch</string>
|
||||
<string name="revanced_language_GU">Gujarati</string>
|
||||
<string name="revanced_language_HI">Hindi</string>
|
||||
<string name="revanced_language_HR">Kroatisch</string>
|
||||
<string name="revanced_language_HU">Ungarisch</string>
|
||||
<string name="revanced_language_ID">Indonesisch</string>
|
||||
<string name="revanced_language_IT">Italienisch</string>
|
||||
<string name="revanced_language_JA">Japanisch</string>
|
||||
<string name="revanced_language_KK">Kasachisch</string>
|
||||
<string name="revanced_language_KO">Koreanisch</string>
|
||||
<string name="revanced_language_LT">Litauisch</string>
|
||||
<string name="revanced_language_LV">Lettisch</string>
|
||||
<string name="revanced_language_MK">Mazedonisch</string>
|
||||
<string name="revanced_language_MN">Mongolisch</string>
|
||||
<string name="revanced_language_MR">Marathi</string>
|
||||
<string name="revanced_language_MS">Malaiisch</string>
|
||||
<string name="revanced_language_MY">Burmesisch</string>
|
||||
<string name="revanced_language_NL">Niederländisch</string>
|
||||
<string name="revanced_language_OR">Odia</string>
|
||||
<string name="revanced_language_PA">Pandschabi</string>
|
||||
<string name="revanced_language_PL">Polnisch</string>
|
||||
<string name="revanced_language_PT">Portugiesisch</string>
|
||||
<string name="revanced_language_RO">Rumänisch</string>
|
||||
<string name="revanced_language_RU">Russisch</string>
|
||||
<string name="revanced_language_SK">Slovakisch</string>
|
||||
<string name="revanced_language_SL">Slowenisch</string>
|
||||
<string name="revanced_language_SR">Serbisch</string>
|
||||
<string name="revanced_language_SV">Schwedisch</string>
|
||||
<string name="revanced_language_SW">Suaheli</string>
|
||||
<string name="revanced_language_TA">Tamilisch</string>
|
||||
<string name="revanced_language_TE">Telugu</string>
|
||||
<string name="revanced_language_TH">Thai</string>
|
||||
<string name="revanced_language_TR">Türkisch</string>
|
||||
<string name="revanced_language_UK">Ukrainisch</string>
|
||||
<string name="revanced_language_UR">Urdu</string>
|
||||
<string name="revanced_language_VI">Vietnamesisch</string>
|
||||
<string name="revanced_language_ZH">Chinesisch</string>
|
||||
<string name="revanced_pref_import_export_title">Import/Export</string>
|
||||
<string name="revanced_pref_import_export_summary">ReVanced-Einstellungen importieren/exportieren</string>
|
||||
<!-- Settings about dialog. -->
|
||||
@@ -849,7 +798,6 @@ Einstellungen → Wiedergabe → Nächstes Video automatisch abspielen"</string>
|
||||
<string name="revanced_ryd_enable_summary_on">Dislikes werden angezeigt</string>
|
||||
<string name="revanced_ryd_enable_summary_off">Dislikes werden nicht angezeigt</string>
|
||||
<string name="revanced_ryd_shorts_title">Dislikes auf Shorts anzeigen</string>
|
||||
<string name="revanced_ryd_shorts_summary_on">Dislikes für Shorts werden angezeigt</string>
|
||||
<string name="revanced_ryd_shorts_summary_on_disclaimer">"Dislikes für Shorts werden angezeigt
|
||||
|
||||
Einschränkung: Dislikes werden möglicherweise nicht im Inkognito-Modus angezeigt"</string>
|
||||
@@ -1047,6 +995,8 @@ Existiert bereits"</string>
|
||||
<string name="revanced_sb_vote_downvote">Schlecht bewerten</string>
|
||||
<string name="revanced_sb_vote_category">Kategorie ändern</string>
|
||||
<string name="revanced_sb_vote_no_segments">Es gibt keine Segmente zur Abstimmung</string>
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<string name="revanced_sb_vote_segment_time_to_from">%1$s bis %2$s</string>
|
||||
<string name="revanced_sb_new_segment_choose_category">Wähle die Segmentkategorie</string>
|
||||
<string name="revanced_sb_new_segment_disabled_category">Kategorie ist in den Einstellungen deaktiviert. Aktivieren zum Senden.</string>
|
||||
<string name="revanced_sb_new_segment_title">Neues SponsorBlock Segment</string>
|
||||
@@ -1094,6 +1044,7 @@ Bereit zum Einreichen?"</string>
|
||||
<string name="revanced_sb_stats_saved_hour_format">%1$s Stunden %2$s Minuten</string>
|
||||
<string name="revanced_sb_stats_saved_minute_format">%1$s Minuten %2$s Sekunden</string>
|
||||
<string name="revanced_sb_stats_saved_second_format">%s Sekunden</string>
|
||||
<string name="revanced_sb_color_opacity_label">Deckkraft:</string>
|
||||
<string name="revanced_sb_color_dot_label">Farbe:</string>
|
||||
<string name="revanced_sb_color_changed">Farbe geändert</string>
|
||||
<string name="revanced_sb_color_reset">Farbe zurücksetzen</string>
|
||||
@@ -1109,16 +1060,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>
|
||||
@@ -1133,12 +1082,7 @@ Wenn Sie die Funktion später deaktivieren, wird empfohlen, die App-Daten zu lö
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<string name="revanced_spoof_app_version_target_title">Spoof-App-Versionsziel</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_1">19.35.36 - Alte Shorts Spielersymbole wiederherstellen</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.26.42 - Alte Navigations-Symbole wiederherstellen</string>
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_1">18.33.40 - RYD auf Shorts Inkognito-Modus wiederherstellen</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_2">18.20.39 - Wiederherstellen der breiten Videogeschwindigkeit & Qualitätsmenü</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_3">18.09.39 - Bibliotheks-Tab wiederherstellen</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_4">17.33.42 - Alte Wiedergabeliste wiederherstellen</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.01.34 - Alte Navigations-Symbole wiederherstellen</string>
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
<string name="revanced_change_start_page_title">Startseite festlegen</string>
|
||||
@@ -1241,8 +1185,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>
|
||||
@@ -1362,9 +1304,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 +1343,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>
|
||||
|
||||
@@ -48,57 +48,6 @@ Second \"item\" text"</string>
|
||||
|
||||
Για να μεταφράσετε σε νέες γλώσσες, επισκεφθείτε τη διεύθυνση translate.revanced.app"</string>
|
||||
<string name="revanced_language_DEFAULT">Γλώσσα εφαρμογής</string>
|
||||
<string name="revanced_language_AR">Αραβικά</string>
|
||||
<string name="revanced_language_AZ">Αζερμπαϊτζάν</string>
|
||||
<string name="revanced_language_BG">Βουλγαρικά</string>
|
||||
<string name="revanced_language_BN">Βεγγαλικά</string>
|
||||
<string name="revanced_language_CA">Καταλανικά</string>
|
||||
<string name="revanced_language_CS">Τσεχικά</string>
|
||||
<string name="revanced_language_DA">Δανικά</string>
|
||||
<string name="revanced_language_DE">Γερμανικά</string>
|
||||
<string name="revanced_language_EL">Ελληνικά</string>
|
||||
<string name="revanced_language_EN">Αγγλικά</string>
|
||||
<string name="revanced_language_ES">Ισπανικά</string>
|
||||
<string name="revanced_language_ET">Εσθονικά</string>
|
||||
<string name="revanced_language_FA">Περσικά</string>
|
||||
<string name="revanced_language_FI">Φινλανδικά</string>
|
||||
<string name="revanced_language_FR">Γαλλικά</string>
|
||||
<string name="revanced_language_GU">Γκουτζαρατικά</string>
|
||||
<string name="revanced_language_HI">Χίντι</string>
|
||||
<string name="revanced_language_HR">Κροατικά</string>
|
||||
<string name="revanced_language_HU">Ουγγρικά</string>
|
||||
<string name="revanced_language_ID">Ινδονησιακά</string>
|
||||
<string name="revanced_language_IT">Ιταλικά</string>
|
||||
<string name="revanced_language_JA">Ιαπωνικά</string>
|
||||
<string name="revanced_language_KK">Καζακικά</string>
|
||||
<string name="revanced_language_KO">Κορεάτικα</string>
|
||||
<string name="revanced_language_LT">Λιθουανικά</string>
|
||||
<string name="revanced_language_LV">Λετονικά</string>
|
||||
<string name="revanced_language_MK">Σλαβομακεδονικά</string>
|
||||
<string name="revanced_language_MN">Μογγολικά</string>
|
||||
<string name="revanced_language_MR">Μαράτι</string>
|
||||
<string name="revanced_language_MS">Μαλαισιανά</string>
|
||||
<string name="revanced_language_MY">Βιρμανικά</string>
|
||||
<string name="revanced_language_NL">Ολλανδικά</string>
|
||||
<string name="revanced_language_OR">Οντία</string>
|
||||
<string name="revanced_language_PA">Παντζάμπι</string>
|
||||
<string name="revanced_language_PL">Πολωνικά</string>
|
||||
<string name="revanced_language_PT">Πορτογαλικά</string>
|
||||
<string name="revanced_language_RO">Ρουμανικά</string>
|
||||
<string name="revanced_language_RU">Ρώσικα</string>
|
||||
<string name="revanced_language_SK">Σλοβακικά</string>
|
||||
<string name="revanced_language_SL">Σλοβενικά</string>
|
||||
<string name="revanced_language_SR">Σέρβικα</string>
|
||||
<string name="revanced_language_SV">Σουηδικά</string>
|
||||
<string name="revanced_language_SW">Σουαχίλι</string>
|
||||
<string name="revanced_language_TA">Ταμίλ</string>
|
||||
<string name="revanced_language_TE">Τελούγκου</string>
|
||||
<string name="revanced_language_TH">Ταϊλανδικά</string>
|
||||
<string name="revanced_language_TR">Τουρκικά</string>
|
||||
<string name="revanced_language_UK">Ουκρανικά</string>
|
||||
<string name="revanced_language_UR">Ουρντού</string>
|
||||
<string name="revanced_language_VI">Βιετναμέζικα</string>
|
||||
<string name="revanced_language_ZH">Κινέζικα</string>
|
||||
<string name="revanced_pref_import_export_title">Εισαγωγή / Εξαγωγή</string>
|
||||
<string name="revanced_pref_import_export_summary">Εισαγωγή / Εξαγωγή ρυθμίσεων ReVanced</string>
|
||||
<!-- Settings about dialog. -->
|
||||
@@ -858,7 +807,6 @@ Second \"item\" text"</string>
|
||||
<string name="revanced_ryd_enable_summary_on">Τα «Δεν μου αρέσει» εμφανίζονται</string>
|
||||
<string name="revanced_ryd_enable_summary_off">Τα «Δεν μου αρέσει» δεν εμφανίζονται</string>
|
||||
<string name="revanced_ryd_shorts_title">Εμφάνιση στα Shorts</string>
|
||||
<string name="revanced_ryd_shorts_summary_on">Τα «Δεν μου αρέσει» εμφανίζονται στα Shorts</string>
|
||||
<string name="revanced_ryd_shorts_summary_on_disclaimer">"Τα «Δεν μου αρέσει» εμφανίζονται στα Shorts
|
||||
|
||||
Περιορισμός: Ενδέχεται να μην εμφανίζονται σε ανώνυμη λειτουργία"</string>
|
||||
@@ -1055,6 +1003,8 @@ Second \"item\" text"</string>
|
||||
<string name="revanced_sb_vote_downvote">Αρνητική ψήφος</string>
|
||||
<string name="revanced_sb_vote_category">Αλλαγή κατηγορίας</string>
|
||||
<string name="revanced_sb_vote_no_segments">Δεν υπάρχουν τμήματα για να ψηφίσετε</string>
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<string name="revanced_sb_vote_segment_time_to_from">%1$s έως %2$s</string>
|
||||
<string name="revanced_sb_new_segment_choose_category">Επιλέξτε την κατηγορία του τμήματος</string>
|
||||
<string name="revanced_sb_new_segment_disabled_category">Η κατηγορία είναι απενεργοποιημένη στις ρυθμίσεις. Ενεργοποιήστε την κατηγορία για υποβολή.</string>
|
||||
<string name="revanced_sb_new_segment_title">Νέο τμήμα SponsorBlock</string>
|
||||
@@ -1102,6 +1052,7 @@ Second \"item\" text"</string>
|
||||
<string name="revanced_sb_stats_saved_hour_format">%1$s ώρες %2$s λεπτά</string>
|
||||
<string name="revanced_sb_stats_saved_minute_format">%1$s λεπτά %2$s δευτερόλεπτα</string>
|
||||
<string name="revanced_sb_stats_saved_second_format">%s δευτερόλεπτα</string>
|
||||
<string name="revanced_sb_color_opacity_label">Αδιαφάνεια:</string>
|
||||
<string name="revanced_sb_color_dot_label">Χρώμα:</string>
|
||||
<string name="revanced_sb_color_changed">Το χρώμα άλλαξε</string>
|
||||
<string name="revanced_sb_color_reset">Το χρώμα επαναφέρθηκε</string>
|
||||
@@ -1117,16 +1068,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>
|
||||
@@ -1141,12 +1090,7 @@ Second \"item\" text"</string>
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<string name="revanced_spoof_app_version_target_title">Έκδοση τροποποίησης της εφαρμογής</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_1">19.35.36 - Επαναφορά των παλιών εικονιδίων της οθόνης αναπαραγωγής Shorts</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.26.42 - Επαναφορά παλιών εικονιδίων γραμμής πλοήγησης</string>
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_1">18.33.40 - Επαναφορά λειτουργικότητας του RYD στα Shorts σε λειτουργία ανώνυμης περιήγησης</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_2">18.20.39 - Επαναφορά ευρύτερου μενού ταχύτητας & ποιότητας βίντεο</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_3">18.09.39 - Επαναφορά της καρτέλας βιβλιοθήκης</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_4">17.33.42 - Επαναφορά ενότητας λίστας αναπαραγωγής παλιού στυλ</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.01.34 - Επαναφορά παλιών εικονιδίων γραμμής πλοήγησης</string>
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
<string name="revanced_change_start_page_title">Αλλαγή της αρχικής σελίδας</string>
|
||||
@@ -1249,8 +1193,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>
|
||||
@@ -1366,11 +1308,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 +1349,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>
|
||||
|
||||
@@ -48,57 +48,6 @@ Second \"item\" text"</string>
|
||||
|
||||
Para traducir nuevos idiomas, visita translate.revanced.app"</string>
|
||||
<string name="revanced_language_DEFAULT">Idioma de la aplicación</string>
|
||||
<string name="revanced_language_AR">Árabe</string>
|
||||
<string name="revanced_language_AZ">Azerbaiyano</string>
|
||||
<string name="revanced_language_BG">Búlgaro</string>
|
||||
<string name="revanced_language_BN">Bengalí</string>
|
||||
<string name="revanced_language_CA">Catalán</string>
|
||||
<string name="revanced_language_CS">Checo</string>
|
||||
<string name="revanced_language_DA">Danés</string>
|
||||
<string name="revanced_language_DE">Alemán</string>
|
||||
<string name="revanced_language_EL">Griego</string>
|
||||
<string name="revanced_language_EN">Inglés</string>
|
||||
<string name="revanced_language_ES">Español</string>
|
||||
<string name="revanced_language_ET">Estonio</string>
|
||||
<string name="revanced_language_FA">Persa</string>
|
||||
<string name="revanced_language_FI">Finlandés</string>
|
||||
<string name="revanced_language_FR">Francés</string>
|
||||
<string name="revanced_language_GU">Gujarati</string>
|
||||
<string name="revanced_language_HI">Hindi</string>
|
||||
<string name="revanced_language_HR">Croata</string>
|
||||
<string name="revanced_language_HU">Húngaro</string>
|
||||
<string name="revanced_language_ID">Indonesio</string>
|
||||
<string name="revanced_language_IT">Italiano</string>
|
||||
<string name="revanced_language_JA">Japonés</string>
|
||||
<string name="revanced_language_KK">Kazajo</string>
|
||||
<string name="revanced_language_KO">Coreano</string>
|
||||
<string name="revanced_language_LT">Lituano</string>
|
||||
<string name="revanced_language_LV">Letón</string>
|
||||
<string name="revanced_language_MK">Macedonio</string>
|
||||
<string name="revanced_language_MN">Mongol</string>
|
||||
<string name="revanced_language_MR">Maratí</string>
|
||||
<string name="revanced_language_MS">Malayo</string>
|
||||
<string name="revanced_language_MY">Birmano</string>
|
||||
<string name="revanced_language_NL">Holandés</string>
|
||||
<string name="revanced_language_OR">Oriya</string>
|
||||
<string name="revanced_language_PA">Panyabí</string>
|
||||
<string name="revanced_language_PL">Polaco</string>
|
||||
<string name="revanced_language_PT">Portugués</string>
|
||||
<string name="revanced_language_RO">Rumano</string>
|
||||
<string name="revanced_language_RU">Ruso</string>
|
||||
<string name="revanced_language_SK">Eslovaco</string>
|
||||
<string name="revanced_language_SL">Esloveno</string>
|
||||
<string name="revanced_language_SR">Serbio</string>
|
||||
<string name="revanced_language_SV">Sueco</string>
|
||||
<string name="revanced_language_SW">Suajili</string>
|
||||
<string name="revanced_language_TA">Tamil</string>
|
||||
<string name="revanced_language_TE">Telugu</string>
|
||||
<string name="revanced_language_TH">Tailandés</string>
|
||||
<string name="revanced_language_TR">Turco</string>
|
||||
<string name="revanced_language_UK">Ucraniano</string>
|
||||
<string name="revanced_language_UR">Urdu</string>
|
||||
<string name="revanced_language_VI">Vietnamita</string>
|
||||
<string name="revanced_language_ZH">Chino</string>
|
||||
<string name="revanced_pref_import_export_title">Importar / Exportar</string>
|
||||
<string name="revanced_pref_import_export_summary">Importar / Exportar ajustes de ReVanced</string>
|
||||
<!-- Settings about dialog. -->
|
||||
@@ -846,7 +795,6 @@ Configuración → Reproducción → Reproducir el siguiente vídeo automáticam
|
||||
<string name="revanced_ryd_enable_summary_on">Dislikes son mostrados</string>
|
||||
<string name="revanced_ryd_enable_summary_off">No se muestran Dislikes</string>
|
||||
<string name="revanced_ryd_shorts_title">Mostrar no me gusta en Shorts</string>
|
||||
<string name="revanced_ryd_shorts_summary_on">Los Dislikes en los Shorts se muestran</string>
|
||||
<string name="revanced_ryd_shorts_summary_on_disclaimer">"Los Dislikes en los Shorts se muestran
|
||||
|
||||
Limitación: Es posible que los Dislikes no aparezcan en el modo de incógnito"</string>
|
||||
@@ -1043,6 +991,8 @@ Ya existe"</string>
|
||||
<string name="revanced_sb_vote_downvote">Voto negativo</string>
|
||||
<string name="revanced_sb_vote_category">Cambiar categoría</string>
|
||||
<string name="revanced_sb_vote_no_segments">No hay segmentos para votar</string>
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<string name="revanced_sb_vote_segment_time_to_from">%1$s a %2$s</string>
|
||||
<string name="revanced_sb_new_segment_choose_category">Elige la categoría del segmento</string>
|
||||
<string name="revanced_sb_new_segment_disabled_category">Categoría está desactivada en la configuración. Habilitar la categoría para enviar.</string>
|
||||
<string name="revanced_sb_new_segment_title">Nuevo segmento de SponsorBlock</string>
|
||||
@@ -1082,6 +1032,7 @@ Ya existe"</string>
|
||||
<string name="revanced_sb_stats_saved_hour_format">%1$s horas %2$s minutos</string>
|
||||
<string name="revanced_sb_stats_saved_minute_format">%1$s minutos %2$s segundos</string>
|
||||
<string name="revanced_sb_stats_saved_second_format">%s segundos</string>
|
||||
<string name="revanced_sb_color_opacity_label">Opacidad:</string>
|
||||
<string name="revanced_sb_color_dot_label">Color:</string>
|
||||
<string name="revanced_sb_color_changed">Color cambiado</string>
|
||||
<string name="revanced_sb_color_reset">Restablecer color</string>
|
||||
@@ -1103,10 +1054,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>
|
||||
@@ -1121,12 +1070,7 @@ Si se desactiva posteriormente, se recomienda borrar los datos de la aplicación
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<string name="revanced_spoof_app_version_target_title">Versión de aplicación falsa de destino</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_1">19.35.36 - Restaurar iconos antiguos del reproductor de Shorts</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.26.42 - Restaurar iconos de navegación antiguos</string>
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_1">18.33.40 - Restaurar RYD en Shorts de modo incógnito</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_2">18.20.39 - Restaurar la velocidad de vídeo ancha & menú de calidad</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_3">18.09.39 - Restaurar pestaña de biblioteca</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_4">17.33.42 - Restaurar el estante viejo de lista de reproducción</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.01.34 - Restaurar iconos de navegación antiguos</string>
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
<string name="revanced_change_start_page_title">Establecer página de inicio</string>
|
||||
@@ -1229,8 +1173,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>
|
||||
@@ -1316,9 +1258,9 @@ Habilitar esto puede desbloquear calidades de vídeo más altas"</string>
|
||||
<string name="microg_settings_summary">Configuración de GmsCore</string>
|
||||
</patch>
|
||||
<patch id="misc.links.bypassURLRedirectsPatch">
|
||||
<string name="revanced_bypass_url_redirects_title">Redirecciones URL Bypass</string>
|
||||
<string name="revanced_bypass_url_redirects_summary_on">Se omiten las redirecciones URL</string>
|
||||
<string name="revanced_bypass_url_redirects_summary_off">No se omiten las redirecciones URL</string>
|
||||
<string name="revanced_bypass_url_redirects_title">Evitar redirecciones de URL</string>
|
||||
<string name="revanced_bypass_url_redirects_summary_on">Se omiten las redirecciones de URL</string>
|
||||
<string name="revanced_bypass_url_redirects_summary_off">No se omiten las redirecciones de URL</string>
|
||||
</patch>
|
||||
<patch id="misc.links.openLinksExternallyPatch">
|
||||
<string name="revanced_external_browser_title">Abrir enlaces en el navegador</string>
|
||||
@@ -1350,9 +1292,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 +1331,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>
|
||||
|
||||
@@ -48,57 +48,6 @@ Second \"item\" text"</string>
|
||||
|
||||
Uute keelte tõlkimiseks külastage saiti translate.revanced.app"</string>
|
||||
<string name="revanced_language_DEFAULT">Rakenduse keel</string>
|
||||
<string name="revanced_language_AR">Araabia</string>
|
||||
<string name="revanced_language_AZ">Aserbaidžaani</string>
|
||||
<string name="revanced_language_BG">Bulgaaria</string>
|
||||
<string name="revanced_language_BN">Bengali</string>
|
||||
<string name="revanced_language_CA">Katalaani</string>
|
||||
<string name="revanced_language_CS">Tšehhi</string>
|
||||
<string name="revanced_language_DA">Taani</string>
|
||||
<string name="revanced_language_DE">Saksa</string>
|
||||
<string name="revanced_language_EL">Kreeka</string>
|
||||
<string name="revanced_language_EN">Inglise</string>
|
||||
<string name="revanced_language_ES">Hispaania</string>
|
||||
<string name="revanced_language_ET">Eesti</string>
|
||||
<string name="revanced_language_FA">Pärsia</string>
|
||||
<string name="revanced_language_FI">Soome</string>
|
||||
<string name="revanced_language_FR">Prantsuse</string>
|
||||
<string name="revanced_language_GU">Gudžarati</string>
|
||||
<string name="revanced_language_HI">Hindi</string>
|
||||
<string name="revanced_language_HR">Horvaatia</string>
|
||||
<string name="revanced_language_HU">Ungari</string>
|
||||
<string name="revanced_language_ID">Indoneesia</string>
|
||||
<string name="revanced_language_IT">Itaalia</string>
|
||||
<string name="revanced_language_JA">Jaapani</string>
|
||||
<string name="revanced_language_KK">Kasahhi</string>
|
||||
<string name="revanced_language_KO">Korea</string>
|
||||
<string name="revanced_language_LT">Leedu</string>
|
||||
<string name="revanced_language_LV">Läti</string>
|
||||
<string name="revanced_language_MK">Makedoonia</string>
|
||||
<string name="revanced_language_MN">Mongoolia</string>
|
||||
<string name="revanced_language_MR">Marathi</string>
|
||||
<string name="revanced_language_MS">Malaisia</string>
|
||||
<string name="revanced_language_MY">Birma</string>
|
||||
<string name="revanced_language_NL">Hollandi</string>
|
||||
<string name="revanced_language_OR">Odia</string>
|
||||
<string name="revanced_language_PA">Pandžabi</string>
|
||||
<string name="revanced_language_PL">Poola</string>
|
||||
<string name="revanced_language_PT">Portugali</string>
|
||||
<string name="revanced_language_RO">Rumeenia</string>
|
||||
<string name="revanced_language_RU">Vene</string>
|
||||
<string name="revanced_language_SK">Slovaki</string>
|
||||
<string name="revanced_language_SL">Sloveeni</string>
|
||||
<string name="revanced_language_SR">Serbia</string>
|
||||
<string name="revanced_language_SV">Rootsi</string>
|
||||
<string name="revanced_language_SW">Suahiili</string>
|
||||
<string name="revanced_language_TA">Tamili</string>
|
||||
<string name="revanced_language_TE">Telugu</string>
|
||||
<string name="revanced_language_TH">Tai</string>
|
||||
<string name="revanced_language_TR">Türgi</string>
|
||||
<string name="revanced_language_UK">Ukraina</string>
|
||||
<string name="revanced_language_UR">Urdu</string>
|
||||
<string name="revanced_language_VI">Vietnami</string>
|
||||
<string name="revanced_language_ZH">Hiina</string>
|
||||
<string name="revanced_pref_import_export_title">Impordi / Ekspordi</string>
|
||||
<string name="revanced_pref_import_export_summary">Impordi / Ekspordi ReVanced seadeteid</string>
|
||||
<!-- Settings about dialog. -->
|
||||
@@ -856,7 +805,6 @@ Seaded → Taasesitus → Esita järgmine video automaatselt"</string>
|
||||
<string name="revanced_ryd_enable_summary_on">Mittemeeldimised on nähtavad</string>
|
||||
<string name="revanced_ryd_enable_summary_off">Mittemeeldimised pole nähtavad</string>
|
||||
<string name="revanced_ryd_shorts_title">Näita mittemeeldimisi Shorts\'il</string>
|
||||
<string name="revanced_ryd_shorts_summary_on">Ei meeldimised on kuvatud teenuses Shorts</string>
|
||||
<string name="revanced_ryd_shorts_summary_on_disclaimer">"Ei meeldimised on kuvatud teenuses Shorts
|
||||
|
||||
Piirang: Ei meeldimised ei pruugi inkognito režiimis kuvada"</string>
|
||||
@@ -1054,6 +1002,8 @@ Juba olemas"</string>
|
||||
<string name="revanced_sb_vote_downvote">Hääleta alla</string>
|
||||
<string name="revanced_sb_vote_category">Muuda kategooriat</string>
|
||||
<string name="revanced_sb_vote_no_segments">Hääletamiseks pole segmente</string>
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<string name="revanced_sb_vote_segment_time_to_from">%1$s kuni %2$s</string>
|
||||
<string name="revanced_sb_new_segment_choose_category">Vali segmendi kategooria</string>
|
||||
<string name="revanced_sb_new_segment_disabled_category">Kategooria on seadetes keelatud. Luba kategooria esitamiseks.</string>
|
||||
<string name="revanced_sb_new_segment_title">Uus SponsorBlock segment</string>
|
||||
@@ -1101,6 +1051,7 @@ Kas olete esitamiseks valmis?"</string>
|
||||
<string name="revanced_sb_stats_saved_hour_format">%1$s tundi %2$s minutit</string>
|
||||
<string name="revanced_sb_stats_saved_minute_format">%1$s minutit %2$s sekundit</string>
|
||||
<string name="revanced_sb_stats_saved_second_format">%s sekundit</string>
|
||||
<string name="revanced_sb_color_opacity_label">Läbipaistmatus:</string>
|
||||
<string name="revanced_sb_color_dot_label">Värv:</string>
|
||||
<string name="revanced_sb_color_changed">Värv muudetud</string>
|
||||
<string name="revanced_sb_color_reset">Värv lähtestatud</string>
|
||||
@@ -1119,13 +1070,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>
|
||||
@@ -1140,12 +1089,7 @@ Kui see hiljem välja lülitatakse, on soovitatav rakenduse andmed kustutada, et
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<string name="revanced_spoof_app_version_target_title">Võltsitud rakenduse versiooni siht</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_1">19.35.36 - Taastage vanad Shortsi esitajaikoonid</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.26.42 - Taasta vanad navigeerimise ikoonid</string>
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_1">18.33.40 - Taastage RYD Shortsi incognito režiimis</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_2">18.20.39 - Taasta lai video kiiruse ja kvaliteedi menüü</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_3">18.09.39 - Taastage raamatukogu vaheleht</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_4">17.33.42 - Taastage vanad esitusloendi riiulid</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.01.34 - Taasta vanad navigeerimise ikoonid</string>
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
<string name="revanced_change_start_page_title">Määra algusleht</string>
|
||||
@@ -1248,8 +1192,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>
|
||||
@@ -1369,9 +1311,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 +1350,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>
|
||||
|
||||
@@ -156,6 +156,7 @@ Second \"item\" text"</string>
|
||||
<patch id="layout.sponsorblock.sponsorBlockResourcePatch">
|
||||
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title' -->
|
||||
<!-- Toast shown if network connection times out. Translations of this should not be longer than the original English or the text can be clipped and not entirely shown. -->
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<!-- Shown in the settings preferences, and translations can be any text length. -->
|
||||
</patch>
|
||||
<patch id="layout.formfactor.changeFormFactorPatch">
|
||||
@@ -163,7 +164,6 @@ Second \"item\" text"</string>
|
||||
<patch id="layout.spoofappversion.spoofAppVersionPatch">
|
||||
<!-- It is ideal, but not required, if the text here appears is alphabetically after the text used for 'revanced_spoof_app_version_title'.
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
</patch>
|
||||
@@ -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>
|
||||
|
||||
@@ -156,6 +156,7 @@ Second \"item\" text"</string>
|
||||
<patch id="layout.sponsorblock.sponsorBlockResourcePatch">
|
||||
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title' -->
|
||||
<!-- Toast shown if network connection times out. Translations of this should not be longer than the original English or the text can be clipped and not entirely shown. -->
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<!-- Shown in the settings preferences, and translations can be any text length. -->
|
||||
</patch>
|
||||
<patch id="layout.formfactor.changeFormFactorPatch">
|
||||
@@ -163,7 +164,6 @@ Second \"item\" text"</string>
|
||||
<patch id="layout.spoofappversion.spoofAppVersionPatch">
|
||||
<!-- It is ideal, but not required, if the text here appears is alphabetically after the text used for 'revanced_spoof_app_version_title'.
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
</patch>
|
||||
@@ -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>
|
||||
|
||||
@@ -48,57 +48,6 @@ Second \"item\" text"</string>
|
||||
|
||||
Voit auttaa uusien kielten kääntämisessä osoitteessa translate.revanced.app"</string>
|
||||
<string name="revanced_language_DEFAULT">Sovelluksen kieli</string>
|
||||
<string name="revanced_language_AR">Arabia</string>
|
||||
<string name="revanced_language_AZ">Azeri</string>
|
||||
<string name="revanced_language_BG">Bulgaria</string>
|
||||
<string name="revanced_language_BN">Bengali</string>
|
||||
<string name="revanced_language_CA">Katalaani</string>
|
||||
<string name="revanced_language_CS">Tšekki</string>
|
||||
<string name="revanced_language_DA">Tanska</string>
|
||||
<string name="revanced_language_DE">Saksa</string>
|
||||
<string name="revanced_language_EL">Kreikka</string>
|
||||
<string name="revanced_language_EN">Englanti</string>
|
||||
<string name="revanced_language_ES">Espanja</string>
|
||||
<string name="revanced_language_ET">Viro</string>
|
||||
<string name="revanced_language_FA">Persia</string>
|
||||
<string name="revanced_language_FI">Suomi</string>
|
||||
<string name="revanced_language_FR">Ranska</string>
|
||||
<string name="revanced_language_GU">Gudžarati</string>
|
||||
<string name="revanced_language_HI">Hindi</string>
|
||||
<string name="revanced_language_HR">Kroaatti</string>
|
||||
<string name="revanced_language_HU">Unkari</string>
|
||||
<string name="revanced_language_ID">Indonesia</string>
|
||||
<string name="revanced_language_IT">Italia</string>
|
||||
<string name="revanced_language_JA">Japani</string>
|
||||
<string name="revanced_language_KK">Kazakki</string>
|
||||
<string name="revanced_language_KO">Korea</string>
|
||||
<string name="revanced_language_LT">Liettua</string>
|
||||
<string name="revanced_language_LV">Latvia</string>
|
||||
<string name="revanced_language_MK">Makedonia</string>
|
||||
<string name="revanced_language_MN">Mongoli</string>
|
||||
<string name="revanced_language_MR">Marathi</string>
|
||||
<string name="revanced_language_MS">Malaiji</string>
|
||||
<string name="revanced_language_MY">Burma</string>
|
||||
<string name="revanced_language_NL">Hollanti</string>
|
||||
<string name="revanced_language_OR">Orija</string>
|
||||
<string name="revanced_language_PA">Pandžabi</string>
|
||||
<string name="revanced_language_PL">Puola</string>
|
||||
<string name="revanced_language_PT">Portugali</string>
|
||||
<string name="revanced_language_RO">Romania</string>
|
||||
<string name="revanced_language_RU">Venäjä</string>
|
||||
<string name="revanced_language_SK">Slovakki</string>
|
||||
<string name="revanced_language_SL">Sloveeni</string>
|
||||
<string name="revanced_language_SR">Serbia</string>
|
||||
<string name="revanced_language_SV">Ruotsi</string>
|
||||
<string name="revanced_language_SW">Swahili</string>
|
||||
<string name="revanced_language_TA">Tamil</string>
|
||||
<string name="revanced_language_TE">Telugu</string>
|
||||
<string name="revanced_language_TH">Thai</string>
|
||||
<string name="revanced_language_TR">Turkki</string>
|
||||
<string name="revanced_language_UK">Ukraina</string>
|
||||
<string name="revanced_language_UR">Urdu</string>
|
||||
<string name="revanced_language_VI">Vietnam</string>
|
||||
<string name="revanced_language_ZH">Kiina</string>
|
||||
<string name="revanced_pref_import_export_title">Tuonti/vienti</string>
|
||||
<string name="revanced_pref_import_export_summary">Tuo/vie ReVanced-asetukset</string>
|
||||
<!-- Settings about dialog. -->
|
||||
@@ -203,6 +152,7 @@ Et saa ilmoituksia odottamattomista tapahtumista."</string>
|
||||
<string name="revanced_hide_notify_me_button_summary_on">Painike on piilotettu</string>
|
||||
<string name="revanced_hide_notify_me_button_summary_off">Painike näytetään</string>
|
||||
<!-- 'People also watched' should be translated using the same localized wording YouTube displays. -->
|
||||
<string name="revanced_hide_search_result_recommendations_title">Piilota \'\"Ihmiset katselivat myös\" -tunniste</string>
|
||||
<string name="revanced_hide_search_result_recommendations_summary_on">Tunniste on piilotettu</string>
|
||||
<string name="revanced_hide_search_result_recommendations_summary_off">Tunniste näytetään</string>
|
||||
<!-- 'Show more' should be translated with the same localized wording that YouTube displays.
|
||||
@@ -276,6 +226,7 @@ Et saa ilmoituksia odottamattomista tapahtumista."</string>
|
||||
<string name="revanced_hide_artist_cards_title">Piilota artistikortit</string>
|
||||
<string name="revanced_hide_artist_cards_summary_on">Artistikortit on piilotettu</string>
|
||||
<string name="revanced_hide_artist_cards_summary_off">Artistikortit näytetään</string>
|
||||
<string name="revanced_hide_attributes_section_title">Piilota Määritteet</string>
|
||||
<string name="revanced_hide_attributes_section_summary_on">Esitellyt paikat, Pelit, Musiikki ja Mainitut ihmiset -osiot on piilotettu</string>
|
||||
<string name="revanced_hide_attributes_section_summary_off">Esitellyt paikat, Pelit, Musiikki ja Mainitut ihmiset -osiot näytetään</string>
|
||||
<string name="revanced_hide_chapters_section_title">Piilota Videon osat</string>
|
||||
@@ -402,6 +353,7 @@ 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 \"Näytä tuotteet\" -banneri</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>
|
||||
@@ -660,6 +612,7 @@ Jos tämän asetuksen muuttaminen ei tule voimaan, kokeile vaihtaa Incognito-til
|
||||
<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 -painikkeeet</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>
|
||||
@@ -852,7 +805,6 @@ Asetukset → Toisto → Toista seuraava video automaattisesti"</string>
|
||||
<string name="revanced_ryd_enable_summary_on">Ei-tykkäykset näytetään</string>
|
||||
<string name="revanced_ryd_enable_summary_off">Ei-tykkäyksiä ei näytetä</string>
|
||||
<string name="revanced_ryd_shorts_title">Näytä ei-tykkykset Shortseissa</string>
|
||||
<string name="revanced_ryd_shorts_summary_on">Ei-tykkäykset näytetään Shortseissa</string>
|
||||
<string name="revanced_ryd_shorts_summary_on_disclaimer">"Ei-tykkäykset näytetään Shortseissa
|
||||
|
||||
Rajoitus: Ei-tykkäykset eivät välttämättä näy incognito-tilassa"</string>
|
||||
@@ -1050,6 +1002,7 @@ On jo olemassa"</string>
|
||||
<string name="revanced_sb_vote_downvote">Alaääni</string>
|
||||
<string name="revanced_sb_vote_category">Muuta kategoriaa</string>
|
||||
<string name="revanced_sb_vote_no_segments">Äänestettäviä osioita ei ole</string>
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<string name="revanced_sb_new_segment_choose_category">Valitse osion kategoria</string>
|
||||
<string name="revanced_sb_new_segment_disabled_category">Kategoria on poistettu käytöstä asetuksissa. Salli kategoria lähettääksesi.</string>
|
||||
<string name="revanced_sb_new_segment_title">Uusi SponsorBlock-osio</string>
|
||||
@@ -1118,9 +1071,7 @@ Tabletti-asettelu
|
||||
• Yhteisöpostaukset on piilotettu
|
||||
|
||||
Ajoneuvo-asettelu
|
||||
• Katseluhistoriavalikko on piilotettu
|
||||
• Tutustu-välilehti on palautettu
|
||||
• Shortsit avautuvat tavallisessa soittimessa
|
||||
• Shortsit avataan tavallisessa soittimessa
|
||||
• Syöte on järjestetty aiheiden ja kanavien mukaan"</string>
|
||||
</patch>
|
||||
<patch id="layout.spoofappversion.spoofAppVersionPatch">
|
||||
@@ -1136,12 +1087,7 @@ Jos tämä poistetaan myöhemmin käytöstä, on suositeltavaa tyhjentää sovel
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<string name="revanced_spoof_app_version_target_title">Naamioitava kohdeversio</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_1">19.35.36 - Palauta vanhat Shorts-soittimen kuvakkeet</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.26.42 - Palauta vanhat navigointikuvakkeet</string>
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_1">18.33.40 - Palauita RYD Shorts-videoissa incognito-tilassa</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_2">18.20.39 - Palauta leveä videonopeus- ja laatuvalikko</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_3">18.09.39 - Palauta kirjasto-välilehti</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_4">17.33.42 - Palauta vanha soittolistahylly</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.01.34 - Palauta vanhat navigointikuvakkeet</string>
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
<string name="revanced_change_start_page_title">Aseta aloitussivu</string>
|
||||
@@ -1191,6 +1137,7 @@ 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>
|
||||
@@ -1243,8 +1190,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>
|
||||
@@ -1336,6 +1281,8 @@ 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 ulkoisessa selaimessa</string>
|
||||
<string name="revanced_external_browser_summary_off">Linkit avataan sovelluksen sisäisessä selaimessa</string>
|
||||
</patch>
|
||||
<patch id="misc.privacy.removeTrackingQueryParameterPatch">
|
||||
<string name="revanced_remove_tracking_query_parameter_title">Poista seurantakyselyparametrit</string>
|
||||
@@ -1362,9 +1309,15 @@ Tämä voi avata korkealaatuisemmat videot"</string>
|
||||
<string name="revanced_remember_video_quality_last_selected_summary_off">Laatumuutokset koskevat vain nykyistä videota</string>
|
||||
<string name="revanced_video_quality_default_wifi_title">Videon oletuslaatu Wi-Fi-verkossa</string>
|
||||
<string name="revanced_video_quality_default_mobile_title">Videon oletuslaatu mobiiliverkossa</string>
|
||||
<string name="revanced_remember_shorts_quality_last_selected_title">Muista Shortsien laadun muutokset</string>
|
||||
<string name="revanced_remember_shorts_quality_last_selected_summary_on">Laatumuutokset koskevat kaikkia Shortseja</string>
|
||||
<string name="revanced_remember_shorts_quality_last_selected_summary_off">Laatumuutokset koskevat vain nykyistä Shorttia</string>
|
||||
<string name="revanced_shorts_quality_default_wifi_title">Shorts-oletuslaatu Wi-Fi-verkossa</string>
|
||||
<string name="revanced_shorts_quality_default_mobile_title">Shorts-oletuslaatu mobiiliverkossa</string>
|
||||
<string name="revanced_remember_video_quality_mobile">mobiili</string>
|
||||
<string name="revanced_remember_video_quality_wifi">wifi</string>
|
||||
<string name="revanced_remember_video_quality_toast">%1$s-oletuslaatu muutettiin: %2$s</string>
|
||||
<string name="revanced_remember_video_quality_toast_shorts">Shortsien %1$s-laatu muutettiin: %2$s</string>
|
||||
</patch>
|
||||
<patch id="video.speed.button.playbackSpeedButtonPatch">
|
||||
<string name="revanced_playback_speed_dialog_button_title">Näytä nopeuden valintapainike</string>
|
||||
@@ -1395,10 +1348,10 @@ 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">
|
||||
<string name="revanced_advanced_video_quality_menu_title">Näytä edistynyt videolaatuvalikko</string>
|
||||
<string name="revanced_advanced_video_quality_menu_summary_on">Edistynyt videolaatuvalikko näytetään</string>
|
||||
<string name="revanced_advanced_video_quality_menu_summary_off">Edistynyttä videolaatuvalikkoa ei näytetä</string>
|
||||
</patch>
|
||||
<patch id="interaction.seekbar.enableSlideToSeekPatch">
|
||||
<string name="revanced_slide_to_seek_title">Ota kelaus liu\'uttamalla käyttöön</string>
|
||||
|
||||
@@ -48,57 +48,6 @@ Second \"item\" text"</string>
|
||||
|
||||
Upang magsalin ng mga bagong wika, bisitahin ang translate.revanced.app"</string>
|
||||
<string name="revanced_language_DEFAULT">Wika ng app</string>
|
||||
<string name="revanced_language_AR">Arabe</string>
|
||||
<string name="revanced_language_AZ">Azerbaijani</string>
|
||||
<string name="revanced_language_BG">Bulgarian</string>
|
||||
<string name="revanced_language_BN">Bengali</string>
|
||||
<string name="revanced_language_CA">Katalan</string>
|
||||
<string name="revanced_language_CS">Czech</string>
|
||||
<string name="revanced_language_DA">Danish</string>
|
||||
<string name="revanced_language_DE">German</string>
|
||||
<string name="revanced_language_EL">Greek</string>
|
||||
<string name="revanced_language_EN">English</string>
|
||||
<string name="revanced_language_ES">Spanish</string>
|
||||
<string name="revanced_language_ET">Estonian</string>
|
||||
<string name="revanced_language_FA">Persian</string>
|
||||
<string name="revanced_language_FI">Finnish</string>
|
||||
<string name="revanced_language_FR">French</string>
|
||||
<string name="revanced_language_GU">Gujarati</string>
|
||||
<string name="revanced_language_HI">Hindi</string>
|
||||
<string name="revanced_language_HR">Croatian</string>
|
||||
<string name="revanced_language_HU">Hungarian</string>
|
||||
<string name="revanced_language_ID">Indonesian</string>
|
||||
<string name="revanced_language_IT">Italian</string>
|
||||
<string name="revanced_language_JA">Japanese</string>
|
||||
<string name="revanced_language_KK">Kazakh</string>
|
||||
<string name="revanced_language_KO">Korean</string>
|
||||
<string name="revanced_language_LT">Lithuanian</string>
|
||||
<string name="revanced_language_LV">Latvian</string>
|
||||
<string name="revanced_language_MK">Macedonian</string>
|
||||
<string name="revanced_language_MN">Mongolian</string>
|
||||
<string name="revanced_language_MR">Marathi</string>
|
||||
<string name="revanced_language_MS">Malay</string>
|
||||
<string name="revanced_language_MY">Burmese</string>
|
||||
<string name="revanced_language_NL">Dutch</string>
|
||||
<string name="revanced_language_OR">Odia</string>
|
||||
<string name="revanced_language_PA">Punjabi</string>
|
||||
<string name="revanced_language_PL">Polish</string>
|
||||
<string name="revanced_language_PT">Portuguese</string>
|
||||
<string name="revanced_language_RO">Romanian</string>
|
||||
<string name="revanced_language_RU">Russian</string>
|
||||
<string name="revanced_language_SK">Slovak</string>
|
||||
<string name="revanced_language_SL">Slovene</string>
|
||||
<string name="revanced_language_SR">Serbian</string>
|
||||
<string name="revanced_language_SV">Swedish</string>
|
||||
<string name="revanced_language_SW">Swahili</string>
|
||||
<string name="revanced_language_TA">Tamil</string>
|
||||
<string name="revanced_language_TE">Telugu</string>
|
||||
<string name="revanced_language_TH">Thai</string>
|
||||
<string name="revanced_language_TR">Turkish</string>
|
||||
<string name="revanced_language_UK">Ukrainian</string>
|
||||
<string name="revanced_language_UR">Urdu</string>
|
||||
<string name="revanced_language_VI">Vietnamese</string>
|
||||
<string name="revanced_language_ZH">Chinese</string>
|
||||
<string name="revanced_pref_import_export_title">Mag-import / Mag-export</string>
|
||||
<string name="revanced_pref_import_export_summary">I-import / I-export ang mga setting ng ReVanced</string>
|
||||
<!-- Settings about dialog. -->
|
||||
@@ -854,7 +803,6 @@ Mga Setting → Pag-playback → I-autoplay ang susunod na video"</string>
|
||||
<string name="revanced_ryd_enable_summary_on">Ang mga hindi gusto ay ipinapakita</string>
|
||||
<string name="revanced_ryd_enable_summary_off">Hindi ipinapakita ang mga hindi gusto</string>
|
||||
<string name="revanced_ryd_shorts_title">Ipakita ang mga hindi gusto sa Shorts</string>
|
||||
<string name="revanced_ryd_shorts_summary_on">Ipinapakita ang mga Dislike sa Shorts</string>
|
||||
<string name="revanced_ryd_shorts_summary_on_disclaimer">"Ipinapakita ang mga Dislike sa Shorts
|
||||
|
||||
Limitasyon: Maaaring hindi lumabas ang mga Dislike sa incognito mode"</string>
|
||||
@@ -1052,6 +1000,8 @@ Umiiral na"</string>
|
||||
<string name="revanced_sb_vote_downvote">I-downvote</string>
|
||||
<string name="revanced_sb_vote_category">Baguhin ang kategorya</string>
|
||||
<string name="revanced_sb_vote_no_segments">Walang mga segment na iboboto</string>
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<string name="revanced_sb_vote_segment_time_to_from">%1$s hanggang %2$s</string>
|
||||
<string name="revanced_sb_new_segment_choose_category">Piliin ang kategorya ng segment</string>
|
||||
<string name="revanced_sb_new_segment_disabled_category">Naka-disable ang kategorya sa mga setting. Paganahin ang kategoryang isumite.</string>
|
||||
<string name="revanced_sb_new_segment_title">Bagong segment ng SponsorBlock</string>
|
||||
@@ -1099,6 +1049,7 @@ Isumite na ba?"</string>
|
||||
<string name="revanced_sb_stats_saved_hour_format">%1$s oras %2$s minuto</string>
|
||||
<string name="revanced_sb_stats_saved_minute_format">%1$s minuto %2$s segundo</string>
|
||||
<string name="revanced_sb_stats_saved_second_format">%s segundo</string>
|
||||
<string name="revanced_sb_color_opacity_label">Opacity:</string>
|
||||
<string name="revanced_sb_color_dot_label">Kulay:</string>
|
||||
<string name="revanced_sb_color_changed">Nagbago ang kulay</string>
|
||||
<string name="revanced_sb_color_reset">Pag-reset ng kulay</string>
|
||||
@@ -1117,13 +1068,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>
|
||||
@@ -1138,12 +1087,7 @@ Kung mamaya ay patayin, inirerekumenda na i-clear ang data ng app upang maiwasan
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<string name="revanced_spoof_app_version_target_title">Target na bersyon ng Spoof app</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_1">19.35.36 - Ibalik ang mga lumang icon ng Shorts player</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.26.42 - Ibalik ang mga lumang icon ng pag-navigate</string>
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_1">18.33.40 - Ibalik ang RYD sa incognito mode ng Shorts</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_2">18.20.39 - Ibalik ang malawak na bilis ng video & kalidad na menu</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_3">18.09.39 - Ibalik ang tab ng library</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_4">17.33.42 - Ibalik ang lumang istante ng playlist</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.01.34 - Ibalik ang mga lumang icon ng pag-navigate</string>
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
<string name="revanced_change_start_page_title">Itakda ang panimulang pahina</string>
|
||||
@@ -1245,8 +1189,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>
|
||||
@@ -1366,9 +1308,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>
|
||||
@@ -1399,10 +1347,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>
|
||||
|
||||
@@ -48,57 +48,6 @@ Second \"item\" text"</string>
|
||||
|
||||
Pour traduire dans de nouvelles langues, visitez translate.revanced.app"</string>
|
||||
<string name="revanced_language_DEFAULT">Langue de l\'application</string>
|
||||
<string name="revanced_language_AR">Arabe</string>
|
||||
<string name="revanced_language_AZ">Azéri</string>
|
||||
<string name="revanced_language_BG">Bulgare</string>
|
||||
<string name="revanced_language_BN">Bengali</string>
|
||||
<string name="revanced_language_CA">Catalan</string>
|
||||
<string name="revanced_language_CS">Tchèque</string>
|
||||
<string name="revanced_language_DA">Danois</string>
|
||||
<string name="revanced_language_DE">Allemand</string>
|
||||
<string name="revanced_language_EL">Grec</string>
|
||||
<string name="revanced_language_EN">Anglais</string>
|
||||
<string name="revanced_language_ES">Espagnol</string>
|
||||
<string name="revanced_language_ET">Estonien</string>
|
||||
<string name="revanced_language_FA">Persan</string>
|
||||
<string name="revanced_language_FI">Finnois</string>
|
||||
<string name="revanced_language_FR">Français</string>
|
||||
<string name="revanced_language_GU">Gujarati</string>
|
||||
<string name="revanced_language_HI">Hindi</string>
|
||||
<string name="revanced_language_HR">Croate</string>
|
||||
<string name="revanced_language_HU">Hongrois</string>
|
||||
<string name="revanced_language_ID">Indonésien</string>
|
||||
<string name="revanced_language_IT">Italien</string>
|
||||
<string name="revanced_language_JA">Japonais</string>
|
||||
<string name="revanced_language_KK">Kazakh</string>
|
||||
<string name="revanced_language_KO">Coréen</string>
|
||||
<string name="revanced_language_LT">Lituanien</string>
|
||||
<string name="revanced_language_LV">Letton</string>
|
||||
<string name="revanced_language_MK">Macédonien</string>
|
||||
<string name="revanced_language_MN">Mongol</string>
|
||||
<string name="revanced_language_MR">Marathi</string>
|
||||
<string name="revanced_language_MS">Malais</string>
|
||||
<string name="revanced_language_MY">Birman</string>
|
||||
<string name="revanced_language_NL">Néerlandais</string>
|
||||
<string name="revanced_language_OR">Odia</string>
|
||||
<string name="revanced_language_PA">Pendjabi</string>
|
||||
<string name="revanced_language_PL">Polonais</string>
|
||||
<string name="revanced_language_PT">Portugais</string>
|
||||
<string name="revanced_language_RO">Roumain</string>
|
||||
<string name="revanced_language_RU">Russe</string>
|
||||
<string name="revanced_language_SK">Slovaque</string>
|
||||
<string name="revanced_language_SL">Slovène</string>
|
||||
<string name="revanced_language_SR">Serbe</string>
|
||||
<string name="revanced_language_SV">Suédois</string>
|
||||
<string name="revanced_language_SW">Swahili</string>
|
||||
<string name="revanced_language_TA">Tamoul</string>
|
||||
<string name="revanced_language_TE">Télougou</string>
|
||||
<string name="revanced_language_TH">Thaï</string>
|
||||
<string name="revanced_language_TR">Turc</string>
|
||||
<string name="revanced_language_UK">Ukrainien</string>
|
||||
<string name="revanced_language_UR">Ourdou</string>
|
||||
<string name="revanced_language_VI">Vietnamien</string>
|
||||
<string name="revanced_language_ZH">Chinois</string>
|
||||
<string name="revanced_pref_import_export_title">Importer/Exporter</string>
|
||||
<string name="revanced_pref_import_export_summary">Importer/Exporter les paramètres ReVanced</string>
|
||||
<!-- Settings about dialog. -->
|
||||
@@ -150,7 +99,7 @@ Appuyez sur le bouton Continuer et autorisez les modifications."</string>
|
||||
</patch>
|
||||
<patch id="misc.debugging.enableDebuggingPatch">
|
||||
<string name="revanced_debug_screen_title">Débogage</string>
|
||||
<string name="revanced_debug_screen_summary">Activer ou désactiver les options de débogage</string>
|
||||
<string name="revanced_debug_screen_summary">Activez ou désactivez les options de débogage</string>
|
||||
<string name="revanced_debug_title">Journalisation de débogage</string>
|
||||
<string name="revanced_debug_summary_on">Les journaux de débogage sont activés</string>
|
||||
<string name="revanced_debug_summary_off">Les journaux de débogage sont désactivés</string>
|
||||
@@ -374,11 +323,11 @@ Les mots avec des majuscules au milieu doivent être saisis en respectant la cas
|
||||
|
||||
Limitations
|
||||
• Les Shorts ne peuvent pas être masqués par nom de chaîne
|
||||
• Certains composants de l'interface utilisateur peuvent ne pas être masqués
|
||||
• Il se peut que vous n'ayez aucun résultat en recherchant un mot-clé"</string>
|
||||
• Impossible de masquer certains composants de l'interface
|
||||
• Rechercher un mot-clé peut ne pas fonctionner"</string>
|
||||
<string name="revanced_hide_keyword_content_about_whole_words_title">Correspondance par mots entiers</string>
|
||||
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
|
||||
<string name="revanced_hide_keyword_content_about_whole_words_summary">Le fait de placer un mot-clé ou une expression entre guillemets permet d\'éviter les correspondances partielles entre les titres de vidéos et les noms des chaînes.<br><br>Par exemple,<br><b>\"ia\"</b> masquera la vidéo : <b>Comment fonctionne les IA ?</b><br>mais ne masquera pas : <b>Quelles études pour devenir commercial ?</b></string>
|
||||
<string name="revanced_hide_keyword_content_about_whole_words_summary">Mettre un mot-clé ou une expression entre guillemets permet d\'empêcher les correspondances partielles avec le titre des vidéos et le nom des chaînes.<br><br>Par exemple,<br><b>\"ia\"</b> masquera la vidéo : <b>Comment fonctionnent les IA ?</b><br>mais ne masquera pas : <b>Quelles études pour devenir commercial ?</b></string>
|
||||
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
|
||||
<string name="revanced_hide_keyword_toast_invalid_common">Impossible d\'utiliser ce mot-clé : %s</string>
|
||||
<string name="revanced_hide_keyword_toast_invalid_common_whole_word_required">Ajoutez des guillemets pour utiliser : %s</string>
|
||||
@@ -856,7 +805,6 @@ Paramètres → Lecture → Lecture automatique de la vidéo suivante"</string>
|
||||
<string name="revanced_ryd_enable_summary_on">Les \"Je n\'aime pas\" sont affichés</string>
|
||||
<string name="revanced_ryd_enable_summary_off">Les \"Je n\'aime pas\" ne sont pas affichés</string>
|
||||
<string name="revanced_ryd_shorts_title">Afficher les \"Je n\'aime pas\" sur les Shorts</string>
|
||||
<string name="revanced_ryd_shorts_summary_on">Les \"Je n\'aime pas\" sont affichés sur les Shorts</string>
|
||||
<string name="revanced_ryd_shorts_summary_on_disclaimer">"Les \"Je n'aime pas\" sont affichés sur les Shorts
|
||||
|
||||
Limitation : Il se peut que les \"Je n'aime pas\" n'apparaissent pas en mode navigation privée"</string>
|
||||
@@ -1053,6 +1001,8 @@ Il existe déjà."</string>
|
||||
<string name="revanced_sb_vote_downvote">Voter contre</string>
|
||||
<string name="revanced_sb_vote_category">Modifier la catégorie</string>
|
||||
<string name="revanced_sb_vote_no_segments">Il n\'y a pas de segments où voter</string>
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<string name="revanced_sb_vote_segment_time_to_from">%1$s – %2$s</string>
|
||||
<string name="revanced_sb_new_segment_choose_category">Choisissez la catégorie du segment</string>
|
||||
<string name="revanced_sb_new_segment_disabled_category">La catégorie est désactivée dans les paramètres. Activez la catégorie pour soumettre.</string>
|
||||
<string name="revanced_sb_new_segment_title">Nouveau segment SponsorBlock</string>
|
||||
@@ -1100,6 +1050,7 @@ Prêt à soumettre ?"</string>
|
||||
<string name="revanced_sb_stats_saved_hour_format">%1$s heures et %2$s minutes</string>
|
||||
<string name="revanced_sb_stats_saved_minute_format">%1$s minutes et %2$s secondes</string>
|
||||
<string name="revanced_sb_stats_saved_second_format">%s secondes</string>
|
||||
<string name="revanced_sb_color_opacity_label">Opacité :</string>
|
||||
<string name="revanced_sb_color_dot_label">Couleur :</string>
|
||||
<string name="revanced_sb_color_changed">Couleur modifiée</string>
|
||||
<string name="revanced_sb_color_reset">Couleur réinitialisée</string>
|
||||
@@ -1110,20 +1061,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">
|
||||
@@ -1139,12 +1088,7 @@ Si désactivé ultérieurement, il est recommandé d'effacer les données de l'a
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<string name="revanced_spoof_app_version_target_title">Version cible</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_1">19.35.36 - Restaurer les anciennes icônes du lecteur Shorts </string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.26.42 - Restaurer les anciennes icônes de navigation</string>
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_1">18.33.40 - Restaurer RYD dans le mode Shorts incognito</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_2">18.20.39 - Restaurer le menu grand format pour la vitesse et la qualité vidéo</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_3">18.09.39 - Restaurer l\'onglet Bibliothèque</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_4">17.33.42 - Restaurer l\'ancienne étagère Playlists</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.01.34 - Restaurer les anciennes icônes de navigation</string>
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
<string name="revanced_change_start_page_title">Définir la page ouverte au lancement</string>
|
||||
@@ -1181,8 +1125,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>
|
||||
@@ -1247,8 +1191,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>
|
||||
@@ -1363,14 +1305,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 +1338,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 s\'appliquent uniquement à 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 +1349,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>
|
||||
@@ -1413,7 +1361,7 @@ Activer cette option peut déverrouiller des qualités vidéo supérieures"</str
|
||||
</patch>
|
||||
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
|
||||
<string name="revanced_spoof_video_streams_screen_title">Falsifier les flux vidéo</string>
|
||||
<string name="revanced_spoof_video_streams_screen_summary">Falsifier les flux vidéo du client pour prévenir les problèmes de lecture</string>
|
||||
<string name="revanced_spoof_video_streams_screen_summary">Falsifiez les flux vidéo client pour prévenir les problèmes de lecture</string>
|
||||
<string name="revanced_spoof_video_streams_title">Falsifier les flux vidéo</string>
|
||||
<string name="revanced_spoof_video_streams_summary_on">Les flux vidéo sont falsifiés</string>
|
||||
<string name="revanced_spoof_video_streams_summary_off">"Les flux vidéo ne sont pas falsifiés
|
||||
|
||||
@@ -48,57 +48,6 @@ Second \"item\" text"</string>
|
||||
|
||||
Chun teangacha nua a aistriú, tabhair cuairt ar translate.revanced.app"</string>
|
||||
<string name="revanced_language_DEFAULT">Teanga aip</string>
|
||||
<string name="revanced_language_AR">Araibis</string>
|
||||
<string name="revanced_language_AZ">Asarbaiseáinis</string>
|
||||
<string name="revanced_language_BG">Bulgáiris</string>
|
||||
<string name="revanced_language_BN">Beangáilis</string>
|
||||
<string name="revanced_language_CA">Catalóinis</string>
|
||||
<string name="revanced_language_CS">Seicis</string>
|
||||
<string name="revanced_language_DA">Danmhairgis</string>
|
||||
<string name="revanced_language_DE">Gearmáinis</string>
|
||||
<string name="revanced_language_EL">Gréigis</string>
|
||||
<string name="revanced_language_EN">Béarla</string>
|
||||
<string name="revanced_language_ES">Spáinnis</string>
|
||||
<string name="revanced_language_ET">Eastóinis</string>
|
||||
<string name="revanced_language_FA">Peirsis</string>
|
||||
<string name="revanced_language_FI">Fionlainnis</string>
|
||||
<string name="revanced_language_FR">Fraincis</string>
|
||||
<string name="revanced_language_GU">Gúisearáitis</string>
|
||||
<string name="revanced_language_HI">Hiondúis</string>
|
||||
<string name="revanced_language_HR">Cróitis</string>
|
||||
<string name="revanced_language_HU">Ungáiris</string>
|
||||
<string name="revanced_language_ID">Indonéisis</string>
|
||||
<string name="revanced_language_IT">Iodáilis</string>
|
||||
<string name="revanced_language_JA">Seapáinis</string>
|
||||
<string name="revanced_language_KK">Casaicis</string>
|
||||
<string name="revanced_language_KO">Cóiréis</string>
|
||||
<string name="revanced_language_LT">Liotuáinis</string>
|
||||
<string name="revanced_language_LV">Laitvis</string>
|
||||
<string name="revanced_language_MK">Macadóinis</string>
|
||||
<string name="revanced_language_MN">Mongóilis</string>
|
||||
<string name="revanced_language_MR">Maráitis</string>
|
||||
<string name="revanced_language_MS">Malaeis</string>
|
||||
<string name="revanced_language_MY">Burmais</string>
|
||||
<string name="revanced_language_NL">Ollainnis</string>
|
||||
<string name="revanced_language_OR">Odais</string>
|
||||
<string name="revanced_language_PA">Puinseáibis</string>
|
||||
<string name="revanced_language_PL">Polainnis</string>
|
||||
<string name="revanced_language_PT">Portaingéilis</string>
|
||||
<string name="revanced_language_RO">Rómáinis</string>
|
||||
<string name="revanced_language_RU">Rúisis</string>
|
||||
<string name="revanced_language_SK">Slóvaicis</string>
|
||||
<string name="revanced_language_SL">Slóivéinis</string>
|
||||
<string name="revanced_language_SR">Seirbis</string>
|
||||
<string name="revanced_language_SV">Sualainnis</string>
|
||||
<string name="revanced_language_SW">Svahaílis</string>
|
||||
<string name="revanced_language_TA">Tamailis</string>
|
||||
<string name="revanced_language_TE">Teileagúis</string>
|
||||
<string name="revanced_language_TH">Téalainnis</string>
|
||||
<string name="revanced_language_TR">Tuircis</string>
|
||||
<string name="revanced_language_UK">Úcráinis</string>
|
||||
<string name="revanced_language_UR">Urdúis</string>
|
||||
<string name="revanced_language_VI">Vientaimis</string>
|
||||
<string name="revanced_language_ZH">Sínis</string>
|
||||
<string name="revanced_pref_import_export_title">Iompórtáil / Easpórtáil</string>
|
||||
<string name="revanced_pref_import_export_summary">Iompórtáil / Easpórtáil socruithe ReVanced</string>
|
||||
<!-- Settings about dialog. -->
|
||||
@@ -203,7 +152,7 @@ Ní bheidh a fhios agat faoi aon imeachtaí neamhghnácha."</string>
|
||||
<string name="revanced_hide_notify_me_button_summary_on">Tá an cnaipe i bhfolach</string>
|
||||
<string name="revanced_hide_notify_me_button_summary_off">Taispeántar an cnaipe</string>
|
||||
<!-- 'People also watched' should be translated using the same localized wording YouTube displays. -->
|
||||
<string name="revanced_hide_search_result_recommendations_title">Folaigh lipéad \'Ar fhéach daoine eile orthu chomh maith\'</string>
|
||||
<string name="revanced_hide_search_result_recommendations_title">Folaigh an lipéad \'D\'amharc daoine eile freisin\'</string>
|
||||
<string name="revanced_hide_search_result_recommendations_summary_on">Tá an lipéad i bhfolach</string>
|
||||
<string name="revanced_hide_search_result_recommendations_summary_off">Taispeántar an lipéad</string>
|
||||
<!-- 'Show more' should be translated with the same localized wording that YouTube displays.
|
||||
@@ -217,9 +166,9 @@ Ní bheidh a fhios agat faoi aon imeachtaí neamhghnácha."</string>
|
||||
<string name="revanced_hide_channel_guidelines_title">Folaigh treoirlínte cainéal</string>
|
||||
<string name="revanced_hide_channel_guidelines_summary_on">Tá treoirlínte cainéal i bhfolach</string>
|
||||
<string name="revanced_hide_channel_guidelines_summary_off">Taispeántar treoirlínte cainéal</string>
|
||||
<string name="revanced_hide_chips_shelf_title">Folaigh seilf sliseanna</string>
|
||||
<string name="revanced_hide_chips_shelf_summary_on">Tá seilf sliseanna i bhfolach</string>
|
||||
<string name="revanced_hide_chips_shelf_summary_off">Taispeántar seilf sliseanna</string>
|
||||
<string name="revanced_hide_chips_shelf_title">Folaigh an seilf scagairí </string>
|
||||
<string name="revanced_hide_chips_shelf_summary_on">Tá seilf scagairí i bhfolach</string>
|
||||
<string name="revanced_hide_chips_shelf_summary_off">Taispeántar seilf scagairí</string>
|
||||
<string name="revanced_hide_expandable_chip_title">Folaigh cártaí inmhéadaithe faoi fhíseáin</string>
|
||||
<string name="revanced_hide_expandable_chip_summary_on">Tá cárta inscálaithe i bhfolach</string>
|
||||
<string name="revanced_hide_expandable_chip_summary_off">Taispeántar cárta inscálaithe</string>
|
||||
@@ -229,9 +178,9 @@ Ní bheidh a fhios agat faoi aon imeachtaí neamhghnácha."</string>
|
||||
<string name="revanced_hide_compact_banner_title">Folaigh meirgí dlúth</string>
|
||||
<string name="revanced_hide_compact_banner_summary_on">Tá meirgí dlúth i bhfolach</string>
|
||||
<string name="revanced_hide_compact_banner_summary_off">Taispeántar meirgí dlúth</string>
|
||||
<string name="revanced_hide_movies_section_title">Folaigh rannán scannáin</string>
|
||||
<string name="revanced_hide_movies_section_summary_on">Tá an chuid Scannáin i bhfolach</string>
|
||||
<string name="revanced_hide_movies_section_summary_off">Taispeántar an rannán scannáin</string>
|
||||
<string name="revanced_hide_movies_section_title">Folaigh rannóg scannán</string>
|
||||
<string name="revanced_hide_movies_section_summary_on">Tá rannóg na scannán i bhfolach</string>
|
||||
<string name="revanced_hide_movies_section_summary_off">Taispeántar rannóg na scannán</string>
|
||||
<string name="revanced_hide_feed_survey_title">Folaigh suirbhéanna na fotha</string>
|
||||
<string name="revanced_hide_feed_survey_summary_on">Tá suirbhéanna fotha i bhfolach</string>
|
||||
<string name="revanced_hide_feed_survey_summary_off">Taispeántar suirbhéanna fotha</string>
|
||||
@@ -289,7 +238,7 @@ Ní bheidh a fhios agat faoi aon imeachtaí neamhghnácha."</string>
|
||||
<string name="revanced_hide_podcast_section_title">Folaigh \'Déan iniúchadh ar an bpodchraoladh\'</string>
|
||||
<string name="revanced_hide_podcast_section_summary_on">Tá an chuid Déan iniúchadh ar an bpodchraoladh i bhfolach</string>
|
||||
<string name="revanced_hide_podcast_section_summary_off">Taispeántar an chuid Déan iniúchadh ar an bpodchraoladh</string>
|
||||
<string name="revanced_hide_info_cards_section_title">Folaigh cártaí Eolais</string>
|
||||
<string name="revanced_hide_info_cards_section_title">Folaigh cártaí eolais</string>
|
||||
<string name="revanced_hide_info_cards_section_summary_on">Tá an chuid cártaí faisnéise i bhfolach</string>
|
||||
<string name="revanced_hide_info_cards_section_summary_off">Taispeántar rannán cártaí faisnéise</string>
|
||||
<string name="revanced_hide_key_concepts_section_title">Folaigh \'Príomhchoincheapa\'</string>
|
||||
@@ -404,6 +353,7 @@ 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 an bhratach \'Féach ar tháirgí\'</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>
|
||||
@@ -442,8 +392,10 @@ Níl an ghné seo ar fáil ach do ghléasanna níos sine"</string>
|
||||
<string name="revanced_share_copy_url_success">URL cóipeáilte chuig gearr</string>
|
||||
<string name="revanced_share_copy_url_timestamp_success">URL le stampa ama cóipeáilte</string>
|
||||
<string name="revanced_copy_video_url_title">Taispeáin cnaipe URL físe cóipeáil</string>
|
||||
<string name="revanced_copy_video_url_summary_on">Taispeántar an cnaipe. Tapáil chun URL an fhíseáin a chóipeáil. Tapáil agus coinnigh chun a chóipeáil le stampa ama</string>
|
||||
<string name="revanced_copy_video_url_summary_off">Ní thaispeántar an cnaipe</string>
|
||||
<string name="revanced_copy_video_url_timestamp_title">Taispeáin cnaipe URL stampa ama cóipeáil</string>
|
||||
<string name="revanced_copy_video_url_timestamp_summary_on">Taispeántar an cnaipe. Tapáil chun URL físeáin a chóipeáil le stampa ama. Tapáil agus coinnigh chun cóip a dhéanamh gan stampa ama</string>
|
||||
<string name="revanced_copy_video_url_timestamp_summary_off">Ní thaispeántar an cnaipe</string>
|
||||
</patch>
|
||||
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch">
|
||||
@@ -483,6 +435,10 @@ Níl an ghné seo ar fáil ach do ghléasanna níos sine"</string>
|
||||
Coigeartaigh gile trí swipe a dhéanamh go hingearach ar thaobh na láimhe clé den scáileán"</string>
|
||||
<string name="revanced_swipe_brightness_summary_off">Tá swipe gile lánscáileáin díchumasaithe</string>
|
||||
<string name="revanced_swipe_volume_title">Cumasaigh comhartha toirte</string>
|
||||
<string name="revanced_swipe_volume_summary_on">"Tá an haiscairt toirte lánscáileáin cumasaithe.
|
||||
|
||||
Coigeartaigh an toirt trí haisceartán go hingearach ar thaobh deas an scáileáin"</string>
|
||||
<string name="revanced_swipe_volume_summary_off">Tá an haiscairt toirte lánscáileáin díchumasaithe</string>
|
||||
<string name="revanced_swipe_press_to_engage_title">Cumasaigh gothaí brúigh-go-swipe</string>
|
||||
<string name="revanced_swipe_press_to_engage_summary_on">Tá brúigh-go-swipe cumasaithe</string>
|
||||
<string name="revanced_swipe_press_to_engage_summary_off">Tá brúigh-go-swipe díchumasaithe</string>
|
||||
@@ -502,8 +458,12 @@ Coigeartaigh gile trí swipe a dhéanamh go hingearach ar thaobh na láimhe clé
|
||||
<string name="revanced_swipe_overlay_background_opacity_invalid_toast">Caithfidh léaráidí traslaithe a bheith idir 0-100</string>
|
||||
<string name="revanced_swipe_threshold_title">Tairseach méid swipe</string>
|
||||
<string name="revanced_swipe_threshold_summary">Méid an tairseach le haghaidh sruthú tarlú</string>
|
||||
<string name="revanced_swipe_show_circular_overlay_title">Taispeáin forleagan ciorclach</string>
|
||||
<string name="revanced_swipe_show_circular_overlay_summary_on">Léirítear forleagan ciorclach</string>
|
||||
<string name="revanced_swipe_show_circular_overlay_summary_off">Taispeántar forleagan cothrománach</string>
|
||||
<string name="revanced_swipe_overlay_minimal_style_title">Cumasaigh stíl íosta</string>
|
||||
<string name="revanced_swipe_overlay_minimal_style_summary_on">Tá stíl íosta forleagain cumasaithe</string>
|
||||
<string name="revanced_swipe_overlay_minimal_style_summary_off">Tá an stíl fhorleagan íosta díchumasaithe</string>
|
||||
<string name="revanced_swipe_change_video_title">Cumasaigh swipe chun físeáin a athrú</string>
|
||||
<string name="revanced_swipe_change_video_summary_on">Achlaigh i mód lán-scáile chun athrú go dtí an físeán chéanna/arís</string>
|
||||
<string name="revanced_swipe_change_video_summary_off">Ní athróidh achlaigh i mód lán-scáile go dtí an físeán chéanna/arís</string>
|
||||
@@ -841,10 +801,10 @@ Socruithe → Athsheinm → Uathshein físeán eile"</string>
|
||||
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
|
||||
<string name="revanced_ryd_failure_ryd_enabled_while_playing_video_then_user_voted">Athlódáil físeán chun vótáil ag baint úsáide as Return YouTube Dislike</string>
|
||||
<!-- Video likes have been set to hidden by the video uploader. -->
|
||||
<string name="revanced_ryd_video_likes_hidden_by_video_owner">I bhfolach ag úinéir</string>
|
||||
<string name="revanced_ryd_enable_summary_on">Taispeántar rudaí nach dtaitníonn leo</string>
|
||||
<string name="revanced_ryd_enable_summary_off">Ní thaispeántar nach dtaitníonn leat</string>
|
||||
<string name="revanced_ryd_shorts_title">Taispeáin neamhthaitníonn ar Shorts</string>
|
||||
<string name="revanced_ryd_shorts_summary_on">Taispeántar easaontais ar Shorts</string>
|
||||
<string name="revanced_ryd_shorts_summary_on_disclaimer">"Taispeántar easaontais ar Shorts
|
||||
|
||||
Srianadh: Bíodh easaontais gan teacht ar taispeáint sa mhodh incognito"</string>
|
||||
@@ -856,6 +816,9 @@ Srianadh: Bíodh easaontais gan teacht ar taispeáint sa mhodh incognito"</strin
|
||||
<string name="revanced_ryd_compact_layout_title">Cnaipe Cosúil dlúth</string>
|
||||
<string name="revanced_ryd_compact_layout_summary_on">Cosúil le cnaipe stíleáilte don leithead íosta</string>
|
||||
<string name="revanced_ryd_compact_layout_summary_off">Cosúil le cnaipe stíleáilte don chuma is fearr</string>
|
||||
<string name="revanced_ryd_estimated_like_title">Taispeáin na rudaí is maith leis</string>
|
||||
<string name="revanced_ryd_estimated_like_summary_on">Taispeántar cosúlachtaí measta</string>
|
||||
<string name="revanced_ryd_estimated_like_summary_off">Tá a leithéidí measta i bhfolach</string>
|
||||
<string name="revanced_ryd_toast_on_connection_error_title">Taispeáin tósta mura bhfuil API ar fáil</string>
|
||||
<string name="revanced_ryd_toast_on_connection_error_summary_on">Taispeántar tósta mura bhfuil Return YouTube Dislike ar fáil</string>
|
||||
<string name="revanced_ryd_toast_on_connection_error_summary_off">Ní thaispeántar tóst mura bhfuil Return YouTube Dislike ar fáil</string>
|
||||
@@ -907,6 +870,7 @@ Oibríonn an ghné seo is fearr le caighdeán físeáin 720p nó níos ísle agu
|
||||
<string name="revanced_sb_enable_voting_sum_on">Taispeántar cnaipe vótála deigh</string>
|
||||
<string name="revanced_sb_enable_voting_sum_off">Ní thaispeántar cnaipe vótála deireadh</string>
|
||||
<string name="revanced_sb_square_layout">Úsáid leagan amach cearnógach</string>
|
||||
<string name="revanced_sb_square_layout_sum_on">Tá cnaipí agus rialtáin cearnach</string>
|
||||
<string name="revanced_sb_square_layout_sum_off">Tá cnaipí agus rialuithe cruinn</string>
|
||||
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title' -->
|
||||
<string name="revanced_sb_enable_compact_skip_button">Úsáid cnaipe Dlúthscipeála</string>
|
||||
@@ -1038,6 +1002,8 @@ Tá sé ann cheana féin"</string>
|
||||
<string name="revanced_sb_vote_downvote">Vótáil sios</string>
|
||||
<string name="revanced_sb_vote_category">Athraigh catagóir</string>
|
||||
<string name="revanced_sb_vote_no_segments">Níl aon deighleoga le vótáil orthu</string>
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<string name="revanced_sb_vote_segment_time_to_from">%1$s go %2$s</string>
|
||||
<string name="revanced_sb_new_segment_choose_category">Roghnaigh catagóir deighleog</string>
|
||||
<string name="revanced_sb_new_segment_disabled_category">Tá catagóir díchumasaithe i socruithe. Cumasaigh catagóir a chur isteach.</string>
|
||||
<string name="revanced_sb_new_segment_title">Deighleog nua SponsorBlock</string>
|
||||
@@ -1085,6 +1051,7 @@ Maithe chun cur isteach?"</string>
|
||||
<string name="revanced_sb_stats_saved_hour_format">%1$s uaireanta %2$s nóiméad</string>
|
||||
<string name="revanced_sb_stats_saved_minute_format">%1$s nóiméad %2$s soicind</string>
|
||||
<string name="revanced_sb_stats_saved_second_format">%s soicindí</string>
|
||||
<string name="revanced_sb_color_opacity_label">Teimhneacht:</string>
|
||||
<string name="revanced_sb_color_dot_label">Dath:</string>
|
||||
<string name="revanced_sb_color_changed">Athraigh dath</string>
|
||||
<string name="revanced_sb_color_reset">Athshocrú dath</string>
|
||||
@@ -1100,16 +1067,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>
|
||||
@@ -1124,12 +1089,7 @@ Má dhiúltaítear é níos déanaí, moltar sonraí an aip a ghlanadh chun buga
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<string name="revanced_spoof_app_version_target_title">Sprioc leagan aip spoof</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_1">19.35.36 - Athchóirigh sean-deilbhíní imreoir Shorts</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.26.42 - Athchóiriú Sean Icóin Treorach</string>
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_1">18.33.40 - Athchóirigh RYD ar mhodh incognito Shorts</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_2">18.20.39 - Athchóirigh luas leathan físe & roghchlár cáilíochta</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_3">18.09.39 - Athchóirigh cluaisín leabharlainne</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_4">17.33.42 - Athchóirigh sean-seilf seinmliostaí</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.01.34 - Athchóiriú Sean Icóin Treorach</string>
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
<string name="revanced_change_start_page_title">Socraigh leathanach tosaigh</string>
|
||||
@@ -1179,6 +1139,7 @@ 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 in-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>
|
||||
@@ -1231,8 +1192,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>
|
||||
@@ -1352,9 +1311,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>
|
||||
@@ -1385,10 +1350,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>
|
||||
|
||||
@@ -156,6 +156,7 @@ Second \"item\" text"</string>
|
||||
<patch id="layout.sponsorblock.sponsorBlockResourcePatch">
|
||||
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title' -->
|
||||
<!-- Toast shown if network connection times out. Translations of this should not be longer than the original English or the text can be clipped and not entirely shown. -->
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<!-- Shown in the settings preferences, and translations can be any text length. -->
|
||||
</patch>
|
||||
<patch id="layout.formfactor.changeFormFactorPatch">
|
||||
@@ -163,7 +164,6 @@ Second \"item\" text"</string>
|
||||
<patch id="layout.spoofappversion.spoofAppVersionPatch">
|
||||
<!-- It is ideal, but not required, if the text here appears is alphabetically after the text used for 'revanced_spoof_app_version_title'.
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
</patch>
|
||||
@@ -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>
|
||||
|
||||
@@ -156,6 +156,7 @@ Second \"item\" text"</string>
|
||||
<patch id="layout.sponsorblock.sponsorBlockResourcePatch">
|
||||
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title' -->
|
||||
<!-- Toast shown if network connection times out. Translations of this should not be longer than the original English or the text can be clipped and not entirely shown. -->
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<!-- Shown in the settings preferences, and translations can be any text length. -->
|
||||
</patch>
|
||||
<patch id="layout.formfactor.changeFormFactorPatch">
|
||||
@@ -163,7 +164,6 @@ Second \"item\" text"</string>
|
||||
<patch id="layout.spoofappversion.spoofAppVersionPatch">
|
||||
<!-- It is ideal, but not required, if the text here appears is alphabetically after the text used for 'revanced_spoof_app_version_title'.
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
</patch>
|
||||
@@ -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>
|
||||
|
||||
@@ -156,6 +156,7 @@ Second \"item\" text"</string>
|
||||
<patch id="layout.sponsorblock.sponsorBlockResourcePatch">
|
||||
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title' -->
|
||||
<!-- Toast shown if network connection times out. Translations of this should not be longer than the original English or the text can be clipped and not entirely shown. -->
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<!-- Shown in the settings preferences, and translations can be any text length. -->
|
||||
</patch>
|
||||
<patch id="layout.formfactor.changeFormFactorPatch">
|
||||
@@ -163,7 +164,6 @@ Second \"item\" text"</string>
|
||||
<patch id="layout.spoofappversion.spoofAppVersionPatch">
|
||||
<!-- It is ideal, but not required, if the text here appears is alphabetically after the text used for 'revanced_spoof_app_version_title'.
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
</patch>
|
||||
@@ -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>
|
||||
|
||||
@@ -156,6 +156,7 @@ Second \"item\" text"</string>
|
||||
<patch id="layout.sponsorblock.sponsorBlockResourcePatch">
|
||||
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title' -->
|
||||
<!-- Toast shown if network connection times out. Translations of this should not be longer than the original English or the text can be clipped and not entirely shown. -->
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<!-- Shown in the settings preferences, and translations can be any text length. -->
|
||||
</patch>
|
||||
<patch id="layout.formfactor.changeFormFactorPatch">
|
||||
@@ -163,7 +164,6 @@ Second \"item\" text"</string>
|
||||
<patch id="layout.spoofappversion.spoofAppVersionPatch">
|
||||
<!-- It is ideal, but not required, if the text here appears is alphabetically after the text used for 'revanced_spoof_app_version_title'.
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
</patch>
|
||||
@@ -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>
|
||||
|
||||
@@ -48,57 +48,6 @@ Second \"item\" text"</string>
|
||||
|
||||
Új nyelvek lefordításához látogasson el ide: translate.revanced.app"</string>
|
||||
<string name="revanced_language_DEFAULT">Alkalmazás nyelve</string>
|
||||
<string name="revanced_language_AR">Arab</string>
|
||||
<string name="revanced_language_AZ">Azeri</string>
|
||||
<string name="revanced_language_BG">Bolgár</string>
|
||||
<string name="revanced_language_BN">Bengáli</string>
|
||||
<string name="revanced_language_CA">Katalán</string>
|
||||
<string name="revanced_language_CS">Cseh</string>
|
||||
<string name="revanced_language_DA">Dán</string>
|
||||
<string name="revanced_language_DE">Német</string>
|
||||
<string name="revanced_language_EL">Görög</string>
|
||||
<string name="revanced_language_EN">Angol</string>
|
||||
<string name="revanced_language_ES">Spanyol</string>
|
||||
<string name="revanced_language_ET">Észt</string>
|
||||
<string name="revanced_language_FA">Perzsa</string>
|
||||
<string name="revanced_language_FI">Finn</string>
|
||||
<string name="revanced_language_FR">Francia</string>
|
||||
<string name="revanced_language_GU">Gudzsaráti</string>
|
||||
<string name="revanced_language_HI">Hindi</string>
|
||||
<string name="revanced_language_HR">Horvát</string>
|
||||
<string name="revanced_language_HU">Magyar</string>
|
||||
<string name="revanced_language_ID">Indonéz</string>
|
||||
<string name="revanced_language_IT">Olasz</string>
|
||||
<string name="revanced_language_JA">Japán</string>
|
||||
<string name="revanced_language_KK">Kazah</string>
|
||||
<string name="revanced_language_KO">Koreai</string>
|
||||
<string name="revanced_language_LT">Litván</string>
|
||||
<string name="revanced_language_LV">Lett</string>
|
||||
<string name="revanced_language_MK">Macedón</string>
|
||||
<string name="revanced_language_MN">Mongol</string>
|
||||
<string name="revanced_language_MR">Maráthi</string>
|
||||
<string name="revanced_language_MS">Maláj</string>
|
||||
<string name="revanced_language_MY">Burmai</string>
|
||||
<string name="revanced_language_NL">Holland</string>
|
||||
<string name="revanced_language_OR">Odia</string>
|
||||
<string name="revanced_language_PA">Pandzsábi</string>
|
||||
<string name="revanced_language_PL">Lengyel</string>
|
||||
<string name="revanced_language_PT">Portugál</string>
|
||||
<string name="revanced_language_RO">Román</string>
|
||||
<string name="revanced_language_RU">Orosz</string>
|
||||
<string name="revanced_language_SK">Szlovák</string>
|
||||
<string name="revanced_language_SL">Szlovén</string>
|
||||
<string name="revanced_language_SR">Szerb</string>
|
||||
<string name="revanced_language_SV">Svéd</string>
|
||||
<string name="revanced_language_SW">Szuahéli</string>
|
||||
<string name="revanced_language_TA">Tamil</string>
|
||||
<string name="revanced_language_TE">Telugu</string>
|
||||
<string name="revanced_language_TH">Thai</string>
|
||||
<string name="revanced_language_TR">Török</string>
|
||||
<string name="revanced_language_UK">Ukrán</string>
|
||||
<string name="revanced_language_UR">Urdu</string>
|
||||
<string name="revanced_language_VI">Vietnami</string>
|
||||
<string name="revanced_language_ZH">Kínai</string>
|
||||
<string name="revanced_pref_import_export_title">Importálás / exportálás</string>
|
||||
<string name="revanced_pref_import_export_summary">ReVanced beállítások importálása / exportálása</string>
|
||||
<!-- Settings about dialog. -->
|
||||
@@ -856,7 +805,6 @@ Beállítások → Lejátszás → Következő videó automatikus lejátszása"<
|
||||
<string name="revanced_ryd_enable_summary_on">A nem tetszések megjelennek</string>
|
||||
<string name="revanced_ryd_enable_summary_off">A nem tetszések nem jelennek meg</string>
|
||||
<string name="revanced_ryd_shorts_title">A nem tetszések megjelenítése a Shorts videóknál</string>
|
||||
<string name="revanced_ryd_shorts_summary_on">A nem tetszések a Shorts-on láthatók</string>
|
||||
<string name="revanced_ryd_shorts_summary_on_disclaimer">"A nem tetszések a Shorts-on láthatók
|
||||
|
||||
Korlátozás: A nem tetszések inkognitómódban nem jelenhetnek meg"</string>
|
||||
@@ -1054,6 +1002,8 @@ Már létezik"</string>
|
||||
<string name="revanced_sb_vote_downvote">Leszavazás</string>
|
||||
<string name="revanced_sb_vote_category">Kategória megváltoztatása</string>
|
||||
<string name="revanced_sb_vote_no_segments">Nincsenek szakaszok, amikre szavazni lehet</string>
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<string name="revanced_sb_vote_segment_time_to_from">%1$s – %2$s</string>
|
||||
<string name="revanced_sb_new_segment_choose_category">Válassza ki a szakasz kategóriáját</string>
|
||||
<string name="revanced_sb_new_segment_disabled_category">A kategória letiltva a beállításokban. Engedélyezze a beküldéshez.</string>
|
||||
<string name="revanced_sb_new_segment_title">Új SponsorBlock szakasz</string>
|
||||
@@ -1100,6 +1050,7 @@ Készen állsz a beküldésre?"</string>
|
||||
<string name="revanced_sb_stats_saved_hour_format">%1$s óra %2$s perc</string>
|
||||
<string name="revanced_sb_stats_saved_minute_format">%1$s perc %2$s másodperc</string>
|
||||
<string name="revanced_sb_stats_saved_second_format">%s másodperc</string>
|
||||
<string name="revanced_sb_color_opacity_label">Áttetszőség:</string>
|
||||
<string name="revanced_sb_color_dot_label">Szín:</string>
|
||||
<string name="revanced_sb_color_changed">A szín megváltoztatva</string>
|
||||
<string name="revanced_sb_color_reset">Szín alaphelyzetbe</string>
|
||||
@@ -1115,16 +1066,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>
|
||||
@@ -1139,12 +1088,7 @@ Ha később kikapcsolja, akkor ajánlott az alkalmazás adatait törölni, hogy
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<string name="revanced_spoof_app_version_target_title">Hamisított alkalmazásverzió célja</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_1">19.35.36 - A régi Shorts lejátszó ikonok visszaállítása</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.26.42 - Állítsa vissza a régi navigációs ikonokat</string>
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_1">18.33.40 - RYD visszaállítása Shorts inkognitó módban</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_2">18.20.39 - Széles videósebesség és minőség menü visszaállítása</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_3">18.09.39 - Könyvtár lap visszaállítása</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_4">17.33.42 - Régi lejátszási lista polc visszállítása</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.01.34 - Állítsa vissza a régi navigációs ikonokat</string>
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
<string name="revanced_change_start_page_title">Kezdőlap beállítása</string>
|
||||
@@ -1247,8 +1191,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>
|
||||
@@ -1368,9 +1310,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 +1349,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>
|
||||
|
||||
@@ -48,57 +48,6 @@ Second \"item\" text"</string>
|
||||
|
||||
Նոր լեզուներ թարգմանելու համար այցելեք translate.revanced.app"</string>
|
||||
<string name="revanced_language_DEFAULT">Հավելվածի լեզու</string>
|
||||
<string name="revanced_language_AR">Արաբերեն</string>
|
||||
<string name="revanced_language_AZ">Ադրբեջաներեն</string>
|
||||
<string name="revanced_language_BG">Բուլղարերեն</string>
|
||||
<string name="revanced_language_BN">Բենգալերեն</string>
|
||||
<string name="revanced_language_CA">Կատալաներեն</string>
|
||||
<string name="revanced_language_CS">Չեխերեն</string>
|
||||
<string name="revanced_language_DA">Դանիերեն</string>
|
||||
<string name="revanced_language_DE">Գերմաներեն</string>
|
||||
<string name="revanced_language_EL">Հունարեն</string>
|
||||
<string name="revanced_language_EN">Անգլերեն</string>
|
||||
<string name="revanced_language_ES">Իսպաներեն</string>
|
||||
<string name="revanced_language_ET">Էստոներեն</string>
|
||||
<string name="revanced_language_FA">Պարսկերեն</string>
|
||||
<string name="revanced_language_FI">Ֆիններեն</string>
|
||||
<string name="revanced_language_FR">Ֆրանսերեն</string>
|
||||
<string name="revanced_language_GU">Գուջարաթի</string>
|
||||
<string name="revanced_language_HI">Հինդի</string>
|
||||
<string name="revanced_language_HR">Խորվաթերեն</string>
|
||||
<string name="revanced_language_HU">Հունգարերեն</string>
|
||||
<string name="revanced_language_ID">Ինդոնեզերեն</string>
|
||||
<string name="revanced_language_IT">Իտալերեն</string>
|
||||
<string name="revanced_language_JA">Ճապոներեն</string>
|
||||
<string name="revanced_language_KK">Ղազախերեն</string>
|
||||
<string name="revanced_language_KO">Կորեերեն</string>
|
||||
<string name="revanced_language_LT">Լիտվերեն</string>
|
||||
<string name="revanced_language_LV">Լատվիերեն</string>
|
||||
<string name="revanced_language_MK">Մակեդոներեն</string>
|
||||
<string name="revanced_language_MN">Մոնղոլերեն</string>
|
||||
<string name="revanced_language_MR">Մարաթի</string>
|
||||
<string name="revanced_language_MS">Մալայերեն</string>
|
||||
<string name="revanced_language_MY">Բիրմաներեն</string>
|
||||
<string name="revanced_language_NL">Նիդերլանդերեն</string>
|
||||
<string name="revanced_language_OR">Օդիա</string>
|
||||
<string name="revanced_language_PA">Փանջաբի</string>
|
||||
<string name="revanced_language_PL">Լեհերեն</string>
|
||||
<string name="revanced_language_PT">Պորտուգալերեն</string>
|
||||
<string name="revanced_language_RO">Ռումիներեն</string>
|
||||
<string name="revanced_language_RU">Ռուսերեն</string>
|
||||
<string name="revanced_language_SK">Սլովակերեն</string>
|
||||
<string name="revanced_language_SL">Սլովեներեն</string>
|
||||
<string name="revanced_language_SR">Սերբերեն</string>
|
||||
<string name="revanced_language_SV">Շվեդերեն</string>
|
||||
<string name="revanced_language_SW">Սվահիլի</string>
|
||||
<string name="revanced_language_TA">Թամիլերեն</string>
|
||||
<string name="revanced_language_TE">Թելուգու</string>
|
||||
<string name="revanced_language_TH">Թաիլանդերեն</string>
|
||||
<string name="revanced_language_TR">Թուրքերեն</string>
|
||||
<string name="revanced_language_UK">Ուկրաիներեն</string>
|
||||
<string name="revanced_language_UR">Ուրդու</string>
|
||||
<string name="revanced_language_VI">Վիետնամերեն</string>
|
||||
<string name="revanced_language_ZH">Չինարեն</string>
|
||||
<string name="revanced_pref_import_export_title">Ներմուծում/Արտահանում</string>
|
||||
<string name="revanced_pref_import_export_summary">Import / Export ReVanced կարգավորումներ</string>
|
||||
<!-- Settings about dialog. -->
|
||||
@@ -855,7 +804,6 @@ MicroG-ի համար մարտկոցի օպտիմալացումը անջատել
|
||||
<string name="revanced_ryd_enable_summary_on">\"Dislike\"-երը ցուցադրվում են</string>
|
||||
<string name="revanced_ryd_enable_summary_off">\"Dislike\"-երը չեն ցուցադրվում</string>
|
||||
<string name="revanced_ryd_shorts_title">Ցուցադրել \"Dislike\"-երը Shorts-ում</string>
|
||||
<string name="revanced_ryd_shorts_summary_on">\"Dislike\"-երը Shorts-ում ցուցադրվում են</string>
|
||||
<string name="revanced_ryd_shorts_summary_on_disclaimer">"\"Dislike\"-երը Shorts-ում ցուցադրվում են
|
||||
|
||||
Սահմանափակում. \"Dislike\"-երը կարող են չերևալ անհայտ ռեժիմում"</string>
|
||||
@@ -1053,6 +1001,8 @@ Seekbar thumbnails-ները կօգտագործեն նույն որակը, ինչ
|
||||
<string name="revanced_sb_vote_downvote">Նվազեցնել</string>
|
||||
<string name="revanced_sb_vote_category">Փոխել կատեգորիան</string>
|
||||
<string name="revanced_sb_vote_no_segments">Քվեարկելու համար հատվածներ չկան</string>
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<string name="revanced_sb_vote_segment_time_to_from">%1$s-ից %2$s</string>
|
||||
<string name="revanced_sb_new_segment_choose_category">Ընտրեք հատվածի կատեգորիան</string>
|
||||
<string name="revanced_sb_new_segment_disabled_category">Կատեգորիան անջատված է կարգավորումներում։ Անջատել կատեգորիան՝ լրացնելու համար։</string>
|
||||
<string name="revanced_sb_new_segment_title">Նոր SponsorBlock հատված</string>
|
||||
@@ -1100,6 +1050,7 @@ Seekbar thumbnails-ները կօգտագործեն նույն որակը, ինչ
|
||||
<string name="revanced_sb_stats_saved_hour_format">%1$s ժամ %2$s րոպե</string>
|
||||
<string name="revanced_sb_stats_saved_minute_format">%1$s րոպե %2$s վայրկյան</string>
|
||||
<string name="revanced_sb_stats_saved_second_format">%s վայրկյան</string>
|
||||
<string name="revanced_sb_color_opacity_label">Թափանցիկություն․</string>
|
||||
<string name="revanced_sb_color_dot_label">Գույն։</string>
|
||||
<string name="revanced_sb_color_changed">Գույնը փոխվել է</string>
|
||||
<string name="revanced_sb_color_reset">Գույնը վերագործարկվել է</string>
|
||||
@@ -1115,16 +1066,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>
|
||||
@@ -1139,12 +1088,7 @@ Seekbar thumbnails-ները կօգտագործեն նույն որակը, ինչ
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<string name="revanced_spoof_app_version_target_title">Spoof-ի կիրառության տարբերակի նպատակ</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_1">19.35.36 - Վերականգնել հին Shorts պլեյերի պատկերակները</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.26.42 - Վերականգնել հին նավիգացիոն պատկերակները</string>
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_1">18.33.40 - Վերականգնել RYD-ը Shorts անանուն ռեժիմում</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_2">18.20.39 - Վերականգնել լայն տեսանյութի արագության & որակի ընտրացանկը</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_3">18.09.39 - Վերականգնել գրադարանի ներդիրը</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_4">17.33.42 - Վերականգնել հին պլեյլիստի դարակը</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.01.34 - Վերականգնել հին նավիգացիոն պատկերակները</string>
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
<string name="revanced_change_start_page_title">Սահմանել մեկնարկային էջ</string>
|
||||
@@ -1246,8 +1190,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>
|
||||
@@ -1367,9 +1309,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>
|
||||
@@ -1400,10 +1348,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>
|
||||
|
||||
@@ -48,57 +48,6 @@ Second \"item\" text"</string>
|
||||
|
||||
Untuk menerjemahkan bahasa baru kunjungi translate.revanced.app"</string>
|
||||
<string name="revanced_language_DEFAULT">Bahasa Aplikasi</string>
|
||||
<string name="revanced_language_AR">Arab</string>
|
||||
<string name="revanced_language_AZ">Azerbaijan</string>
|
||||
<string name="revanced_language_BG">Bulgaria</string>
|
||||
<string name="revanced_language_BN">Benggala</string>
|
||||
<string name="revanced_language_CA">Katalan</string>
|
||||
<string name="revanced_language_CS">Ceko</string>
|
||||
<string name="revanced_language_DA">Denmark</string>
|
||||
<string name="revanced_language_DE">Jerman</string>
|
||||
<string name="revanced_language_EL">Yunani</string>
|
||||
<string name="revanced_language_EN">Inggris</string>
|
||||
<string name="revanced_language_ES">Spanyol</string>
|
||||
<string name="revanced_language_ET">Estonia</string>
|
||||
<string name="revanced_language_FA">Persia</string>
|
||||
<string name="revanced_language_FI">Finlandia</string>
|
||||
<string name="revanced_language_FR">Prancis</string>
|
||||
<string name="revanced_language_GU">Gujarat</string>
|
||||
<string name="revanced_language_HI">Hindi</string>
|
||||
<string name="revanced_language_HR">Kroasia</string>
|
||||
<string name="revanced_language_HU">Hungaria</string>
|
||||
<string name="revanced_language_ID">Indonesia</string>
|
||||
<string name="revanced_language_IT">Italia</string>
|
||||
<string name="revanced_language_JA">Jepang</string>
|
||||
<string name="revanced_language_KK">Kazakh</string>
|
||||
<string name="revanced_language_KO">Korea</string>
|
||||
<string name="revanced_language_LT">Lituania</string>
|
||||
<string name="revanced_language_LV">Latvia</string>
|
||||
<string name="revanced_language_MK">Makedonia</string>
|
||||
<string name="revanced_language_MN">Mongolia</string>
|
||||
<string name="revanced_language_MR">Marathi</string>
|
||||
<string name="revanced_language_MS">Melayu</string>
|
||||
<string name="revanced_language_MY">Burma</string>
|
||||
<string name="revanced_language_NL">Belanda</string>
|
||||
<string name="revanced_language_OR">Oriya</string>
|
||||
<string name="revanced_language_PA">Punjab</string>
|
||||
<string name="revanced_language_PL">Polandia</string>
|
||||
<string name="revanced_language_PT">Portugis</string>
|
||||
<string name="revanced_language_RO">Rumania</string>
|
||||
<string name="revanced_language_RU">Rusia</string>
|
||||
<string name="revanced_language_SK">Slovakia</string>
|
||||
<string name="revanced_language_SL">Slovenia</string>
|
||||
<string name="revanced_language_SR">Serbia</string>
|
||||
<string name="revanced_language_SV">Swedia</string>
|
||||
<string name="revanced_language_SW">Swahili</string>
|
||||
<string name="revanced_language_TA">Tamil</string>
|
||||
<string name="revanced_language_TE">Telugu</string>
|
||||
<string name="revanced_language_TH">Thai</string>
|
||||
<string name="revanced_language_TR">Turki</string>
|
||||
<string name="revanced_language_UK">Ukraina</string>
|
||||
<string name="revanced_language_UR">Urdu</string>
|
||||
<string name="revanced_language_VI">Vietnam</string>
|
||||
<string name="revanced_language_ZH">Tiongkok</string>
|
||||
<string name="revanced_pref_import_export_title">Impor / Ekspor</string>
|
||||
<string name="revanced_pref_import_export_summary">Impor / Ekspor setelan ReVanced</string>
|
||||
<!-- Settings about dialog. -->
|
||||
@@ -404,9 +353,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 \'Lihat 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>
|
||||
@@ -856,7 +805,6 @@ Pengaturan → Pemutaran → Putar otomatis video berikutnya"</string>
|
||||
<string name="revanced_ryd_enable_summary_on">Dislike ditampilkan</string>
|
||||
<string name="revanced_ryd_enable_summary_off">Dislike tidak ditampilkan</string>
|
||||
<string name="revanced_ryd_shorts_title">Tampilkan dislike di Shorts</string>
|
||||
<string name="revanced_ryd_shorts_summary_on">Dislike pada Shorts ditampilkan</string>
|
||||
<string name="revanced_ryd_shorts_summary_on_disclaimer">"Dislike pada Shorts ditampilkan
|
||||
|
||||
Batasan: Dislike mungkin tidak muncul dalam mode penyamaran"</string>
|
||||
@@ -1053,6 +1001,8 @@ Sudah ada"</string>
|
||||
<string name="revanced_sb_vote_downvote">Tidak sukai</string>
|
||||
<string name="revanced_sb_vote_category">Ubah kategori</string>
|
||||
<string name="revanced_sb_vote_no_segments">Tidak ada segmen untuk dipilih</string>
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<string name="revanced_sb_vote_segment_time_to_from">%1$s ke %2$s</string>
|
||||
<string name="revanced_sb_new_segment_choose_category">Pilih kategori segmen</string>
|
||||
<string name="revanced_sb_new_segment_disabled_category">Kategori dinonaktifkan di pengaturan. Aktifkan kategori untuk dikirim.</string>
|
||||
<string name="revanced_sb_new_segment_title">Segmen SponsorBlock Baru</string>
|
||||
@@ -1100,6 +1050,7 @@ Siap mengirim?"</string>
|
||||
<string name="revanced_sb_stats_saved_hour_format">%1$s jam %2$s menit</string>
|
||||
<string name="revanced_sb_stats_saved_minute_format">%1$s menit %2$s detik</string>
|
||||
<string name="revanced_sb_stats_saved_second_format">%s detik</string>
|
||||
<string name="revanced_sb_color_opacity_label">Opasitas:</string>
|
||||
<string name="revanced_sb_color_dot_label">Warna:</string>
|
||||
<string name="revanced_sb_color_changed">Warna berubah</string>
|
||||
<string name="revanced_sb_color_reset">Reset warna</string>
|
||||
@@ -1117,14 +1068,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>
|
||||
@@ -1139,12 +1088,7 @@ Jika kemudian dimatikan, disarankan untuk menghapus data aplikasi untuk mencegah
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<string name="revanced_spoof_app_version_target_title">Target versi app yang dipalsukan</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_1">19.35.36 - Pulihkan ikon pemutar Shorts lama</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.26.42 - Pulihkan ikon navigasi lama</string>
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_1">18.33.40 - Pulihkan RYD pada mode penyamaran Shorts</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_2">18.20.39 - Pulihkan menu kecepatan & kualitas video lebar</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_3">18.09.39 - Pulihkan tab pustaka</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_4">17.33.42 - Pulihkan rak daftar putar lama</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.01.34 - Pulihkan ikon navigasi lama</string>
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
<string name="revanced_change_start_page_title">Tetapkan halaman awal</string>
|
||||
@@ -1247,8 +1191,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>
|
||||
@@ -1293,7 +1235,7 @@ Ketuk di sini untuk mempelajari lebih lanjut tentang DeArrow"</string>
|
||||
<string name="revanced_alt_thumbnail_stills_fast_title">Gunakan tangkapan diam cepat</string>
|
||||
<string name="revanced_alt_thumbnail_stills_fast_summary_on">Menggunakan tangkapan diam kualitas sedang. Thumbnail akan dimuat lebih cepat, tetapi siaran langsung, video yang belum dirilis, atau video yang sangat lama mungkin menampilkan thumbnail kosong</string>
|
||||
<string name="revanced_alt_thumbnail_stills_fast_summary_off">Menggunakan tangkapan diam berkualitas tinggi</string>
|
||||
<string name="revanced_alt_thumbnail_stills_time_title">Lama waktu menangkap layar video</string>
|
||||
<string name="revanced_alt_thumbnail_stills_time_title">Waktu video untuk mengambil gambar diam</string>
|
||||
<string name="revanced_alt_thumbnail_stills_time_entry_1">Awal video</string>
|
||||
<string name="revanced_alt_thumbnail_stills_time_entry_2">Pertengahan video</string>
|
||||
<string name="revanced_alt_thumbnail_stills_time_entry_3">Akhir video</string>
|
||||
@@ -1368,9 +1310,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 +1349,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>
|
||||
|
||||
@@ -156,6 +156,7 @@ Second \"item\" text"</string>
|
||||
<patch id="layout.sponsorblock.sponsorBlockResourcePatch">
|
||||
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title' -->
|
||||
<!-- Toast shown if network connection times out. Translations of this should not be longer than the original English or the text can be clipped and not entirely shown. -->
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<!-- Shown in the settings preferences, and translations can be any text length. -->
|
||||
</patch>
|
||||
<patch id="layout.formfactor.changeFormFactorPatch">
|
||||
@@ -163,7 +164,6 @@ Second \"item\" text"</string>
|
||||
<patch id="layout.spoofappversion.spoofAppVersionPatch">
|
||||
<!-- It is ideal, but not required, if the text here appears is alphabetically after the text used for 'revanced_spoof_app_version_title'.
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
</patch>
|
||||
@@ -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>
|
||||
|
||||
@@ -48,57 +48,6 @@ Second \"item\" text"</string>
|
||||
|
||||
Per tradurre nuove lingue visita translate.revanced.app"</string>
|
||||
<string name="revanced_language_DEFAULT">Lingua dell\'app</string>
|
||||
<string name="revanced_language_AR">Arabo</string>
|
||||
<string name="revanced_language_AZ">Azero</string>
|
||||
<string name="revanced_language_BG">Bulgaro</string>
|
||||
<string name="revanced_language_BN">Bengalese</string>
|
||||
<string name="revanced_language_CA">Catalano</string>
|
||||
<string name="revanced_language_CS">Ceco</string>
|
||||
<string name="revanced_language_DA">Danese</string>
|
||||
<string name="revanced_language_DE">Tedesco</string>
|
||||
<string name="revanced_language_EL">Greco</string>
|
||||
<string name="revanced_language_EN">Inglese</string>
|
||||
<string name="revanced_language_ES">Spagnolo</string>
|
||||
<string name="revanced_language_ET">Estone</string>
|
||||
<string name="revanced_language_FA">Persiano</string>
|
||||
<string name="revanced_language_FI">Finlandese</string>
|
||||
<string name="revanced_language_FR">Francese</string>
|
||||
<string name="revanced_language_GU">Gujarati</string>
|
||||
<string name="revanced_language_HI">Hindi</string>
|
||||
<string name="revanced_language_HR">Croato</string>
|
||||
<string name="revanced_language_HU">Ungherese</string>
|
||||
<string name="revanced_language_ID">Indonesiano</string>
|
||||
<string name="revanced_language_IT">Italiano</string>
|
||||
<string name="revanced_language_JA">Giapponese</string>
|
||||
<string name="revanced_language_KK">Kazako</string>
|
||||
<string name="revanced_language_KO">Coreano</string>
|
||||
<string name="revanced_language_LT">Lituano</string>
|
||||
<string name="revanced_language_LV">Lettone</string>
|
||||
<string name="revanced_language_MK">Macedone</string>
|
||||
<string name="revanced_language_MN">Mongolo</string>
|
||||
<string name="revanced_language_MR">Marathi</string>
|
||||
<string name="revanced_language_MS">Malese</string>
|
||||
<string name="revanced_language_MY">Birmano</string>
|
||||
<string name="revanced_language_NL">Olandese</string>
|
||||
<string name="revanced_language_OR">Odia</string>
|
||||
<string name="revanced_language_PA">Punjabi</string>
|
||||
<string name="revanced_language_PL">Polacco</string>
|
||||
<string name="revanced_language_PT">Portoghese</string>
|
||||
<string name="revanced_language_RO">Rumeno</string>
|
||||
<string name="revanced_language_RU">Russo</string>
|
||||
<string name="revanced_language_SK">Slovacco</string>
|
||||
<string name="revanced_language_SL">Sloveno</string>
|
||||
<string name="revanced_language_SR">Serbo</string>
|
||||
<string name="revanced_language_SV">Svedese</string>
|
||||
<string name="revanced_language_SW">Swahili</string>
|
||||
<string name="revanced_language_TA">Tamil</string>
|
||||
<string name="revanced_language_TE">Telugu</string>
|
||||
<string name="revanced_language_TH">Tailandese</string>
|
||||
<string name="revanced_language_TR">Turco</string>
|
||||
<string name="revanced_language_UK">Ucraino</string>
|
||||
<string name="revanced_language_UR">Urdu</string>
|
||||
<string name="revanced_language_VI">Vietnamita</string>
|
||||
<string name="revanced_language_ZH">Cinese</string>
|
||||
<string name="revanced_pref_import_export_title">Importa / Esporta</string>
|
||||
<string name="revanced_pref_import_export_summary">Importa / Esporta impostazioni ReVanced</string>
|
||||
<!-- Settings about dialog. -->
|
||||
@@ -144,7 +93,7 @@ Tocca il pulsante Continua e consenti le modifiche di ottimizzazione."</string>
|
||||
<string name="revanced_restore_old_settings_menus_summary_off">I vecchi menu delle impostazioni non vengono mostrati</string>
|
||||
</patch>
|
||||
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
|
||||
<string name="revanced_shorts_disable_background_playback_title">Disattiva riproduzione Shorts in background</string>
|
||||
<string name="revanced_shorts_disable_background_playback_title">Disattiva la riproduzione degli Shorts in background</string>
|
||||
<string name="revanced_shorts_disable_background_playback_summary_on">La riproduzione in background degli Shorts è disattivata</string>
|
||||
<string name="revanced_shorts_disable_background_playback_summary_off">La riproduzione in background degli Shorts è abilitata</string>
|
||||
</patch>
|
||||
@@ -344,8 +293,8 @@ Se al momento un Doodle è visibile nella tua regione e questa impostazione nasc
|
||||
<string name="revanced_custom_filter_screen_title">Filtro personalizzato</string>
|
||||
<string name="revanced_custom_filter_screen_summary">Nascondi i componenti usando i filtri personalizzati</string>
|
||||
<string name="revanced_custom_filter_title">Attiva il filtro personalizzato</string>
|
||||
<string name="revanced_custom_filter_summary_on">Il filtro personalizzato è attivato</string>
|
||||
<string name="revanced_custom_filter_summary_off">Il filtro personalizzato è disattivato</string>
|
||||
<string name="revanced_custom_filter_summary_on">Il filtro personalizzato è attivo</string>
|
||||
<string name="revanced_custom_filter_summary_off">Il filtro personalizzato è disattivo</string>
|
||||
<string name="revanced_custom_filter_strings_title">Filtro personalizzato</string>
|
||||
<!-- 'Component path builder strings' is the technical name for identifying the Litho UI layout items to hide. This is an advanced feature and most users will never use this. -->
|
||||
<string name="revanced_custom_filter_strings_summary">L\'elenco dei componenti da filtrare separati da nuove righe</string>
|
||||
@@ -411,7 +360,7 @@ Questa funzione è disponibile solo per i dispositivi più vecchi"</string>
|
||||
<string name="revanced_hide_end_screen_store_banner_summary_on">Il banner del negozio è nascosto</string>
|
||||
<string name="revanced_hide_end_screen_store_banner_summary_off">Il banner del negozio è visibile</string>
|
||||
<string name="revanced_hide_player_store_shelf_title">Nascondi la sezione Negozio</string>
|
||||
<string name="revanced_hide_player_store_shelf_summary_on">Lo scaffale è nascosto</string>
|
||||
<string name="revanced_hide_player_store_shelf_summary_on">La sezione negozio è nascosta</string>
|
||||
<string name="revanced_hide_player_store_shelf_summary_off">La sezione negozio è visibile</string>
|
||||
<string name="revanced_hide_shopping_links_title">Nascondi link agli acquisti nella descrizione del video</string>
|
||||
<string name="revanced_hide_shopping_links_summary_on">I link di shopping nella descrizione del video sono nascosti</string>
|
||||
@@ -856,7 +805,6 @@ Impostazioni → Riproduzione → Riproduzione automatica video successivo"</str
|
||||
<string name="revanced_ryd_enable_summary_on">I Non Mi Piace sono visibili</string>
|
||||
<string name="revanced_ryd_enable_summary_off">I Non Mi Piace non sono visibili</string>
|
||||
<string name="revanced_ryd_shorts_title">Mostra i Non Mi Piace degli Shorts</string>
|
||||
<string name="revanced_ryd_shorts_summary_on">I \"Non mi piace\" sugli Shorts sono visualizzati</string>
|
||||
<string name="revanced_ryd_shorts_summary_on_disclaimer">"I \"Non mi piace\" sugli Shorts sono visualizzati
|
||||
|
||||
Limitazione: i \"Non mi piace\" potrebbero non apparire in modalità incognito"</string>
|
||||
@@ -1053,6 +1001,8 @@ Esiste già"</string>
|
||||
<string name="revanced_sb_vote_downvote">Non mi piace</string>
|
||||
<string name="revanced_sb_vote_category">Modifica categoria</string>
|
||||
<string name="revanced_sb_vote_no_segments">Non ci sono segmenti da votare</string>
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<string name="revanced_sb_vote_segment_time_to_from">Da %1$s a %2$s</string>
|
||||
<string name="revanced_sb_new_segment_choose_category">Scegli la categoria del segmento</string>
|
||||
<string name="revanced_sb_new_segment_disabled_category">La categoria è disabilitata nelle impostazioni. Abilita la categoria da inviare.</string>
|
||||
<string name="revanced_sb_new_segment_title">Nuovo segmento di SponsorBlock</string>
|
||||
@@ -1100,6 +1050,7 @@ Pronto per l'invio?"</string>
|
||||
<string name="revanced_sb_stats_saved_hour_format">%1$s ore %2$s minuti</string>
|
||||
<string name="revanced_sb_stats_saved_minute_format">%1$s minuti %2$s secondi</string>
|
||||
<string name="revanced_sb_stats_saved_second_format">%s secondi</string>
|
||||
<string name="revanced_sb_color_opacity_label">Opacità:</string>
|
||||
<string name="revanced_sb_color_dot_label">Colore:</string>
|
||||
<string name="revanced_sb_color_changed">Colore modificato</string>
|
||||
<string name="revanced_sb_color_reset">Ripristino colore</string>
|
||||
@@ -1117,13 +1068,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">
|
||||
@@ -1139,12 +1088,7 @@ Se in seguito verrà disattivato, si consiglia di cancellare i dati dell'app per
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<string name="revanced_spoof_app_version_target_title">Target della versione dell\'app desiderata</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_1">19.35.36 - Ripristinare le vecchie icone del player Shorts</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.26.42 - Ripristina le vecchie icone di navigazione</string>
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_1">18.33.40 - Ripristina RYD negli Shorts in modalità incognito</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_2">18.20.39 - Ripristina velocità video larga & menu qualità</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_3">18.09.39 - Ripristina scheda libreria</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_4">17.33.42 - Ripristina vecchi ripiani playlist</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.01.34 - Ripristina le vecchie icone di navigazione</string>
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
<string name="revanced_change_start_page_title">Imposta pagina iniziale</string>
|
||||
@@ -1247,8 +1191,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>
|
||||
@@ -1368,9 +1310,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 +1349,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>
|
||||
|
||||
@@ -48,57 +48,6 @@ Second \"item\" text"</string>
|
||||
|
||||
כדי לתרגם שפות חדשות בקר ב-translate.revanced.app"</string>
|
||||
<string name="revanced_language_DEFAULT">שפת היישום</string>
|
||||
<string name="revanced_language_AR">العربية</string>
|
||||
<string name="revanced_language_AZ">Azərbaycanca</string>
|
||||
<string name="revanced_language_BG">български</string>
|
||||
<string name="revanced_language_BN">বাংলা</string>
|
||||
<string name="revanced_language_CA">Català</string>
|
||||
<string name="revanced_language_CS">Čeština</string>
|
||||
<string name="revanced_language_DA">Dansk</string>
|
||||
<string name="revanced_language_DE">Deutsch</string>
|
||||
<string name="revanced_language_EL">Ελληνικά</string>
|
||||
<string name="revanced_language_EN">אנגלית</string>
|
||||
<string name="revanced_language_ES">Español</string>
|
||||
<string name="revanced_language_ET">Eesti</string>
|
||||
<string name="revanced_language_FA">فارسی</string>
|
||||
<string name="revanced_language_FI">Suomi</string>
|
||||
<string name="revanced_language_FR">Français</string>
|
||||
<string name="revanced_language_GU">ગુજરાતી</string>
|
||||
<string name="revanced_language_HI">हिन्दी</string>
|
||||
<string name="revanced_language_HR">Hrvatski</string>
|
||||
<string name="revanced_language_HU">Magyar</string>
|
||||
<string name="revanced_language_ID">Indonesia</string>
|
||||
<string name="revanced_language_IT">Italiano</string>
|
||||
<string name="revanced_language_JA">日本語</string>
|
||||
<string name="revanced_language_KK">Қазақ</string>
|
||||
<string name="revanced_language_KO">한국어</string>
|
||||
<string name="revanced_language_LT">Lietuvių</string>
|
||||
<string name="revanced_language_LV">Latviešu</string>
|
||||
<string name="revanced_language_MK">Македонски</string>
|
||||
<string name="revanced_language_MN">Монгол</string>
|
||||
<string name="revanced_language_MR">Marāṭhī</string>
|
||||
<string name="revanced_language_MS">Melayu</string>
|
||||
<string name="revanced_language_MY">မြန်မာအက္ခရာ</string>
|
||||
<string name="revanced_language_NL">Nederlands</string>
|
||||
<string name="revanced_language_OR">Oṛiā</string>
|
||||
<string name="revanced_language_PA">ਪੰਜਾਬੀ</string>
|
||||
<string name="revanced_language_PL">Polski</string>
|
||||
<string name="revanced_language_PT">Português</string>
|
||||
<string name="revanced_language_RO">Română</string>
|
||||
<string name="revanced_language_RU">Русский</string>
|
||||
<string name="revanced_language_SK">Slovenčina</string>
|
||||
<string name="revanced_language_SL">Slovenščina</string>
|
||||
<string name="revanced_language_SR">Srpski</string>
|
||||
<string name="revanced_language_SV">Svenska</string>
|
||||
<string name="revanced_language_SW">Kiswahili</string>
|
||||
<string name="revanced_language_TA">தமிழ்</string>
|
||||
<string name="revanced_language_TE">తెలుగు</string>
|
||||
<string name="revanced_language_TH">ไทย</string>
|
||||
<string name="revanced_language_TR">Türkçe</string>
|
||||
<string name="revanced_language_UK">Українська</string>
|
||||
<string name="revanced_language_UR">اُردُو</string>
|
||||
<string name="revanced_language_VI">Tiếng Việt</string>
|
||||
<string name="revanced_language_ZH">中文</string>
|
||||
<string name="revanced_pref_import_export_title">ייבוא / ייצוא</string>
|
||||
<string name="revanced_pref_import_export_summary">ייבוא / ייצוא הגדרות ReVanced</string>
|
||||
<!-- Settings about dialog. -->
|
||||
@@ -404,6 +353,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_summary_on">כרזה מוסתרת</string>
|
||||
<string name="revanced_hide_products_banner_summary_off">כרזה מוצגת</string>
|
||||
<string name="revanced_hide_end_screen_store_banner_title">הסתר כרזת חנות של מסך סיום</string>
|
||||
@@ -662,6 +612,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">הסתר לחצני הקודם & הבא</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>
|
||||
@@ -855,7 +806,6 @@ Second \"item\" text"</string>
|
||||
<string name="revanced_ryd_enable_summary_on">דיסלייקים מוצגים</string>
|
||||
<string name="revanced_ryd_enable_summary_off">דיסלייקים אינם מוצגים</string>
|
||||
<string name="revanced_ryd_shorts_title">הצג דיסלייקים ב-Shorts</string>
|
||||
<string name="revanced_ryd_shorts_summary_on">דיסלייקים ב-Shorts מוצגים</string>
|
||||
<string name="revanced_ryd_shorts_summary_on_disclaimer">"דיסלייקים ב-Shorts מוצגים
|
||||
|
||||
מגבלה: ייתכן שלא יופיעו דיסלייקים במצב פרטי"</string>
|
||||
@@ -981,7 +931,7 @@ Second \"item\" text"</string>
|
||||
<string name="revanced_sb_diff_segments">שנה התנהגות מקטע</string>
|
||||
<string name="revanced_sb_segments_sponsor">נותן חסות</string>
|
||||
<string name="revanced_sb_segments_sponsor_sum">קידום בתשלום, הפניות בתשלום ופרסומות ישירות. לא בשביל מימון עצמי או הכרות תודה בחינם לגורמים/יוצרים/אתרים/מוצרים שהם אוהבים</string>
|
||||
<string name="revanced_sb_segments_selfpromo">קידום ללא תשלום / עצמי</string>
|
||||
<string name="revanced_sb_segments_selfpromo">קידום ללא תשלום/עצמי</string>
|
||||
<string name="revanced_sb_segments_selfpromo_sum">דומה לנותן חסות למעט קידום ללא תשלום או קידום עצמי. כולל קטעים על מרצ\'נדייז, תרומות, או מידע לגבי עם מי הם שיתפו פעולה</string>
|
||||
<string name="revanced_sb_segments_interaction">תזכורת לאינטראקציה (הרשמה למינוי)</string>
|
||||
<string name="revanced_sb_segments_interaction_sum">תזכורת קצרה לסמן \'אהבתי\', להירשם למינוי או לעקוב אחריהם באמצע התוכן. אם זה ארוך או על משהו ספציפי, זה צריך במקום להיות תחת קידום עצמי</string>
|
||||
@@ -1052,6 +1002,8 @@ Second \"item\" text"</string>
|
||||
<string name="revanced_sb_vote_downvote">הצבע נגד</string>
|
||||
<string name="revanced_sb_vote_category">שנה קטגוריה</string>
|
||||
<string name="revanced_sb_vote_no_segments">אין מקטעים להצביע עבורם</string>
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<string name="revanced_sb_vote_segment_time_to_from">%1$s עד %2$s</string>
|
||||
<string name="revanced_sb_new_segment_choose_category">בחר את קטגוריית המקטע</string>
|
||||
<string name="revanced_sb_new_segment_disabled_category">קטגוריה מושבתת בהגדרות. הפעל קטגוריה כדי לשלוח.</string>
|
||||
<string name="revanced_sb_new_segment_title">מקטע חדש של SponsorBloack</string>
|
||||
@@ -1099,6 +1051,7 @@ Second \"item\" text"</string>
|
||||
<string name="revanced_sb_stats_saved_hour_format">%1$s שעות %2$s דקות</string>
|
||||
<string name="revanced_sb_stats_saved_minute_format">%1$s דקות %2$s שניות</string>
|
||||
<string name="revanced_sb_stats_saved_second_format">%s שניות</string>
|
||||
<string name="revanced_sb_color_opacity_label">אטימות:</string>
|
||||
<string name="revanced_sb_color_dot_label">צבע:</string>
|
||||
<string name="revanced_sb_color_changed">צבע שונה</string>
|
||||
<string name="revanced_sb_color_reset">צבע אופס</string>
|
||||
@@ -1120,10 +1073,8 @@ Second \"item\" text"</string>
|
||||
• פוסטים קהילתיים מוסתרים
|
||||
|
||||
פריסת רכב
|
||||
• תפריט היסטוריית הצפייה מוסתר
|
||||
• כרטיסיית 'מה חדש' משוחזרת
|
||||
• סרטוני Shorts נפתחים בנגן הרגיל
|
||||
• פיד מאורגן לפי נושאים וערוץ"</string>
|
||||
• פיד מאורגן לפי נושאים וערוצים"</string>
|
||||
</patch>
|
||||
<patch id="layout.spoofappversion.spoofAppVersionPatch">
|
||||
<string name="revanced_spoof_app_version_title">זייף גרסת יישום</string>
|
||||
@@ -1138,12 +1089,7 @@ Second \"item\" text"</string>
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<string name="revanced_spoof_app_version_target_title">יעד גרסת יישום מזויפת</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_1">19.35.36 - שחזר סמלי נגן Shorts ישנים</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.26.42 - שחזר סמלי ניווט ישנים</string>
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_1">18.33.40 - שחזר RYD במצב פרטי של Shorts</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_2">18.20.39 - שחזר מהירות סרטון רחב & תפריט איכות</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_3">18.09.39 - שחזר כרטיסיית ספרייה</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_4">17.33.42 - שחזר מדף פלייליסט ישן</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.01.34 - שחזר סמלי ניווט ישנים</string>
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
<string name="revanced_change_start_page_title">הגדר דף התחלה</string>
|
||||
@@ -1193,6 +1139,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_type_title">סוג מיני-נגן</string>
|
||||
<string name="revanced_miniplayer_type_entry_0">מושבת</string>
|
||||
<string name="revanced_miniplayer_type_entry_1">ברירת מחדל</string>
|
||||
@@ -1245,8 +1192,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>
|
||||
@@ -1338,6 +1283,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>
|
||||
</patch>
|
||||
<patch id="misc.privacy.removeTrackingQueryParameterPatch">
|
||||
<string name="revanced_remove_tracking_query_parameter_title">הסר פרמטר מעקב של שאילתה</string>
|
||||
@@ -1364,9 +1311,15 @@ Second \"item\" text"</string>
|
||||
<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">איכות 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">איכות %1$s Shorts שונתה ל: %2$s</string>
|
||||
</patch>
|
||||
<patch id="video.speed.button.playbackSpeedButtonPatch">
|
||||
<string name="revanced_playback_speed_dialog_button_title">הצג לחצן דו-שיח של מהירות</string>
|
||||
@@ -1397,10 +1350,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>
|
||||
|
||||
@@ -25,12 +25,12 @@ Second \"item\" text"</string>
|
||||
<string name="revanced_check_environment_failed_title">チェックに失敗しました</string>
|
||||
<string name="revanced_check_environment_dialog_open_official_source_button">公式サイトを開く</string>
|
||||
<string name="revanced_check_environment_dialog_ignore_button">無視する</string>
|
||||
<string name="revanced_check_environment_failed_message"><b><h5>このアプリは、あなたによってパッチが適用されていないようです。</h5><br>このアプリは正しく動作しない可能性があり、<b>有害または危険な可能性があります</b>。<br><br>これらのチェックは、このアプリがパッチ済みAPKであるか、または他のユーザーから取得されたことを示唆しています。<br><br><small>%1$s</small><br>このアプリを<b>アンインストールして、自分でパッチを適用する</b>ことを強くお勧めします。これにより、検証済みで安全なアプリを使用していることを確認できます。<p><br>無視した場合、この警告は2回のみ表示されます。</string>
|
||||
<string name="revanced_check_environment_not_same_patching_device">別のデバイス上でパッチを適用しました</string>
|
||||
<string name="revanced_check_environment_manager_not_expected_installer">ReVanced Managerによってインストールされていません</string>
|
||||
<string name="revanced_check_environment_not_near_patch_time">10分以上前にパッチを適用しました</string>
|
||||
<string name="revanced_check_environment_not_near_patch_time_days">%s日前のパッチ済み</string>
|
||||
<string name="revanced_check_environment_not_near_patch_time_invalid">APKビルド日付が破損しています</string>
|
||||
<string name="revanced_check_environment_failed_message"><h5>このアプリは、あなたによってパッチが適用されていないようです。</h5><br>このアプリは正しく動作しない可能性があり、<b>有害または危険なものである可能性があります</b>。<br><br>以下の検査結果は、このアプリがパッチ済みAPKであるか、または他のユーザーから取得したものであることを示唆しています。<br><br><small>%1$s</small><br>検証済みで安全なアプリを確実に使用するために、<b>このアプリをアンインストールして、自分でパッチを適用する</b>ことを強くお勧めします。<p><br>無視した場合、この警告は2回のみ表示されます。</string>
|
||||
<string name="revanced_check_environment_not_same_patching_device">別のデバイス上でパッチが適用されている</string>
|
||||
<string name="revanced_check_environment_manager_not_expected_installer">ReVanced Manager によってインストールされていない</string>
|
||||
<string name="revanced_check_environment_not_near_patch_time">10 分以上前にパッチが適用されている</string>
|
||||
<string name="revanced_check_environment_not_near_patch_time_days">%s 日前にパッチが適用されている</string>
|
||||
<string name="revanced_check_environment_not_near_patch_time_invalid">APK の作成日情報が破損している</string>
|
||||
</patch>
|
||||
<patch id="misc.settings.settingsResourcePatch">
|
||||
<string name="revanced_settings_submenu_title">設定</string>
|
||||
@@ -46,59 +46,8 @@ Second \"item\" text"</string>
|
||||
<string name="revanced_language_title">ReVancedの言語</string>
|
||||
<string name="revanced_language_user_dialog_message">"一部の言語の翻訳が不足しているか、不完全である可能性があります。
|
||||
|
||||
新しい言語を翻訳するには、translate.revanced.appにアクセスしてください"</string>
|
||||
新しい言語を翻訳するには、 translate.revanced.app にアクセスしてください"</string>
|
||||
<string name="revanced_language_DEFAULT">アプリの言語</string>
|
||||
<string name="revanced_language_AR">アラビア語</string>
|
||||
<string name="revanced_language_AZ">アゼルバイジャン語</string>
|
||||
<string name="revanced_language_BG">ブルガリア語</string>
|
||||
<string name="revanced_language_BN">ベンガル語</string>
|
||||
<string name="revanced_language_CA">カタルーニャ語</string>
|
||||
<string name="revanced_language_CS">チェコ語</string>
|
||||
<string name="revanced_language_DA">デンマーク語</string>
|
||||
<string name="revanced_language_DE">ドイツ語</string>
|
||||
<string name="revanced_language_EL">ギリシャ語</string>
|
||||
<string name="revanced_language_EN">英語</string>
|
||||
<string name="revanced_language_ES">スペイン語</string>
|
||||
<string name="revanced_language_ET">エストニア語</string>
|
||||
<string name="revanced_language_FA">ペルシャ語</string>
|
||||
<string name="revanced_language_FI">フィンランド語</string>
|
||||
<string name="revanced_language_FR">フランス語</string>
|
||||
<string name="revanced_language_GU">グジャラート語</string>
|
||||
<string name="revanced_language_HI">ヒンディー語</string>
|
||||
<string name="revanced_language_HR">クロアチア語</string>
|
||||
<string name="revanced_language_HU">ハンガリー語</string>
|
||||
<string name="revanced_language_ID">インドネシア語</string>
|
||||
<string name="revanced_language_IT">イタリア語</string>
|
||||
<string name="revanced_language_JA">日本語</string>
|
||||
<string name="revanced_language_KK">カザフ語</string>
|
||||
<string name="revanced_language_KO">韓国語</string>
|
||||
<string name="revanced_language_LT">リトアニア語</string>
|
||||
<string name="revanced_language_LV">ラトビア語</string>
|
||||
<string name="revanced_language_MK">マケドニア語</string>
|
||||
<string name="revanced_language_MN">モンゴル語</string>
|
||||
<string name="revanced_language_MR">マラーティー語</string>
|
||||
<string name="revanced_language_MS">マレー語</string>
|
||||
<string name="revanced_language_MY">ミャンマー語</string>
|
||||
<string name="revanced_language_NL">オランダ語</string>
|
||||
<string name="revanced_language_OR">オディア語</string>
|
||||
<string name="revanced_language_PA">パンジャブ語</string>
|
||||
<string name="revanced_language_PL">ポーランド語</string>
|
||||
<string name="revanced_language_PT">ポルトガル語</string>
|
||||
<string name="revanced_language_RO">ルーマニア語</string>
|
||||
<string name="revanced_language_RU">ロシア語</string>
|
||||
<string name="revanced_language_SK">スロバキア語</string>
|
||||
<string name="revanced_language_SL">スロベニア語</string>
|
||||
<string name="revanced_language_SR">セルビア語</string>
|
||||
<string name="revanced_language_SV">スウェーデン語</string>
|
||||
<string name="revanced_language_SW">スワヒリ語</string>
|
||||
<string name="revanced_language_TA">タミル語</string>
|
||||
<string name="revanced_language_TE">テルグ語</string>
|
||||
<string name="revanced_language_TH">タイ語</string>
|
||||
<string name="revanced_language_TR">トルコ語</string>
|
||||
<string name="revanced_language_UK">ウクライナ語</string>
|
||||
<string name="revanced_language_UR">ウルドゥー語</string>
|
||||
<string name="revanced_language_VI">ベトナム語</string>
|
||||
<string name="revanced_language_ZH">中国語</string>
|
||||
<string name="revanced_pref_import_export_title">インポート / エクスポート</string>
|
||||
<string name="revanced_pref_import_export_summary">ReVanced の設定をテキストでインポート / エクスポートします</string>
|
||||
<!-- Settings about dialog. -->
|
||||
@@ -115,15 +64,15 @@ Second \"item\" text"</string>
|
||||
<string name="gms_core_dialog_title">必ず実行してください</string>
|
||||
<string name="gms_core_dialog_not_whitelisted_not_allowed_in_background_message">"MicroG GmsCore はバックグラウンドで実行するための権限を持っていません。
|
||||
|
||||
下記ウェブサイト「Don't kill my app」の携帯電話メーカー別のガイドに従い、MicroG GmsCore に対する端末の設定を変更してください。
|
||||
下記ウェブサイト「Don't kill my app」の携帯電話メーカー別のガイドに従い、MicroG GmsCore に対するデバイスの設定を変更してください。
|
||||
|
||||
この操作はアプリが動作するために必要です。"</string>
|
||||
<string name="gms_core_dialog_open_website_text">ウェブサイトを開く</string>
|
||||
<string name="gms_core_dialog_not_whitelisted_using_battery_optimizations_message">"問題を防ぐためには、GmsCore の電池の最適化を無効にする必要があります。
|
||||
<string name="gms_core_dialog_not_whitelisted_using_battery_optimizations_message">"問題を防ぐために、MicroG GmsCore に対する電池の最適化を必ず無効にしてください。
|
||||
|
||||
GmsCore の電池の最適化を無効にしても、バッテリーの使用に悪影響を及ぼすことはありません。
|
||||
MicroG GmsCore に対する電池の最適化を無効にしても、バッテリーの使用に悪影響を及ぼすことはありません。
|
||||
|
||||
[続行] をタップして [電池の最適化] を無効にしてください。"</string>
|
||||
続行ボタンをタップして電池の最適化の設定を変更してください。"</string>
|
||||
<string name="gms_core_dialog_continue_text">続行</string>
|
||||
</patch>
|
||||
</app>
|
||||
@@ -385,8 +334,8 @@ GmsCore の電池の最適化を無効にしても、バッテリーの使用に
|
||||
<string name="revanced_hide_keyword_toast_invalid_common">キーワードを使用できません: %s</string>
|
||||
<string name="revanced_hide_keyword_toast_invalid_common_whole_word_required">キーワード %sを使用する引用符を追加</string>
|
||||
<string name="revanced_hide_keyword_toast_invalid_conflicting">キーワードに矛盾する宣言があります: %s</string>
|
||||
<string name="revanced_hide_keyword_toast_invalid_length">キーワードが短すぎるため見積もりが必要です: %s</string>
|
||||
<string name="revanced_hide_keyword_toast_invalid_broad">キーワードはすべての動画を非表示にします: %s</string>
|
||||
<string name="revanced_hide_keyword_toast_invalid_length">キーワードが短すぎるため二重引用符で囲む必要があります: %s</string>
|
||||
<string name="revanced_hide_keyword_toast_invalid_broad">キーワードはすべての動画を除外します: %s</string>
|
||||
</patch>
|
||||
<patch id="ad.general.hideAdsResourcePatch">
|
||||
<string name="revanced_hide_general_ads_title">一般的な広告を非表示</string>
|
||||
@@ -596,7 +545,7 @@ GmsCore の電池の最適化を無効にしても、バッテリーの使用に
|
||||
<string name="revanced_switch_create_with_notifications_button_user_dialog_message">"この設定を無効にすると、ショート動画の広告ブロックも無効になります。
|
||||
|
||||
この設定を変更しても効果がない場合は、シークレット モードに切り替えてみてください。"</string>
|
||||
<string name="revanced_hide_navigation_button_labels_title">ナビゲーション ボタンをアイコンのみで表示する</string>
|
||||
<string name="revanced_hide_navigation_button_labels_title">ボタンをアイコンのみで表示する</string>
|
||||
<string name="revanced_hide_navigation_button_labels_summary_on">ナビゲーション ボタンはアイコンのみで表示されます</string>
|
||||
<string name="revanced_hide_navigation_button_labels_summary_off">ナビゲーション ボタンはアイコンと文字で表示されます</string>
|
||||
<string name="revanced_disable_translucent_status_bar_title">ステータス バーの半透明化を無効にする</string>
|
||||
@@ -849,7 +798,7 @@ GmsCore の電池の最適化を無効にしても、バッテリーの使用に
|
||||
<!-- Toast shown if network connection times out. Translations of this should not be longer than the original English or the text can be clipped and not entirely shown. -->
|
||||
<string name="revanced_ryd_failure_connection_timeout">Return YouTube Dislike は一時的に利用できません (API タイムアウト)</string>
|
||||
<string name="revanced_ryd_failure_connection_status_code">Return YouTube Dislikeは利用できません (ステータス %d)</string>
|
||||
<string name="revanced_ryd_failure_client_rate_limit_requested">低評価は利用できません(クライアント API の制限)</string>
|
||||
<string name="revanced_ryd_failure_client_rate_limit_requested">Return YouTube Dislike は利用できません (クライアント API のレート制限)</string>
|
||||
<string name="revanced_ryd_failure_generic">Return YouTube Dislikeは利用できません (%s)</string>
|
||||
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
|
||||
<string name="revanced_ryd_failure_ryd_enabled_while_playing_video_then_user_voted">Return YouTube Dislike を使用するには動画を再読み込みしてください</string>
|
||||
@@ -858,7 +807,6 @@ GmsCore の電池の最適化を無効にしても、バッテリーの使用に
|
||||
<string name="revanced_ryd_enable_summary_on">低評価数が表示されます</string>
|
||||
<string name="revanced_ryd_enable_summary_off">低評価数は表示されません</string>
|
||||
<string name="revanced_ryd_shorts_title">Shortsで低評価数を表示する</string>
|
||||
<string name="revanced_ryd_shorts_summary_on">Shortsの低評価が表示されます</string>
|
||||
<string name="revanced_ryd_shorts_summary_on_disclaimer">"Shortsの低評価が表示されます
|
||||
|
||||
制限事項: シークレット モードでは低評価が表示されない場合があります"</string>
|
||||
@@ -892,8 +840,8 @@ GmsCore の電池の最適化を無効にしても、バッテリーの使用に
|
||||
<string name="revanced_ryd_statistics_getFetchCallNumberOfFailures_zero_summary">ネットワーク通話がタイムアウトされていません</string>
|
||||
<string name="revanced_ryd_statistics_getFetchCallNumberOfFailures_non_zero_summary">%d ネットワーク呼び出しがタイムアウトしました</string>
|
||||
<string name="revanced_ryd_statistics_getNumberOfRateLimitRequestsEncountered_title">APIクライアントのレート制限</string>
|
||||
<string name="revanced_ryd_statistics_getNumberOfRateLimitRequestsEncountered_zero_summary">クライアントレート制限は発生していません</string>
|
||||
<string name="revanced_ryd_statistics_getNumberOfRateLimitRequestsEncountered_non_zero_summary">クライアントレート制限が %d 回発生しました</string>
|
||||
<string name="revanced_ryd_statistics_getNumberOfRateLimitRequestsEncountered_zero_summary">クライアント レート制限は発生していません</string>
|
||||
<string name="revanced_ryd_statistics_getNumberOfRateLimitRequestsEncountered_non_zero_summary">クライアント レート制限が %d 回発生しました</string>
|
||||
<string name="revanced_ryd_statistics_millisecond_text">%d ミリ秒前</string>
|
||||
</patch>
|
||||
<patch id="layout.searchbar.wideSearchbarPatch">
|
||||
@@ -957,7 +905,7 @@ GmsCore の電池の最適化を無効にしても、バッテリーの使用に
|
||||
<string name="revanced_sb_toast_on_connection_error_summary_on">SponsorBlock が利用できない場合はトースト ポップアップが表示されます</string>
|
||||
<string name="revanced_sb_toast_on_connection_error_summary_off">SponsorBlock が利用できない場合でもトースト ポップアップは表示されません</string>
|
||||
<string name="revanced_sb_general_skipcount">スキップ数の追跡を有効にする</string>
|
||||
<string name="revanced_sb_general_skipcount_sum_on">SponsorBlockリーダーボードは、どれだけの時間が節約されたかを知ることができます。セグメントがスキップされるたびにメッセージがリーダーボードに送信されます。</string>
|
||||
<string name="revanced_sb_general_skipcount_sum_on">SponsorBlock リーダーボードに、どれだけの時間が節約されたかを報告します。セグメントがスキップされるたびにメッセージがリーダーボードに送信されます</string>
|
||||
<string name="revanced_sb_general_skipcount_sum_off">スキップカウント追跡が有効になっていません</string>
|
||||
<string name="revanced_sb_general_min_duration">最小のセグメントの長さ</string>
|
||||
<string name="revanced_sb_general_min_duration_sum">設定値 (単位: 秒) より短いセグメントはスキップされず、プレーヤーにも表示されません</string>
|
||||
@@ -1038,7 +986,7 @@ GmsCore の電池の最適化を無効にしても、バッテリーの使用に
|
||||
<string name="revanced_sb_skip_ignore">無効</string>
|
||||
<string name="revanced_sb_submit_failed_invalid">セグメントを送信できません: %s</string>
|
||||
<string name="revanced_sb_submit_failed_timeout">SponsorBlockは一時的にダウンしています</string>
|
||||
<string name="revanced_sb_submit_failed_unknown_error">セグメントを送信できませんでした(状態: %1$d %2$s)</string>
|
||||
<string name="revanced_sb_submit_failed_unknown_error">セグメントを送信できませんでした (ステータス: %1$d %2$s)</string>
|
||||
<string name="revanced_sb_submit_failed_rate_limit">セグメントを送信できません。レート制限 (同じユーザーまたはIPからの送信が多すぎる)</string>
|
||||
<string name="revanced_sb_submit_failed_forbidden">セグメントを送信できません: %s</string>
|
||||
<string name="revanced_sb_submit_failed_duplicate">"セグメントを送信できません。
|
||||
@@ -1046,15 +994,17 @@ GmsCore の電池の最適化を無効にしても、バッテリーの使用に
|
||||
<string name="revanced_sb_submit_succeeded">セグメントが正常に送信されました</string>
|
||||
<!-- Toast shown if network connection times out. Translations of this should not be longer than the original English or the text can be clipped and not entirely shown. -->
|
||||
<string name="revanced_sb_sponsorblock_connection_failure_timeout">SponsorBlock は一時的に利用できません (API タイムアウト)</string>
|
||||
<string name="revanced_sb_sponsorblock_connection_failure_status">SponsorBlockは一時的に利用できません( %dの状態)</string>
|
||||
<string name="revanced_sb_sponsorblock_connection_failure_status">SponsorBlockは一時的に利用できません (ステータス: %d)</string>
|
||||
<string name="revanced_sb_sponsorblock_connection_failure_generic">SponsorBlockは一時的に利用できません</string>
|
||||
<string name="revanced_sb_vote_failed_timeout">セグメントを評価できません (API タイムアウト)</string>
|
||||
<string name="revanced_sb_vote_failed_unknown_error">セグメントに投票できませんでした(状態: %1$d %2$s)</string>
|
||||
<string name="revanced_sb_vote_failed_timeout">セグメントに投票できません (API タイムアウト)</string>
|
||||
<string name="revanced_sb_vote_failed_unknown_error">セグメントに投票できませんでした(ステータス: %1$d %2$s)</string>
|
||||
<string name="revanced_sb_vote_failed_forbidden">セグメントに投票できません: %s</string>
|
||||
<string name="revanced_sb_vote_upvote">高評価</string>
|
||||
<string name="revanced_sb_vote_downvote">低評価</string>
|
||||
<string name="revanced_sb_vote_category">カテゴリーの変更</string>
|
||||
<string name="revanced_sb_vote_no_segments">投票できるセグメントがありません</string>
|
||||
<!-- A segment start and end time, such as "02:10 to 03:40" -->
|
||||
<string name="revanced_sb_vote_segment_time_to_from">%1$s-%2$s</string>
|
||||
<string name="revanced_sb_new_segment_choose_category">セグメントのカテゴリを選択してください</string>
|
||||
<string name="revanced_sb_new_segment_disabled_category">カテゴリは設定で無効になっています。提出するカテゴリを有効にしてください。</string>
|
||||
<string name="revanced_sb_new_segment_title">新しい SponsorBlock セグメント</string>
|
||||
@@ -1071,11 +1021,9 @@ GmsCore の電池の最適化を無効にしても、バッテリーの使用に
|
||||
から
|
||||
%2$s
|
||||
|
||||
に
|
||||
|
||||
(%3$s)
|
||||
|
||||
送信します。"</string>
|
||||
送信しますか?"</string>
|
||||
<string name="revanced_sb_new_segment_start_is_before_end">開始は終了前にする必要があります</string>
|
||||
<string name="revanced_sb_new_segment_mark_locations_first">最初にタイムバーの2箇所をマークしてください</string>
|
||||
<string name="revanced_sb_new_segment_preview_segment_first">セグメントをプレビューし、スムーズにスキップするようにします</string>
|
||||
@@ -1084,7 +1032,7 @@ GmsCore の電池の最適化を無効にしても、バッテリーの使用に
|
||||
<string name="revanced_sb_new_segment_edit_by_hand_parse_error">無効な時間の値です</string>
|
||||
<string name="revanced_sb_stats">統計</string>
|
||||
<!-- Shown in the settings preferences, and translations can be any text length. -->
|
||||
<string name="revanced_sb_stats_connection_failure">統計情報は一時的に利用できません(API がダウンしています)</string>
|
||||
<string name="revanced_sb_stats_connection_failure">統計情報は一時的に利用できません (API がダウンしています)</string>
|
||||
<string name="revanced_sb_stats_loading">読み込み中...</string>
|
||||
<string name="revanced_sb_stats_sb_disabled">SponsorBlock は無効です</string>
|
||||
<string name="revanced_sb_stats_username">あなたのユーザー名: <b>%s</b></string>
|
||||
@@ -1104,6 +1052,7 @@ GmsCore の電池の最適化を無効にしても、バッテリーの使用に
|
||||
<string name="revanced_sb_stats_saved_hour_format">%1$s時間%2$s分</string>
|
||||
<string name="revanced_sb_stats_saved_minute_format">%1$s 分 %2$s 秒</string>
|
||||
<string name="revanced_sb_stats_saved_second_format">%s 秒</string>
|
||||
<string name="revanced_sb_color_opacity_label">透明度:</string>
|
||||
<string name="revanced_sb_color_dot_label">色:</string>
|
||||
<string name="revanced_sb_color_changed">色を変更しました</string>
|
||||
<string name="revanced_sb_color_reset">色をリセット</string>
|
||||
@@ -1119,16 +1068,14 @@ GmsCore の電池の最適化を無効にしても、バッテリーの使用に
|
||||
<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 レイアウト
|
||||
• マイページに再生履歴が表示されません
|
||||
• 探索タブが復元されます
|
||||
• ショート動画を通常のプレーヤーで開きます
|
||||
• フィードはトピックとチャンネル別に整理されます"</string>
|
||||
• フィードはトピックとチャンネルで整理されています"</string>
|
||||
</patch>
|
||||
<patch id="layout.spoofappversion.spoofAppVersionPatch">
|
||||
<string name="revanced_spoof_app_version_title">アプリのバージョンを偽装する</string>
|
||||
@@ -1143,12 +1090,7 @@ Automotive レイアウト
|
||||
This is because the 'General layout' menu uses alphabetic sorting, and it functionally works better if the spoof target selector appears below the 'Spoof app version' UI switch -->
|
||||
<string name="revanced_spoof_app_version_target_title">アプリバージョン</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_1">19.35.36 - ショート動画プレーヤーのアイコンを旧バージョンに</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.26.42 - 旧バージョンのナビゲーション アイコンを復元</string>
|
||||
<!-- 'RYD' is 'Return YouTube Dislike' -->
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_1">18.33.40 - シークレット モード使用時のショート動画の RYD を復元</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_2">18.20.39 - ワイドビデオスピード & クオリティメニューを復元</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_3">18.09.39 - ライブラリ タブを復元</string>
|
||||
<string name="revanced_spoof_app_version_target_legacy_entry_4">17.33.42 - プレイリスト欄を旧バージョンに</string>
|
||||
<string name="revanced_spoof_app_version_target_entry_2">19.01.34 - 旧バージョンのナビゲーション アイコンを復元</string>
|
||||
</patch>
|
||||
<patch id="layout.startpage.changeStartPagePatch">
|
||||
<string name="revanced_change_start_page_title">起動画面</string>
|
||||
@@ -1251,15 +1193,13 @@ Automotive レイアウト
|
||||
<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_title">設定したシークバーの色を使用する</string>
|
||||
<string name="revanced_seekbar_custom_color_summary_on">設定したシークバーの色が表示されます</string>
|
||||
<string name="revanced_seekbar_custom_color_summary_off">デフォルトのシークバーの色が表示されます</string>
|
||||
<string name="revanced_seekbar_custom_color_primary_title">シークバーの色</string>
|
||||
<string name="revanced_seekbar_custom_color_primary_summary">シークバーの色を編集します</string>
|
||||
<string name="revanced_seekbar_custom_color_primary_summary">シークバーの色を設定します</string>
|
||||
<string name="revanced_seekbar_custom_color_accent_title">シークバーのアクセントカラー</string>
|
||||
<string name="revanced_seekbar_custom_color_accent_summary">シークバーのアクセントカラーを編集します</string>
|
||||
<string name="revanced_seekbar_custom_color_accent_summary">シークバーのアクセントカラーを設定します</string>
|
||||
<string name="revanced_seekbar_custom_color_invalid">入力されたシークバーの色の値は無効です</string>
|
||||
</patch>
|
||||
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch">
|
||||
@@ -1300,7 +1240,7 @@ DeArrow の詳細については、ここをタップしてください"</string
|
||||
<string name="revanced_alt_thumbnail_stills_time_entry_2">動画の中盤</string>
|
||||
<string name="revanced_alt_thumbnail_stills_time_entry_3">動画の終盤</string>
|
||||
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
|
||||
<string name="revanced_alt_thumbnail_dearrow_error">DeArrow は一時的に利用できません(ステータスコード: %s)</string>
|
||||
<string name="revanced_alt_thumbnail_dearrow_error">DeArrow は一時的に利用できません (ステータス コード: %s)</string>
|
||||
<string name="revanced_alt_thumbnail_dearrow_error_generic">DeArrow は一時的に利用できません</string>
|
||||
</patch>
|
||||
<patch id="misc.announcements.announcementsPatch">
|
||||
@@ -1313,7 +1253,7 @@ DeArrow の詳細については、ここをタップしてください"</string
|
||||
</patch>
|
||||
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch">
|
||||
<string name="revanced_check_watch_history_domain_name_dialog_title">警告</string>
|
||||
<string name="revanced_check_watch_history_domain_name_dialog_message">再生履歴は保存されていません。<br><br>これは、DNS 広告ブロッカーまたはネットワーク プロキシが原因である可能性があります。<br><br>この問題を解決するには、<b>s.youtube.com</b> をホワイトリストに追加するか、すべての DNS ブロッカーとプロキシをオフにしてください。</string>
|
||||
<string name="revanced_check_watch_history_domain_name_dialog_message">再生履歴が保存されていません。<br><br>これは、DNS 広告ブロッカーまたはネットワーク プロキシが原因である可能性があります。<br><br>この問題を解決するには、<b>s.youtube.com</b> をホワイトリストに追加するか、すべての DNS ブロッカーとプロキシをオフにしてください。</string>
|
||||
<string name="revanced_check_watch_history_domain_name_dialog_ignore">今後表示しない</string>
|
||||
</patch>
|
||||
<patch id="misc.autorepeat.autoRepeatPatch">
|
||||
@@ -1371,9 +1311,15 @@ DeArrow の詳細については、ここをタップしてください"</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">ショート動画の画質の変更を保存する</string>
|
||||
<string name="revanced_remember_shorts_quality_last_selected_summary_on">画質の変更はすべてのショート動画に適用されます</string>
|
||||
<string name="revanced_remember_shorts_quality_last_selected_summary_off">画質の変更は現在のショート動画にのみ適用されます</string>
|
||||
<string name="revanced_shorts_quality_default_wifi_title">デフォルトのショート動画の画質(Wi-Fi)</string>
|
||||
<string name="revanced_shorts_quality_default_mobile_title">デフォルトのショート動画の画質(モバイル ネットワーク)</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">デフォルトの画質 (%1$s) を %2$s に変更しました</string>
|
||||
<string name="revanced_remember_video_quality_toast_shorts">ショート動画の画質 (%1$s) を %2$s に変更しました</string>
|
||||
</patch>
|
||||
<patch id="video.speed.button.playbackSpeedButtonPatch">
|
||||
<string name="revanced_playback_speed_dialog_button_title">再生速度設定ボタンを非表示</string>
|
||||
@@ -1404,10 +1350,10 @@ DeArrow の詳細については、ここをタップしてください"</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>
|
||||
@@ -1440,9 +1386,9 @@ AVC の最大解像度は 1080p であり、Opus オーディオ コーデック
|
||||
• 「オリジナルの音声トラック (言語) を強制的に使用する」は利用できません"</string>
|
||||
<string name="revanced_spoof_video_streams_about_no_av1">• AV1 コーデックは使用できません</string>
|
||||
<string name="revanced_spoof_video_streams_about_kids_videos">• キッズ向け動画は、ログアウト時またはシークレット モード時には再生されない場合があります</string>
|
||||
<string name="revanced_spoof_streaming_data_stats_for_nerds_title">統計情報(詳細)</string>
|
||||
<string name="revanced_spoof_streaming_data_stats_for_nerds_summary_on">クライアントの種類は統計情報(詳細)に表示されます</string>
|
||||
<string name="revanced_spoof_streaming_data_stats_for_nerds_summary_off">クライアントは統計情報(詳細)に表示されません</string>
|
||||
<string name="revanced_spoof_streaming_data_stats_for_nerds_title">統計情報に表示する</string>
|
||||
<string name="revanced_spoof_streaming_data_stats_for_nerds_summary_on">現在のクライアントが統計情報に表示されます</string>
|
||||
<string name="revanced_spoof_streaming_data_stats_for_nerds_summary_off">現在のクライアントは統計情報に表示されません</string>
|
||||
<string name="revanced_spoof_video_streams_language_title">デフォルトの音声トラック(Android VR)</string>
|
||||
</patch>
|
||||
</app>
|
||||
@@ -1480,7 +1426,7 @@ AVC の最大解像度は 1080p であり、Opus オーディオ コーデック
|
||||
<patch id="debug.debugModePatch">
|
||||
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title' -->
|
||||
<string name="revanced_twitch_debug_mode_title">Twitch デバッグ モードを有効にする</string>
|
||||
<string name="revanced_twitch_debug_mode_summary_on">Twitch デバッグ モードが有効になっています(非推奨)</string>
|
||||
<string name="revanced_twitch_debug_mode_summary_on">Twitch デバッグ モードが有効になっています (非推奨)</string>
|
||||
<string name="revanced_twitch_debug_mode_summary_off">Twitchデバッグ モードは無効です</string>
|
||||
</patch>
|
||||
<patch id="misc.settings.settingsPatch">
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user