Compare commits

..

47 Commits

Author SHA1 Message Date
semantic-release-bot
c09255eaed chore: Release v5.27.0-dev.9 [skip ci]
# [5.27.0-dev.9](https://github.com/ReVanced/revanced-patches/compare/v5.27.0-dev.8...v5.27.0-dev.9) (2025-06-09)

### Features

* **Messenger:** Add `Hide Facebook button` patch ([#5057](https://github.com/ReVanced/revanced-patches/issues/5057)) ([ed0d807](ed0d807d70))
2025-06-09 18:18:19 +00:00
github-actions[bot]
e78d6240ea chore: Sync translations (#5151) 2025-06-09 20:15:28 +02:00
Dawid Krajcarz
ed0d807d70 feat(Messenger): Add Hide Facebook button patch (#5057) 2025-06-09 20:13:05 +02:00
semantic-release-bot
1c39004350 chore: Release v5.27.0-dev.8 [skip ci]
# [5.27.0-dev.8](https://github.com/ReVanced/revanced-patches/compare/v5.27.0-dev.7...v5.27.0-dev.8) (2025-06-09)

### Features

* Add `Hide app icon` patch ([#4977](https://github.com/ReVanced/revanced-patches/issues/4977)) ([6127f48](6127f48a9e))
2025-06-09 14:11:00 +00:00
ILoveOpenSourceApplications
6127f48a9e feat: Add Hide app icon patch (#4977) 2025-06-09 11:07:43 -03:00
semantic-release-bot
ad416f4aa7 chore: Release v5.27.0-dev.7 [skip ci]
# [5.27.0-dev.7](https://github.com/ReVanced/revanced-patches/compare/v5.27.0-dev.6...v5.27.0-dev.7) (2025-06-08)

### Features

* **YouTube - Hide player overlay buttons:** Add in app setting for "Hide player control buttons background" ([#5147](https://github.com/ReVanced/revanced-patches/issues/5147)) ([adfac8a](adfac8a1f2))
2025-06-08 18:07:53 +00:00
Nuckyz
adfac8a1f2 feat(YouTube - Hide player overlay buttons): Add in app setting for "Hide player control buttons background" (#5147) 2025-06-08 15:04:58 -03:00
semantic-release-bot
498488d45b chore: Release v5.27.0-dev.6 [skip ci]
# [5.27.0-dev.6](https://github.com/ReVanced/revanced-patches/compare/v5.27.0-dev.5...v5.27.0-dev.6) (2025-06-08)

### Features

* **YouTube - Hide Shorts components:** Add hide 'New posts' button ([f8e31c8](f8e31c820a))
2025-06-08 12:06:28 +00:00
LisoUseInAIKyrios
f8e31c820a feat(YouTube - Hide Shorts components): Add hide 'New posts' button 2025-06-08 14:03:00 +02:00
semantic-release-bot
826a391591 chore: Release v5.27.0-dev.5 [skip ci]
# [5.27.0-dev.5](https://github.com/ReVanced/revanced-patches/compare/v5.27.0-dev.4...v5.27.0-dev.5) (2025-06-08)

### Features

* **Google Photos:** Add `Enable DCIM folders backup control` patch ([#5138](https://github.com/ReVanced/revanced-patches/issues/5138)) ([af827e2](af827e2f1a))
2025-06-08 07:17:04 +00:00
Nuckyz
af827e2f1a feat(Google Photos): Add Enable DCIM folders backup control patch (#5138) 2025-06-08 09:13:53 +02:00
semantic-release-bot
97cd31509e chore: Release v5.27.0-dev.4 [skip ci]
# [5.27.0-dev.4](https://github.com/ReVanced/revanced-patches/compare/v5.27.0-dev.3...v5.27.0-dev.4) (2025-06-06)

### Bug Fixes

* **Bandcamp - Remove play limits:** Support latest app version ([#5124](https://github.com/ReVanced/revanced-patches/issues/5124)) ([c0448de](c0448dece4))
2025-06-06 21:22:31 +00:00
hoodles
c0448dece4 fix(Bandcamp - Remove play limits): Support latest app version (#5124) 2025-06-06 23:20:00 +02:00
semantic-release-bot
f00a95c0d8 chore: Release v5.27.0-dev.3 [skip ci]
# [5.27.0-dev.3](https://github.com/ReVanced/revanced-patches/compare/v5.27.0-dev.2...v5.27.0-dev.3) (2025-06-06)

### Bug Fixes

* **Spotify:** `Hide Create button` patch failing in edge cases ([#5131](https://github.com/ReVanced/revanced-patches/issues/5131)) ([7a432e5](7a432e5741))
2025-06-06 21:14:18 +00:00
Nuckyz
7a432e5741 fix(Spotify): Hide Create button patch failing in edge cases (#5131) 2025-06-06 18:11:32 -03:00
semantic-release-bot
966a78bd81 chore: Release v5.27.0-dev.2 [skip ci]
# [5.27.0-dev.2](https://github.com/ReVanced/revanced-patches/compare/v5.27.0-dev.1...v5.27.0-dev.2) (2025-06-06)

### Bug Fixes

* **YouTube - Video quality:** Remove non-functional Shorts 144p default quality ([6aff8e8](6aff8e8ca4))
2025-06-06 07:06:49 +00:00
LisoUseInAIKyrios
6aff8e8ca4 fix(YouTube - Video quality): Remove non-functional Shorts 144p default quality 2025-06-06 09:04:07 +02:00
github-actions[bot]
11aa463fa6 chore: Sync translations (#5125) 2025-06-06 09:03:38 +02:00
semantic-release-bot
bf1b639a2f chore: Release v5.27.0-dev.1 [skip ci]
# [5.27.0-dev.1](https://github.com/ReVanced/revanced-patches/compare/v5.26.1-dev.3...v5.27.0-dev.1) (2025-06-05)

### Features

* **YouTube - Theme:** Add option for black and white splash screen animation ([#5119](https://github.com/ReVanced/revanced-patches/issues/5119)) ([6d5380d](6d5380d44d))
2025-06-05 20:08:58 +00:00
LisoUseInAIKyrios
6d5380d44d feat(YouTube - Theme): Add option for black and white splash screen animation (#5119) 2025-06-05 22:06:12 +02:00
github-actions[bot]
7e1547b5b9 chore: Sync translations (#5123) 2025-06-05 22:05:56 +02:00
semantic-release-bot
c790b45cc5 chore: Release v5.26.1-dev.3 [skip ci]
## [5.26.1-dev.3](https://github.com/ReVanced/revanced-patches/compare/v5.26.1-dev.2...v5.26.1-dev.3) (2025-06-05)

### Bug Fixes

* **Spotify:** Prevent hiding all navigation bar buttons ([#5122](https://github.com/ReVanced/revanced-patches/issues/5122)) ([65fc6b4](65fc6b43f5))
2025-06-05 19:57:52 +00:00
Nuckyz
65fc6b43f5 fix(Spotify): Prevent hiding all navigation bar buttons (#5122) 2025-06-05 16:55:33 -03:00
semantic-release-bot
2257dd90aa chore: Release v5.26.1-dev.2 [skip ci]
## [5.26.1-dev.2](https://github.com/ReVanced/revanced-patches/compare/v5.26.1-dev.1...v5.26.1-dev.2) (2025-06-05)

### Bug Fixes

* **YouTube - Hide layout components:** Remove broken option 'Hide comments emoji picker' ([#5121](https://github.com/ReVanced/revanced-patches/issues/5121)) ([4b8499f](4b8499ff2c))
2025-06-05 19:12:08 +00:00
LisoUseInAIKyrios
4b8499ff2c fix(YouTube - Hide layout components): Remove broken option 'Hide comments emoji picker' (#5121) 2025-06-05 21:09:25 +02:00
Nuckyz
bde3fda972 refactor(Spotify): Add extensions debug logging (#5110) 2025-06-05 16:04:02 -03:00
semantic-release-bot
e2e07b5cb2 chore: Release v5.26.1-dev.1 [skip ci]
## [5.26.1-dev.1](https://github.com/ReVanced/revanced-patches/compare/v5.26.0...v5.26.1-dev.1) (2025-06-05)

### Bug Fixes

* **YouTube - Hide Shorts components:** Disable A/B player flags that prevents hiding buttons ([9d10ab6](9d10ab6c00))
2025-06-05 09:24:29 +00:00
LisoUseInAIKyrios
9d10ab6c00 fix(YouTube - Hide Shorts components): Disable A/B player flags that prevents hiding buttons 2025-06-05 11:21:05 +02:00
github-actions[bot]
d7644152fd chore: Sync translations (#5116) 2025-06-05 11:19:38 +02:00
LisoUseInAIKyrios
9be21f4824 refactor(YouTube - Hide Shorts components): Rename 'Hide comment panel' to 'Hide preview comment' 2025-06-05 11:08:24 +02:00
semantic-release-bot
a2eae0bf04 chore: Release v5.26.0 [skip ci]
# [5.26.0](https://github.com/ReVanced/revanced-patches/compare/v5.25.0...v5.26.0) (2025-06-04)

### Bug Fixes

* **Spotify - Custom theme:** Apply accent color in more places ([#5039](https://github.com/ReVanced/revanced-patches/issues/5039)) ([bc45433](bc45433dcb))
* **YouTube - Hide Shorts components:** Disable A/B player that prevents hiding buttons ([#5104](https://github.com/ReVanced/revanced-patches/issues/5104)) ([1d0c568](1d0c56819b))
* **YouTube:** Support A/B Shorts layout for RYD and component hiding ([#5081](https://github.com/ReVanced/revanced-patches/issues/5081)) ([ff903ba](ff903ba9ac))

### Features

* **Proton Mail:** Add `Remove free accounts limit` patch ([#4970](https://github.com/ReVanced/revanced-patches/issues/4970)) ([49ae0df](49ae0df224))
* **Spotify:** Add `Hide Create button` patch ([#5062](https://github.com/ReVanced/revanced-patches/issues/5062)) ([ce5385b](ce5385b28e))
* **Sync for Reddit:** Add `Fix post thumbnails` patch ([7a53580](7a53580380))
* **YouTube - Hide Shorts components:** Add option to hide comment panel ([#5102](https://github.com/ReVanced/revanced-patches/issues/5102)) ([e435b33](e435b33593))
* **YouTube - Playback Speed:** Use modern custom speed dialog ([#5069](https://github.com/ReVanced/revanced-patches/issues/5069)) ([a320e35](a320e35c32))
2025-06-04 14:05:56 +00:00
LisoUseInAIKyrios
679354b5b3 chore: Merge branch dev to main (#5079) 2025-06-04 16:02:42 +02:00
semantic-release-bot
91dec21033 chore: Release v5.26.0-dev.8 [skip ci]
# [5.26.0-dev.8](https://github.com/ReVanced/revanced-patches/compare/v5.26.0-dev.7...v5.26.0-dev.8) (2025-06-04)

### Bug Fixes

* **YouTube - Hide Shorts components:** Disable A/B player that prevents hiding buttons ([#5104](https://github.com/ReVanced/revanced-patches/issues/5104)) ([1d0c568](1d0c56819b))
2025-06-04 11:48:26 +00:00
LisoUseInAIKyrios
1d0c56819b fix(YouTube - Hide Shorts components): Disable A/B player that prevents hiding buttons (#5104) 2025-06-04 13:45:48 +02:00
github-actions[bot]
4410816c22 chore: Sync translations (#5106) 2025-06-04 13:44:35 +02:00
semantic-release-bot
7e4e48bc9f chore: Release v5.26.0-dev.7 [skip ci]
# [5.26.0-dev.7](https://github.com/ReVanced/revanced-patches/compare/v5.26.0-dev.6...v5.26.0-dev.7) (2025-06-04)

### Features

* **YouTube - Hide Shorts components:** Add option to hide comment panel ([#5102](https://github.com/ReVanced/revanced-patches/issues/5102)) ([e435b33](e435b33593))
2025-06-04 07:09:39 +00:00
LisoUseInAIKyrios
e435b33593 feat(YouTube - Hide Shorts components): Add option to hide comment panel (#5102) 2025-06-04 09:06:27 +02:00
semantic-release-bot
bf288b83ae chore: Release v5.26.0-dev.6 [skip ci]
# [5.26.0-dev.6](https://github.com/ReVanced/revanced-patches/compare/v5.26.0-dev.5...v5.26.0-dev.6) (2025-06-03)

### Features

* **Sync for Reddit:** Add `Fix post thumbnails` patch ([7a53580](7a53580380))
2025-06-03 19:50:57 +00:00
kolpazar
7a53580380 feat(Sync for Reddit): Add Fix post thumbnails patch 2025-06-03 21:48:24 +02:00
semantic-release-bot
6439efa2a9 chore: Release v5.26.0-dev.5 [skip ci]
# [5.26.0-dev.5](https://github.com/ReVanced/revanced-patches/compare/v5.26.0-dev.4...v5.26.0-dev.5) (2025-06-03)

### Bug Fixes

* **Spotify - Custom theme:** Apply accent color in more places ([#5039](https://github.com/ReVanced/revanced-patches/issues/5039)) ([bc45433](bc45433dcb))
2025-06-03 08:04:58 +00:00
Cilly Leang
bc45433dcb fix(Spotify - Custom theme): Apply accent color in more places (#5039)
Co-authored-by: Nuckyz <61953774+Nuckyz@users.noreply.github.com>
2025-06-03 10:02:15 +02:00
github-actions[bot]
8871803e83 chore: Sync translations (#5095) 2025-06-03 09:59:31 +02:00
semantic-release-bot
18954a0285 chore: Release v5.26.0-dev.4 [skip ci]
# [5.26.0-dev.4](https://github.com/ReVanced/revanced-patches/compare/v5.26.0-dev.3...v5.26.0-dev.4) (2025-06-03)

### Features

* **Spotify:** Add `Hide Create button` patch ([#5062](https://github.com/ReVanced/revanced-patches/issues/5062)) ([ce5385b](ce5385b28e))
2025-06-03 07:18:30 +00:00
Nuckyz
ce5385b28e feat(Spotify): Add Hide Create button patch (#5062) 2025-06-03 09:15:52 +02:00
dependabot[bot]
3f4cdf6f83 chore(deps-dev): bump semantic-release from 24.2.1 to 24.2.5 (#5086) 2025-06-01 20:57:25 +02:00
semantic-release-bot
094b4a1ea8 chore: Release v5.26.0-dev.3 [skip ci]
# [5.26.0-dev.3](https://github.com/ReVanced/revanced-patches/compare/v5.26.0-dev.2...v5.26.0-dev.3) (2025-06-01)

### Features

* **YouTube - Playback Speed:** Use modern custom speed dialog ([#5069](https://github.com/ReVanced/revanced-patches/issues/5069)) ([a320e35](a320e35c32))
2025-06-01 09:15:51 +00:00
MarcaD
a320e35c32 feat(YouTube - Playback Speed): Use modern custom speed dialog (#5069)
Co-authored-by: LisoUseInAIKyrios <118716522+LisoUseInAIKyrios@users.noreply.github.com>
2025-06-01 11:12:56 +02:00
112 changed files with 2851 additions and 877 deletions

View File

@@ -1,3 +1,147 @@
# [5.27.0-dev.9](https://github.com/ReVanced/revanced-patches/compare/v5.27.0-dev.8...v5.27.0-dev.9) (2025-06-09)
### Features
* **Messenger:** Add `Hide Facebook button` patch ([#5057](https://github.com/ReVanced/revanced-patches/issues/5057)) ([9175b23](https://github.com/ReVanced/revanced-patches/commit/9175b23e8360d13c8c1c9c8602ca0b5931d13627))
# [5.27.0-dev.8](https://github.com/ReVanced/revanced-patches/compare/v5.27.0-dev.7...v5.27.0-dev.8) (2025-06-09)
### Features
* Add `Hide app icon` patch ([#4977](https://github.com/ReVanced/revanced-patches/issues/4977)) ([92311b8](https://github.com/ReVanced/revanced-patches/commit/92311b8e5675f3d4b80ed690d34b699fb847e3cd))
# [5.27.0-dev.7](https://github.com/ReVanced/revanced-patches/compare/v5.27.0-dev.6...v5.27.0-dev.7) (2025-06-08)
### Features
* **YouTube - Hide player overlay buttons:** Add in app setting for "Hide player control buttons background" ([#5147](https://github.com/ReVanced/revanced-patches/issues/5147)) ([dd8afa2](https://github.com/ReVanced/revanced-patches/commit/dd8afa2b07b50be24d764c0f6ddc9e1bbdb91bf1))
# [5.27.0-dev.6](https://github.com/ReVanced/revanced-patches/compare/v5.27.0-dev.5...v5.27.0-dev.6) (2025-06-08)
### Features
* **YouTube - Hide Shorts components:** Add hide 'New posts' button ([ac6b916](https://github.com/ReVanced/revanced-patches/commit/ac6b916c0c212167c4645e2110500dc811b3e54a))
# [5.27.0-dev.5](https://github.com/ReVanced/revanced-patches/compare/v5.27.0-dev.4...v5.27.0-dev.5) (2025-06-08)
### Features
* **Google Photos:** Add `Enable DCIM folders backup control` patch ([#5138](https://github.com/ReVanced/revanced-patches/issues/5138)) ([328d232](https://github.com/ReVanced/revanced-patches/commit/328d232fe77406fa93a14768fc66e7b998506fba))
# [5.27.0-dev.4](https://github.com/ReVanced/revanced-patches/compare/v5.27.0-dev.3...v5.27.0-dev.4) (2025-06-06)
### Bug Fixes
* **Bandcamp - Remove play limits:** Support latest app version ([#5124](https://github.com/ReVanced/revanced-patches/issues/5124)) ([863e92b](https://github.com/ReVanced/revanced-patches/commit/863e92b20ad6682f10524e475ed18f879048ecae))
# [5.27.0-dev.3](https://github.com/ReVanced/revanced-patches/compare/v5.27.0-dev.2...v5.27.0-dev.3) (2025-06-06)
### Bug Fixes
* **Spotify:** `Hide Create button` patch failing in edge cases ([#5131](https://github.com/ReVanced/revanced-patches/issues/5131)) ([0923600](https://github.com/ReVanced/revanced-patches/commit/0923600739a126329fc62100b500216860d7005e))
# [5.27.0-dev.2](https://github.com/ReVanced/revanced-patches/compare/v5.27.0-dev.1...v5.27.0-dev.2) (2025-06-06)
### Bug Fixes
* **YouTube - Video quality:** Remove non-functional Shorts 144p default quality ([3113cd6](https://github.com/ReVanced/revanced-patches/commit/3113cd6d092952c8657454452f34c0ae85358ec9))
# [5.27.0-dev.1](https://github.com/ReVanced/revanced-patches/compare/v5.26.1-dev.3...v5.27.0-dev.1) (2025-06-05)
### Features
* **YouTube - Theme:** Add option for black and white splash screen animation ([#5119](https://github.com/ReVanced/revanced-patches/issues/5119)) ([42db0c2](https://github.com/ReVanced/revanced-patches/commit/42db0c2e36fefccdbeaa072edcec48b1e05b6270))
## [5.26.1-dev.3](https://github.com/ReVanced/revanced-patches/compare/v5.26.1-dev.2...v5.26.1-dev.3) (2025-06-05)
### Bug Fixes
* **Spotify:** Prevent hiding all navigation bar buttons ([#5122](https://github.com/ReVanced/revanced-patches/issues/5122)) ([8afbef0](https://github.com/ReVanced/revanced-patches/commit/8afbef01343c1e3e6e7e4a4cec6319aebfa4b11c))
## [5.26.1-dev.2](https://github.com/ReVanced/revanced-patches/compare/v5.26.1-dev.1...v5.26.1-dev.2) (2025-06-05)
### Bug Fixes
* **YouTube - Hide layout components:** Remove broken option 'Hide comments emoji picker' ([#5121](https://github.com/ReVanced/revanced-patches/issues/5121)) ([9a6a639](https://github.com/ReVanced/revanced-patches/commit/9a6a639c4905b00d6dffb0923c839c8e3ae54d0c))
## [5.26.1-dev.1](https://github.com/ReVanced/revanced-patches/compare/v5.26.0...v5.26.1-dev.1) (2025-06-05)
### Bug Fixes
* **YouTube - Hide Shorts components:** Disable A/B player flags that prevents hiding buttons ([bef0dac](https://github.com/ReVanced/revanced-patches/commit/bef0dacac54caf1ca9511d7bc19b19140ccb4eaf))
# [5.26.0](https://github.com/ReVanced/revanced-patches/compare/v5.25.0...v5.26.0) (2025-06-04)
### Bug Fixes
* **Spotify - Custom theme:** Apply accent color in more places ([#5039](https://github.com/ReVanced/revanced-patches/issues/5039)) ([9357887](https://github.com/ReVanced/revanced-patches/commit/9357887b6fca7aaf34dfb0163645b6a998e1db76))
* **YouTube - Hide Shorts components:** Disable A/B player that prevents hiding buttons ([#5104](https://github.com/ReVanced/revanced-patches/issues/5104)) ([835b7bd](https://github.com/ReVanced/revanced-patches/commit/835b7bd7bd667abd632822c98898972e5124dbb6))
* **YouTube:** Support A/B Shorts layout for RYD and component hiding ([#5081](https://github.com/ReVanced/revanced-patches/issues/5081)) ([8ecacaa](https://github.com/ReVanced/revanced-patches/commit/8ecacaad27162d9380014a9a13ac9220b12257b2))
### Features
* **Proton Mail:** Add `Remove free accounts limit` patch ([#4970](https://github.com/ReVanced/revanced-patches/issues/4970)) ([b0440ad](https://github.com/ReVanced/revanced-patches/commit/b0440ad6af0e190e516974ce896dcc54c8d2e122))
* **Spotify:** Add `Hide Create button` patch ([#5062](https://github.com/ReVanced/revanced-patches/issues/5062)) ([3201681](https://github.com/ReVanced/revanced-patches/commit/32016819d2adbdfdd5e028941d56feda36d20b00))
* **Sync for Reddit:** Add `Fix post thumbnails` patch ([e1ec30c](https://github.com/ReVanced/revanced-patches/commit/e1ec30c5b07560a39d7b8ab293b0c1f39fd59ef2))
* **YouTube - Hide Shorts components:** Add option to hide comment panel ([#5102](https://github.com/ReVanced/revanced-patches/issues/5102)) ([22b9bee](https://github.com/ReVanced/revanced-patches/commit/22b9beedd3243a8d6a5635f591b91cdcf307be37))
* **YouTube - Playback Speed:** Use modern custom speed dialog ([#5069](https://github.com/ReVanced/revanced-patches/issues/5069)) ([9a1e6ca](https://github.com/ReVanced/revanced-patches/commit/9a1e6ca178d9833ee2c681fb130b9290a4e89cd8))
# [5.26.0-dev.8](https://github.com/ReVanced/revanced-patches/compare/v5.26.0-dev.7...v5.26.0-dev.8) (2025-06-04)
### Bug Fixes
* **YouTube - Hide Shorts components:** Disable A/B player that prevents hiding buttons ([#5104](https://github.com/ReVanced/revanced-patches/issues/5104)) ([835b7bd](https://github.com/ReVanced/revanced-patches/commit/835b7bd7bd667abd632822c98898972e5124dbb6))
# [5.26.0-dev.7](https://github.com/ReVanced/revanced-patches/compare/v5.26.0-dev.6...v5.26.0-dev.7) (2025-06-04)
### Features
* **YouTube - Hide Shorts components:** Add option to hide comment panel ([#5102](https://github.com/ReVanced/revanced-patches/issues/5102)) ([22b9bee](https://github.com/ReVanced/revanced-patches/commit/22b9beedd3243a8d6a5635f591b91cdcf307be37))
# [5.26.0-dev.6](https://github.com/ReVanced/revanced-patches/compare/v5.26.0-dev.5...v5.26.0-dev.6) (2025-06-03)
### Features
* **Sync for Reddit:** Add `Fix post thumbnails` patch ([e1ec30c](https://github.com/ReVanced/revanced-patches/commit/e1ec30c5b07560a39d7b8ab293b0c1f39fd59ef2))
# [5.26.0-dev.5](https://github.com/ReVanced/revanced-patches/compare/v5.26.0-dev.4...v5.26.0-dev.5) (2025-06-03)
### Bug Fixes
* **Spotify - Custom theme:** Apply accent color in more places ([#5039](https://github.com/ReVanced/revanced-patches/issues/5039)) ([9357887](https://github.com/ReVanced/revanced-patches/commit/9357887b6fca7aaf34dfb0163645b6a998e1db76))
# [5.26.0-dev.4](https://github.com/ReVanced/revanced-patches/compare/v5.26.0-dev.3...v5.26.0-dev.4) (2025-06-03)
### Features
* **Spotify:** Add `Hide Create button` patch ([#5062](https://github.com/ReVanced/revanced-patches/issues/5062)) ([3201681](https://github.com/ReVanced/revanced-patches/commit/32016819d2adbdfdd5e028941d56feda36d20b00))
# [5.26.0-dev.3](https://github.com/ReVanced/revanced-patches/compare/v5.26.0-dev.2...v5.26.0-dev.3) (2025-06-01)
### Features
* **YouTube - Playback Speed:** Use modern custom speed dialog ([#5069](https://github.com/ReVanced/revanced-patches/issues/5069)) ([9a1e6ca](https://github.com/ReVanced/revanced-patches/commit/9a1e6ca178d9833ee2c681fb130b9290a4e89cd8))
# [5.26.0-dev.2](https://github.com/ReVanced/revanced-patches/compare/v5.26.0-dev.1...v5.26.0-dev.2) (2025-06-01)

View File

@@ -2,13 +2,15 @@ package app.revanced.extension.messenger.metaai;
@SuppressWarnings("unused")
public class RemoveMetaAIPatch {
public static boolean overrideConfigBool(long id, boolean value) {
// It seems like all configs starting with 363219 are related to Meta AI.
// A list of specific ones that need disabling would probably be better,
// but these config numbers seem to change slightly with each update.
// These first 6 digits don't though.
if (Long.toString(id).startsWith("363219"))
public static boolean overrideBooleanFlag(long id, boolean value) {
// This catches all flag IDs related to Meta AI.
// The IDs change slightly with every update,
// so to work around this, IDs from different versions were compared
// to find what they have in common, which turned out to be those first bits.
// TODO: Find the specific flags that we care about and patch the code they control instead.
if ((id & 0x7FFFFFC000000000L) == 0x810A8000000000L) {
return false;
}
return value;
}

View File

@@ -71,9 +71,7 @@ final class PlayerRoutes {
return innerTubeBody.toString();
}
/**
* @noinspection SameParameterValue
*/
@SuppressWarnings("SameParameterValue")
static HttpURLConnection getPlayerResponseConnectionFromRoute(Route.CompiledRoute route, ClientType clientType) throws IOException {
var connection = Requester.getConnectionFromCompiledRoute(YT_API_URL, route);

View File

@@ -6,11 +6,11 @@ dependencies {
android {
defaultConfig {
minSdk = 24
minSdk = 21
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
}

View File

@@ -0,0 +1,78 @@
package app.revanced.extension.spotify.layout.hide.createbutton;
import java.util.List;
import app.revanced.extension.shared.Logger;
import app.revanced.extension.spotify.shared.ComponentFilters.*;
@SuppressWarnings("unused")
public final class HideCreateButtonPatch {
/**
* A list of component filters that match whether a navigation bar item is the Create button.
* The main approach used is matching the resource id for the Create button title.
*/
private static final List<ComponentFilter> CREATE_BUTTON_COMPONENT_FILTERS = List.of(
new ResourceIdComponentFilter("navigationbar_musicappitems_create_title", "string"),
// Temporary fallback and fix for APKs merged with AntiSplit-M not having resources properly encoded,
// and thus getting the resource identifier for the Create button title always return 0.
// FIXME: Remove this once the above issue is no longer relevant.
new StringComponentFilter("spotify:create-menu")
);
/**
* A component filter for the old id of the resource which contained the Create button title.
* Used in older versions of the app.
*/
private static final ResourceIdComponentFilter OLD_CREATE_BUTTON_COMPONENT_FILTER =
new ResourceIdComponentFilter("bottom_navigation_bar_create_tab_title", "string");
/**
* Injection point. This method is called on every navigation bar item to check whether it is the Create button.
* If the navigation bar item is the Create button, it returns null to erase it.
* The method fingerprint used to patch ensures we can safely return null here.
*/
public static Object returnNullIfIsCreateButton(Object navigationBarItem) {
if (navigationBarItem == null) {
return null;
}
String stringifiedNavigationBarItem = navigationBarItem.toString();
for (ComponentFilter componentFilter : CREATE_BUTTON_COMPONENT_FILTERS) {
if (componentFilter.filterUnavailable()) {
Logger.printInfo(() -> "returnNullIfIsCreateButton: Filter " +
componentFilter.getFilterRepresentation() + " not available, skipping");
continue;
}
if (stringifiedNavigationBarItem.contains(componentFilter.getFilterValue())) {
Logger.printInfo(() -> "Hiding Create button because the navigation bar item " + navigationBarItem +
" matched the filter " + componentFilter.getFilterRepresentation());
return null;
}
}
return navigationBarItem;
}
/**
* Injection point. Called in older versions of the app. Returns whether the old navigation bar item is the old
* Create button.
*/
public static boolean isOldCreateButton(int oldNavigationBarItemTitleResId) {
if (OLD_CREATE_BUTTON_COMPONENT_FILTER.filterUnavailable()) {
Logger.printInfo(() -> "Skipping hiding old Create button because the resource id for " +
OLD_CREATE_BUTTON_COMPONENT_FILTER.resourceName + " is not available");
return false;
}
if (oldNavigationBarItemTitleResId == OLD_CREATE_BUTTON_COMPONENT_FILTER.getResourceId()) {
Logger.printInfo(() -> "Hiding old Create button because the navigation bar item title resource id" +
" matched " + OLD_CREATE_BUTTON_COMPONENT_FILTER.getFilterRepresentation());
return true;
}
return false;
}
}

View File

@@ -8,15 +8,54 @@ import app.revanced.extension.shared.Utils;
@SuppressWarnings("unused")
public final class CustomThemePatch {
private static final int BACKGROUND_COLOR = getColorFromString("@color/gray_7");
private static final int BACKGROUND_COLOR_SECONDARY = getColorFromString("@color/gray_15");
private static final int ACCENT_COLOR = getColorFromString("@color/spotify_green_157");
private static final int ACCENT_PRESSED_COLOR =
getColorFromString("@color/dark_brightaccent_background_press");
/**
* Injection point.
* Returns an int representation of the color resource or hex code.
*/
public static long getThemeColor(String colorString) {
private static int getColorFromString(String colorString) {
try {
return Utils.getColorFromString(colorString);
} catch (Exception ex) {
Logger.printException(() -> "Invalid custom color: " + colorString, ex);
Logger.printException(() -> "Invalid color string: " + colorString, ex);
return Color.BLACK;
}
}
/**
* Injection point. Returns an int representation of the replaced color from the original color.
*/
public static int replaceColor(int originalColor) {
switch (originalColor) {
// Playlist background color.
case 0xFF121212:
return BACKGROUND_COLOR;
// Share menu background color.
case 0xFF1F1F1F:
// Home category pills background color.
case 0xFF333333:
// Settings header background color.
case 0xFF282828:
// Spotify Connect device list background color.
case 0xFF2A2A2A:
return BACKGROUND_COLOR_SECONDARY;
// Some Lottie animations have a color that's slightly off due to rounding errors.
case 0xFF1ED760: case 0xFF1ED75F:
// Intermediate color used in some animations, same rounding issue.
case 0xFF1DB954: case 0xFF1CB854:
return ACCENT_COLOR;
case 0xFF1ABC54:
return ACCENT_PRESSED_COLOR;
default:
return originalColor;
}
}
}

View File

@@ -33,10 +33,11 @@ public final class SanitizeSharingLinksPatch {
}
}
return builder.build().toString();
String sanitizedUrl = builder.build().toString();
Logger.printInfo(() -> "Sanitized url " + url + " to " + sanitizedUrl);
return sanitizedUrl;
} catch (Exception ex) {
Logger.printException(() -> "sanitizeUrl failure", ex);
Logger.printException(() -> "sanitizeUrl failure with " + url, ex);
return url;
}
}

View File

@@ -0,0 +1,79 @@
package app.revanced.extension.spotify.shared;
import app.revanced.extension.shared.Logger;
import app.revanced.extension.shared.Utils;
public final class ComponentFilters {
public interface ComponentFilter {
String getFilterValue();
String getFilterRepresentation();
default boolean filterUnavailable() {
return false;
}
}
public static final class ResourceIdComponentFilter implements ComponentFilter {
public final String resourceName;
public final String resourceType;
// Android resources are always positive, so -1 is a valid sentinel value to indicate it has not been loaded.
// 0 is returned when a resource has not been found.
private int resourceId = -1;
private String stringfiedResourceId = null;
public ResourceIdComponentFilter(String resourceName, String resourceType) {
this.resourceName = resourceName;
this.resourceType = resourceType;
}
public int getResourceId() {
if (resourceId == -1) {
resourceId = Utils.getResourceIdentifier(resourceName, resourceType);
}
return resourceId;
}
@Override
public String getFilterValue() {
if (stringfiedResourceId == null) {
stringfiedResourceId = Integer.toString(getResourceId());
}
return stringfiedResourceId;
}
@Override
public String getFilterRepresentation() {
boolean resourceFound = getResourceId() != 0;
return (resourceFound ? getFilterValue() + " (" : "") + resourceName + (resourceFound ? ")" : "");
}
@Override
public boolean filterUnavailable() {
boolean resourceNotFound = getResourceId() == 0;
if (resourceNotFound) {
Logger.printInfo(() -> "Resource id for " + resourceName + " was not found");
}
return resourceNotFound;
}
}
public static final class StringComponentFilter implements ComponentFilter {
public final String string;
public StringComponentFilter(String string) {
this.string = string;
}
@Override
public String getFilterValue() {
return string;
}
@Override
public String getFilterRepresentation() {
return string;
}
}
}

View File

@@ -7,11 +7,11 @@ android {
compileSdk = 34
defaultConfig {
minSdk = 26
minSdk = 21
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
}

View File

@@ -105,6 +105,14 @@ public class ThemeHelper {
return isDarkTheme() ? getLightThemeColor() : getDarkThemeColor();
}
public static int getDialogBackgroundColor() {
final String colorName = isDarkTheme()
? "yt_black1"
: "yt_white1";
return Utils.getColorFromString(colorName);
}
public static int getToolbarBackgroundColor() {
final String colorName = isDarkTheme()
? "yt_black3"

View File

@@ -686,7 +686,7 @@ public final class AlternativeThumbnailsPatch {
? "" : fullUrl.substring(imageExtensionEndIndex);
}
/** @noinspection SameParameterValue */
@SuppressWarnings("SameParameterValue")
String createStillsUrl(@NonNull ThumbnailQuality qualityToUse, boolean includeViewTracking) {
// Images could be upgraded to webp if they are not already, but this fails quite often,
// especially for new videos uploaded in the last hour.

View File

@@ -1,6 +1,7 @@
package app.revanced.extension.youtube.patches;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import app.revanced.extension.shared.Logger;
@@ -58,6 +59,22 @@ public final class HidePlayerOverlayButtonsPatch {
});
}
/**
* Injection point.
*/
public static void hidePlayerControlButtonsBackground(View rootView) {
try {
if (!Settings.HIDE_PLAYER_CONTROL_BUTTONS_BACKGROUND.get()) {
return;
}
// Each button is an ImageView with a background set to another drawable.
removeImageViewsBackgroundRecursive(rootView);
} catch (Exception ex) {
Logger.printException(() -> "removePlayerControlButtonsBackground failure", ex);
}
}
private static void hideView(View parentView, int resourceId) {
View nextPreviousButton = parentView.findViewById(resourceId);
@@ -69,4 +86,16 @@ public final class HidePlayerOverlayButtonsPatch {
Logger.printDebug(() -> "Hiding previous/next button");
Utils.hideViewByRemovingFromParentUnderCondition(true, nextPreviousButton);
}
private static void removeImageViewsBackgroundRecursive(View currentView) {
if (currentView instanceof ImageView imageView) {
imageView.setBackground(null);
}
if (currentView instanceof ViewGroup viewGroup) {
for (int i = 0; i < viewGroup.getChildCount(); i++) {
removeImageViewsBackgroundRecursive(viewGroup.getChildAt(i));
}
}
}
}

View File

@@ -153,14 +153,12 @@ public class ReturnYouTubeDislikePatch {
}
if (Utils.containsAny(conversionContextString,
"|shorts_dislike_button.eml", "|reel_dislike_button.eml"
)) {
"|shorts_dislike_button.eml", "|reel_dislike_button.eml")) {
return getShortsSpan(original, true);
}
if (Utils.containsAny(conversionContextString,
"|shorts_like_button.eml", "|reel_like_button.eml"
)) {
"|shorts_like_button.eml", "|reel_like_button.eml")) {
if (!Utils.containsNumber(original)) {
Logger.printDebug(() -> "Replacing hidden likes count");
return getShortsSpan(original, false);
@@ -365,6 +363,11 @@ public class ReturnYouTubeDislikePatch {
if (videoId.equals(lastPrefetchedVideoId)) {
return;
}
if (!Utils.isNetworkConnected()) {
Logger.printDebug(() -> "Cannot pre-fetch RYD, network is not connected");
lastPrefetchedVideoId = null;
return;
}
final boolean videoIdIsShort = VideoInformation.lastPlayerResponseIsShort();
// Shorts shelf in home and subscription feed causes player response hook to be called,
@@ -419,6 +422,12 @@ public class ReturnYouTubeDislikePatch {
}
Logger.printDebug(() -> "New video id: " + videoId + " playerType: " + currentPlayerType);
if (!Utils.isNetworkConnected()) {
Logger.printDebug(() -> "Cannot fetch RYD, network is not connected");
currentVideoData = null;
return;
}
ReturnYouTubeDislike data = ReturnYouTubeDislike.getFetchForVideoId(videoId);
// Pre-emptively set the data to short status.
// Required to prevent Shorts data from being used on a minimized video in incognito mode.

View File

@@ -354,4 +354,23 @@ public final class VideoInformation {
return videoTime >= videoLength && videoLength > 0;
}
/**
* Overrides the current playback speed.
* Rest of the implementation added by patch.
*/
public static void overridePlaybackSpeed(float speedOverride) {
Logger.printDebug(() -> "Overriding playback speed to: " + speedOverride);
}
/**
* Injection point.
*
* @param newlyLoadedPlaybackSpeed The current playback speed.
*/
public static void setPlaybackSpeed(float newlyLoadedPlaybackSpeed) {
if (playbackSpeed != newlyLoadedPlaybackSpeed) {
Logger.printDebug(() -> "Video speed changed: " + newlyLoadedPlaybackSpeed);
playbackSpeed = newlyLoadedPlaybackSpeed;
}
}
}

View File

@@ -7,11 +7,6 @@ import app.revanced.extension.youtube.settings.Settings;
@SuppressWarnings("unused")
final class CommentsFilter extends Filter {
private static final String TIMESTAMP_OR_EMOJI_BUTTONS_ENDS_WITH_PATH
= "|CellType|ContainerType|ContainerType|ContainerType|ContainerType|ContainerType|";
private final StringFilterGroup commentComposer;
private final ByteArrayFilterGroup emojiPickerBufferGroup;
private final StringFilterGroup filterChipBar;
private final ByteArrayFilterGroup aiCommentsSummary;
@@ -50,14 +45,9 @@ final class CommentsFilter extends Filter {
"super_thanks_button.eml"
);
commentComposer = new StringFilterGroup(
Settings.HIDE_COMMENTS_TIMESTAMP_AND_EMOJI_BUTTONS,
"comment_composer.eml"
);
emojiPickerBufferGroup = new ByteArrayFilterGroup(
null,
"id.comment.quick_emoji.button"
StringFilterGroup timestampButton = new StringFilterGroup(
Settings.HIDE_COMMENTS_TIMESTAMP_BUTTON,
"composer_timestamp_button.eml"
);
filterChipBar = new StringFilterGroup(
@@ -77,7 +67,7 @@ final class CommentsFilter extends Filter {
createAShort,
previewComment,
thanksButton,
commentComposer,
timestampButton,
filterChipBar
);
}
@@ -85,14 +75,6 @@ final class CommentsFilter extends Filter {
@Override
boolean isFiltered(@Nullable String identifier, String path, byte[] protobufBufferArray,
StringFilterGroup matchedGroup, FilterContentType contentType, int contentIndex) {
if (matchedGroup == commentComposer) {
// To completely hide the emoji buttons (and leave no empty space), the timestamp button is
// also hidden because the buffer is exactly the same and there's no way selectively hide.
return contentIndex == 0
&& path.endsWith(TIMESTAMP_OR_EMOJI_BUTTONS_ENDS_WITH_PATH)
&& emojiPickerBufferGroup.check(protobufBufferArray).isFiltered();
}
if (matchedGroup == filterChipBar) {
return aiCommentsSummary.check(protobufBufferArray).isFiltered();
}

View File

@@ -10,18 +10,11 @@ import app.revanced.extension.youtube.settings.Settings;
*/
public final class PlaybackSpeedMenuFilterPatch extends Filter {
/**
* Old litho based speed selection menu.
*/
public static volatile boolean isOldPlaybackSpeedMenuVisible;
/**
* 0.05x speed selection menu.
*/
public static volatile boolean isPlaybackRateSelectorMenuVisible;
private final StringFilterGroup oldPlaybackMenuGroup;
public PlaybackSpeedMenuFilterPatch() {
// 0.05x litho speed menu.
var playbackRateSelectorGroup = new StringFilterGroup(
@@ -29,22 +22,13 @@ public final class PlaybackSpeedMenuFilterPatch extends Filter {
"playback_rate_selector_menu_sheet.eml-js"
);
// Old litho based speed menu.
oldPlaybackMenuGroup = new StringFilterGroup(
Settings.CUSTOM_SPEED_MENU,
"playback_speed_sheet_content.eml-js");
addPathCallbacks(playbackRateSelectorGroup, oldPlaybackMenuGroup);
addPathCallbacks(playbackRateSelectorGroup);
}
@Override
boolean isFiltered(@Nullable String identifier, String path, byte[] protobufBufferArray,
StringFilterGroup matchedGroup, FilterContentType contentType, int contentIndex) {
if (matchedGroup == oldPlaybackMenuGroup) {
isOldPlaybackSpeedMenuVisible = true;
} else {
isPlaybackRateSelectorMenuVisible = true;
}
isPlaybackRateSelectorMenuVisible = true;
return false;
}

View File

@@ -217,6 +217,12 @@ public final class ShortsFilter extends Filter {
// Suggested actions.
//
suggestedActionsGroupList.addAll(
new ByteArrayFilterGroup(
Settings.HIDE_SHORTS_PREVIEW_COMMENT,
// Preview comment that can popup while a Short is playing.
// Uses no bundled icons, and instead the users profile photo is shown.
"shorts-comments-panel"
),
new ByteArrayFilterGroup(
Settings.HIDE_SHORTS_SHOP_BUTTON,
"yt_outline_bag_"
@@ -261,6 +267,10 @@ public final class ShortsFilter extends Filter {
Settings.HIDE_SHORTS_GREEN_SCREEN_BUTTON,
"greenscreen_temp"
),
new ByteArrayFilterGroup(
Settings.HIDE_SHORTS_NEW_POSTS_BUTTON,
"yt_outline_box_pencil"
),
new ByteArrayFilterGroup(
Settings.HIDE_SHORTS_HASHTAG_BUTTON,
"yt_outline_hashtag_"

View File

@@ -1,24 +1,57 @@
package app.revanced.extension.youtube.patches.playback.speed;
import static app.revanced.extension.shared.StringRef.str;
import static app.revanced.extension.shared.Utils.dipToPixels;
import android.annotation.SuppressLint;
import android.app.Dialog;
import android.content.Context;
import android.content.res.Configuration;
import android.graphics.Canvas;
import android.graphics.ColorFilter;
import android.graphics.Paint;
import android.graphics.PixelFormat;
import android.graphics.PorterDuff;
import android.graphics.Rect;
import android.graphics.Typeface;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.ShapeDrawable;
import android.graphics.drawable.shapes.RoundRectShape;
import android.icu.text.NumberFormat;
import android.support.v7.widget.RecyclerView;
import android.view.animation.Animation;
import android.view.Gravity;
import android.view.View;
import android.view.ViewGroup;
import android.view.ViewParent;
import android.view.Window;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.FrameLayout;
import android.widget.GridLayout;
import android.widget.LinearLayout;
import android.widget.SeekBar;
import android.widget.TextView;
import java.lang.ref.WeakReference;
import java.util.Arrays;
import java.util.function.Function;
import app.revanced.extension.shared.Logger;
import app.revanced.extension.shared.Utils;
import app.revanced.extension.youtube.ThemeHelper;
import app.revanced.extension.youtube.patches.VideoInformation;
import app.revanced.extension.youtube.patches.components.PlaybackSpeedMenuFilterPatch;
import app.revanced.extension.youtube.settings.Settings;
import app.revanced.extension.youtube.shared.PlayerType;
import kotlin.Unit;
import kotlin.jvm.functions.Function1;
@SuppressWarnings("unused")
public class CustomPlaybackSpeedPatch {
/**
* Maximum playback speed, exclusive value. Custom speeds must be less than this value.
* Maximum playback speed, inclusive. Custom speeds must be this or less.
* <p>
* Going over 8x does not increase the actual playback speed any higher,
* and the UI selector starts flickering and acting weird.
@@ -26,6 +59,11 @@ public class CustomPlaybackSpeedPatch {
*/
public static final float PLAYBACK_SPEED_MAXIMUM = 8;
/**
* Scale used to convert user speed to {@link android.widget.ProgressBar#setProgress(int)}.
*/
private static final float PROGRESS_BAR_VALUE_SCALE = 100;
/**
* Tap and hold speed.
*/
@@ -34,16 +72,28 @@ public class CustomPlaybackSpeedPatch {
/**
* Custom playback speeds.
*/
public static float[] customPlaybackSpeeds;
public static final float[] customPlaybackSpeeds;
/**
* The last time the old playback menu was forcefully called.
* Formats speeds to UI strings.
*/
private static long lastTimeOldPlaybackMenuInvoked;
private static final NumberFormat speedFormatter = NumberFormat.getNumberInstance();
/**
* Weak reference to the currently open dialog.
*/
private static WeakReference<Dialog> currentDialog = new WeakReference<>(null);
/**
* Minimum and maximum custom playback speeds of {@link #customPlaybackSpeeds}.
*/
private static final float customPlaybackSpeedsMin, customPlaybackSpeedsMax;
static {
final float holdSpeed = Settings.SPEED_TAP_AND_HOLD.get();
// Cap at 2 decimals (rounds automatically).
speedFormatter.setMaximumFractionDigits(2);
final float holdSpeed = Settings.SPEED_TAP_AND_HOLD.get();
if (holdSpeed > 0 && holdSpeed <= PLAYBACK_SPEED_MAXIMUM) {
TAP_AND_HOLD_SPEED = holdSpeed;
} else {
@@ -51,7 +101,9 @@ public class CustomPlaybackSpeedPatch {
TAP_AND_HOLD_SPEED = Settings.SPEED_TAP_AND_HOLD.resetToDefault();
}
loadCustomSpeeds();
customPlaybackSpeeds = loadCustomSpeeds();
customPlaybackSpeedsMin = customPlaybackSpeeds[0];
customPlaybackSpeedsMax = customPlaybackSpeeds[customPlaybackSpeeds.length - 1];
}
/**
@@ -65,37 +117,41 @@ public class CustomPlaybackSpeedPatch {
Utils.showToastLong(str("revanced_custom_playback_speeds_invalid", PLAYBACK_SPEED_MAXIMUM));
}
private static void loadCustomSpeeds() {
private static float[] loadCustomSpeeds() {
try {
String[] speedStrings = Settings.CUSTOM_PLAYBACK_SPEEDS.get().split("\\s+");
// Automatically replace commas with periods,
// if the user added speeds in a localized format.
String[] speedStrings = Settings.CUSTOM_PLAYBACK_SPEEDS.get()
.replace(',', '.').split("\\s+");
Arrays.sort(speedStrings);
if (speedStrings.length == 0) {
throw new IllegalArgumentException();
}
customPlaybackSpeeds = new float[speedStrings.length];
float[] speeds = new float[speedStrings.length];
int i = 0;
for (String speedString : speedStrings) {
final float speedFloat = Float.parseFloat(speedString);
if (speedFloat <= 0 || arrayContains(customPlaybackSpeeds, speedFloat)) {
if (speedFloat <= 0 || arrayContains(speeds, speedFloat)) {
throw new IllegalArgumentException();
}
if (speedFloat >= PLAYBACK_SPEED_MAXIMUM) {
if (speedFloat > PLAYBACK_SPEED_MAXIMUM) {
showInvalidCustomSpeedToast();
Settings.CUSTOM_PLAYBACK_SPEEDS.resetToDefault();
loadCustomSpeeds();
return;
return loadCustomSpeeds();
}
customPlaybackSpeeds[i++] = speedFloat;
speeds[i++] = speedFloat;
}
return speeds;
} catch (Exception ex) {
Logger.printInfo(() -> "parse error", ex);
Utils.showToastLong(str("revanced_custom_playback_speeds_parse_exception"));
Logger.printInfo(() -> "Parse error", ex);
Utils.showToastShort(str("revanced_custom_playback_speeds_parse_exception"));
Settings.CUSTOM_PLAYBACK_SPEEDS.resetToDefault();
loadCustomSpeeds();
return loadCustomSpeeds();
}
}
@@ -113,38 +169,28 @@ public class CustomPlaybackSpeedPatch {
recyclerView.getViewTreeObserver().addOnDrawListener(() -> {
try {
if (PlaybackSpeedMenuFilterPatch.isPlaybackRateSelectorMenuVisible) {
if (hideLithoMenuAndShowOldSpeedMenu(recyclerView, 5)) {
if (hideLithoMenuAndShowCustomSpeedMenu(recyclerView, 5)) {
PlaybackSpeedMenuFilterPatch.isPlaybackRateSelectorMenuVisible = false;
}
return;
}
} catch (Exception ex) {
Logger.printException(() -> "isPlaybackRateSelectorMenuVisible failure", ex);
}
try {
if (PlaybackSpeedMenuFilterPatch.isOldPlaybackSpeedMenuVisible) {
if (hideLithoMenuAndShowOldSpeedMenu(recyclerView, 8)) {
PlaybackSpeedMenuFilterPatch.isOldPlaybackSpeedMenuVisible = false;
}
}
} catch (Exception ex) {
Logger.printException(() -> "isOldPlaybackSpeedMenuVisible failure", ex);
Logger.printException(() -> "onFlyoutMenuCreate failure", ex);
}
});
}
private static boolean hideLithoMenuAndShowOldSpeedMenu(RecyclerView recyclerView, int expectedChildCount) {
@SuppressWarnings("SameParameterValue")
private static boolean hideLithoMenuAndShowCustomSpeedMenu(RecyclerView recyclerView, int expectedChildCount) {
if (recyclerView.getChildCount() == 0) {
return false;
}
View firstChild = recyclerView.getChildAt(0);
if (!(firstChild instanceof ViewGroup PlaybackSpeedParentView)) {
if (!(firstChild instanceof ViewGroup playbackSpeedParentView)) {
return false;
}
if (PlaybackSpeedParentView.getChildCount() != expectedChildCount) {
if (playbackSpeedParentView.getChildCount() != expectedChildCount) {
return false;
}
@@ -168,23 +214,418 @@ public class CustomPlaybackSpeedPatch {
((ViewGroup) parentView3rd).setVisibility(View.GONE);
((ViewGroup) parentView4th).setVisibility(View.GONE);
// Close the litho speed menu and show the old one.
showOldPlaybackSpeedMenu();
// Close the litho speed menu and show the modern custom speed dialog.
showModernCustomPlaybackSpeedDialog(recyclerView.getContext());
Logger.printDebug(() -> "Modern playback speed dialog shown");
return true;
}
public static void showOldPlaybackSpeedMenu() {
// This method is sometimes used multiple times.
// To prevent this, ignore method reuse within 1 second.
final long now = System.currentTimeMillis();
if (now - lastTimeOldPlaybackMenuInvoked < 1000) {
Logger.printDebug(() -> "Ignoring call to showOldPlaybackSpeedMenu");
return;
}
lastTimeOldPlaybackMenuInvoked = now;
Logger.printDebug(() -> "Old video quality menu shown");
/**
* Displays a modern custom dialog for adjusting video playback speed.
* <p>
* This method creates a dialog with a slider, plus/minus buttons, and preset speed buttons
* to allow the user to modify the video playback speed. The dialog is styled with rounded
* corners and themed colors, positioned at the bottom of the screen. The playback speed
* can be adjusted in 0.05 increments using the slider or buttons, or set directly to preset
* values. The dialog updates the displayed speed in real-time and applies changes to the
* video playback. The dialog is dismissed if the player enters Picture-in-Picture (PiP) mode.
*/
@SuppressLint("SetTextI18n")
public static void showModernCustomPlaybackSpeedDialog(Context context) {
// Create a dialog without a theme for custom appearance.
Dialog dialog = new Dialog(context);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); // Remove default title bar.
// Rest of the implementation added by patch.
// Store the dialog reference.
currentDialog = new WeakReference<>(dialog);
// Create main vertical LinearLayout for dialog content.
LinearLayout mainLayout = new LinearLayout(context);
mainLayout.setOrientation(LinearLayout.VERTICAL);
// Preset size constants.
final int dip4 = dipToPixels(4); // Height for handle bar.
final int dip5 = dipToPixels(5);
final int dip6 = dipToPixels(6); // Padding for mainLayout from bottom.
final int dip8 = dipToPixels(8); // Padding for mainLayout from left and right.
final int dip20 = dipToPixels(20);
final int dip32 = dipToPixels(32); // Height for in-rows speed buttons.
final int dip36 = dipToPixels(36); // Height for minus and plus buttons.
final int dip40 = dipToPixels(40); // Width for handle bar.
final int dip60 = dipToPixels(60); // Height for speed button container.
mainLayout.setPadding(dip5, dip8, dip5, dip8);
// Set rounded rectangle background for the main layout.
RoundRectShape roundRectShape = new RoundRectShape(
createCornerRadii(12), null, null);
ShapeDrawable background = new ShapeDrawable(roundRectShape);
background.getPaint().setColor(ThemeHelper.getDialogBackgroundColor());
mainLayout.setBackground(background);
// Add handle bar at the top.
View handleBar = new View(context);
ShapeDrawable handleBackground = new ShapeDrawable(new RoundRectShape(
createCornerRadii(4), null, null));
handleBackground.getPaint().setColor(getAdjustedBackgroundColor(true));
handleBar.setBackground(handleBackground);
LinearLayout.LayoutParams handleParams = new LinearLayout.LayoutParams(
dip40, // handle bar width.
dip4 // handle bar height.
);
handleParams.gravity = Gravity.CENTER_HORIZONTAL; // Center horizontally.
handleParams.setMargins(0, 0, 0, dip20); // 20dp bottom margins.
handleBar.setLayoutParams(handleParams);
// Add handle bar view to main layout.
mainLayout.addView(handleBar);
// Display current playback speed.
TextView currentSpeedText = new TextView(context);
float currentSpeed = VideoInformation.getPlaybackSpeed();
// Initially show with only 0 minimum digits, so 1.0 shows as 1x
currentSpeedText.setText(formatSpeedStringX(currentSpeed, 0));
currentSpeedText.setTextColor(ThemeHelper.getForegroundColor());
currentSpeedText.setTextSize(16);
currentSpeedText.setTypeface(Typeface.DEFAULT_BOLD);
currentSpeedText.setGravity(Gravity.CENTER);
LinearLayout.LayoutParams textParams = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);
textParams.setMargins(0, 0, 0, 0);
currentSpeedText.setLayoutParams(textParams);
// Add current speed text view to main layout.
mainLayout.addView(currentSpeedText);
// Create horizontal layout for slider and +/- buttons.
LinearLayout sliderLayout = new LinearLayout(context);
sliderLayout.setOrientation(LinearLayout.HORIZONTAL);
sliderLayout.setGravity(Gravity.CENTER_VERTICAL);
sliderLayout.setPadding(dip5, dip5, dip5, dip5); // 5dp padding.
// Create minus button.
Button minusButton = new Button(context, null, 0); // Disable default theme style.
minusButton.setText(""); // No text on button.
ShapeDrawable minusBackground = new ShapeDrawable(new RoundRectShape(createCornerRadii(20), null, null));
minusBackground.getPaint().setColor(getAdjustedBackgroundColor(false));
minusButton.setBackground(minusBackground);
OutlineSymbolDrawable minusDrawable = new OutlineSymbolDrawable(false); // Minus symbol.
minusButton.setForeground(minusDrawable);
LinearLayout.LayoutParams minusParams = new LinearLayout.LayoutParams(dip36, dip36);
minusParams.setMargins(0, 0, dip5, 0); // 5dp to slider.
minusButton.setLayoutParams(minusParams);
// Create slider for speed adjustment.
SeekBar speedSlider = new SeekBar(context);
speedSlider.setMax(speedToProgressValue(customPlaybackSpeedsMax));
speedSlider.setProgress(speedToProgressValue(currentSpeed));
speedSlider.getProgressDrawable().setColorFilter(
ThemeHelper.getForegroundColor(), PorterDuff.Mode.SRC_IN); // Theme progress bar.
speedSlider.getThumb().setColorFilter(
ThemeHelper.getForegroundColor(), PorterDuff.Mode.SRC_IN); // Theme slider thumb.
LinearLayout.LayoutParams sliderParams = new LinearLayout.LayoutParams(
0, LinearLayout.LayoutParams.WRAP_CONTENT, 1f);
sliderParams.setMargins(dip5, 0, dip5, 0); // 5dp to -/+ buttons.
speedSlider.setLayoutParams(sliderParams);
// Create plus button.
Button plusButton = new Button(context, null, 0); // Disable default theme style.
plusButton.setText(""); // No text on button.
ShapeDrawable plusBackground = new ShapeDrawable(new RoundRectShape(
createCornerRadii(20), null, null));
plusBackground.getPaint().setColor(getAdjustedBackgroundColor(false));
plusButton.setBackground(plusBackground);
OutlineSymbolDrawable plusDrawable = new OutlineSymbolDrawable(true); // Plus symbol.
plusButton.setForeground(plusDrawable);
LinearLayout.LayoutParams plusParams = new LinearLayout.LayoutParams(dip36, dip36);
plusParams.setMargins(dip5, 0, 0, 0); // 5dp to slider.
plusButton.setLayoutParams(plusParams);
// Add -/+ and slider views to slider layout.
sliderLayout.addView(minusButton);
sliderLayout.addView(speedSlider);
sliderLayout.addView(plusButton);
LinearLayout.LayoutParams sliderLayoutParams = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);
sliderLayoutParams.setMargins(0, 0, 0, dip5); // 5dp bottom margin.
sliderLayout.setLayoutParams(sliderLayoutParams);
// Add slider layout to main layout.
mainLayout.addView(sliderLayout);
Function<Float, Void> userSelectedSpeed = newSpeed -> {
final float roundedSpeed = roundSpeedToNearestIncrement(newSpeed);
if (VideoInformation.getPlaybackSpeed() == roundedSpeed) {
// Nothing has changed. New speed rounds to the current speed.
return null;
}
VideoInformation.overridePlaybackSpeed(roundedSpeed);
RememberPlaybackSpeedPatch.userSelectedPlaybackSpeed(roundedSpeed);
currentSpeedText.setText(formatSpeedStringX(roundedSpeed, 2)); // Update display.
speedSlider.setProgress(speedToProgressValue(roundedSpeed)); // Update slider.
return null;
};
// Set listener for slider to update playback speed.
speedSlider.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
if (fromUser) {
// Convert from progress value to video playback speed.
userSelectedSpeed.apply(customPlaybackSpeedsMin + (progress / PROGRESS_BAR_VALUE_SCALE));
}
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {}
});
minusButton.setOnClickListener(v -> userSelectedSpeed.apply(
VideoInformation.getPlaybackSpeed() - 0.05f));
plusButton.setOnClickListener(v -> userSelectedSpeed.apply(
VideoInformation.getPlaybackSpeed() + 0.05f));
// Create GridLayout for preset speed buttons.
GridLayout gridLayout = new GridLayout(context);
gridLayout.setColumnCount(5); // 5 columns for speed buttons.
gridLayout.setAlignmentMode(GridLayout.ALIGN_BOUNDS);
gridLayout.setRowCount((int) Math.ceil(customPlaybackSpeeds.length / 5.0));
LinearLayout.LayoutParams gridParams = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);
gridParams.setMargins(0, 0, 0, 0); // No margins around GridLayout.
gridLayout.setLayoutParams(gridParams);
// For all buttons show at least 1 zero in decimal (2 -> "2.0").
speedFormatter.setMinimumFractionDigits(1);
// Add buttons for each preset playback speed.
for (float speed : customPlaybackSpeeds) {
// Container for button and optional label.
FrameLayout buttonContainer = new FrameLayout(context);
// Set layout parameters for each grid cell.
GridLayout.LayoutParams containerParams = new GridLayout.LayoutParams();
containerParams.width = 0; // Equal width for columns.
containerParams.columnSpec = GridLayout.spec(GridLayout.UNDEFINED, 1, 1f);
containerParams.setMargins(dip5, 0, dip5, 0); // Button margins.
containerParams.height = dip60; // Fixed height for button and label.
buttonContainer.setLayoutParams(containerParams);
// Create speed button.
Button speedButton = new Button(context, null, 0);
speedButton.setText(speedFormatter.format(speed)); // Do not use 'x' speed format.
speedButton.setTextColor(ThemeHelper.getForegroundColor());
speedButton.setTextSize(12);
speedButton.setAllCaps(false);
speedButton.setGravity(Gravity.CENTER);
ShapeDrawable buttonBackground = new ShapeDrawable(new RoundRectShape(
createCornerRadii(20), null, null));
buttonBackground.getPaint().setColor(getAdjustedBackgroundColor(false));
speedButton.setBackground(buttonBackground);
speedButton.setPadding(dip5, dip5, dip5, dip5);
// Center button vertically and stretch horizontally in container.
FrameLayout.LayoutParams buttonParams = new FrameLayout.LayoutParams(
FrameLayout.LayoutParams.MATCH_PARENT, dip32, Gravity.CENTER);
speedButton.setLayoutParams(buttonParams);
// Add speed buttons view to buttons container layout.
buttonContainer.addView(speedButton);
// Add "Normal" label for 1.0x speed.
if (speed == 1.0f) {
TextView normalLabel = new TextView(context);
// Use same 'Normal' string as stock YouTube.
normalLabel.setText(str("normal_playback_rate_label"));
normalLabel.setTextColor(ThemeHelper.getForegroundColor());
normalLabel.setTextSize(10);
normalLabel.setGravity(Gravity.CENTER);
FrameLayout.LayoutParams labelParams = new FrameLayout.LayoutParams(
FrameLayout.LayoutParams.WRAP_CONTENT, FrameLayout.LayoutParams.WRAP_CONTENT,
Gravity.BOTTOM | Gravity.CENTER_HORIZONTAL);
labelParams.bottomMargin = 0; // Position label below button.
normalLabel.setLayoutParams(labelParams);
buttonContainer.addView(normalLabel);
}
speedButton.setOnClickListener(v -> userSelectedSpeed.apply(speed));
gridLayout.addView(buttonContainer);
}
// Add in-rows speed buttons layout to main layout.
mainLayout.addView(gridLayout);
// Wrap mainLayout in another LinearLayout for side margins.
LinearLayout wrapperLayout = new LinearLayout(context);
wrapperLayout.setOrientation(LinearLayout.VERTICAL);
wrapperLayout.setPadding(dip8, 0, dip8, 0); // 8dp side margins.
wrapperLayout.addView(mainLayout);
dialog.setContentView(wrapperLayout);
// Configure dialog window to appear at the bottom.
Window window = dialog.getWindow();
if (window != null) {
WindowManager.LayoutParams params = window.getAttributes();
params.gravity = Gravity.BOTTOM; // Position at bottom of screen.
params.y = dip6; // 6dp margin from bottom.
// In landscape, use the smaller dimension (height) as portrait width.
int portraitWidth = context.getResources().getDisplayMetrics().widthPixels;
if (context.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) {
portraitWidth = Math.min(
portraitWidth,
context.getResources().getDisplayMetrics().heightPixels);
}
params.width = portraitWidth; // Use portrait width.
params.height = WindowManager.LayoutParams.WRAP_CONTENT;
window.setAttributes(params);
window.setBackgroundDrawable(null); // Remove default dialog background.
}
// Create observer for PlayerType changes.
Function1<PlayerType, Unit> playerTypeObserver = new Function1<>() {
@Override
public Unit invoke(PlayerType type) {
Dialog current = currentDialog.get();
if (current == null || !current.isShowing()) {
// Should never happen.
PlayerType.getOnChange().removeObserver(this);
Logger.printException(() -> "Removing player type listener as dialog is null or closed");
} else if (type == PlayerType.WATCH_WHILE_PICTURE_IN_PICTURE) {
current.dismiss();
Logger.printDebug(() -> "Playback speed dialog dismissed due to PiP mode");
}
return Unit.INSTANCE;
}
};
// Add observer to dismiss dialog when entering PiP mode.
PlayerType.getOnChange().addObserver(playerTypeObserver);
// Remove observer when dialog is dismissed.
dialog.setOnDismissListener(d -> {
PlayerType.getOnChange().removeObserver(playerTypeObserver);
Logger.printDebug(() -> "PlayerType observer removed on dialog dismiss");
});
// Apply slide-in animation when showing the dialog.
final int fadeDurationFast = Utils.getResourceInteger("fade_duration_fast");
Animation slideInABottomAnimation = Utils.getResourceAnimation("slide_in_bottom");
slideInABottomAnimation.setDuration(fadeDurationFast);
mainLayout.startAnimation(slideInABottomAnimation);
dialog.show(); // Display the dialog.
}
/**
* Creates an array of corner radii for a rounded rectangle shape.
*
* @param dp The radius in density-independent pixels (dp) to apply to all corners.
* @return An array of eight float values representing the corner radii
* (top-left, top-right, bottom-right, bottom-left).
*/
private static float[] createCornerRadii(float dp) {
final float radius = dipToPixels(dp);
return new float[]{radius, radius, radius, radius, radius, radius, radius, radius};
}
/**
* @param speed The playback speed value to format.
* @return A string representation of the speed with 'x' (e.g. "1.25x" or "1.00x").
*/
private static String formatSpeedStringX(float speed, int minimumFractionDigits) {
speedFormatter.setMinimumFractionDigits(minimumFractionDigits);
return speedFormatter.format(speed) + 'x';
}
/**
* @return user speed converted to a value for {@link SeekBar#setProgress(int)}.
*/
private static int speedToProgressValue(float speed) {
return (int) ((speed - customPlaybackSpeedsMin) * PROGRESS_BAR_VALUE_SCALE);
}
/**
* Rounds the given playback speed to the nearest 0.05 increment and ensures it is within valid bounds.
*
* @param speed The playback speed to round.
* @return The rounded speed, constrained to the specified bounds.
*/
private static float roundSpeedToNearestIncrement(float speed) {
// Round to nearest 0.05 speed.
final float roundedSpeed = Math.round(speed / 0.05f) * 0.05f;
return Utils.clamp(roundedSpeed, 0.05f, PLAYBACK_SPEED_MAXIMUM);
}
/**
* Adjusts the background color based on the current theme.
*
* @param isHandleBar If true, applies a stronger darkening factor (0.9) for the handle bar in light theme;
* if false, applies a standard darkening factor (0.95) for other elements in light theme.
* @return A modified background color, lightened by 20% for dark themes or darkened by 5% (or 10% for handle bar)
* for light themes to ensure visual contrast.
*/
public static int getAdjustedBackgroundColor(boolean isHandleBar) {
final int baseColor = ThemeHelper.getDialogBackgroundColor();
float darkThemeFactor = isHandleBar ? 1.25f : 1.115f; // 1.25f for handleBar, 1.115f for others in dark theme.
float lightThemeFactor = isHandleBar ? 0.9f : 0.95f; // 0.9f for handleBar, 0.95f for others in light theme.
return ThemeHelper.isDarkTheme()
? ThemeHelper.adjustColorBrightness(baseColor, darkThemeFactor) // Lighten for dark theme.
: ThemeHelper.adjustColorBrightness(baseColor, lightThemeFactor); // Darken for light theme.
}
}
/**
* Custom Drawable for rendering outlined plus and minus symbols on buttons.
*/
class OutlineSymbolDrawable extends Drawable {
private final boolean isPlus; // Determines if the symbol is a plus or minus.
private final Paint paint;
OutlineSymbolDrawable(boolean isPlus) {
this.isPlus = isPlus;
paint = new Paint(Paint.ANTI_ALIAS_FLAG); // Enable anti-aliasing for smooth rendering.
paint.setColor(ThemeHelper.getForegroundColor());
paint.setStyle(Paint.Style.STROKE); // Use stroke style for outline.
paint.setStrokeWidth(dipToPixels(1)); // 1dp stroke width.
}
@Override
public void draw(Canvas canvas) {
Rect bounds = getBounds();
final int width = bounds.width();
final int height = bounds.height();
final float centerX = width / 2f; // Center X coordinate.
final float centerY = height / 2f; // Center Y coordinate.
final float size = Math.min(width, height) * 0.25f; // Symbol size is 25% of button dimensions.
// Draw horizontal line for both plus and minus symbols.
canvas.drawLine(centerX - size, centerY, centerX + size, centerY, paint);
if (isPlus) {
// Draw vertical line for plus symbol.
canvas.drawLine(centerX, centerY - size, centerX, centerY + size, paint);
}
}
@Override
public void setAlpha(int alpha) {
paint.setAlpha(alpha);
}
@Override
public void setColorFilter(ColorFilter colorFilter) {
paint.setColorFilter(colorFilter);
}
@Override
public int getOpacity() {
return PixelFormat.TRANSLUCENT;
}
}

View File

@@ -33,10 +33,10 @@ public final class RememberPlaybackSpeedPatch {
public static void userSelectedPlaybackSpeed(float playbackSpeed) {
try {
if (Settings.REMEMBER_PLAYBACK_SPEED_LAST_SELECTED.get()) {
// With the 0.05x menu, if the speed is set by integrations to higher than 2.0x
// With the 0.05x menu, if the speed is set by a patch to higher than 2.0x
// then the menu will allow increasing without bounds but the max speed is
// still capped to under 8.0x.
playbackSpeed = Math.min(playbackSpeed, CustomPlaybackSpeedPatch.PLAYBACK_SPEED_MAXIMUM - 0.05f);
// still capped to 8.0x.
playbackSpeed = Math.min(playbackSpeed, CustomPlaybackSpeedPatch.PLAYBACK_SPEED_MAXIMUM);
// Prevent toast spamming if using the 0.05x adjustments.
// Show exactly one toast after the user stops interacting with the speed menu.
@@ -57,7 +57,7 @@ public final class RememberPlaybackSpeedPatch {
}
Settings.PLAYBACK_SPEED_DEFAULT.save(finalPlaybackSpeed);
Utils.showToastLong(str("revanced_remember_playback_speed_toast", (finalPlaybackSpeed + "x")));
Utils.showToastShort(str("revanced_remember_playback_speed_toast", (finalPlaybackSpeed + "x")));
}, TOAST_DELAY_MILLISECONDS);
}
} catch (Exception ex) {

View File

@@ -2,6 +2,7 @@ package app.revanced.extension.youtube.patches.theme;
import static app.revanced.extension.shared.StringRef.str;
import static app.revanced.extension.shared.Utils.clamp;
import static app.revanced.extension.youtube.patches.theme.ThemePatch.SplashScreenAnimationStyle;
import android.content.res.Resources;
import android.graphics.Color;
@@ -60,7 +61,7 @@ public final class SeekbarColorPatch {
* this is the color value of {@link Settings#SEEKBAR_CUSTOM_COLOR_PRIMARY}.
* Otherwise this is {@link #ORIGINAL_SEEKBAR_COLOR}.
*/
private static int customSeekbarColor = ORIGINAL_SEEKBAR_COLOR;
private static final int customSeekbarColor;
/**
* Custom seekbar hue, saturation, and brightness values.
@@ -77,24 +78,25 @@ public final class SeekbarColorPatch {
Color.colorToHSV(ORIGINAL_SEEKBAR_COLOR, hsv);
ORIGINAL_SEEKBAR_COLOR_BRIGHTNESS = hsv[2];
if (SEEKBAR_CUSTOM_COLOR_ENABLED) {
loadCustomSeekbarColor();
}
customSeekbarColor = SEEKBAR_CUSTOM_COLOR_ENABLED
? loadCustomSeekbarColor()
: ORIGINAL_SEEKBAR_COLOR;
}
private static void loadCustomSeekbarColor() {
private static int loadCustomSeekbarColor() {
try {
customSeekbarColor = Color.parseColor(Settings.SEEKBAR_CUSTOM_COLOR_PRIMARY.get());
Color.colorToHSV(customSeekbarColor, customSeekbarColorHSV);
customSeekbarColorGradient[0] = customSeekbarColor;
final int color = Color.parseColor(Settings.SEEKBAR_CUSTOM_COLOR_PRIMARY.get());
Color.colorToHSV(color, customSeekbarColorHSV);
customSeekbarColorGradient[0] = color;
customSeekbarColorGradient[1] = Color.parseColor(Settings.SEEKBAR_CUSTOM_COLOR_ACCENT.get());
return color;
} catch (Exception ex) {
Utils.showToastShort(str("revanced_seekbar_custom_color_invalid"));
Settings.SEEKBAR_CUSTOM_COLOR_PRIMARY.resetToDefault();
Settings.SEEKBAR_CUSTOM_COLOR_ACCENT.resetToDefault();
loadCustomSeekbarColor();
return loadCustomSeekbarColor();
}
}
@@ -114,6 +116,7 @@ public final class SeekbarColorPatch {
: (int) channel3Bits;
}
@SuppressWarnings("SameParameterValue")
private static String get9BitStyleIdentifier(int color24Bit) {
final int r3 = colorChannelTo3Bits(Color.red(color24Bit));
final int g3 = colorChannelTo3Bits(Color.green(color24Bit));
@@ -171,23 +174,15 @@ public final class SeekbarColorPatch {
*/
public static void setSplashAnimationLottie(LottieAnimationView view, int resourceId) {
try {
if (!SEEKBAR_CUSTOM_COLOR_ENABLED) {
SplashScreenAnimationStyle animationStyle = Settings.SPLASH_SCREEN_ANIMATION_STYLE.get();
if (!SEEKBAR_CUSTOM_COLOR_ENABLED
// Black and white animations cannot use color replacements.
|| animationStyle == SplashScreenAnimationStyle.FPS_30_BLACK_AND_WHITE
|| animationStyle == SplashScreenAnimationStyle.FPS_60_BLACK_AND_WHITE) {
view.patch_setAnimation(resourceId);
return;
}
//noinspection ConstantConditions
if (false) { // Set true to force slow animation for development.
final int longAnimation = Utils.getResourceIdentifier(
Utils.isDarkModeEnabled()
? "startup_animation_5s_30fps_dark"
: "startup_animation_5s_30fps_light",
"raw");
if (longAnimation != 0) {
resourceId = longAnimation;
}
}
// Must specify primary key name otherwise the morphing YT logo color is also changed.
String originalKey = "\"k\":";
String originalPrimary = originalKey + "[1,0,0.2,1]";
@@ -197,21 +192,16 @@ public final class SeekbarColorPatch {
String replacementAccent = originalKey + getColorStringArray(customSeekbarColorGradient[1]);
String json = loadRawResourceAsString(resourceId);
if (json == null) {
return; // Should never happen.
}
String replacement = json
.replace(originalPrimary, replacementPrimary)
.replace(originalAccent, replacementAccent);
if (BaseSettings.DEBUG.get() && (!json.contains(originalPrimary) || !json.contains(originalAccent))) {
String jsonFinal = json;
Logger.printException(() -> "Could not replace launch animation colors: " + jsonFinal);
Logger.printException(() -> "Could not replace splash animation colors: " + json);
}
Logger.printDebug(() -> "Replacing Lottie animation JSON");
json = json.replace(originalPrimary, replacementPrimary);
json = json.replace(originalAccent, replacementAccent);
// cacheKey is not needed since the animation will not be reused.
view.patch_setAnimation(new ByteArrayInputStream(json.getBytes()), null);
view.patch_setAnimation(new ByteArrayInputStream(replacement.getBytes()), null);
} catch (Exception ex) {
Logger.printException(() -> "setSplashAnimationLottie failure", ex);
}
@@ -232,8 +222,7 @@ public final class SeekbarColorPatch {
Scanner scanner = new Scanner(inputStream, StandardCharsets.UTF_8.name()).useDelimiter("\\A")) {
return scanner.next();
} catch (IOException e) {
Logger.printException(() -> "Could not load resource: " + resourceId);
return null;
throw new IllegalStateException("Could not load resource: " + resourceId);
}
}

View File

@@ -1,11 +1,49 @@
package app.revanced.extension.youtube.patches.theme;
import static app.revanced.extension.youtube.patches.theme.ThemePatch.SplashScreenAnimationStyle.styleFromOrdinal;
import androidx.annotation.Nullable;
import app.revanced.extension.shared.Logger;
import app.revanced.extension.shared.Utils;
import app.revanced.extension.youtube.ThemeHelper;
import app.revanced.extension.youtube.settings.Settings;
@SuppressWarnings("unused")
public class ThemePatch {
public enum SplashScreenAnimationStyle {
DEFAULT(0),
FPS_60_ONE_SECOND(1),
FPS_60_TWO_SECOND(2),
FPS_60_FIVE_SECOND(3),
FPS_60_BLACK_AND_WHITE(4),
FPS_30_ONE_SECOND(5),
FPS_30_TWO_SECOND(6),
FPS_30_FIVE_SECOND(7),
FPS_30_BLACK_AND_WHITE(8);
// There exists a 10th json style used as the switch statement default,
// but visually it is identical to 60fps one second.
@Nullable
static SplashScreenAnimationStyle styleFromOrdinal(int style) {
// Alternatively can return using values()[style]
for (SplashScreenAnimationStyle value : values()) {
if (value.style == style) {
return value;
}
}
return null;
}
final int style;
SplashScreenAnimationStyle(int style) {
this.style = style;
}
}
// color constants used in relation with litho components
private static final int[] WHITE_VALUES = {
-1, // comments chip background
@@ -58,4 +96,22 @@ public class ThemePatch {
public static boolean gradientLoadingScreenEnabled(boolean original) {
return GRADIENT_LOADING_SCREEN_ENABLED;
}
/**
* Injection point.
*/
public static int getLoadingScreenType(int original) {
SplashScreenAnimationStyle style = Settings.SPLASH_SCREEN_ANIMATION_STYLE.get();
if (style == SplashScreenAnimationStyle.DEFAULT) {
return original;
}
final int replacement = style.style;
if (original != replacement) {
Logger.printDebug(() -> "Overriding splash screen style from: "
+ styleFromOrdinal(original) + " to: " + style);
}
return replacement;
}
}

View File

@@ -21,14 +21,12 @@ import static app.revanced.extension.youtube.patches.MiniplayerPatch.MiniplayerT
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.components.PlayerFlyoutMenuItemsFilter.HideAudioFlyoutMenuAvailability;
import static app.revanced.extension.youtube.patches.theme.ThemePatch.SplashScreenAnimationStyle;
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;
import static app.revanced.extension.youtube.sponsorblock.objects.CategoryBehaviour.SKIP_AUTOMATICALLY_ONCE;
import app.revanced.extension.shared.settings.preference.SharedPrefCategory;
import app.revanced.extension.youtube.swipecontrols.SwipeControlsConfigurationProvider.SwipeOverlayStyle;
import android.graphics.Color;
import app.revanced.extension.shared.Logger;
@@ -40,12 +38,14 @@ 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;
import app.revanced.extension.youtube.patches.AlternativeThumbnailsPatch.ThumbnailStillTime;
import app.revanced.extension.youtube.patches.MiniplayerPatch;
import app.revanced.extension.youtube.sponsorblock.SponsorBlockSettings;
import app.revanced.extension.youtube.swipecontrols.SwipeControlsConfigurationProvider.SwipeOverlayStyle;
public class Settings extends BaseSettings {
// Video
@@ -63,7 +63,7 @@ public class Settings extends BaseSettings {
public static final BooleanSetting CUSTOM_SPEED_MENU = new BooleanSetting("revanced_custom_speed_menu", TRUE);
public static final FloatSetting PLAYBACK_SPEED_DEFAULT = new FloatSetting("revanced_playback_speed_default", -2.0f);
public static final StringSetting CUSTOM_PLAYBACK_SPEEDS = new StringSetting("revanced_custom_playback_speeds",
"0.25\n0.5\n0.75\n0.9\n0.95\n1.0\n1.05\n1.1\n1.25\n1.5\n1.75\n2.0\n3.0\n4.0\n5.0", true);
"0.25\n0.5\n0.75\n1.0\n1.25\n1.5\n1.75\n2.0\n2.5\n3.0\n4.0\n5.0\n6.0\n7.0\n8.0", true);
// Audio
public static final BooleanSetting FORCE_ORIGINAL_AUDIO = new BooleanSetting("revanced_force_original_audio", FALSE, new ForceOriginalAudioAvailability());
@@ -135,6 +135,7 @@ public class Settings extends BaseSettings {
public static final BooleanSetting HIDE_AUTOPLAY_BUTTON = new BooleanSetting("revanced_hide_autoplay_button", TRUE, true);
public static final BooleanSetting HIDE_CAPTIONS_BUTTON = new BooleanSetting("revanced_hide_captions_button", FALSE);
public static final BooleanSetting HIDE_CAST_BUTTON = new BooleanSetting("revanced_hide_cast_button", TRUE, true);
public static final BooleanSetting HIDE_PLAYER_CONTROL_BUTTONS_BACKGROUND = new BooleanSetting("revanced_hide_player_control_buttons_background", FALSE, true);
public static final BooleanSetting HIDE_CHANNEL_BAR = new BooleanSetting("revanced_hide_channel_bar", FALSE);
public static final BooleanSetting HIDE_CHANNEL_MEMBER_SHELF = new BooleanSetting("revanced_hide_channel_member_shelf", TRUE);
public static final BooleanSetting HIDE_COMMUNITY_GUIDELINES = new BooleanSetting("revanced_hide_community_guidelines", TRUE);
@@ -179,7 +180,7 @@ public class Settings extends BaseSettings {
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);
public static final BooleanSetting HIDE_COMMENTS_TIMESTAMP_BUTTON = new BooleanSetting("revanced_hide_comments_timestamp_button", FALSE);
public static final BooleanSetting HIDE_COMMENTS_PREVIEW_COMMENT = new BooleanSetting("revanced_hide_comments_preview_comment", FALSE);
public static final BooleanSetting HIDE_COMMENTS_SECTION = new BooleanSetting("revanced_hide_comments_section", FALSE);
public static final BooleanSetting HIDE_COMMENTS_THANKS_BUTTON = new BooleanSetting("revanced_hide_comments_thanks_button", TRUE);
@@ -226,6 +227,8 @@ public class Settings extends BaseSettings {
public static final EnumSetting<FormFactor> CHANGE_FORM_FACTOR = new EnumSetting<>("revanced_change_form_factor", FormFactor.DEFAULT, true, "revanced_change_form_factor_user_dialog_message");
public static final BooleanSetting BYPASS_IMAGE_REGION_RESTRICTIONS = new BooleanSetting("revanced_bypass_image_region_restrictions", FALSE, true);
public static final BooleanSetting GRADIENT_LOADING_SCREEN = new BooleanSetting("revanced_gradient_loading_screen", FALSE, true);
public static final EnumSetting<SplashScreenAnimationStyle> SPLASH_SCREEN_ANIMATION_STYLE = new EnumSetting<>("splash_screen_animation_style", SplashScreenAnimationStyle.FPS_60_ONE_SECOND, true);
public static final BooleanSetting REMOVE_VIEWER_DISCRETION_DIALOG = new BooleanSetting("revanced_remove_viewer_discretion_dialog", FALSE,
"revanced_remove_viewer_discretion_dialog_user_dialog_message");
public static final BooleanSetting SPOOF_APP_VERSION = new BooleanSetting("revanced_spoof_app_version", FALSE, true, "revanced_spoof_app_version_user_dialog_message");
@@ -260,6 +263,7 @@ public class Settings extends BaseSettings {
public static final BooleanSetting HIDE_SHORTS_DISLIKE_BUTTON = new BooleanSetting("revanced_hide_shorts_dislike_button", FALSE);
public static final BooleanSetting HIDE_SHORTS_FULL_VIDEO_LINK_LABEL = new BooleanSetting("revanced_hide_shorts_full_video_link_label", FALSE);
public static final BooleanSetting HIDE_SHORTS_GREEN_SCREEN_BUTTON = new BooleanSetting("revanced_hide_shorts_green_screen_button", TRUE);
public static final BooleanSetting HIDE_SHORTS_NEW_POSTS_BUTTON = new BooleanSetting("revanced_hide_shorts_new_posts_button", TRUE);
public static final BooleanSetting HIDE_SHORTS_HASHTAG_BUTTON = new BooleanSetting("revanced_hide_shorts_hashtag_button", TRUE);
public static final BooleanSetting HIDE_SHORTS_HISTORY = new BooleanSetting("revanced_hide_shorts_history", FALSE);
public static final BooleanSetting HIDE_SHORTS_HOME = new BooleanSetting("revanced_hide_shorts_home", FALSE);
@@ -275,6 +279,7 @@ public class Settings extends BaseSettings {
public static final BooleanSetting HIDE_SHORTS_SEARCH = new BooleanSetting("revanced_hide_shorts_search", FALSE);
public static final BooleanSetting HIDE_SHORTS_SEARCH_SUGGESTIONS = new BooleanSetting("revanced_hide_shorts_search_suggestions", TRUE);
public static final BooleanSetting HIDE_SHORTS_SHARE_BUTTON = new BooleanSetting("revanced_hide_shorts_share_button", FALSE);
public static final BooleanSetting HIDE_SHORTS_PREVIEW_COMMENT = new BooleanSetting("revanced_hide_shorts_preview_comment", TRUE);
public static final BooleanSetting HIDE_SHORTS_SHOP_BUTTON = new BooleanSetting("revanced_hide_shorts_shop_button", TRUE);
public static final BooleanSetting HIDE_SHORTS_SOUND_BUTTON = new BooleanSetting("revanced_hide_shorts_sound_button", FALSE);
public static final BooleanSetting HIDE_SHORTS_SOUND_METADATA_LABEL = new BooleanSetting("revanced_hide_shorts_sound_metadata_label", FALSE);

View File

@@ -5,9 +5,13 @@ import android.view.View;
import androidx.annotation.Nullable;
import app.revanced.extension.shared.Logger;
import app.revanced.extension.youtube.patches.VideoInformation;
import app.revanced.extension.youtube.patches.playback.speed.CustomPlaybackSpeedPatch;
import app.revanced.extension.youtube.settings.Settings;
import static app.revanced.extension.shared.StringRef.str;
import static app.revanced.extension.shared.Utils.showToastShort;
@SuppressWarnings("unused")
public class PlaybackSpeedDialogButton {
@Nullable
@@ -23,8 +27,27 @@ public class PlaybackSpeedDialogButton {
"revanced_playback_speed_dialog_button",
"revanced_playback_speed_dialog_button_placeholder",
Settings.PLAYBACK_SPEED_DIALOG_BUTTON::get,
view -> CustomPlaybackSpeedPatch.showOldPlaybackSpeedMenu(),
null
view -> {
try {
CustomPlaybackSpeedPatch.showModernCustomPlaybackSpeedDialog(view.getContext());
} catch (Exception ex) {
Logger.printException(() -> "speed button onClick failure", ex);
}
},
view -> {
try {
final float speed = (!Settings.REMEMBER_PLAYBACK_SPEED_LAST_SELECTED.get() ||
VideoInformation.getPlaybackSpeed() == Settings.PLAYBACK_SPEED_DEFAULT.get())
? 1.0f
: Settings.PLAYBACK_SPEED_DEFAULT.get();
VideoInformation.overridePlaybackSpeed(speed);
showToastShort(str("revanced_custom_playback_speeds_reset_toast", (speed + "x")));
} catch (Exception ex) {
Logger.printException(() -> "speed button reset failure", ex);
}
return true;
}
);
} catch (Exception ex) {
Logger.printException(() -> "initializeButton failure", ex);

View File

@@ -3,4 +3,4 @@ org.gradle.jvmargs = -Xms512M -Xmx2048M
org.gradle.parallel = true
android.useAndroidX = true
kotlin.code.style = official
version = 5.26.0-dev.2
version = 5.27.0-dev.9

58
package-lock.json generated
View File

@@ -9,7 +9,7 @@
"@semantic-release/changelog": "^6.0.3",
"@semantic-release/git": "^10.0.1",
"gradle-semantic-release-plugin": "^1.10.1",
"semantic-release": "^24.2.1"
"semantic-release": "^24.2.5"
}
},
"node_modules/@babel/code-frame": {
@@ -1964,9 +1964,9 @@
}
},
"node_modules/chalk": {
"version": "5.3.0",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz",
"integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==",
"version": "5.4.1",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-5.4.1.tgz",
"integrity": "sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==",
"dev": true,
"license": "MIT",
"engines": {
@@ -3460,9 +3460,9 @@
"license": "ISC"
},
"node_modules/marked": {
"version": "12.0.2",
"resolved": "https://registry.npmjs.org/marked/-/marked-12.0.2.tgz",
"integrity": "sha512-qXUm7e/YKFoqFPYPa3Ukg9xlI5cyAtGmyEIzMfW//m6kXwCy2Ps9DYf5ioijFKQ8qyuscrHoY04iJGctu2Kg0Q==",
"version": "15.0.12",
"resolved": "https://registry.npmjs.org/marked/-/marked-15.0.12.tgz",
"integrity": "sha512-8dD6FusOQSrpv9Z1rdNMdlSgQOIP880DHqnohobOmYLElGEqAL/JvxvuxZO16r4HtjTlfPRDC1hbvxC9dPN2nA==",
"dev": true,
"license": "MIT",
"bin": {
@@ -3473,24 +3473,38 @@
}
},
"node_modules/marked-terminal": {
"version": "7.1.0",
"resolved": "https://registry.npmjs.org/marked-terminal/-/marked-terminal-7.1.0.tgz",
"integrity": "sha512-+pvwa14KZL74MVXjYdPR3nSInhGhNvPce/3mqLVZT2oUvt654sL1XImFuLZ1pkA866IYZ3ikDTOFUIC7XzpZZg==",
"version": "7.3.0",
"resolved": "https://registry.npmjs.org/marked-terminal/-/marked-terminal-7.3.0.tgz",
"integrity": "sha512-t4rBvPsHc57uE/2nJOLmMbZCQ4tgAccAED3ngXQqW6g+TxA488JzJ+FK3lQkzBQOI1mRV/r/Kq+1ZlJ4D0owQw==",
"dev": true,
"license": "MIT",
"dependencies": {
"ansi-escapes": "^7.0.0",
"chalk": "^5.3.0",
"ansi-regex": "^6.1.0",
"chalk": "^5.4.1",
"cli-highlight": "^2.1.11",
"cli-table3": "^0.6.5",
"node-emoji": "^2.1.3",
"supports-hyperlinks": "^3.0.0"
"node-emoji": "^2.2.0",
"supports-hyperlinks": "^3.1.0"
},
"engines": {
"node": ">=16.0.0"
},
"peerDependencies": {
"marked": ">=1 <14"
"marked": ">=1 <16"
}
},
"node_modules/marked-terminal/node_modules/ansi-regex": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz",
"integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=12"
},
"funding": {
"url": "https://github.com/chalk/ansi-regex?sponsor=1"
}
},
"node_modules/meow": {
@@ -3607,9 +3621,9 @@
"license": "MIT"
},
"node_modules/node-emoji": {
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-2.1.3.tgz",
"integrity": "sha512-E2WEOVsgs7O16zsURJ/eH8BqhF029wGpEOnv7Urwdo2wmQanOACwJQh0devF9D9RhoZru0+9JXIS0dBXIAz+lA==",
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-2.2.0.tgz",
"integrity": "sha512-Z3lTE9pLaJF47NyMhd4ww1yFTAP8YhYI8SleJiHzM46Fgpm5cnNzSl9XfzFNqbaz+VlJrIj3fXQ4DeN1Rjm6cw==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -6760,9 +6774,9 @@
"license": "MIT"
},
"node_modules/semantic-release": {
"version": "24.2.1",
"resolved": "https://registry.npmjs.org/semantic-release/-/semantic-release-24.2.1.tgz",
"integrity": "sha512-z0/3cutKNkLQ4Oy0HTi3lubnjTsdjjgOqmxdPjeYWe6lhFqUPfwslZxRHv3HDZlN4MhnZitb9SLihDkZNxOXfQ==",
"version": "24.2.5",
"resolved": "https://registry.npmjs.org/semantic-release/-/semantic-release-24.2.5.tgz",
"integrity": "sha512-9xV49HNY8C0/WmPWxTlaNleiXhWb//qfMzG2c5X8/k7tuWcu8RssbuS+sujb/h7PiWSXv53mrQvV9hrO9b7vuQ==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -6784,8 +6798,8 @@
"hosted-git-info": "^8.0.0",
"import-from-esm": "^2.0.0",
"lodash-es": "^4.17.21",
"marked": "^12.0.0",
"marked-terminal": "^7.0.0",
"marked": "^15.0.0",
"marked-terminal": "^7.3.0",
"micromatch": "^4.0.2",
"p-each-series": "^3.0.0",
"p-reduce": "^3.0.0",

View File

@@ -4,6 +4,6 @@
"@semantic-release/changelog": "^6.0.3",
"@semantic-release/git": "^10.0.1",
"gradle-semantic-release-plugin": "^1.10.1",
"semantic-release": "^24.2.1"
"semantic-release": "^24.2.5"
}
}

View File

@@ -6,6 +6,10 @@ public final class app/revanced/patches/all/misc/adb/HideAdbPatchKt {
public static final fun getHideAdbStatusPatch ()Lapp/revanced/patcher/patch/BytecodePatch;
}
public final class app/revanced/patches/all/misc/appicon/HideAppIconPatchKt {
public static final fun getHideAppIconPatch ()Lapp/revanced/patcher/patch/ResourcePatch;
}
public final class app/revanced/patches/all/misc/build/BaseSpoofBuildInfoPatchKt {
public static final fun baseSpoofBuildInfoPatch (Lkotlin/jvm/functions/Function0;)Lapp/revanced/patcher/patch/BytecodePatch;
}
@@ -192,6 +196,10 @@ public final class app/revanced/patches/googlenews/misc/gms/GmsCoreSupportPatchK
public static final fun getGmsCoreSupportPatch ()Lapp/revanced/patcher/patch/BytecodePatch;
}
public final class app/revanced/patches/googlephotos/misc/backup/EnableDCIMFoldersBackupControlPatchKt {
public static final fun getEnableDCIMFoldersBackupControlPatch ()Lapp/revanced/patcher/patch/BytecodePatch;
}
public final class app/revanced/patches/googlephotos/misc/extension/ExtensionPatchKt {
public static final fun getExtensionPatch ()Lapp/revanced/patcher/patch/BytecodePatch;
}
@@ -284,6 +292,10 @@ public final class app/revanced/patches/messenger/inputfield/DisableTypingIndica
public static final fun getDisableTypingIndicatorPatch ()Lapp/revanced/patcher/patch/BytecodePatch;
}
public final class app/revanced/patches/messenger/layout/HideFacebookButtonPatchKt {
public static final fun getHideFacebookButtonPatch ()Lapp/revanced/patcher/patch/BytecodePatch;
}
public final class app/revanced/patches/messenger/metaai/RemoveMetaAIPatchKt {
public static final fun getRemoveMetaAIPatch ()Lapp/revanced/patcher/patch/BytecodePatch;
}
@@ -575,6 +587,10 @@ public final class app/revanced/patches/reddit/customclients/sync/syncforreddit/
public static final fun getFixSLinksPatch ()Lapp/revanced/patcher/patch/BytecodePatch;
}
public final class app/revanced/patches/reddit/customclients/sync/syncforreddit/fix/thumbnail/FixPostThumbnailsPatchKt {
public static final fun getFixPostThumbnailsPatch ()Lapp/revanced/patcher/patch/BytecodePatch;
}
public final class app/revanced/patches/reddit/customclients/sync/syncforreddit/fix/user/UseUserEndpointPatchKt {
public static final fun getUseUserEndpointPatch ()Lapp/revanced/patcher/patch/BytecodePatch;
}
@@ -873,6 +889,10 @@ public final class app/revanced/patches/soundcloud/offlinesync/EnableOfflineSync
public static final fun getEnableOfflineSync ()Lapp/revanced/patcher/patch/BytecodePatch;
}
public final class app/revanced/patches/spotify/layout/hide/createbutton/HideCreateButtonPatchKt {
public static final fun getHideCreateButtonPatch ()Lapp/revanced/patcher/patch/BytecodePatch;
}
public final class app/revanced/patches/spotify/layout/theme/CustomThemePatchKt {
public static final fun getCustomThemePatch ()Lapp/revanced/patcher/patch/ResourcePatch;
}

View File

@@ -0,0 +1,48 @@
package app.revanced.patches.all.misc.appicon
import app.revanced.patcher.patch.resourcePatch
import app.revanced.util.asSequence
import app.revanced.util.childElementsSequence
import java.util.logging.Logger
import org.w3c.dom.Element
@Suppress("unused")
val hideAppIconPatch = resourcePatch(
name = "Hide app icon",
description = "Hides the app icon from the Android launcher.",
use = false,
) {
execute {
document("AndroidManifest.xml").use { document ->
var changed = false
val intentFilters = document.getElementsByTagName("intent-filter")
for (node in intentFilters.asSequence().filterIsInstance<Element>()) {
var hasMainAction = false
var launcherCategory: Element? = null
for (child in node.childElementsSequence()) {
when (child.tagName) {
"action" -> if (child.getAttribute("android:name") == "android.intent.action.MAIN") {
hasMainAction = true
}
"category" -> if (child.getAttribute("android:name") == "android.intent.category.LAUNCHER") {
launcherCategory = child
}
}
}
if (hasMainAction && launcherCategory != null) {
launcherCategory.setAttribute("android:name", "android.intent.category.DEFAULT")
changed = true
}
}
if (!changed) {
Logger.getLogger(this::class.java.name)
.warning("No changes made: Did not find any launcher intent-filters to change.")
}
}
}
}

View File

@@ -3,5 +3,5 @@ package app.revanced.patches.bandcamp.limitations
import app.revanced.patcher.fingerprint
internal val handlePlaybackLimitsFingerprint = fingerprint {
strings("play limits processing track", "found play_count")
strings("track_id", "play_count")
}

View File

@@ -1,7 +1,7 @@
package app.revanced.patches.bandcamp.limitations
import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
import app.revanced.patcher.patch.bytecodePatch
import app.revanced.util.returnEarly
@Suppress("unused")
val removePlayLimitsPatch = bytecodePatch(
@@ -11,6 +11,6 @@ val removePlayLimitsPatch = bytecodePatch(
compatibleWith("com.bandcamp.android")
execute {
handlePlaybackLimitsFingerprint.method.addInstructions(0, "return-void")
handlePlaybackLimitsFingerprint.method.returnEarly()
}
}

View File

@@ -0,0 +1,18 @@
package app.revanced.patches.googlephotos.misc.backup
import app.revanced.patcher.patch.bytecodePatch
import app.revanced.util.returnEarly
@Suppress("unused")
val enableDCIMFoldersBackupControlPatch = bytecodePatch(
name = "Enable DCIM folders backup control",
description = "Disables always on backup for the Camera and other DCIM folders, allowing you to control backup " +
"for each folder individually. This will make the app default to having no folders backed up.",
use = false,
) {
compatibleWith("com.google.android.apps.photos")
execute {
isDCIMFolderBackupControlDisabled.method.returnEarly(false)
}
}

View File

@@ -0,0 +1,8 @@
package app.revanced.patches.googlephotos.misc.backup
import app.revanced.patcher.fingerprint
internal val isDCIMFolderBackupControlDisabled = fingerprint {
returns("Z")
strings("/dcim", "/mars_files/")
}

View File

@@ -0,0 +1,10 @@
package app.revanced.patches.messenger.layout
import app.revanced.patcher.fingerprint
internal val isFacebookButtonEnabledFingerprint = fingerprint {
parameters()
returns("Z")
strings("com.facebook.messaging.inbox.tab.plugins.core.tabtoolbarbutton." +
"facebookbutton.facebooktoolbarbutton.FacebookButtonTabButtonImplementation")
}

View File

@@ -0,0 +1,16 @@
package app.revanced.patches.messenger.layout
import app.revanced.patcher.patch.bytecodePatch
import app.revanced.util.returnEarly
@Suppress("unused")
val hideFacebookButtonPatch = bytecodePatch(
name = "Hide Facebook button",
description = "Hides the Facebook button in the top toolbar."
) {
compatibleWith("com.facebook.orca")
execute {
isFacebookButtonEnabledFingerprint.method.returnEarly(false)
}
}

View File

@@ -6,9 +6,8 @@ import app.revanced.patcher.fingerprint
internal val getMobileConfigBoolFingerprint = fingerprint {
parameters("J")
returns("Z")
opcodes(Opcode.RETURN)
custom { method, classDef ->
method.implementation ?: return@custom false // unsure if this is necessary
opcodes(Opcode.RETURN)
custom { _, classDef ->
classDef.interfaces.contains("Lcom/facebook/mobileconfig/factory/MobileConfigUnsafeContext;")
}
}
}

View File

@@ -25,10 +25,10 @@ val removeMetaAIPatch = bytecodePatch(
addInstructions(
returnIndex,
"""
invoke-static { p1, p2, v$returnRegister }, $EXTENSION_CLASS_DESCRIPTOR->overrideConfigBool(JZ)Z
invoke-static { p1, p2, v$returnRegister }, $EXTENSION_CLASS_DESCRIPTOR->overrideBooleanFlag(JZ)Z
move-result v$returnRegister
"""
)
}
}
}
}

View File

@@ -2,4 +2,4 @@ package app.revanced.patches.messenger.misc.extension
import app.revanced.patches.shared.misc.extension.sharedExtensionPatch
val sharedExtensionPatch = sharedExtensionPatch("messenger", mainActivityOnCreateHook)
val sharedExtensionPatch = sharedExtensionPatch("messenger", mainActivityOnCreateHook)

View File

@@ -0,0 +1,12 @@
package app.revanced.patches.reddit.customclients.sync.syncforreddit.fix.thumbnail
import app.revanced.patcher.fingerprint
import com.android.tools.smali.dexlib2.AccessFlags
internal val customImageViewLoadFingerprint = fingerprint {
accessFlags(AccessFlags.PUBLIC)
parameters("Ljava/lang/String;", "Z", "Z", "I", "I")
custom { _, classDef ->
classDef.endsWith("CustomImageView;")
}
}

View File

@@ -0,0 +1,31 @@
package app.revanced.patches.reddit.customclients.sync.syncforreddit.fix.thumbnail
import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
import app.revanced.patcher.patch.bytecodePatch
@Suppress("unused")
val fixPostThumbnailsPatch = bytecodePatch(
name = "Fix post thumbnails",
description = "Fixes loading post thumbnails by correcting their URLs.",
) {
compatibleWith(
"com.laurencedawson.reddit_sync",
"com.laurencedawson.reddit_sync.pro",
"com.laurencedawson.reddit_sync.dev"
)
// Image URLs contain escaped ampersands (&amp;), let's replace these with unescaped ones (&).
execute {
customImageViewLoadFingerprint.method.addInstructions(
0,
"""
# url = url.replace("&amp;", "&");
const-string v0, "&amp;"
const-string v1, "&"
invoke-virtual { p1, v0, v1 }, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
move-result-object p1
"""
)
}
}

View File

@@ -0,0 +1,28 @@
package app.revanced.patches.spotify.layout.hide.createbutton
import app.revanced.patcher.fingerprint
import app.revanced.util.getReference
import app.revanced.util.indexOfFirstInstruction
import com.android.tools.smali.dexlib2.AccessFlags
import com.android.tools.smali.dexlib2.Opcode
import com.android.tools.smali.dexlib2.iface.reference.MethodReference
internal val navigationBarItemSetClassFingerprint = fingerprint {
strings("NavigationBarItemSet(")
}
internal val navigationBarItemSetConstructorFingerprint = fingerprint {
accessFlags(AccessFlags.PUBLIC, AccessFlags.CONSTRUCTOR)
// Make sure the method checks whether navigation bar items are null before adding them.
// If this is not true, then we cannot patch the method and potentially transform the parameters into null.
opcodes(Opcode.IF_EQZ, Opcode.INVOKE_VIRTUAL)
custom { method, _ ->
method.indexOfFirstInstruction {
getReference<MethodReference>()?.name == "add"
} >= 0
}
}
internal val oldNavigationBarAddItemFingerprint = fingerprint {
strings("Bottom navigation tabs exceeds maximum of 5 tabs")
}

View File

@@ -0,0 +1,110 @@
package app.revanced.patches.spotify.layout.hide.createbutton
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.patch.bytecodePatch
import app.revanced.patcher.util.smali.ExternalLabel
import app.revanced.patches.spotify.misc.extension.sharedExtensionPatch
import app.revanced.patches.spotify.shared.IS_SPOTIFY_LEGACY_APP_TARGET
import app.revanced.util.getReference
import app.revanced.util.indexOfFirstInstructionOrThrow
import com.android.tools.smali.dexlib2.iface.instruction.FiveRegisterInstruction
import com.android.tools.smali.dexlib2.iface.reference.MethodReference
import java.util.logging.Logger
private const val EXTENSION_CLASS_DESCRIPTOR =
"Lapp/revanced/extension/spotify/layout/hide/createbutton/HideCreateButtonPatch;"
@Suppress("unused")
val hideCreateButtonPatch = bytecodePatch(
name = "Hide Create button",
description = "Hides the \"Create\" button in the navigation bar."
) {
compatibleWith("com.spotify.music")
dependsOn(sharedExtensionPatch)
execute {
if (IS_SPOTIFY_LEGACY_APP_TARGET) {
Logger.getLogger(this::class.java.name).warning(
"Create button does not exist in legacy app target. No changes applied."
)
return@execute
}
val oldNavigationBarAddItemMethod = oldNavigationBarAddItemFingerprint.originalMethodOrNull
// Only throw the fingerprint error when oldNavigationBarAddItemMethod does not exist.
val navigationBarItemSetClassDef = if (oldNavigationBarAddItemMethod == null) {
navigationBarItemSetClassFingerprint.originalClassDef
} else {
navigationBarItemSetClassFingerprint.originalClassDefOrNull
}
if (navigationBarItemSetClassDef != null) {
// Main patch for newest and most versions.
// The NavigationBarItemSet constructor accepts multiple parameters which represent each navigation bar item.
// Each item is manually checked whether it is not null and then added to a LinkedHashSet.
// Since the order of the items can differ, we are required to check every parameter to see whether it is the
// Create button. So, for every parameter passed to the method, invoke our extension method and overwrite it
// to null in case it is the Create button.
navigationBarItemSetConstructorFingerprint.match(navigationBarItemSetClassDef).method.apply {
// Add 1 to the index because the first parameter register is `this`.
val parameterTypesWithRegister = parameterTypes.mapIndexed { index, parameterType ->
parameterType to (index + 1)
}
val returnNullIfIsCreateButtonDescriptor =
"$EXTENSION_CLASS_DESCRIPTOR->returnNullIfIsCreateButton(Ljava/lang/Object;)Ljava/lang/Object;"
parameterTypesWithRegister.reversed().forEach { (parameterType, parameterRegister) ->
addInstructions(
0,
"""
invoke-static { p$parameterRegister }, $returnNullIfIsCreateButtonDescriptor
move-result-object p$parameterRegister
check-cast p$parameterRegister, $parameterType
"""
)
}
}
}
if (oldNavigationBarAddItemMethod != null) {
// In case an older version of the app is being patched, hook the old method which adds navigation bar items.
// Return null early if the navigation bar item title resource id is the old Create button title resource id.
oldNavigationBarAddItemFingerprint.methodOrNull?.apply {
val getNavigationBarItemTitleStringIndex = indexOfFirstInstructionOrThrow {
val reference = getReference<MethodReference>()
reference?.definingClass == "Landroid/content/res/Resources;" && reference.name == "getString"
}
// This register is a parameter register, so it can be used at the start of the method when adding
// the new instructions.
val oldNavigationBarItemTitleResIdRegister =
getInstruction<FiveRegisterInstruction>(getNavigationBarItemTitleStringIndex).registerD
// The instruction where the normal method logic starts.
val firstInstruction = getInstruction(0)
val isOldCreateButtonDescriptor =
"$EXTENSION_CLASS_DESCRIPTOR->isOldCreateButton(I)Z"
addInstructionsWithLabels(
0,
"""
invoke-static { v$oldNavigationBarItemTitleResIdRegister }, $isOldCreateButtonDescriptor
move-result v0
# If this navigation bar item is not the Create button, jump to the normal method logic.
if-eqz v0, :normal-method-logic
# Return null early because this method return value is a BottomNavigationItemView.
const/4 v0, 0
return-object v0
""",
ExternalLabel("normal-method-logic", firstInstruction)
)
}
}
}
}

View File

@@ -2,65 +2,19 @@ package app.revanced.patches.spotify.layout.theme
import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
import app.revanced.patcher.extensions.InstructionExtensions.getInstruction
import app.revanced.patcher.fingerprint
import app.revanced.patcher.patch.booleanOption
import app.revanced.patcher.patch.bytecodePatch
import app.revanced.patcher.patch.resourcePatch
import app.revanced.patcher.patch.stringOption
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
import app.revanced.patches.spotify.misc.extension.IS_SPOTIFY_LEGACY_APP_TARGET
import app.revanced.patches.spotify.misc.extension.sharedExtensionPatch
import app.revanced.patches.spotify.shared.IS_SPOTIFY_LEGACY_APP_TARGET
import app.revanced.util.*
import com.android.tools.smali.dexlib2.AccessFlags
import com.android.tools.smali.dexlib2.Opcode
import com.android.tools.smali.dexlib2.iface.instruction.OneRegisterInstruction
import com.android.tools.smali.dexlib2.iface.reference.FieldReference
import com.android.tools.smali.dexlib2.iface.reference.MethodReference
import org.w3c.dom.Element
private const val EXTENSION_CLASS_DESCRIPTOR = "Lapp/revanced/extension/spotify/layout/theme/CustomThemePatch;"
internal val spotifyBackgroundColor = stringOption(
key = "backgroundColor",
default = "@android:color/black",
title = "Primary background color",
description = "The background color. Can be a hex color or a resource reference.",
required = true,
)
internal val overridePlayerGradientColor = booleanOption(
key = "overridePlayerGradientColor",
default = false,
title = "Override player gradient color",
description = "Apply primary background color to the player gradient color, which changes dynamically with the song.",
required = false
)
internal val spotifyBackgroundColorSecondary = stringOption(
key = "backgroundColorSecondary",
default = "#FF121212",
title = "Secondary background color",
description =
"The secondary background color. (e.g. playlist list in home, player artist, song credits). Can be a hex color or a resource reference.",
required = true,
)
internal val spotifyAccentColor = stringOption(
key = "accentColor",
default = "#FF1ED760",
title = "Accent color",
description = "The accent color ('Spotify green' by default). Can be a hex color or a resource reference.",
required = true,
)
internal val spotifyAccentColorPressed = stringOption(
key = "accentColorPressed",
default = "#FF169C46",
title = "Pressed dark theme accent color",
description =
"The color when accented buttons are pressed, by default slightly darker than accent. Can be a hex color or a resource reference.",
required = true,
)
private val customThemeBytecodePatch = bytecodePatch {
dependsOn(sharedExtensionPatch)
@@ -71,60 +25,60 @@ private val customThemeBytecodePatch = bytecodePatch {
return@execute
}
fun MutableMethod.addColorChangeInstructions(literal: Long, colorString: String) {
val index = indexOfFirstLiteralInstructionOrThrow(literal)
val register = getInstruction<OneRegisterInstruction>(index).registerA
val colorSpaceUtilsClassDef = colorSpaceUtilsClassFingerprint.originalClassDef
// Hook a util method that converts ARGB to RGBA in the sRGB color space to replace hardcoded accent colors.
convertArgbToRgbaFingerprint.match(colorSpaceUtilsClassDef).method.apply {
addInstructions(
0,
"""
long-to-int p0, p0
invoke-static { p0 }, $EXTENSION_CLASS_DESCRIPTOR->replaceColor(I)I
move-result p0
int-to-long p0, p0
"""
)
}
// Lottie JSON parser method. It parses the JSON Lottie animation into its own class,
// including the solid color of it.
parseLottieJsonFingerprint.method.apply {
val invokeParseColorIndex = indexOfFirstInstructionOrThrow {
val reference = getReference<MethodReference>()
reference?.definingClass == "Landroid/graphics/Color;"
&& reference.name == "parseColor"
}
val parsedColorRegister = getInstruction<OneRegisterInstruction>(invokeParseColorIndex + 1).registerA
val replaceColorDescriptor = "$EXTENSION_CLASS_DESCRIPTOR->replaceColor(I)I"
addInstructions(
index + 1,
invokeParseColorIndex + 2,
"""
const-string v$register, "$colorString"
invoke-static { v$register }, $EXTENSION_CLASS_DESCRIPTOR->getThemeColor(Ljava/lang/String;)J
move-result-wide v$register
# Use invoke-static/range because the register number is too large.
invoke-static/range { v$parsedColorRegister .. v$parsedColorRegister }, $replaceColorDescriptor
move-result v$parsedColorRegister
"""
)
}
val encoreColorsClassName = with(encoreThemeFingerprint.originalMethod) {
// "Encore" colors are referenced right before the value of POSITIVE_INFINITY is returned.
// Begin the instruction find using the index of where POSITIVE_INFINITY is set into the register.
val positiveInfinityIndex = indexOfFirstLiteralInstructionOrThrow(
Float.POSITIVE_INFINITY
)
val encoreColorsFieldReferenceIndex = indexOfFirstInstructionReversedOrThrow(
positiveInfinityIndex,
Opcode.SGET_OBJECT
)
getInstruction(encoreColorsFieldReferenceIndex)
.getReference<FieldReference>()!!.definingClass
}
val encoreColorsConstructorFingerprint = fingerprint {
accessFlags(AccessFlags.STATIC, AccessFlags.CONSTRUCTOR)
custom { method, classDef ->
classDef.type == encoreColorsClassName &&
method.containsLiteralInstruction(PLAYLIST_BACKGROUND_COLOR_LITERAL)
// Lottie animated color parser.
parseAnimatedColorFingerprint.method.apply {
val invokeArgbIndex = indexOfFirstInstructionOrThrow {
val reference = getReference<MethodReference>()
reference?.definingClass == "Landroid/graphics/Color;"
&& reference.name == "argb"
}
val argbColorRegister = getInstruction<OneRegisterInstruction>(invokeArgbIndex + 1).registerA
addInstructions(
invokeArgbIndex + 2,
"""
invoke-static { v$argbColorRegister }, $EXTENSION_CLASS_DESCRIPTOR->replaceColor(I)I
move-result v$argbColorRegister
"""
)
}
val backgroundColor by spotifyBackgroundColor
val backgroundColorSecondary by spotifyBackgroundColorSecondary
encoreColorsConstructorFingerprint.method.apply {
addColorChangeInstructions(PLAYLIST_BACKGROUND_COLOR_LITERAL, backgroundColor!!)
addColorChangeInstructions(SHARE_MENU_BACKGROUND_COLOR_LITERAL, backgroundColorSecondary!!)
}
homeCategoryPillColorsFingerprint.method.addColorChangeInstructions(
HOME_CATEGORY_PILL_COLOR_LITERAL,
backgroundColorSecondary!!
)
settingsHeaderColorFingerprint.method.addColorChangeInstructions(
SETTINGS_HEADER_COLOR_LITERAL,
backgroundColorSecondary!!
)
}
}
@@ -138,11 +92,48 @@ val customThemePatch = resourcePatch(
dependsOn(customThemeBytecodePatch)
val backgroundColor by spotifyBackgroundColor()
val overridePlayerGradientColor by overridePlayerGradientColor()
val backgroundColorSecondary by spotifyBackgroundColorSecondary()
val accentColor by spotifyAccentColor()
val accentColorPressed by spotifyAccentColorPressed()
val backgroundColor by stringOption(
key = "backgroundColor",
default = "@android:color/black",
title = "Primary background color",
description = "The background color. Can be a hex color or a resource reference.",
required = true,
)
val overridePlayerGradientColor by booleanOption(
key = "overridePlayerGradientColor",
default = false,
title = "Override player gradient color",
description =
"Apply primary background color to the player gradient color, which changes dynamically with the song.",
required = false,
)
val backgroundColorSecondary by stringOption(
key = "backgroundColorSecondary",
default = "#FF121212",
title = "Secondary background color",
description = "The secondary background color. (e.g. playlist list in home, player artist, song credits). " +
"Can be a hex color or a resource reference.\",",
required = true,
)
val accentColor by stringOption(
key = "accentColor",
default = "#FF1ED760",
title = "Accent color",
description = "The accent color ('Spotify green' by default). Can be a hex color or a resource reference.",
required = true,
)
val accentColorPressed by stringOption(
key = "accentColorPressed",
default = "#FF1ABC54",
title = "Pressed accent color",
description = "The color when accented buttons are pressed, by default slightly darker than accent. " +
"Can be a hex color or a resource reference.",
required = true,
)
execute {
document("res/values/colors.xml").use { document ->
@@ -161,34 +152,41 @@ val customThemePatch = resourcePatch(
}
node.textContent = when (name) {
// Main background color.
"gray_7",
// Left sidebar background color in tablet mode.
"gray_10",
// Gradient next to user photo and "All" in home page.
"dark_base_background_base",
// Main background.
"gray_7",
// Left sidebar background in tablet mode.
"gray_10",
// "Add account", "Settings and privacy", "View Profile" left sidebar background.
// "Add account", "Settings and privacy", "View Profile" left sidebar background color.
"dark_base_background_elevated_base",
// Song/player gradient start/end color.
"bg_gradient_start_color", "bg_gradient_end_color",
// Login screen background and gradient start.
// Login screen background color and gradient start.
"sthlm_blk", "sthlm_blk_grad_start",
// Misc.
"image_placeholder_color",
-> backgroundColor
// Track credits, merch background in song player.
// "About the artist" background color in song player.
"gray_15",
// Track credits, merch background color in song player.
"track_credits_card_bg", "benefit_list_default_color", "merch_card_background",
// Playlist list background in home page.
"opacity_white_10",
// "About the artist" background in song player.
"gray_15",
// "What's New" pills background.
"dark_base_background_tinted_highlight"
-> backgroundColorSecondary
"dark_brightaccent_background_base", "dark_base_text_brightaccent", "green_light" -> accentColor
"dark_brightaccent_background_press" -> accentColorPressed
"dark_brightaccent_background_base",
"dark_base_text_brightaccent",
"green_light",
"spotify_green_157"
-> accentColor
"dark_brightaccent_background_press"
-> accentColorPressed
else -> continue
}
}
@@ -198,8 +196,8 @@ val customThemePatch = resourcePatch(
document("res/drawable/start_screen_gradient.xml").use { document ->
val gradientNode = document.getElementsByTagName("gradient").item(0) as Element
gradientNode.setAttribute("android:startColor", backgroundColor)
gradientNode.setAttribute("android:endColor", backgroundColor)
gradientNode.setAttribute("android:startColor", "@color/gray_7")
gradientNode.setAttribute("android:endColor", "@color/gray_7")
}
}
}

View File

@@ -4,30 +4,25 @@ import app.revanced.patcher.fingerprint
import app.revanced.util.containsLiteralInstruction
import com.android.tools.smali.dexlib2.AccessFlags
internal val encoreThemeFingerprint = fingerprint {
strings("Encore theme was not provided.") // Partial string match.
custom { method, _ ->
method.name == "invoke"
}
internal val colorSpaceUtilsClassFingerprint = fingerprint {
strings("The specified color must be encoded in an RGB color space.") // Partial string match.
}
internal const val PLAYLIST_BACKGROUND_COLOR_LITERAL = 0xFF121212
internal const val SHARE_MENU_BACKGROUND_COLOR_LITERAL = 0xFF1F1F1F
internal const val HOME_CATEGORY_PILL_COLOR_LITERAL = 0xFF333333
internal const val SETTINGS_HEADER_COLOR_LITERAL = 0xFF282828
internal val homeCategoryPillColorsFingerprint = fingerprint{
accessFlags(AccessFlags.STATIC, AccessFlags.CONSTRUCTOR)
custom { method, _ ->
method.containsLiteralInstruction(HOME_CATEGORY_PILL_COLOR_LITERAL) &&
method.containsLiteralInstruction(0x33000000)
}
internal val convertArgbToRgbaFingerprint = fingerprint {
accessFlags(AccessFlags.PUBLIC, AccessFlags.STATIC, AccessFlags.FINAL)
returns("J")
parameters("J")
}
internal val settingsHeaderColorFingerprint = fingerprint {
accessFlags(AccessFlags.STATIC, AccessFlags.CONSTRUCTOR)
internal val parseLottieJsonFingerprint = fingerprint {
strings("Unsupported matte type: ")
}
internal val parseAnimatedColorFingerprint = fingerprint {
parameters("L", "F")
returns("Ljava/lang/Object;")
custom { method, _ ->
method.containsLiteralInstruction(SETTINGS_HEADER_COLOR_LITERAL) &&
method.containsLiteralInstruction(0)
method.containsLiteralInstruction(255.0) &&
method.containsLiteralInstruction(1.0)
}
}

View File

@@ -1,15 +1,18 @@
package app.revanced.patches.spotify.misc
import app.revanced.patcher.fingerprint
import app.revanced.patches.spotify.misc.extension.IS_SPOTIFY_LEGACY_APP_TARGET
import app.revanced.patcher.patch.BytecodePatchContext
import app.revanced.patches.spotify.shared.IS_SPOTIFY_LEGACY_APP_TARGET
import app.revanced.util.getReference
import app.revanced.util.indexOfFirstInstruction
import com.android.tools.smali.dexlib2.AccessFlags
import com.android.tools.smali.dexlib2.Opcode
import com.android.tools.smali.dexlib2.iface.reference.FieldReference
import com.android.tools.smali.dexlib2.iface.reference.MethodReference
import com.android.tools.smali.dexlib2.iface.reference.TypeReference
internal val accountAttributeFingerprint = fingerprint {
context(BytecodePatchContext)
internal val accountAttributeFingerprint get() = fingerprint {
custom { _, classDef ->
classDef.type == if (IS_SPOTIFY_LEGACY_APP_TARGET) {
"Lcom/spotify/useraccount/v1/AccountAttribute;"
@@ -19,7 +22,8 @@ internal val accountAttributeFingerprint = fingerprint {
}
}
internal val productStateProtoGetMapFingerprint = fingerprint {
context(BytecodePatchContext)
internal val productStateProtoGetMapFingerprint get() = fingerprint {
returns("Ljava/util/Map;")
custom { _, classDef ->
classDef.type == if (IS_SPOTIFY_LEGACY_APP_TARGET) {
@@ -34,9 +38,22 @@ internal val buildQueryParametersFingerprint = fingerprint {
strings("trackRows", "device_type:tablet")
}
internal val contextMenuExperimentsFingerprint = fingerprint {
internal val contextMenuViewModelClassFingerprint = fingerprint {
strings("ContextMenuViewModel(header=")
}
internal val contextMenuViewModelAddItemFingerprint = fingerprint {
parameters("L")
strings("remove_ads_upsell_enabled")
returns("V")
custom { method, _ ->
method.indexOfFirstInstruction {
getReference<MethodReference>()?.name == "add"
} >= 0
}
}
internal val getViewModelFingerprint = fingerprint {
custom { method, _ -> method.name == "getViewModel" }
}
internal val contextFromJsonFingerprint = fingerprint {
@@ -47,15 +64,15 @@ internal val contextFromJsonFingerprint = fingerprint {
Opcode.MOVE_RESULT_OBJECT,
Opcode.INVOKE_STATIC
)
custom { methodDef, classDef ->
methodDef.name == "fromJson" &&
custom { method, classDef ->
method.name == "fromJson" &&
classDef.endsWith("voiceassistants/playermodels/ContextJsonAdapter;")
}
}
internal val readPlayerOptionOverridesFingerprint = fingerprint {
custom { methodDef, classDef ->
methodDef.name == "readPlayerOptionOverrides" &&
custom { method, classDef ->
method.name == "readPlayerOptionOverrides" &&
classDef.endsWith("voiceassistants/playermodels/PreparePlayOptionsJsonAdapter;")
}
}
@@ -91,7 +108,8 @@ internal val homeStructureGetSectionsFingerprint = fingerprint {
internal fun reactivexFunctionApplyWithClassInitFingerprint(className: String) = fingerprint {
returns("Ljava/lang/Object;")
parameters("Ljava/lang/Object;")
custom { method, _ -> method.name == "apply" && method.indexOfFirstInstruction {
custom { method, _ ->
method.name == "apply" && method.indexOfFirstInstruction {
opcode == Opcode.NEW_INSTANCE && getReference<TypeReference>()?.type?.endsWith(className) == true
} >= 0
}

View File

@@ -1,21 +1,5 @@
package app.revanced.patches.spotify.misc.extension
import app.revanced.patcher.patch.bytecodePatch
import app.revanced.patches.shared.misc.extension.sharedExtensionPatch
import app.revanced.patches.spotify.shared.SPOTIFY_MAIN_ACTIVITY_LEGACY
/**
* If patching a legacy 8.x target. This may also be set if patching slightly older/newer app targets,
* but the only legacy target of interest is 8.6.98.900 as it's the last version that
* supports Spotify integration on Kenwood/Pioneer car stereos.
*/
internal var IS_SPOTIFY_LEGACY_APP_TARGET = false
val sharedExtensionPatch = bytecodePatch {
dependsOn(sharedExtensionPatch("spotify", mainActivityOnCreateHook))
execute {
IS_SPOTIFY_LEGACY_APP_TARGET = mainActivityOnCreateHook.fingerprint
.originalClassDef.type == SPOTIFY_MAIN_ACTIVITY_LEGACY
}
}
val sharedExtensionPatch = sharedExtensionPatch("spotify", mainActivityOnCreateHook)

View File

@@ -15,7 +15,7 @@ val fixFacebookLoginPatch = bytecodePatch(
// The Facebook SDK tries to handle the login using the Facebook app in case it is installed.
// However, the Facebook app does signature checks with the app that is requesting the authentication,
// which ends up making the Facebook server reject with an invalid key hash for the app signature.
// Override the Faceboook SDK to always handle the login using the web browser, which does not perform
// Override the Facebook SDK to always handle the login using the web browser, which does not perform
// signature checks.
val katanaProxyLoginMethodHandlerClass = katanaProxyLoginMethodHandlerClassFingerprint.originalClassDef

View File

@@ -1,41 +1,41 @@
package app.revanced.patches.spotify.misc.privacy
import app.revanced.patcher.fingerprint
import app.revanced.util.literal
import com.android.tools.smali.dexlib2.AccessFlags
internal val shareCopyUrlFingerprint = fingerprint {
returns("Ljava/lang/Object;")
parameters("Ljava/lang/Object;")
strings("clipboard", "Spotify Link")
custom { method, _ ->
method.name == "invokeSuspend"
}
}
internal val shareCopyUrlLegacyFingerprint = fingerprint {
returns("Ljava/lang/Object;")
parameters("Ljava/lang/Object;")
strings("clipboard", "createNewSession failed")
custom { method, _ ->
method.name == "apply"
}
}
internal val formatAndroidShareSheetUrlFingerprint = fingerprint {
accessFlags(AccessFlags.PUBLIC, AccessFlags.STATIC)
returns("Ljava/lang/String;")
parameters("L", "Ljava/lang/String;")
literal {
'\n'.code.toLong()
}
}
internal val formatAndroidShareSheetUrlLegacyFingerprint = fingerprint {
accessFlags(AccessFlags.PUBLIC)
returns("Ljava/lang/String;")
parameters("Lcom/spotify/share/social/sharedata/ShareData;", "Ljava/lang/String;")
literal {
'\n'.code.toLong()
}
}
package app.revanced.patches.spotify.misc.privacy
import app.revanced.patcher.fingerprint
import app.revanced.util.literal
import com.android.tools.smali.dexlib2.AccessFlags
internal val shareCopyUrlFingerprint = fingerprint {
returns("Ljava/lang/Object;")
parameters("Ljava/lang/Object;")
strings("clipboard", "Spotify Link")
custom { method, _ ->
method.name == "invokeSuspend"
}
}
internal val shareCopyUrlLegacyFingerprint = fingerprint {
returns("Ljava/lang/Object;")
parameters("Ljava/lang/Object;")
strings("clipboard", "createNewSession failed")
custom { method, _ ->
method.name == "apply"
}
}
internal val formatAndroidShareSheetUrlFingerprint = fingerprint {
accessFlags(AccessFlags.PUBLIC, AccessFlags.STATIC)
returns("Ljava/lang/String;")
parameters("L", "Ljava/lang/String;")
literal {
'\n'.code.toLong()
}
}
internal val formatAndroidShareSheetUrlLegacyFingerprint = fingerprint {
accessFlags(AccessFlags.PUBLIC)
returns("Ljava/lang/String;")
parameters("Lcom/spotify/share/social/sharedata/ShareData;", "Ljava/lang/String;")
literal {
'\n'.code.toLong()
}
}

View File

@@ -1,70 +1,70 @@
package app.revanced.patches.spotify.misc.privacy
import app.revanced.patcher.Fingerprint
import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
import app.revanced.patcher.extensions.InstructionExtensions.getInstruction
import app.revanced.patcher.patch.bytecodePatch
import app.revanced.patches.spotify.misc.extension.IS_SPOTIFY_LEGACY_APP_TARGET
import app.revanced.patches.spotify.misc.extension.sharedExtensionPatch
import app.revanced.util.getReference
import app.revanced.util.indexOfFirstInstructionOrThrow
import com.android.tools.smali.dexlib2.iface.instruction.FiveRegisterInstruction
import com.android.tools.smali.dexlib2.iface.reference.MethodReference
private const val EXTENSION_CLASS_DESCRIPTOR =
"Lapp/revanced/extension/spotify/misc/privacy/SanitizeSharingLinksPatch;"
@Suppress("unused")
val sanitizeSharingLinksPatch = bytecodePatch(
name = "Sanitize sharing links",
description = "Removes the tracking query parameters from links before they are shared.",
) {
compatibleWith("com.spotify.music")
dependsOn(sharedExtensionPatch)
execute {
val extensionMethodDescriptor = "$EXTENSION_CLASS_DESCRIPTOR->" +
"sanitizeUrl(Ljava/lang/String;)Ljava/lang/String;"
val copyFingerprint = if (IS_SPOTIFY_LEGACY_APP_TARGET) {
shareCopyUrlLegacyFingerprint
} else {
shareCopyUrlFingerprint
}
copyFingerprint.method.apply {
val newPlainTextInvokeIndex = indexOfFirstInstructionOrThrow {
getReference<MethodReference>()?.name == "newPlainText"
}
val register = getInstruction<FiveRegisterInstruction>(newPlainTextInvokeIndex).registerD
addInstructions(
newPlainTextInvokeIndex,
"""
invoke-static { v$register }, $extensionMethodDescriptor
move-result-object v$register
"""
)
}
// Android native share sheet is used for all other quick share types (X, WhatsApp, etc).
val shareUrlParameter : String
val shareSheetFingerprint : Fingerprint
if (IS_SPOTIFY_LEGACY_APP_TARGET) {
shareSheetFingerprint = formatAndroidShareSheetUrlLegacyFingerprint
shareUrlParameter = "p2"
} else {
shareSheetFingerprint = formatAndroidShareSheetUrlFingerprint
shareUrlParameter = "p1"
}
shareSheetFingerprint.method.addInstructions(
0,
"""
invoke-static { $shareUrlParameter }, $extensionMethodDescriptor
move-result-object $shareUrlParameter
"""
)
}
}
package app.revanced.patches.spotify.misc.privacy
import app.revanced.patcher.Fingerprint
import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
import app.revanced.patcher.extensions.InstructionExtensions.getInstruction
import app.revanced.patcher.patch.bytecodePatch
import app.revanced.patches.spotify.misc.extension.sharedExtensionPatch
import app.revanced.patches.spotify.shared.IS_SPOTIFY_LEGACY_APP_TARGET
import app.revanced.util.getReference
import app.revanced.util.indexOfFirstInstructionOrThrow
import com.android.tools.smali.dexlib2.iface.instruction.FiveRegisterInstruction
import com.android.tools.smali.dexlib2.iface.reference.MethodReference
private const val EXTENSION_CLASS_DESCRIPTOR =
"Lapp/revanced/extension/spotify/misc/privacy/SanitizeSharingLinksPatch;"
@Suppress("unused")
val sanitizeSharingLinksPatch = bytecodePatch(
name = "Sanitize sharing links",
description = "Removes the tracking query parameters from links before they are shared.",
) {
compatibleWith("com.spotify.music")
dependsOn(sharedExtensionPatch)
execute {
val extensionMethodDescriptor = "$EXTENSION_CLASS_DESCRIPTOR->" +
"sanitizeUrl(Ljava/lang/String;)Ljava/lang/String;"
val copyFingerprint = if (IS_SPOTIFY_LEGACY_APP_TARGET) {
shareCopyUrlLegacyFingerprint
} else {
shareCopyUrlFingerprint
}
copyFingerprint.method.apply {
val newPlainTextInvokeIndex = indexOfFirstInstructionOrThrow {
getReference<MethodReference>()?.name == "newPlainText"
}
val urlRegister = getInstruction<FiveRegisterInstruction>(newPlainTextInvokeIndex).registerD
addInstructions(
newPlainTextInvokeIndex,
"""
invoke-static { v$urlRegister }, $extensionMethodDescriptor
move-result-object v$urlRegister
"""
)
}
// Android native share sheet is used for all other quick share types (X, WhatsApp, etc).
val shareUrlParameter : String
val shareSheetFingerprint : Fingerprint
if (IS_SPOTIFY_LEGACY_APP_TARGET) {
shareSheetFingerprint = formatAndroidShareSheetUrlLegacyFingerprint
shareUrlParameter = "p2"
} else {
shareSheetFingerprint = formatAndroidShareSheetUrlFingerprint
shareUrlParameter = "p1"
}
shareSheetFingerprint.method.addInstructions(
0,
"""
invoke-static { $shareUrlParameter }, $extensionMethodDescriptor
move-result-object $shareUrlParameter
"""
)
}
}

View File

@@ -1,7 +1,6 @@
package app.revanced.patches.spotify.misc.widgets
import app.revanced.patcher.fingerprint
import app.revanced.util.indexOfFirstInstruction
import com.android.tools.smali.dexlib2.Opcode
internal val canBindAppWidgetPermissionFingerprint = fingerprint {

View File

@@ -1,7 +1,9 @@
package app.revanced.patches.spotify.misc.widgets
import app.revanced.patcher.patch.bytecodePatch
import app.revanced.patches.spotify.shared.IS_SPOTIFY_LEGACY_APP_TARGET
import app.revanced.util.returnEarly
import java.util.logging.Logger
@Suppress("unused")
val fixThirdPartyLaunchersWidgets = bytecodePatch(
@@ -11,6 +13,14 @@ val fixThirdPartyLaunchersWidgets = bytecodePatch(
compatibleWith("com.spotify.music")
execute {
if (IS_SPOTIFY_LEGACY_APP_TARGET) {
// The permission check does not exist in legacy versions.
Logger.getLogger(this::class.java.name).warning(
"Legacy app target does not have any third party launcher restrictions. No changes applied."
)
return@execute
}
// Only system app launchers are granted the BIND_APPWIDGET permission.
// Override the method that checks for it to always return true, as this permission is not actually required
// for the widgets to work.

View File

@@ -1,6 +1,8 @@
package app.revanced.patches.spotify.shared
import app.revanced.patcher.fingerprint
import app.revanced.patcher.patch.BytecodePatchContext
import app.revanced.patches.spotify.misc.extension.mainActivityOnCreateHook
private const val SPOTIFY_MAIN_ACTIVITY = "Lcom/spotify/music/SpotifyMainActivity;"
@@ -15,3 +17,18 @@ internal val mainActivityOnCreateFingerprint = fingerprint {
|| classDef.type == SPOTIFY_MAIN_ACTIVITY_LEGACY)
}
}
private var isLegacyAppTarget: Boolean? = null
/**
* If patching a legacy 8.x target. This may also be set if patching slightly older/newer app targets,
* but the only legacy target of interest is 8.6.98.900 as it's the last version that
* supports Spotify integration on Kenwood/Pioneer car stereos.
*/
context(BytecodePatchContext)
internal val IS_SPOTIFY_LEGACY_APP_TARGET get(): Boolean {
if (isLegacyAppTarget == null) {
isLegacyAppTarget = mainActivityOnCreateHook.fingerprint.originalClassDef.type == SPOTIFY_MAIN_ACTIVITY_LEGACY
}
return isLegacyAppTarget!!
}

View File

@@ -2,6 +2,7 @@ package app.revanced.patches.youtube.layout.buttons.overlay
import app.revanced.patcher.fingerprint
import app.revanced.util.containsLiteralInstruction
import app.revanced.util.literal
import com.android.tools.smali.dexlib2.AccessFlags
internal val playerControlsPreviousNextOverlayTouchFingerprint = fingerprint {
@@ -20,3 +21,10 @@ internal val mediaRouteButtonFingerprint = fingerprint {
methodDef.definingClass.endsWith("/MediaRouteButton;") && methodDef.name == "setVisibility"
}
}
internal val inflateControlsGroupLayoutStubFingerprint = fingerprint {
accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL)
parameters()
returns("V")
literal { controlsButtonGroupLayoutStub }
}

View File

@@ -28,6 +28,8 @@ internal var playerControlPreviousButtonTouchArea = -1L
private set
internal var playerControlNextButtonTouchArea = -1L
private set
internal var controlsButtonGroupLayoutStub = -1L
private set
private val hidePlayerOverlayButtonsResourcePatch = resourcePatch {
dependsOn(resourceMappingPatch)
@@ -35,6 +37,7 @@ private val hidePlayerOverlayButtonsResourcePatch = resourcePatch {
execute {
playerControlPreviousButtonTouchArea = resourceMappings["id", "player_control_previous_button_touch_area"]
playerControlNextButtonTouchArea = resourceMappings["id", "player_control_next_button_touch_area"]
controlsButtonGroupLayoutStub = resourceMappings["id", "youtube_controls_button_group_layout_stub"]
}
}
@@ -43,7 +46,8 @@ private const val EXTENSION_CLASS_DESCRIPTOR =
val hidePlayerOverlayButtonsPatch = bytecodePatch(
name = "Hide player overlay buttons",
description = "Adds options to hide the player Cast, Autoplay, Captions, and Previous & Next buttons.",
description = "Adds options to hide the player Cast, Autoplay, Captions, Previous & Next buttons, and the player " +
"control buttons background.",
) {
dependsOn(
sharedExtensionPatch,
@@ -72,6 +76,7 @@ val hidePlayerOverlayButtonsPatch = bytecodePatch(
SwitchPreference("revanced_hide_cast_button"),
SwitchPreference("revanced_hide_captions_button"),
SwitchPreference("revanced_hide_autoplay_button"),
SwitchPreference("revanced_hide_player_control_buttons_background"),
)
// region Hide player next/previous button.
@@ -147,5 +152,32 @@ val hidePlayerOverlayButtonsPatch = bytecodePatch(
}
// endregion
// region Hide player control buttons background.
inflateControlsGroupLayoutStubFingerprint.method.apply {
val controlsButtonGroupLayoutStubResIdConstIndex =
indexOfFirstLiteralInstructionOrThrow(controlsButtonGroupLayoutStub)
val inflateControlsGroupLayoutStubIndex =
indexOfFirstInstruction(controlsButtonGroupLayoutStubResIdConstIndex) {
getReference<MethodReference>()?.name == "inflate"
}
val freeRegister = findFreeRegister(inflateControlsGroupLayoutStubIndex)
val hidePlayerControlButtonsBackgroundDescriptor =
"$EXTENSION_CLASS_DESCRIPTOR->hidePlayerControlButtonsBackground(Landroid/view/View;)V"
addInstructions(
inflateControlsGroupLayoutStubIndex + 1,
"""
# Move the inflated layout to a temporary register.
# The result of the inflate method is by default not moved to a register after the method is called.
move-result-object v$freeRegister
invoke-static { v$freeRegister }, $hidePlayerControlButtonsBackgroundDescriptor
"""
)
}
// endregion
}
}

View File

@@ -161,7 +161,7 @@ val hideLayoutComponentsPatch = bytecodePatch(
SwitchPreference("revanced_hide_comments_by_members_header"),
SwitchPreference("revanced_hide_comments_section"),
SwitchPreference("revanced_hide_comments_create_a_short_button"),
SwitchPreference("revanced_hide_comments_timestamp_and_emoji_buttons"),
SwitchPreference("revanced_hide_comments_timestamp_button"),
SwitchPreference("revanced_hide_comments_preview_comment"),
SwitchPreference("revanced_hide_comments_thanks_button"),
),

View File

@@ -74,3 +74,21 @@ internal val setPivotBarVisibilityParentFingerprint = fingerprint {
parameters("Z")
strings("FEnotifications_inbox")
}
internal val shortsExperimentalPlayerFeatureFlagFingerprint = fingerprint {
accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL)
returns("Z")
parameters()
literal {
45677719L
}
}
internal val renderNextUIFeatureFlagFingerprint = fingerprint {
accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL)
returns("Z")
parameters()
literal {
45649743L
}
}

View File

@@ -18,6 +18,7 @@ import app.revanced.patches.youtube.misc.litho.filter.addLithoFilter
import app.revanced.patches.youtube.misc.litho.filter.lithoFilterPatch
import app.revanced.patches.youtube.misc.navigation.navigationBarHookPatch
import app.revanced.patches.youtube.misc.playservice.is_19_41_or_greater
import app.revanced.patches.youtube.misc.playservice.is_20_07_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
@@ -26,6 +27,7 @@ import app.revanced.util.forEachLiteralValueInstruction
import app.revanced.util.getReference
import app.revanced.util.indexOfFirstInstructionOrThrow
import app.revanced.util.indexOfFirstLiteralInstruction
import app.revanced.util.returnLate
import com.android.tools.smali.dexlib2.iface.instruction.OneRegisterInstruction
import com.android.tools.smali.dexlib2.iface.reference.MethodReference
@@ -90,11 +92,13 @@ private val hideShortsComponentsResourcePatch = resourcePatch {
SwitchPreference("revanced_hide_shorts_paused_overlay_buttons"),
// Suggested actions.
SwitchPreference("revanced_hide_shorts_preview_comment"),
SwitchPreference("revanced_hide_shorts_save_sound_button"),
SwitchPreference("revanced_hide_shorts_use_template_button"),
SwitchPreference("revanced_hide_shorts_upcoming_button"),
SwitchPreference("revanced_hide_shorts_green_screen_button"),
SwitchPreference("revanced_hide_shorts_hashtag_button"),
SwitchPreference("revanced_hide_shorts_new_posts_button"),
SwitchPreference("revanced_hide_shorts_shop_button"),
SwitchPreference("revanced_hide_shorts_tagged_products"),
SwitchPreference("revanced_hide_shorts_search_suggestions"),
@@ -251,5 +255,27 @@ val hideShortsComponentsPatch = bytecodePatch(
}
// endregion
// region Disable experimental Shorts flags.
// Flags might be present in earlier targets, but they are not found in 19.47.53.
// If these flags are forced on, the experimental layout is still not used and
// it appears the features requires additional server side data to fully use.
if (is_20_07_or_greater) {
// Experimental Shorts player uses Android native buttons and not Litho,
// and the layout is provided by the server.
//
// Since the buttons are native components and not Litho, it should be possible to
// fix the RYD Shorts loading delay by asynchronously loading RYD and updating
// the button text after RYD has loaded.
shortsExperimentalPlayerFeatureFlagFingerprint.method.returnLate(false)
// Experimental UI renderer must also be disabled since it requires the
// experimental Shorts player. If this is enabled but Shorts player
// is disabled then the app crashes when the Shorts player is opened.
renderNextUIFeatureFlagFingerprint.method.returnLate(false)
}
// endregion
}
}

View File

@@ -1,37 +1,12 @@
package app.revanced.patches.youtube.layout.player.background
import app.revanced.patcher.patch.resourcePatch
import app.revanced.util.doRecursively
import org.w3c.dom.Element
import app.revanced.patches.youtube.layout.buttons.overlay.hidePlayerOverlayButtonsPatch
@Suppress("unused")
@Deprecated("Functionality added to hidePlayerOverlayButtonsPatch", ReplaceWith("hidePlayerOverlayButtonsPatch"))
val playerControlsBackgroundPatch = resourcePatch(
name = "Remove player controls background",
description = "Removes the dark background surrounding the video player controls.",
use = false,
description = "Removes the dark background surrounding the video player control buttons.",
) {
compatibleWith(
"com.google.android.youtube"(
"19.16.39",
"19.25.37",
"19.34.42",
"19.43.41",
"19.47.53",
"20.07.39",
"20.12.46",
)
)
execute {
document("res/drawable/player_button_circle_background.xml").use { document ->
document.doRecursively node@{ node ->
if (node !is Element) return@node
node.getAttributeNode("android:color")?.let { attribute ->
attribute.textContent = "@android:color/transparent"
}
}
}
}
dependsOn(hidePlayerOverlayButtonsPatch)
}

View File

@@ -44,6 +44,19 @@ internal val themeHelperLightColorFingerprint = fingerprint {
}
}
internal const val GRADIENT_LOADING_SCREEN_AB_CONSTANT = 45412406L
internal val useGradientLoadingScreenFingerprint = fingerprint {
literal { GRADIENT_LOADING_SCREEN_AB_CONSTANT }
}
internal const val SPLASH_SCREEN_STYLE_FEATURE_FLAG = 269032877L
internal val splashScreenStyleFingerprint = fingerprint {
returns("V")
parameters("Landroid/os/Bundle;")
literal { SPLASH_SCREEN_STYLE_FEATURE_FLAG }
custom { method, classDef ->
method.name == "onCreate" && classDef.endsWith("/MainActivity;")
}
}

View File

@@ -10,6 +10,7 @@ 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.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
@@ -17,6 +18,7 @@ import app.revanced.patches.shared.misc.settings.preference.TextPreference
import app.revanced.patches.youtube.layout.seekbar.seekbarColorPatch
import app.revanced.patches.youtube.misc.extension.sharedExtensionPatch
import app.revanced.patches.youtube.misc.playservice.is_19_25_or_greater
import app.revanced.patches.youtube.misc.playservice.is_19_47_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
@@ -27,8 +29,6 @@ import org.w3c.dom.Element
private const val EXTENSION_CLASS_DESCRIPTOR =
"Lapp/revanced/extension/youtube/patches/theme/ThemePatch;"
internal const val GRADIENT_LOADING_SCREEN_AB_CONSTANT = 45412406L
val themePatch = bytecodePatch(
name = "Theme",
description = "Adds options for theming and applies a custom background theme (dark background theme defaults to amoled black).",
@@ -232,15 +232,32 @@ val themePatch = bytecodePatch(
addResources("youtube", "layout.theme.themePatch")
PreferenceScreen.GENERAL_LAYOUT.addPreferences(
SwitchPreference("revanced_gradient_loading_screen"),
SwitchPreference("revanced_gradient_loading_screen")
)
if (is_19_47_or_greater) {
PreferenceScreen.GENERAL_LAYOUT.addPreferences(
ListPreference(
key = "splash_screen_animation_style",
summaryKey = null
)
)
}
useGradientLoadingScreenFingerprint.method.insertLiteralOverride(
GRADIENT_LOADING_SCREEN_AB_CONSTANT,
"$EXTENSION_CLASS_DESCRIPTOR->gradientLoadingScreenEnabled(Z)Z"
)
mapOf(
if (is_19_47_or_greater) {
// Lottie splash screen exists in earlier versions, but it may not be always on.
splashScreenStyleFingerprint.method.insertLiteralOverride(
SPLASH_SCREEN_STYLE_FEATURE_FLAG,
"$EXTENSION_CLASS_DESCRIPTOR->getLoadingScreenType(I)I"
)
}
arrayOf(
themeHelperLightColorFingerprint to lightThemeBackgroundColor,
themeHelperDarkColorFingerprint to darkThemeBackgroundColor,
).forEach { (fingerprint, color) ->

View File

@@ -123,3 +123,13 @@ internal val playbackSpeedMenuSpeedChangedFingerprint = fingerprint {
Opcode.RETURN_OBJECT,
)
}
internal val playbackSpeedClassFingerprint = fingerprint {
accessFlags(AccessFlags.PUBLIC, AccessFlags.STATIC)
returns("L")
parameters("L")
opcodes(
Opcode.RETURN_OBJECT
)
strings("PLAYBACK_RATE_MENU_BOTTOM_SHEET_FRAGMENT")
}

View File

@@ -7,6 +7,7 @@ import app.revanced.patcher.patch.bytecodePatch
import app.revanced.patcher.util.proxy.mutableTypes.MutableClass
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod.Companion.toMutable
import app.revanced.patcher.util.smali.toInstructions
import app.revanced.patches.youtube.misc.extension.sharedExtensionPatch
import app.revanced.patches.youtube.shared.newVideoQualityChangedFingerprint
import app.revanced.patches.youtube.video.playerresponse.Hook
@@ -16,6 +17,8 @@ import app.revanced.patches.youtube.video.videoid.hookBackgroundPlayVideoId
import app.revanced.patches.youtube.video.videoid.hookPlayerResponseVideoId
import app.revanced.patches.youtube.video.videoid.hookVideoId
import app.revanced.patches.youtube.video.videoid.videoIdPatch
import app.revanced.util.addInstructionsAtControlFlowLabel
import app.revanced.util.addStaticFieldToExtension
import app.revanced.util.getReference
import app.revanced.util.indexOfFirstInstructionOrThrow
import com.android.tools.smali.dexlib2.AccessFlags
@@ -29,6 +32,7 @@ import com.android.tools.smali.dexlib2.iface.instruction.TwoRegisterInstruction
import com.android.tools.smali.dexlib2.iface.reference.FieldReference
import com.android.tools.smali.dexlib2.iface.reference.MethodReference
import com.android.tools.smali.dexlib2.immutable.ImmutableMethod
import com.android.tools.smali.dexlib2.immutable.ImmutableMethodImplementation
import com.android.tools.smali.dexlib2.immutable.ImmutableMethodParameter
import com.android.tools.smali.dexlib2.util.MethodUtil
@@ -189,6 +193,72 @@ val videoInformationPatch = bytecodePatch(
proxy(classes.first { it.type == setPlaybackSpeedMethodReference.definingClass })
.mutableClass.methods.first { it.name == setPlaybackSpeedMethodReference.name }
setPlaybackSpeedMethodIndex = 0
// Add override playback speed method.
onPlaybackSpeedItemClickFingerprint.classDef.methods.add(
ImmutableMethod(
definingClass,
"overridePlaybackSpeed",
listOf(ImmutableMethodParameter("F", annotations, null)),
"V",
AccessFlags.PUBLIC.value or AccessFlags.PUBLIC.value,
annotations,
null,
ImmutableMethodImplementation(
4,
"""
# Check if the playback speed is not auto (-2.0f)
const/4 v0, 0x0
cmpg-float v0, v3, v0
if-lez v0, :ignore
# Get the container class field.
iget-object v0, v2, $setPlaybackSpeedContainerClassFieldReference
# For some reason, in YouTube 19.44.39 this value is sometimes null.
if-eqz v0, :ignore
# Get the field from its class.
iget-object v1, v0, $setPlaybackSpeedClassFieldReference
# Invoke setPlaybackSpeed on that class.
invoke-virtual {v1, v3}, $setPlaybackSpeedMethodReference
:ignore
return-void
""".toInstructions(), null, null
)
).toMutable()
)
}
playbackSpeedClassFingerprint.method.apply {
val index = indexOfFirstInstructionOrThrow(Opcode.RETURN_OBJECT)
val register = getInstruction<OneRegisterInstruction>(index).registerA
val playbackSpeedClass = this.returnType
// Set playback speed class.
addInstructionsAtControlFlowLabel(
index,
"sput-object v$register, $EXTENSION_CLASS_DESCRIPTOR->playbackSpeedClass:$playbackSpeedClass"
)
val smaliInstructions =
"""
if-eqz v0, :ignore
invoke-virtual {v0, p0}, $playbackSpeedClass->overridePlaybackSpeed(F)V
return-void
:ignore
nop
"""
addStaticFieldToExtension(
EXTENSION_CLASS_DESCRIPTOR,
"overridePlaybackSpeed",
"playbackSpeedClass",
playbackSpeedClass,
smaliInstructions
)
}
// Handle new playback speed menu.

View File

@@ -52,14 +52,14 @@ val rememberVideoQualityPatch = bytecodePatch {
ListPreference(
key = "revanced_shorts_quality_default_mobile",
summaryKey = null,
entriesKey = "revanced_video_quality_default_entries",
entryValuesKey = "revanced_video_quality_default_entry_values",
entriesKey = "revanced_shorts_quality_default_entries",
entryValuesKey = "revanced_shorts_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",
entriesKey = "revanced_shorts_quality_default_entries",
entryValuesKey = "revanced_shorts_quality_default_entry_values",
),
SwitchPreference("revanced_remember_shorts_quality_last_selected")
))

View File

@@ -1,19 +1,11 @@
package app.revanced.patches.youtube.video.speed.custom
import app.revanced.patcher.extensions.InstructionExtensions.addInstruction
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.extensions.InstructionExtensions.replaceInstruction
import app.revanced.patcher.patch.bytecodePatch
import app.revanced.patcher.patch.resourcePatch
import app.revanced.patcher.util.proxy.mutableTypes.MutableField.Companion.toMutable
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.InputType
import app.revanced.patches.shared.misc.settings.preference.SwitchPreference
import app.revanced.patches.shared.misc.settings.preference.TextPreference
@@ -27,27 +19,11 @@ import app.revanced.patches.youtube.misc.recyclerviewtree.hook.addRecyclerViewTr
import app.revanced.patches.youtube.misc.recyclerviewtree.hook.recyclerViewTreeHookPatch
import app.revanced.patches.youtube.misc.settings.settingsPatch
import app.revanced.patches.youtube.video.speed.settingsMenuVideoSpeedGroup
import app.revanced.util.*
import com.android.tools.smali.dexlib2.AccessFlags
import app.revanced.util.indexOfFirstInstructionOrThrow
import app.revanced.util.indexOfFirstLiteralInstruction
import app.revanced.util.indexOfFirstLiteralInstructionOrThrow
import com.android.tools.smali.dexlib2.iface.instruction.NarrowLiteralInstruction
import com.android.tools.smali.dexlib2.iface.instruction.OneRegisterInstruction
import com.android.tools.smali.dexlib2.iface.reference.FieldReference
import com.android.tools.smali.dexlib2.iface.reference.MethodReference
import com.android.tools.smali.dexlib2.immutable.ImmutableField
internal var speedUnavailableId = -1L
private set
private val customPlaybackSpeedResourcePatch = resourcePatch {
dependsOn(resourceMappingPatch)
execute {
speedUnavailableId = resourceMappings[
"string",
"varispeed_unavailable_message",
]
}
}
private const val FILTER_CLASS_DESCRIPTOR =
"Lapp/revanced/extension/youtube/patches/components/PlaybackSpeedMenuFilterPatch;"
@@ -64,8 +40,7 @@ internal val customPlaybackSpeedPatch = bytecodePatch(
addResourcesPatch,
lithoFilterPatch,
versionCheckPatch,
recyclerViewTreeHookPatch,
customPlaybackSpeedResourcePatch
recyclerViewTreeHookPatch
)
execute {
@@ -87,38 +62,6 @@ internal val customPlaybackSpeedPatch = bytecodePatch(
)
}
// Replace the speeds float array with custom speeds.
speedArrayGeneratorFingerprint.method.apply {
val sizeCallIndex = indexOfFirstInstructionOrThrow { getReference<MethodReference>()?.name == "size" }
val sizeCallResultRegister = getInstruction<OneRegisterInstruction>(sizeCallIndex + 1).registerA
replaceInstruction(sizeCallIndex + 1, "const/4 v$sizeCallResultRegister, 0x0")
val arrayLengthConstIndex = indexOfFirstLiteralInstructionOrThrow(7)
val arrayLengthConstDestination = getInstruction<OneRegisterInstruction>(arrayLengthConstIndex).registerA
val playbackSpeedsArrayType = "$EXTENSION_CLASS_DESCRIPTOR->customPlaybackSpeeds:[F"
addInstructions(
arrayLengthConstIndex + 1,
"""
sget-object v$arrayLengthConstDestination, $playbackSpeedsArrayType
array-length v$arrayLengthConstDestination, v$arrayLengthConstDestination
""",
)
val originalArrayFetchIndex = indexOfFirstInstructionOrThrow {
val reference = getReference<FieldReference>()
reference?.type == "[F" && reference.definingClass.endsWith("/PlayerConfigModel;")
}
val originalArrayFetchDestination =
getInstruction<OneRegisterInstruction>(originalArrayFetchIndex).registerA
replaceInstruction(
originalArrayFetchIndex,
"sget-object v$originalArrayFetchDestination, $playbackSpeedsArrayType",
)
}
// Override the min/max speeds that can be used.
speedLimiterFingerprint.method.apply {
val limitMinIndex = indexOfFirstLiteralInstructionOrThrow(0.25f)
@@ -135,47 +78,7 @@ internal val customPlaybackSpeedPatch = bytecodePatch(
replaceInstruction(limitMaxIndex, "const/high16 v$limitMaxRegister, 8.0f")
}
// Add a static INSTANCE field to the class.
// This is later used to call "showOldPlaybackSpeedMenu" on the instance.
val instanceField = ImmutableField(
getOldPlaybackSpeedsFingerprint.originalClassDef.type,
"INSTANCE",
getOldPlaybackSpeedsFingerprint.originalClassDef.type,
AccessFlags.PUBLIC.value or AccessFlags.STATIC.value,
null,
null,
null,
).toMutable()
getOldPlaybackSpeedsFingerprint.classDef.staticFields.add(instanceField)
// Set the INSTANCE field to the instance of the class.
// In order to prevent a conflict with another patch, add the instruction at index 1.
getOldPlaybackSpeedsFingerprint.method.addInstruction(1, "sput-object p0, $instanceField")
// Get the "showOldPlaybackSpeedMenu" method.
// This is later called on the field INSTANCE.
val showOldPlaybackSpeedMenuMethod = showOldPlaybackSpeedMenuFingerprint.match(
getOldPlaybackSpeedsFingerprint.classDef,
).method.toString()
// Insert the call to the "showOldPlaybackSpeedMenu" method on the field INSTANCE.
showOldPlaybackSpeedMenuExtensionFingerprint.method.apply {
addInstructionsWithLabels(
instructions.lastIndex,
"""
sget-object v0, $instanceField
if-nez v0, :not_null
return-void
:not_null
invoke-virtual { v0 }, $showOldPlaybackSpeedMenuMethod
""",
)
}
// region Force old video quality menu.
// This is necessary, because there is no known way of adding custom playback speeds to the new menu.
// Close the unpatched playback dialog and show the modern custom dialog.
addRecyclerViewTreeHook(EXTENSION_CLASS_DESCRIPTOR)
// Required to check if the playback speed menu is currently shown.

View File

@@ -1,30 +1,9 @@
package app.revanced.patches.youtube.video.speed.custom
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 getOldPlaybackSpeedsFingerprint = fingerprint {
parameters("[L", "I")
strings("menu_item_playback_speed")
}
internal val showOldPlaybackSpeedMenuFingerprint = fingerprint {
literal { speedUnavailableId }
}
internal val showOldPlaybackSpeedMenuExtensionFingerprint = fingerprint {
custom { method, _ -> method.name == "showOldPlaybackSpeedMenu" }
}
internal val speedArrayGeneratorFingerprint = fingerprint {
accessFlags(AccessFlags.PUBLIC, AccessFlags.STATIC)
returns("[L")
parameters("Lcom/google/android/libraries/youtube/innertube/model/player/PlayerResponseModel;")
strings("0.0#")
}
internal val speedLimiterFingerprint = fingerprint {
accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL)
returns("V")

View File

@@ -10,6 +10,7 @@ import app.revanced.patcher.extensions.InstructionExtensions.removeInstruction
import app.revanced.patcher.patch.BytecodePatchContext
import app.revanced.patcher.patch.PatchException
import app.revanced.patcher.util.proxy.mutableTypes.MutableClass
import app.revanced.patcher.util.proxy.mutableTypes.MutableField.Companion.toMutable
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
import app.revanced.patcher.util.smali.ExternalLabel
import app.revanced.patches.shared.misc.mapping.get
@@ -31,6 +32,7 @@ import com.android.tools.smali.dexlib2.iface.instruction.ThreeRegisterInstructio
import com.android.tools.smali.dexlib2.iface.instruction.TwoRegisterInstruction
import com.android.tools.smali.dexlib2.iface.instruction.WideLiteralInstruction
import com.android.tools.smali.dexlib2.iface.reference.Reference
import com.android.tools.smali.dexlib2.immutable.ImmutableField
import com.android.tools.smali.dexlib2.util.MethodUtil
import java.util.EnumSet
@@ -962,6 +964,43 @@ private fun MutableMethod.overrideReturnValue(value: String, returnLate: Boolean
}
}
internal fun BytecodePatchContext.addStaticFieldToExtension(
className: String,
methodName: String,
fieldName: String,
objectClass: String,
smaliInstructions: String
) {
val classDef = classes.find { classDef -> classDef.type == className }
?: throw PatchException("No matching methods found in: $className")
val mutableClass = proxy(classDef).mutableClass
val objectCall = "$mutableClass->$fieldName:$objectClass"
mutableClass.apply {
methods.first { method -> method.name == methodName }.apply {
staticFields.add(
ImmutableField(
definingClass,
fieldName,
objectClass,
AccessFlags.PUBLIC.value or AccessFlags.STATIC.value,
null,
annotations,
null
).toMutable()
)
addInstructionsWithLabels(
0,
"""
sget-object v0, $objectCall
""" + smaliInstructions
)
}
}
}
/**
* Set the custom condition for this fingerprint to check for a literal value.
*

View File

@@ -35,7 +35,7 @@ Second \"item\" text"</string>
<string name="revanced_settings_submenu_title">الإعدادات</string>
<string name="revanced_settings_confirm_user_dialog_title">هل ترغب في المتابعة؟</string>
<string name="revanced_settings_reset">إعادة التعيين</string>
<string name="revanced_settings_reset_color">إعادة تعيين اللون</string>
<string name="revanced_settings_reset_color">Reset color</string>
<string name="revanced_settings_color_invalid">لون غير صالح</string>
<string name="revanced_settings_restart_title">تحديث وإعادة التشغيل</string>
<string name="revanced_settings_restart">إعادة التشغيل</string>
@@ -311,9 +311,9 @@ Second \"item\" text"</string>
<string name="revanced_hide_comments_create_a_short_button_title">إخفاء زر \'إنشاء Short\'</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">تم إخفاء زر إنشاء Short</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">يتم عرض زر إنشاء Short</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">إخفاء أزرار الرموز التعبيرية والطوابع الزمنية</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">تم إخفاء أزرار الرموز التعبيرية والطوابع الزمنية</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">يتم عرض أزرار الرموز التعبيرية والطوابع الزمنية</string>
<string name="revanced_hide_comments_timestamp_button_title">زر إخفاء الطابع الزمني</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">زر الطابع الزمني مخفي</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">زر الطابع الزمني معروض</string>
<string name="revanced_hide_comments_preview_comment_title">إخفاء تعليق المعاينة</string>
<string name="revanced_hide_comments_preview_comment_summary_on">تم إخفاء تعليق المعاينة</string>
<string name="revanced_hide_comments_preview_comment_summary_off">يتم عرض تعليق المعاينة</string>
@@ -681,6 +681,9 @@ Second \"item\" text"</string>
<string name="revanced_hide_autoplay_button_title">إخفاء زر التشغيل التلقائي</string>
<string name="revanced_hide_autoplay_button_summary_on">تم إخفاء زر التشغيل التلقائي</string>
<string name="revanced_hide_autoplay_button_summary_off">يتم عرض زر التشغيل التلقائي</string>
<string name="revanced_hide_player_control_buttons_background_title">إخفاء خلفية أزرار التحكم في المشغل</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">تم إخفاء خلفية أزرار التحكم في المشغل</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">تم إظهار خلفية أزرار التحكم في المشغل</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">إخفاء بطاقات شاشة النهاية</string>
@@ -750,6 +753,9 @@ Second \"item\" text"</string>
<string name="revanced_hide_shorts_location_label_title">إخفاء تسمية الموقع</string>
<string name="revanced_hide_shorts_location_label_summary_on">تم إخفاء تسمية الموقع</string>
<string name="revanced_hide_shorts_location_label_summary_off">يتم عرض تسمية الموقع</string>
<string name="revanced_hide_shorts_preview_comment_title">إخفاء تعليق المعاينة</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">تم إخفاء تعليق المعاينة</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">يتم عرض تعليق المعاينة</string>
<string name="revanced_hide_shorts_save_sound_button_title">إخفاء زر حفظ الموسيقى</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">تم إخفاء زر حفظ الموسيقى</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">يتم عرض زر حفظ الموسيقى</string>
@@ -762,6 +768,9 @@ Second \"item\" text"</string>
<string name="revanced_hide_shorts_green_screen_button_title">إخفاء زر الشاشة الخضراء</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">تم إخفاء زر الشاشة الخضراء</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">يتم عرض زر الشاشة الخضراء</string>
<string name="revanced_hide_shorts_new_posts_button_title">إخفاء زر \"مشاركات جديدة\"</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">يتم عرض زر \"مشاركات جديدة\"</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">تم إخفاء زر \"مشاركات جديدة\"</string>
<string name="revanced_hide_shorts_hashtag_button_title">إخفاء زر الهاشتاج</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">تم إخفاء زر الهاشتاج</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">يتم عرض زر الهاشتاج</string>
@@ -1253,6 +1262,9 @@ 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>
<string name="splash_screen_animation_style_title">نمط الشاشة الترحيبية</string>
<string name="splash_screen_animation_style_entry_1">اللون</string>
<string name="splash_screen_animation_style_entry_2">أبيض وأسود</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>
@@ -1398,7 +1410,7 @@ Second \"item\" text"</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">عرض زر مربع حوار السرعة</string>
<string name="revanced_playback_speed_dialog_button_summary_on">يتم عرض الزر</string>
<string name="revanced_playback_speed_dialog_button_summary_on">الزر معروض. انقر مع الاستمرار لإعادة ضبط سرعة التشغيل إلى الوضع الافتراضي</string>
<string name="revanced_playback_speed_dialog_button_summary_off">لا يتم عرض الزر</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1410,6 +1422,7 @@ Second \"item\" text"</string>
<string name="revanced_custom_playback_speeds_invalid">يجب أن تكون سرعات التشغيل المخصصة أقل من %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">سرعة التشغيل المخصصة غير صالحة</string>
<string name="revanced_custom_playback_speeds_auto">تلقائي</string>
<string name="revanced_custom_playback_speeds_reset_toast">تمت إعادة ضبط سرعة التشغيل إلى: %s</string>
<string name="revanced_speed_tap_and_hold_title">سرعة النقر مع الاستمرار المخصصة</string>
<string name="revanced_speed_tap_and_hold_summary">سرعة التشغيل بين 0-8</string>
</patch>

View File

@@ -311,9 +311,9 @@ Gözlənilməz hallardan xəbərdar olmayacaqsınız."</string>
<string name="revanced_hide_comments_create_a_short_button_title">\"Shorts Yarat\" düyməsini gizlət</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">Short yarat düyməsi gizlidir</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">Short yarat düyməsi görünür</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Emoji və vaxt möhürü düymələrin gizlət</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Emoji və vaxt möhürü düymələri gizlidir</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Emoji və vaxt möhürü düymələri görünür</string>
<string name="revanced_hide_comments_timestamp_button_title">Vaxt möhürü düyməsini gizlət</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Vaxt damğası düyməsi gizlidir</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Vaxt möhürü düyməsi göstərilir</string>
<string name="revanced_hide_comments_preview_comment_title">Önbaxış şərhin gizlət</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Önbaxış şərhi gizlədilib</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Önbaxış şərhi göstərilir</string>
@@ -750,6 +750,9 @@ Audio trek seçimin göstərmək üçün \"Video axınları saxtalaşdır\"ı iO
<string name="revanced_hide_shorts_location_label_title">Məkan etiketini gizlət</string>
<string name="revanced_hide_shorts_location_label_summary_on">Məkan etiketi gizlidir</string>
<string name="revanced_hide_shorts_location_label_summary_off">Məkan etiketi göstərilir</string>
<string name="revanced_hide_shorts_preview_comment_title">Öncül baxış şərhini gizlət</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Öncül baxış şərhi gizlidir</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Öncül baxış şərhi göstərilir</string>
<string name="revanced_hide_shorts_save_sound_button_title">Musiqini saxla düyməsini gizlət</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">\"Musiqini saxla\" düyməsi gizlidir</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">\"Musiqini saxla\" düyməsi göstərilir</string>
@@ -1252,6 +1255,9 @@ 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>
<string name="splash_screen_animation_style_title">Sıçrama ekran üslubu</string>
<string name="splash_screen_animation_style_entry_1">Rəng</string>
<string name="splash_screen_animation_style_entry_2">Qara və ağ</string>
<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>
@@ -1397,7 +1403,7 @@ Bunu aktivləşdirmə daha yüksək video keyfiyyətləri əngəlin silə bilər
</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>
<string name="revanced_playback_speed_dialog_button_summary_on">Düymə göstərilir</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Düymə göstərilir. Oynatma sürətin standart olaraq qaytarmaq üçün toxunub saxla</string>
<string name="revanced_playback_speed_dialog_button_summary_off">Düymə göstərilmir</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1409,6 +1415,7 @@ Bunu aktivləşdirmə daha yüksək video keyfiyyətləri əngəlin silə bilər
<string name="revanced_custom_playback_speeds_invalid">Fərdi sürətlər %s dəyərindən az olmalıdır</string>
<string name="revanced_custom_playback_speeds_parse_exception">Fərdi oynatma sürətləri etibarsızdır</string>
<string name="revanced_custom_playback_speeds_auto">Avtomatik</string>
<string name="revanced_custom_playback_speeds_reset_toast">Oynatma sürəti sıfırlandı: %s</string>
<string name="revanced_speed_tap_and_hold_title">Xüsusi toxunma və saxlanılma sürəti</string>
<string name="revanced_speed_tap_and_hold_summary">0-8 arası oynatma sürəti</string>
</patch>

View File

@@ -311,9 +311,9 @@ Second \"item\" text"</string>
<string name="revanced_hide_comments_create_a_short_button_title">Схаваць кнопку \"Створиць Short\"</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">Кнопка «Стварыць Shorts» схаваная</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">Кнопка «Стварыць Shorts» паказаная</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Схаваць кнопкі эмодзі і адзнак часу</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Кнопкі эмодзі і адзнак часу схаваныя</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Кнопкі эмодзі і адзнак часу паказаныя</string>
<string name="revanced_hide_comments_timestamp_button_title">Схаваць кнопку часу</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Кнопка часу схаваная</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Кнопка часу паказаная</string>
<string name="revanced_hide_comments_preview_comment_title">Схаваць каментарый для папярэдняга прагляду</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Каментарый перад праглядам схаваны</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Паказваецца папярэдні прагляд каментарыя</string>
@@ -681,6 +681,9 @@ Second \"item\" text"</string>
<string name="revanced_hide_autoplay_button_title">Схаваць кнопку «Аўтапрайграванне»</string>
<string name="revanced_hide_autoplay_button_summary_on">Кнопка аўтазапуску схавана</string>
<string name="revanced_hide_autoplay_button_summary_off">Паказана кнопка аўтазапуску</string>
<string name="revanced_hide_player_control_buttons_background_title">Схаваць фон кнопак кіравання прайгравальнікам</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">Фон кнопак кіравання прайгравальнікам схаваны</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">Фон кнопак кіравання прайгравальнікам паказаны</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Схаваць карткі канцавога экрана</string>
@@ -750,6 +753,9 @@ Second \"item\" text"</string>
<string name="revanced_hide_shorts_location_label_title">Схаваць метку месцазнаходжання</string>
<string name="revanced_hide_shorts_location_label_summary_on">Метка месцазнаходжання схавана</string>
<string name="revanced_hide_shorts_location_label_summary_off">Паказана метка месцазнаходжання</string>
<string name="revanced_hide_shorts_preview_comment_title">Схаваць папярэдні прагляд каментарыя</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Папярэдні прагляд каментарыя схаваны</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Паказваецца папярэдні прагляд каментарыя</string>
<string name="revanced_hide_shorts_save_sound_button_title">Схаваць кнопку «Захаваць музыку»</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">Кнопка захавання музыкі схавана</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">Кнопка захавання музыкі паказана</string>
@@ -762,6 +768,9 @@ Second \"item\" text"</string>
<string name="revanced_hide_shorts_green_screen_button_title">Схаваць кнопку «Зялёны экран»</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">Кнопка с зелёным экраном Shorts скрыта</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">Кнопка с зелёным экраном Shorts отображается</string>
<string name="revanced_hide_shorts_new_posts_button_title">Схаваць кнопку «Новыя паведамленні»</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">Кнопка «Новыя паведамленні» паказана</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">Кнопка «Новыя паведамленні» схавана</string>
<string name="revanced_hide_shorts_hashtag_button_title">Скрыть хештег-кнопку Shorts</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">Хештег-кнопка Shorts скрыта</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">Хештег-кнопка Shorts отображается</string>
@@ -1254,6 +1263,9 @@ 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>
<string name="splash_screen_animation_style_title">Стыль застаўкі</string>
<string name="splash_screen_animation_style_entry_1">Колер</string>
<string name="splash_screen_animation_style_entry_2">Чорна-белы</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>
@@ -1399,7 +1411,7 @@ Second \"item\" text"</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Паказаць дыялогавую кнопку хуткасці</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Паказана кнопка</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Кнопка паказана. Націсніце і ўтрымлівайце, каб скінуць хуткасць прайгравання да стандартнай</string>
<string name="revanced_playback_speed_dialog_button_summary_off">Кнопка не паказваецца</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1411,6 +1423,7 @@ Second \"item\" text"</string>
<string name="revanced_custom_playback_speeds_invalid">Нестандартныя хуткасці павінны быць менш за %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Несапраўдныя нестандартныя хуткасці прайгравання</string>
<string name="revanced_custom_playback_speeds_auto">Аўто</string>
<string name="revanced_custom_playback_speeds_reset_toast">Хуткасць прайгравання скінута да: %s</string>
<string name="revanced_speed_tap_and_hold_title">Уласны хуткасць націску і ўтрымання</string>
<string name="revanced_speed_tap_and_hold_summary">Хуткасць прайгравання між 0-8</string>
</patch>

View File

@@ -311,9 +311,9 @@ Second \"item\" text"</string>
<string name="revanced_hide_comments_create_a_short_button_title">Бутон за създаване на Shorts</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">Бутонът \"Създаване на Short\" е скрит</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">Бутонът \"Създаване на Short\" е показан</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Скриване на бутоните за емоджи и времеви печат</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Бутоните за емоджи и времеви печат са скрити</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Бутоните за емоджи и времеви печат са показани</string>
<string name="revanced_hide_comments_timestamp_button_title">Скриване на бутона за времеви печат</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Бутонът за времеви печат е скрит</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Бутонът за времеви печат е показан</string>
<string name="revanced_hide_comments_preview_comment_title">Преглед на коментари</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Прегледа на коментари е скрит</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Прегледа на коментари се показва</string>
@@ -681,6 +681,9 @@ Second \"item\" text"</string>
<string name="revanced_hide_autoplay_button_title">Скриване на бутона Autoplay</string>
<string name="revanced_hide_autoplay_button_summary_on">Бутона за авт. изпълнение е скрит</string>
<string name="revanced_hide_autoplay_button_summary_off">Бутона за авт. изпълнение се показва</string>
<string name="revanced_hide_player_control_buttons_background_title">Скриване на фона на бутоните за управление на плейъра</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">Фонът на бутоните за управление на плейъра е скрит</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">Фонът на бутоните за управление на плейъра е показан</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Скриване на препоръките в края</string>
@@ -750,6 +753,9 @@ Second \"item\" text"</string>
<string name="revanced_hide_shorts_location_label_title">Етикет за местоположение</string>
<string name="revanced_hide_shorts_location_label_summary_on">Етикет за местоположение е скрит</string>
<string name="revanced_hide_shorts_location_label_summary_off">Етикет за местоположение се показва</string>
<string name="revanced_hide_shorts_preview_comment_title">Скриване на коментара за визуализация</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Коментарът за визуализация е скрит</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Показва се визуализация на коментара</string>
<string name="revanced_hide_shorts_save_sound_button_title">Скриване на бутона Save music</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">Бутонът за запазване на музика е скрит</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">Показан е бутонът за запазване на музика</string>
@@ -762,6 +768,9 @@ Second \"item\" text"</string>
<string name="revanced_hide_shorts_green_screen_button_title">Скриване на бутона Green screen</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">Бутон \"Зелен екран\" е скрит</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">Бутон \"Зелен екран\" се показва</string>
<string name="revanced_hide_shorts_new_posts_button_title">Скриване на бутона \"Нови публикации\"</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">Бутонът \"Нови публикации\" се показва</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">Бутонът \"Нови публикации\" е скрит</string>
<string name="revanced_hide_shorts_hashtag_button_title">Скриване на бутона за хаштаг</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">Бутона за хаштаг е скрит</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">Бутона за хаштаг се показва</string>
@@ -1253,6 +1262,9 @@ 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>
<string name="splash_screen_animation_style_title">Стил на началния екран</string>
<string name="splash_screen_animation_style_entry_1">Цвят</string>
<string name="splash_screen_animation_style_entry_2">Черно и бяло</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>
@@ -1398,7 +1410,7 @@ Second \"item\" text"</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Показване бутон за скорост</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Бутона \"Уведоми ме\" се показва.</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Бутонът е показан. Докоснете и задръжте, за да върнете скоростта на възпроизвеждане към стойността по подразбиране</string>
<string name="revanced_playback_speed_dialog_button_summary_off">Бутонът не е показан</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1410,6 +1422,7 @@ Second \"item\" text"</string>
<string name="revanced_custom_playback_speeds_invalid">Персонализираните скорости трябва да са по-малки от %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Невалидни персонализирани скорости на възпроизвеждане</string>
<string name="revanced_custom_playback_speeds_auto">Авто</string>
<string name="revanced_custom_playback_speeds_reset_toast">Скоростта на възпроизвеждане е нулирана на: %s</string>
<string name="revanced_speed_tap_and_hold_title">Персонализирана скорост при докосване и задържане</string>
<string name="revanced_speed_tap_and_hold_summary">Скорост на възпроизвеждане между 0-8</string>
</patch>

View File

@@ -307,9 +307,9 @@ MicroG-এর জন্য ব্যাটারি অপ্টিমাইজ
<string name="revanced_hide_comments_create_a_short_button_title">\'Short তৈরি করুন\' বোতাম লুকান</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">একটি Shorts বোতাম তৈরি করুন লুকানো আছে</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">একটি Shorts বোতাম তৈরি করুন দেখানো হয়েছে</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">ইমোজি এবং টাইমস্ট্যাম্প বোতাম লুকান</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">ইমোজি এবং টাইমস্ট্যাম্প বোতাম লুকানো আছে</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">ইমোজি এবং টাইমস্ট্যাম্প বোতাম দেখানো হয়েছে</string>
<string name="revanced_hide_comments_timestamp_button_title">সময় চিহ্নিত করার বোতাম লুকান</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">সময় চিহ্নিত করার বোতাম লুকানো আছে</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">সময় চিহ্নিত করার বোতাম দেখানো হয়েছে</string>
<string name="revanced_hide_comments_preview_comment_title">মন্তব্যের পূর্বরূপ লুকান</string>
<string name="revanced_hide_comments_preview_comment_summary_on">মন্তব্যের পূর্বরূপ লুকিয়ে রয়েছে</string>
<string name="revanced_hide_comments_preview_comment_summary_off">মন্তব্যের পূর্বরূপ প্রদর্শিত হয়েছে</string>
@@ -677,6 +677,9 @@ MicroG-এর জন্য ব্যাটারি অপ্টিমাইজ
<string name="revanced_hide_autoplay_button_title">অটোপ্লে বোতামটি লুকান</string>
<string name="revanced_hide_autoplay_button_summary_on">autoplay বোতাম লুকানো আছে</string>
<string name="revanced_hide_autoplay_button_summary_off">autoplay বোতাম দেখানো হচ্ছে</string>
<string name="revanced_hide_player_control_buttons_background_title">প্লেয়ার কন্ট্রোল বোতামগুলির পটভূমি লুকান</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">প্লেয়ার কন্ট্রোল বোতামগুলির পটভূমি লুকানো আছে</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">প্লেয়ার কন্ট্রোল বোতামগুলির পটভূমি দেখানো হয়েছে</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">শেষ স্ক্রীন কার্ড লুকান</string>
@@ -746,6 +749,9 @@ MicroG-এর জন্য ব্যাটারি অপ্টিমাইজ
<string name="revanced_hide_shorts_location_label_title">অবস্থান লেবেল লুকান</string>
<string name="revanced_hide_shorts_location_label_summary_on">অবস্থান লেবেল লুকিয়ে রয়েছে</string>
<string name="revanced_hide_shorts_location_label_summary_off">অবস্থান লেবেল প্রদর্শিত হয়েছে</string>
<string name="revanced_hide_shorts_preview_comment_title">Preview comment লুকান</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Preview comment লুকানো আছে</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Preview comment দেখানো হয়েছে</string>
<string name="revanced_hide_shorts_save_sound_button_title">সেভ মিউজিক বোতামটি লুকান</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">Save music বোতাম লুকানো আছে</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">Save music বোতাম দেখানো হচ্ছে</string>
@@ -758,6 +764,9 @@ MicroG-এর জন্য ব্যাটারি অপ্টিমাইজ
<string name="revanced_hide_shorts_green_screen_button_title">গ্রিন স্ক্রিন বোতামটি লুকান</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">সবুজ পর্দা বোতাম লুকানো আছে</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">সবুজ পর্দা বোতাম দেখানো হচ্ছে</string>
<string name="revanced_hide_shorts_new_posts_button_title">নতুন পোস্ট বোতাম লুকান</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">নতুন পোস্ট বোতাম দেখানো হয়েছে</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">নতুন পোস্ট বোতাম লুকানো হয়েছে</string>
<string name="revanced_hide_shorts_hashtag_button_title">হ্যাশট্যাগ বোতাম লুকান</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">হ্যাশট্যাগ বোতাম লুকানো আছে</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">হ্যাশট্যাগ বোতাম দেখানো হচ্ছে</string>
@@ -1249,6 +1258,9 @@ 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>
<string name="splash_screen_animation_style_title">স্প্ল্যাশ স্ক্রিন শৈলী</string>
<string name="splash_screen_animation_style_entry_1">রং</string>
<string name="splash_screen_animation_style_entry_2">কালো এবং সাদা</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>
@@ -1394,7 +1406,7 @@ DeArrow সম্পর্কে আরও জানতে এখানে ট
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">স্পিড ডায়ালগ বোতাম দেখান</string>
<string name="revanced_playback_speed_dialog_button_summary_on">বোতাম প্রদর্শিত হয়েছে</string>
<string name="revanced_playback_speed_dialog_button_summary_on">বোতামটি দেখানো হয়েছে। প্লেব্যাক স্পীড ডিফল্টে রিসেট করতে ট্যাপ করে ধরে রাখুন।</string>
<string name="revanced_playback_speed_dialog_button_summary_off">বোতাম প্রদর্শিত হয়নি</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1406,6 +1418,7 @@ DeArrow সম্পর্কে আরও জানতে এখানে ট
<string name="revanced_custom_playback_speeds_invalid">কাস্টম গতি %s এর চেয়ে কম হতে হবে</string>
<string name="revanced_custom_playback_speeds_parse_exception">অবৈধ কাস্টম প্লেব্যাক গতি</string>
<string name="revanced_custom_playback_speeds_auto">স্বতস্ফূর্তভাবে</string>
<string name="revanced_custom_playback_speeds_reset_toast">প্লেব্যাক গতি রিসেট করা হয়েছে: %s</string>
<string name="revanced_speed_tap_and_hold_title">কাস্টম ট্যাপ এন্ড হোল্ড স্পিড</string>
<string name="revanced_speed_tap_and_hold_summary">-৮ এর মধ্যে প্লেব্যাক স্পিড</string>
</patch>

View File

@@ -311,9 +311,9 @@ No se t'informarà de cap esdeveniment inesperat."</string>
<string name="revanced_hide_comments_create_a_short_button_title">Amaga el botó \"Crear un Short\"</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">El botó Crea un Short s\'amaga</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">El botó Crea un Short es mostra</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Amaga els botons d\'emojis i marca de temps</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Els botons d\'emojis i marca de temps s\'amaguen</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Els botons d\'emojis i marca de temps es mostren</string>
<string name="revanced_hide_comments_timestamp_button_title">Amaga el botó de marca de temps</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">S\'amaga el botó de marca de temps</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Es mostra el botó de marca de temps</string>
<string name="revanced_hide_comments_preview_comment_title">Amaga la vista prèvia del comentari</string>
<string name="revanced_hide_comments_preview_comment_summary_on">La vista prèvia del comentari s\'amaga</string>
<string name="revanced_hide_comments_preview_comment_summary_off">La vista prèvia del comentari es mostra</string>
@@ -681,6 +681,9 @@ Per mostrar el menú de la pista d'àudio, canvieu \"Suplanta els fluxos de víd
<string name="revanced_hide_autoplay_button_title">Amaga el botó Reproducció automàtica</string>
<string name="revanced_hide_autoplay_button_summary_on">El botó de reproducció automàtica està ocult</string>
<string name="revanced_hide_autoplay_button_summary_off">El botón de reproducción automática se muestra</string>
<string name="revanced_hide_player_control_buttons_background_title">Amaga el fons dels botons de control del reproductor</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">S\'amaga el fons dels botons de control del reproductor</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">Es mostra el fons dels botons de control del reproductor</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Ocultar tarjetas de pantalla final</string>
@@ -750,6 +753,9 @@ Per mostrar el menú de la pista d'àudio, canvieu \"Suplanta els fluxos de víd
<string name="revanced_hide_shorts_location_label_title">Amaga l\'etiqueta de ubicació</string>
<string name="revanced_hide_shorts_location_label_summary_on">L\'etiqueta de ubicació està oculta</string>
<string name="revanced_hide_shorts_location_label_summary_off">L\'etiqueta de ubicació es mostra</string>
<string name="revanced_hide_shorts_preview_comment_title">Amaga el comentari de vista prèvia</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">El comentari de vista prèvia s\'ha amagat</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Es mostra la vista prèvia del comentari</string>
<string name="revanced_hide_shorts_save_sound_button_title">Amaga el botó Desa música</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">El botó de desar música està ocult</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">El botó de desar música es mostra</string>
@@ -762,6 +768,9 @@ Per mostrar el menú de la pista d'àudio, canvieu \"Suplanta els fluxos de víd
<string name="revanced_hide_shorts_green_screen_button_title">Amaga el botó Pantalla verda</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">El botó de pantalla verda està ocult</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">El botó de pantalla verda està visible</string>
<string name="revanced_hide_shorts_new_posts_button_title">Amaga el botó de publicacions noves</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">Es mostra el botó de publicacions noves</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">S\'amaga el botó de publicacions noves</string>
<string name="revanced_hide_shorts_hashtag_button_title">Amagar botó de hashtag</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">El botó de hashtag està ocult</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">El botó de hashtag està visible</string>
@@ -1252,6 +1261,9 @@ Llisca per expandir o tancar"</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>
<string name="splash_screen_animation_style_title">Estil de la pantalla de presentació</string>
<string name="splash_screen_animation_style_entry_1">Color</string>
<string name="splash_screen_animation_style_entry_2">Blanc i negre</string>
<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>
@@ -1397,7 +1409,7 @@ Si actives aquesta opció, es poden desbloquejar qualitats de vídeo més altes"
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Mostra el botó del diàleg de velocitat</string>
<string name="revanced_playback_speed_dialog_button_summary_on">El botó es mostra</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Es mostra el botó. Toqueu i manteniu premut per restablir la velocitat de reproducció per defecte</string>
<string name="revanced_playback_speed_dialog_button_summary_off">El botó no es mostra</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1409,6 +1421,7 @@ Si actives aquesta opció, es poden desbloquejar qualitats de vídeo més altes"
<string name="revanced_custom_playback_speeds_invalid">Les velocitats personalitzades han de ser inferiors a %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Velocitats de reproducció personalitzades no vàlides</string>
<string name="revanced_custom_playback_speeds_auto">Automàtic</string>
<string name="revanced_custom_playback_speeds_reset_toast">Velocitat de reproducció restablerta a: %s</string>
<string name="revanced_speed_tap_and_hold_title">Velocitat personalitzada de mantenir premut</string>
<string name="revanced_speed_tap_and_hold_summary">Velocitat de reproducció entre 0 i 8</string>
</patch>

View File

@@ -311,9 +311,9 @@ Nebudete informováni o žádné neočekávané události."</string>
<string name="revanced_hide_comments_create_a_short_button_title">Skrýt tlačítko \"Vytvořit Short\"</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">Tlačítko Vytvořit Short je skryté</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">Tlačítko Vytvořit Short je zobrazeno</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Skrýt tlačítka emoji a časového razítka</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Tlačítka emoji a časového razítka jsou skryta</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Tlačítka emoji a časového razítka jsou zobrazena</string>
<string name="revanced_hide_comments_timestamp_button_title">Skrýt tlačítko časové osy</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Tlačítko časové osy je skryté</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Tlačítko časové osy je zobrazeno</string>
<string name="revanced_hide_comments_preview_comment_title">Skrýt náhled komentáře</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Náhled komentáře je skryt</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Náhled komentáře je zobrazen</string>
@@ -681,6 +681,9 @@ Chcete-li zobrazit nabídku zvukové stopy, změňte možnost „Zfalšovat stre
<string name="revanced_hide_autoplay_button_title">Skrýt tlačítko Automatické přehrávání</string>
<string name="revanced_hide_autoplay_button_summary_on">Tlačítko automatického přehrávání je skryto</string>
<string name="revanced_hide_autoplay_button_summary_off">Tlačítko automatického přehrávání je zobrazeno</string>
<string name="revanced_hide_player_control_buttons_background_title">Skrýt pozadí ovládacích tlačítek přehrávače</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">Pozadí ovládacích tlačítek přehrávače je skryté</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">Zobrazuje se pozadí ovládacích tlačítek přehrávače</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Skrýt karty s informacemi o videu</string>
@@ -750,6 +753,9 @@ Chcete-li zobrazit nabídku zvukové stopy, změňte možnost „Zfalšovat stre
<string name="revanced_hide_shorts_location_label_title">Skrýt štítek umístění</string>
<string name="revanced_hide_shorts_location_label_summary_on">Štítek umístění je skrytý</string>
<string name="revanced_hide_shorts_location_label_summary_off">Štítek umístění je zobrazen</string>
<string name="revanced_hide_shorts_preview_comment_title">Skrýt náhled komentáře</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Náhled komentáře je skrytý</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Zobrazuje se náhled komentáře</string>
<string name="revanced_hide_shorts_save_sound_button_title">Skrýt tlačítko Uložit hudbu</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">Tlačítko Uložit hudbu je skryté</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">Tlačítko Uložit hudbu je zobrazeno</string>
@@ -762,6 +768,9 @@ Chcete-li zobrazit nabídku zvukové stopy, změňte možnost „Zfalšovat stre
<string name="revanced_hide_shorts_green_screen_button_title">Skrýt tlačítko Zelená obrazovka</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">Tlačítko zelené obrazovky je skryté</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">Tlačítko zelené obrazovky je zobrazeno</string>
<string name="revanced_hide_shorts_new_posts_button_title">Skrýt tlačítko Nové příspěvky</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">Tlačítko Nové příspěvky je zobrazeno</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">Tlačítko Nové příspěvky je skryto</string>
<string name="revanced_hide_shorts_hashtag_button_title">Skrýt tlačítko hashtagů</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">Tlačítko hashtagů je skryté</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">Tlačítko hashtagů je zobrazeno</string>
@@ -1252,6 +1261,9 @@ Rozbalte nebo zavřete přejetím prstem"</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>
<string name="splash_screen_animation_style_title">Styl úvodní obrazovky</string>
<string name="splash_screen_animation_style_entry_1">Barva</string>
<string name="splash_screen_animation_style_entry_2">Černobílá</string>
<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>
@@ -1397,7 +1409,7 @@ Povolením této funkce lze odemknout vyšší kvality videa"</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Zobrazit tlačítko dialogu rychlosti</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Tlačítko je zobrazeno</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Tlačítko je zobrazeno. Klepnutím a podržením obnovíte výchozí rychlost přehrávání</string>
<string name="revanced_playback_speed_dialog_button_summary_off">Tlačítko se nezobrazuje</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1409,6 +1421,7 @@ Povolením této funkce lze odemknout vyšší kvality videa"</string>
<string name="revanced_custom_playback_speeds_invalid">Vlastní rychlosti musí být menší než %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Neplatné vlastní rychlosti přehrávání</string>
<string name="revanced_custom_playback_speeds_auto">Automaticky</string>
<string name="revanced_custom_playback_speeds_reset_toast">Rychlost přehrávání obnovena na: %s</string>
<string name="revanced_speed_tap_and_hold_title">Vlastní rychlost stisknutí a podržení</string>
<string name="revanced_speed_tap_and_hold_summary">Rychlost přehrávání 0 až 8</string>
</patch>

View File

@@ -169,6 +169,8 @@ Du modtager ikke notifikationer om uventede hændelser."</string>
<string name="revanced_hide_join_membership_button_summary_off">Knappen er vist</string>
<!-- 'For you' should be translated using the same localized wording YouTube displays. -->
<string name="revanced_hide_for_you_shelf_title">Skjul hylden \"Til dig\"</string>
<string name="revanced_hide_for_you_shelf_summary_on">Hylde på kanalsiden er skjult</string>
<string name="revanced_hide_for_you_shelf_summary_off">Hylde på kanalsiden vises</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">Skjul knappen \'Underret mig\'</string>
@@ -196,6 +198,8 @@ Du modtager ikke notifikationer om uventede hændelser."</string>
<string name="revanced_hide_chips_shelf_summary_on">Chips hylde er skjult</string>
<string name="revanced_hide_chips_shelf_summary_off">Chips hylde er vist</string>
<string name="revanced_hide_expandable_chip_title">Skjul udvidelige kort under videoer</string>
<string name="revanced_hide_expandable_chip_summary_on">Udvidelseskort er skjult</string>
<string name="revanced_hide_expandable_chip_summary_off">Udvidelseskort vises</string>
<string name="revanced_hide_community_posts_title">Skjul fællesskabs indlæg</string>
<string name="revanced_hide_community_posts_summary_on">Fællesskabs indlæg er skjult</string>
<string name="revanced_hide_community_posts_summary_off">Fællesskabs indlæg er vist</string>
@@ -211,6 +215,7 @@ Du modtager ikke notifikationer om uventede hændelser."</string>
<string name="revanced_hide_community_guidelines_title">Skjul fællesskabs retningslinjer</string>
<string name="revanced_hide_community_guidelines_summary_on">Fællesskabets retningslinjer er skjult</string>
<string name="revanced_hide_community_guidelines_summary_off">Der er opstillet EF-retningslinjer</string>
<string name="revanced_hide_subscribers_community_guidelines_title">Skjul retningslinjer for abonnenter</string>
<string name="revanced_hide_subscribers_community_guidelines_summary_on">Abonnenter community retningslinjer er skjult</string>
<string name="revanced_hide_subscribers_community_guidelines_summary_off">Abonnenter community retningslinjer er vist</string>
<string name="revanced_hide_channel_member_shelf_title">Skjul kanalmedlems hylde</string>
@@ -255,10 +260,25 @@ Du modtager ikke notifikationer om uventede hændelser."</string>
<string name="revanced_hide_ask_section_title">Skjul Spørg</string>
<string name="revanced_hide_ask_section_summary_on">Spørgsmål sektionen er skjult</string>
<string name="revanced_hide_ask_section_summary_off">Spørgsmål sektionen vises</string>
<string name="revanced_hide_attributes_section_title">Skjul attributter</string>
<string name="revanced_hide_attributes_section_summary_on">Fremhævede steder, spil, musik og sektioner med omtalte personer er skjult</string>
<string name="revanced_hide_attributes_section_summary_off">Fremhævede steder, spil, musik og sektioner med omtalte personer vises</string>
<string name="revanced_hide_chapters_section_title">Skjul kapitler</string>
<string name="revanced_hide_chapters_section_summary_on">Kapitler sektion er skjult</string>
<string name="revanced_hide_chapters_section_summary_off">Kapitel afsnit er vist</string>
<string name="revanced_hide_how_this_was_made_section_title">Skjul \"Hvordan dette indhold blev lavet\"</string>
<string name="revanced_hide_how_this_was_made_section_summary_on">Sektionen Sådan blev dette indhold lavet er skjult</string>
<string name="revanced_hide_how_this_was_made_section_summary_off">Sektionen Sådan blev dette indhold lavet vises</string>
<string name="revanced_hide_podcast_section_title">Skjul \"Udforsk podcasten\"</string>
<string name="revanced_hide_podcast_section_summary_on">Sektionen Udforsk podcasten er skjult</string>
<string name="revanced_hide_podcast_section_summary_off">Sektionen Udforsk podcasten vises</string>
<string name="revanced_hide_info_cards_section_title">Skjul infokort</string>
<string name="revanced_hide_info_cards_section_summary_on">Info-kort sektion er skjult</string>
<string name="revanced_hide_info_cards_section_summary_off">Info-kort sektion er vist</string>
<string name="revanced_hide_key_concepts_section_title">Skjul \"Nøglebegreber\"</string>
<string name="revanced_hide_key_concepts_section_summary_on">Nøglebegrebssektionen er skjult</string>
<string name="revanced_hide_key_concepts_section_summary_off">Nøglebegrebssektionen vises</string>
<string name="revanced_hide_transcript_section_title">Skjul udskrift</string>
<string name="revanced_hide_transcript_section_summary_on">Afsnittet er skjult</string>
<string name="revanced_hide_transcript_section_summary_off">Afsnittet er vist</string>
<string name="revanced_hide_description_components_screen_title">Video beskrivelse</string>
@@ -283,10 +303,17 @@ Du modtager ikke notifikationer om uventede hændelser."</string>
<string name="revanced_hide_comments_ai_summary_summary_on">Kommentar-oversigt er skjult</string>
<string name="revanced_hide_comments_ai_summary_summary_off">Kommentar-oversigt er vist</string>
<string name="revanced_hide_comments_by_members_header_title">Skjul \'Kommentarer fra medlemmer\' header</string>
<string name="revanced_hide_comments_by_members_header_summary_on">Kommentarer fra medlemmers overskrift er skjult</string>
<string name="revanced_hide_comments_by_members_header_summary_off">Kommentarer fra medlemmers overskrift vises</string>
<string name="revanced_hide_comments_section_title">Skjul kommentarsektion</string>
<string name="revanced_hide_comments_section_summary_on">Kommentarer sektion er skjult</string>
<string name="revanced_hide_comments_section_summary_off">Kommentarer sektion er vist</string>
<string name="revanced_hide_comments_create_a_short_button_title">Skjul knappen \"Opret en Short\"</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">Opret en Short knap er skjult</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">Opret en Short knap vises</string>
<string name="revanced_hide_comments_timestamp_button_title">Skjul tidsstempelknap</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Tidsstempelknappen er skjult</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Tidsstempelknappen vises</string>
<string name="revanced_hide_comments_preview_comment_title">Skjul forhåndsvisning kommentar</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Forhåndsvisning kommentar er skjult</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Forhåndsvis kommentar er vist</string>
@@ -370,8 +397,12 @@ Denne funktion er kun tilgængelig for ældre enheder"</string>
<string name="revanced_hide_player_store_shelf_summary_on">Shopping hylde er skjult</string>
<string name="revanced_hide_player_store_shelf_summary_off">Shopping hylde er vist</string>
<string name="revanced_hide_shopping_links_title">Skjul shopping links i video beskrivelse</string>
<string name="revanced_hide_shopping_links_summary_on">Shopping links i videobeskrivelsen er skjult</string>
<string name="revanced_hide_shopping_links_summary_off">Shopping links i videobeskrivelsen vises</string>
<!-- 'Visit store' should be translated with the same localized wording that YouTube displays. -->
<string name="revanced_hide_visit_store_button_title">Skjul knappen \'Besøg butik\' på kanalsider</string>
<string name="revanced_hide_visit_store_button_summary_on">Knap på kanalsiden er skjult</string>
<string name="revanced_hide_visit_store_button_summary_off">Knap på kanalsiden vises</string>
<string name="revanced_hide_web_search_results_title">Skjul søgeresultater</string>
<string name="revanced_hide_web_search_results_summary_on">Websøgeresultater er skjult</string>
<string name="revanced_hide_web_search_results_summary_off">Websøgeresultater vises</string>
@@ -411,6 +442,8 @@ Denne funktion er kun tilgængelig for ældre enheder"</string>
<string name="revanced_external_downloader_screen_title">Eksterne downloads</string>
<string name="revanced_external_downloader_screen_summary">Indstillinger for brug af en ekstern downloader</string>
<string name="revanced_external_downloader_title">Vis ekstern download-knap</string>
<string name="revanced_external_downloader_summary_on">Download-knappen i afspilleren vises</string>
<string name="revanced_external_downloader_summary_off">Download-knappen i afspilleren vises ikke</string>
<!-- 'download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title' -->
<string name="revanced_external_downloader_action_button_title">Overskriv knappen Download-handling</string>
<string name="revanced_external_downloader_action_button_summary_on">Download-knappen åbner din eksterne downloader</string>
@@ -489,6 +522,7 @@ Juster lydstyrken ved at swipe lodret i højre side af skærmen"</string>
<patch id="layout.buttons.action.hideButtonsPatch">
<string name="revanced_hide_buttons_screen_title">Handlingsknapper</string>
<string name="revanced_hide_buttons_screen_summary">Skjul eller vis knapper under videoer</string>
<string name="revanced_disable_like_subscribe_glow_title">Deaktiver Like og Abonner-knappen glød</string>
<string name="revanced_disable_like_subscribe_glow_summary_on">Lykke- og abonnér-knappen gløder ikke, når den nævnes</string>
<string name="revanced_disable_like_subscribe_glow_summary_off">Lykke- og abonnér-knappen gløder, når den nævnes</string>
<string name="revanced_hide_like_dislike_button_title">Skjul Like og Dislike</string>
@@ -647,6 +681,9 @@ For at vise lydspormenuen skal du ændre \"Spoof videostream\" til iOS TV"</stri
<string name="revanced_hide_autoplay_button_title">Skjul knappen Automatisk afspilning</string>
<string name="revanced_hide_autoplay_button_summary_on">Automatisk spil-knap er skjult</string>
<string name="revanced_hide_autoplay_button_summary_off">Automatisk afspilningsknap vises</string>
<string name="revanced_hide_player_control_buttons_background_title">Skjul baggrunden for afspillerens kontrolknapper</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">Baggrunden for afspillerens kontrolknapper er skjult</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">Baggrunden for afspillerens kontrolknapper vises</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Skjul slutskærmkort</string>
@@ -716,6 +753,9 @@ For at vise lydspormenuen skal du ændre \"Spoof videostream\" til iOS TV"</stri
<string name="revanced_hide_shorts_location_label_title">Skjul placeringsetiket</string>
<string name="revanced_hide_shorts_location_label_summary_on">Placeringsetiket er skjult</string>
<string name="revanced_hide_shorts_location_label_summary_off">Placeringsetiket er vist</string>
<string name="revanced_hide_shorts_preview_comment_title">Skjul forhåndsvisning af kommentar</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Forhåndsvisning af kommentar er skjult</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Forhåndsvisningskommentar vises</string>
<string name="revanced_hide_shorts_save_sound_button_title">Skjul knappen Gem musik</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">Gem musik knap er skjult</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">Gem musik knap er vist</string>
@@ -728,6 +768,9 @@ For at vise lydspormenuen skal du ændre \"Spoof videostream\" til iOS TV"</stri
<string name="revanced_hide_shorts_green_screen_button_title">Skjul knappen Grøn skærm</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">Grøn skærmknap er skjult</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">Grøn skærmknap vises</string>
<string name="revanced_hide_shorts_new_posts_button_title">Skjul knappen Nye indlæg</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">Knappen Nye indlæg vises</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">Knappen Nye indlæg er skjult</string>
<string name="revanced_hide_shorts_hashtag_button_title">Skjul hashtag knap</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">Hashtag knap er skjult</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">Hashtag knappen er vist</string>
@@ -823,6 +866,7 @@ Indstillinger → Afspilning → Afspil næste video automatisk"</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_ryd_failure_connection_timeout">Dislikerer midlertidigt ikke tilgængelig (API-timeout ud)</string>
<string name="revanced_ryd_failure_connection_status_code">Dislikationer er ikke tilgængelige (status %d)</string>
<string name="revanced_ryd_failure_client_rate_limit_requested">Synes ikke godt om er ikke tilgængelige (klient API-grænse)</string>
<string name="revanced_ryd_failure_generic">Dislikationer ikke tilgængelige (%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">Genindlæs video for at stemme ved hjælp af Return YouTube Dislike</string>
@@ -831,7 +875,13 @@ Indstillinger → Afspilning → Afspil næste video automatisk"</string>
<string name="revanced_ryd_enabled_summary_on">Dislikationer vises</string>
<string name="revanced_ryd_enabled_summary_off">Dislikationer vises ikke</string>
<string name="revanced_ryd_shorts_title">Vis ikke på Shorts</string>
<string name="revanced_ryd_shorts_summary_on">"Synes ikke godt om på Shorts vises
Begrænsning: Synes ikke godt om vises muligvis ikke i inkognitotilstand"</string>
<string name="revanced_ryd_shorts_summary_off">Synes ikke godt om på Shorts vises ikke</string>
<string name="revanced_ryd_dislike_percentage_title">Synes ikke som procent</string>
<string name="revanced_ryd_dislike_percentage_summary_on">Synes ikke godt om vises som en procentdel</string>
<string name="revanced_ryd_dislike_percentage_summary_off">Synes ikke godt om vises som et tal</string>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button' -->
<string name="revanced_ryd_compact_layout_title">Kompakt like-knap</string>
<string name="revanced_ryd_compact_layout_summary_on">Lideknap stylet for mindste bredde</string>
@@ -892,15 +942,20 @@ Denne funktion fungerer bedst med en videokvalitet på 720p eller lavere og ved
<string name="revanced_sb_square_layout_sum_on">Knapper og kontrolelementer er firkantede</string>
<string name="revanced_sb_square_layout_sum_off">Knapper og kontrolelementer er afrundede</string>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title' -->
<string name="revanced_sb_enable_compact_skip_button">Brug kompakt Spring over-knap</string>
<string name="revanced_sb_enable_compact_skip_button_sum_on">Skip knap stylet for mindste bredde</string>
<string name="revanced_sb_enable_compact_skip_button_sum_off">Skip knap stylet for bedste udseende</string>
<string name="revanced_sb_enable_auto_hide_skip_segment_button">Skjul automatisk Spring over-knap</string>
<string name="revanced_sb_enable_auto_hide_skip_segment_button_sum_on">Skip knap skjuler efter et par sekunder</string>
<string name="revanced_sb_enable_auto_hide_skip_segment_button_sum_off">Spring over-knappen vises for hele segmentet</string>
<string name="revanced_sb_general_skiptoast">Vis en toast ved spring</string>
<string name="revanced_sb_general_skiptoast_sum_on">Toast vises, når et segment automatisk springes over. Tryk her for at se et eksempel</string>
<string name="revanced_sb_general_skiptoast_sum_off">Toast er ikke vist. Tryk her for at se et eksempel</string>
<string name="revanced_sb_general_time_without">Vis videolængde uden segmenter</string>
<string name="revanced_sb_general_time_without_sum_on">Videolængde minus alle segmenter, vist i parentes ved siden af den fulde videolængde</string>
<string name="revanced_sb_general_time_without_sum_off">Fuld videolængde vist</string>
<string name="revanced_sb_create_segment_category">Opretter nye segmenter</string>
<string name="revanced_sb_enable_create_segment">Vis Opret nyt segment-knap</string>
<string name="revanced_sb_enable_create_segment_sum_on">Opret ny segmentknap vises</string>
<string name="revanced_sb_enable_create_segment_sum_off">Opret ny segmentknap vises ikke</string>
<string name="revanced_sb_general_adjusting">Juster nyt segment trin</string>
@@ -994,6 +1049,7 @@ Dit bruger-id er som en adgangskode, og det må aldrig deles.
<string name="revanced_sb_skipped_multiple_segments">Oversprunget over flere segmenter</string>
<string name="revanced_sb_skip_automatically">Spring automatisk over</string>
<string name="revanced_sb_skip_automatically_once">Spring automatisk over én gang</string>
<string name="revanced_sb_skip_showbutton">Vis en Spring over-knap</string>
<string name="revanced_sb_skip_seekbaronly">Vis i søgelinjen</string>
<string name="revanced_sb_skip_ignore">Deaktivér</string>
<string name="revanced_sb_submit_failed_invalid">Kan ikke indsende segment: %s</string>
@@ -1021,6 +1077,9 @@ Eksisterer allerede"</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>
<string name="revanced_sb_new_segment_mark_time_as_question">Sæt %s som start eller afslutning af et nyt segment?</string>
<string name="revanced_sb_new_segment_mark_start">Start</string>
<string name="revanced_sb_new_segment_mark_end">Slut</string>
<string name="revanced_sb_new_segment_now">Nu</string>
<string name="revanced_sb_new_segment_time_start">Tidspunkt for segmentet begynder på</string>
<string name="revanced_sb_new_segment_time_end">Tidspunkt for segmentet slutter på</string>
<string name="revanced_sb_new_segment_confirm_title">Er tiderne korrekte?</string>
@@ -1041,6 +1100,7 @@ Er du klar til at indsende?"</string>
<string name="revanced_sb_new_segment_edit_by_hand_parse_error">Ugyldig tid givet</string>
<string name="revanced_sb_stats_title">Statistik</string>
<!-- Shown in the settings preferences, and translations can be any text length. -->
<string name="revanced_sb_stats_connection_failure">Statistikker er midlertidigt ikke tilgængelige (API er nede)</string>
<string name="revanced_sb_stats_loading">Indlæser...</string>
<string name="revanced_sb_stats_sb_disabled">SponsorBloker er deaktiveret</string>
<string name="revanced_sb_stats_username">Dit brugernavn: &lt;b&gt;%s&lt;/b&gt;</string>
@@ -1093,6 +1153,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.01.34 - Gendan gamle navigationsikoner</string>
</patch>
<patch id="layout.startpage.changeStartPagePatch">
<string name="revanced_change_start_page_title">Skift startside</string>
@@ -1201,6 +1262,9 @@ 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>
<string name="splash_screen_animation_style_title">Splash screens udseende</string>
<string name="splash_screen_animation_style_entry_1">Farve</string>
<string name="splash_screen_animation_style_entry_2">Sort og hvid</string>
<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>
@@ -1250,9 +1314,13 @@ Tryk her for at lære mere om DeArrow"</string>
<string name="revanced_alt_thumbnail_stills_time_entry_2">Midten af video</string>
<string name="revanced_alt_thumbnail_stills_time_entry_3">Slut på video</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 er midlertidigt ikke tilgængelig (statuskode: %s)</string>
<string name="revanced_alt_thumbnail_dearrow_error_generic">DeArrow er midlertidigt ikke tilgængelig</string>
</patch>
<patch id="misc.announcements.announcementsPatch">
<string name="revanced_announcements_title">Vis ReVanced meddelelser</string>
<string name="revanced_announcements_summary_on">Meddelelser ved opstart vises</string>
<string name="revanced_announcements_summary_off">Meddelelser ved opstart vises ikke</string>
<string name="revanced_announcements_enabled_summary">Vis meddelelser ved opstart</string>
<string name="revanced_announcements_connection_failed">Kunne ikke forbinde til udbyder af annonceringer</string>
<string name="revanced_announcements_dialog_dismiss">Luk</string>
@@ -1342,7 +1410,7 @@ Aktivering af dette kan låse op for højere videokvalitet"</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Vis hastigheds dialogknap</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Knap vises</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Knappen vises. Tryk og hold for at nulstille afspilningshastigheden til standard.</string>
<string name="revanced_playback_speed_dialog_button_summary_off">Knap vises ikke</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1354,6 +1422,7 @@ Aktivering af dette kan låse op for højere videokvalitet"</string>
<string name="revanced_custom_playback_speeds_invalid">Brugerdefinerede hastigheder skal være mindre end %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Ugyldige brugerdefinerede afspilningshastigheder</string>
<string name="revanced_custom_playback_speeds_auto">Automatisk</string>
<string name="revanced_custom_playback_speeds_reset_toast">Afspilningshastighed nulstillet til: %s</string>
<string name="revanced_speed_tap_and_hold_title">Brugerdefineret hastighed, når du holder den nede</string>
<string name="revanced_speed_tap_and_hold_summary">Afspilningshastighed mellem 0-8</string>
</patch>

View File

@@ -307,9 +307,9 @@ Sie werden nicht über unerwartete Ereignisse informiert."</string>
<string name="revanced_hide_comments_create_a_short_button_title">\'Verknüpfung erstellen\'-Button ausblenden</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">Schaltfläche \" Short erstellen\" ist ausgeblendet</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">Schaltfläche \" Short erstellen\" wird angezeigt</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Emoji- und Zeitstempel-Buttons ausblenden</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Emoji- und Zeitstempel-Buttons sind ausgeblendet</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Emoji- und Zeitstempel-Buttons werden angezeigt</string>
<string name="revanced_hide_comments_timestamp_button_title">Timestamp-Button ausblenden</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Timestamp-Button ist ausgeblendet</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Timestamp-Button wird angezeigt</string>
<string name="revanced_hide_comments_preview_comment_title">Vorschaukommentar ausblenden</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Vorschaukommentar ist ausgeblendet</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Vorschau des Kommentars wird angezeigt</string>
@@ -674,6 +674,9 @@ Um das Audiotrack-Menü anzuzeigen, ändere \"Video-Streams fälschen\" zu iOS T
<string name="revanced_hide_autoplay_button_title">Autoplay-Button ausblenden</string>
<string name="revanced_hide_autoplay_button_summary_on">Autoplay Button ist ausgeblendet</string>
<string name="revanced_hide_autoplay_button_summary_off">Autoplay Button wird angezeigt</string>
<string name="revanced_hide_player_control_buttons_background_title">Hintergrund der Player-Steuerungstasten ausblenden</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">Hintergrund der Player-Steuerungstasten ist ausgeblendet</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">Hintergrund der Player-Steuerungstasten wird angezeigt</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Endkarte ausblenden</string>
@@ -743,6 +746,9 @@ Um das Audiotrack-Menü anzuzeigen, ändere \"Video-Streams fälschen\" zu iOS T
<string name="revanced_hide_shorts_location_label_title">Standortbezeichnung ausblenden</string>
<string name="revanced_hide_shorts_location_label_summary_on">Ortsbezeichnung ist ausgeblendet</string>
<string name="revanced_hide_shorts_location_label_summary_off">Ortsbezeichnung wird angezeigt</string>
<string name="revanced_hide_shorts_preview_comment_title">Kommentarvorschau ausblenden</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Vorschaukommentar ist ausgeblendet</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Vorschaukommentar wird angezeigt</string>
<string name="revanced_hide_shorts_save_sound_button_title">\'Musik speichern\'-Button ausblenden</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">Musikspeicher Button ist ausgeblendet</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">Musikspeicher Button wird angezeigt</string>
@@ -755,6 +761,9 @@ Um das Audiotrack-Menü anzuzeigen, ändere \"Video-Streams fälschen\" zu iOS T
<string name="revanced_hide_shorts_green_screen_button_title">Green-Screen-Button ausblenden</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">Grünbildschirm-Taste ist ausgeblendet</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">Grünbildschirm-Taste wird angezeigt</string>
<string name="revanced_hide_shorts_new_posts_button_title">Schaltfläche \"Neue Beiträge ausblenden\"</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">Schaltfläche \"Neue Beiträge\" wird angezeigt</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">Schaltfläche \"Neue Beiträge\" ist ausgeblendet</string>
<string name="revanced_hide_shorts_hashtag_button_title">Hashtag Button ausblenden</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">Hashtag Button ist ausgeblendet</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">Hashtag Button wird angezeigt</string>
@@ -1246,6 +1255,9 @@ Zum Erweitern oder Schließen wischen"</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>
<string name="splash_screen_animation_style_title">Art des Begrüßungsbildschirms</string>
<string name="splash_screen_animation_style_entry_1">Farbe</string>
<string name="splash_screen_animation_style_entry_2">Schwarz und Weiß</string>
<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>
@@ -1391,7 +1403,7 @@ Durch Aktivieren dieser Option können höhere Videoqualitäten freigeschaltet w
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Zeige Geschwindigkeitsdialog Taste</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Button wird angezeigt</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Die Schaltfläche wird angezeigt. Tippen und halten, um die Wiedergabegeschwindigkeit auf die Standardeinstellung zurückzusetzen.</string>
<string name="revanced_playback_speed_dialog_button_summary_off">Button wird nicht angezeigt</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1403,6 +1415,7 @@ Durch Aktivieren dieser Option können höhere Videoqualitäten freigeschaltet w
<string name="revanced_custom_playback_speeds_invalid">Benutzerdefinierte Geschwindigkeiten müssen kleiner als %s sein</string>
<string name="revanced_custom_playback_speeds_parse_exception">Ungültige benutzerdefinierte Wiedergabegeschwindigkeiten</string>
<string name="revanced_custom_playback_speeds_auto">Autom</string>
<string name="revanced_custom_playback_speeds_reset_toast">Wiedergabegeschwindigkeit zurückgesetzt auf: %s</string>
<string name="revanced_speed_tap_and_hold_title">Benutzerdefinierte Geschwindigkeit bei Tippen und Halten</string>
<string name="revanced_speed_tap_and_hold_summary">Abspielgeschwindigkeit zwischen 0-8x</string>
</patch>

View File

@@ -313,9 +313,9 @@ Second \"item\" text"</string>
<string name="revanced_hide_comments_create_a_short_button_title">Κουμπί «Δημιουργία Short»</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">Κρυμμένο</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">Εμφανίζεται</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Κουμπιά χρονοσήμανσης και emoji</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Κρυμμένα</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Εμφανίζονται</string>
<string name="revanced_hide_comments_timestamp_button_title">Κουμπί χρονοσήμανσης</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Κρυμμένο</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Εμφανίζεται</string>
<string name="revanced_hide_comments_preview_comment_title">Προεπισκόπηση σχολίου</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Κρυμμένη</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Εμφανίζεται</string>
@@ -683,6 +683,9 @@ Second \"item\" text"</string>
<string name="revanced_hide_autoplay_button_title">Κουμπί αυτόματης αναπαραγωγής</string>
<string name="revanced_hide_autoplay_button_summary_on">Κρυμμένο</string>
<string name="revanced_hide_autoplay_button_summary_off">Εμφανίζεται</string>
<string name="revanced_hide_player_control_buttons_background_title">Φόντο κουμπιών ελέγχου οθόνης αναπαραγωγής</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">Κρυμμένο</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">Εμφανίζεται</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Κάρτες τελικής οθόνης</string>
@@ -752,6 +755,9 @@ Second \"item\" text"</string>
<string name="revanced_hide_shorts_location_label_title">Ετικέτα τοποθεσίας</string>
<string name="revanced_hide_shorts_location_label_summary_on">Κρυμμένη</string>
<string name="revanced_hide_shorts_location_label_summary_off">Εμφανίζεται</string>
<string name="revanced_hide_shorts_preview_comment_title">Προεπισκόπηση σχολίου</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Κρυμμένη</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Εμφανίζεται</string>
<string name="revanced_hide_shorts_save_sound_button_title">Κουμπί «Αποθήκευση μουσικής»</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">Κρυμμένο</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">Εμφανίζεται</string>
@@ -764,6 +770,9 @@ Second \"item\" text"</string>
<string name="revanced_hide_shorts_green_screen_button_title">Κουμπί «Green screen»</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">Κρυμμένο</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">Εμφανίζεται</string>
<string name="revanced_hide_shorts_new_posts_button_title">Κουμπί «Νέες αναρτήσεις»</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">Εμφανίζεται</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">Κρυμμένο</string>
<string name="revanced_hide_shorts_hashtag_button_title">Κουμπί hashtag</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">Κρυμμένο</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">Εμφανίζεται</string>
@@ -1254,6 +1263,9 @@ 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>
<string name="splash_screen_animation_style_title">Στυλ οθόνης εκκίνησης</string>
<string name="splash_screen_animation_style_entry_1">Χρωματιστή</string>
<string name="splash_screen_animation_style_entry_2">Ασπρόμαυρη</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>
@@ -1397,7 +1409,7 @@ Second \"item\" text"</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Εμφάνιση κουμπιού αλλαγής ταχύτητας</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Το κουμπί εμφανίζεται</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Το κουμπί εμφανίζεται. Πατήστε παρατεταμένα για επαναφορά της ταχύτητας αναπαραγωγής στην προεπιλογή</string>
<string name="revanced_playback_speed_dialog_button_summary_off">Το κουμπί δεν εμφανίζεται</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1409,6 +1421,7 @@ Second \"item\" text"</string>
<string name="revanced_custom_playback_speeds_invalid">Οι ταχύτητες πρέπει να είναι μικρότερες από %sx</string>
<string name="revanced_custom_playback_speeds_parse_exception">Μη έγκυρες προσαρμοσμένες ταχύτητες αναπαραγωγής</string>
<string name="revanced_custom_playback_speeds_auto">Αυτόματη</string>
<string name="revanced_custom_playback_speeds_reset_toast">Η ταχύτητα αναπαραγωγής επαναφέρθηκε σε: %s</string>
<string name="revanced_speed_tap_and_hold_title">Προσαρμοσμένη ταχύτητα παρατεταμένου πατήματος</string>
<string name="revanced_speed_tap_and_hold_summary">Ταχύτητα αναπαραγωγής μεταξύ 0-8</string>
</patch>

View File

@@ -308,9 +308,9 @@ Sin embargo, si activas esto, también se registrarán algunos datos del usuario
<string name="revanced_hide_comments_create_a_short_button_title">Ocultar botón \'Crear un Short\'</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">El botón Crear un Short está oculto</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">Se muestra el botón Crear un Short</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Ocultar los botones de emoji y marca de tiempo</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Los botones de emoji y marca de tiempo están ocultos</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Se muestran los botones de emoji y marca de tiempo</string>
<string name="revanced_hide_comments_timestamp_button_title">Ocultar botón de marca de tiempo</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Botón de marca de tiempo oculto</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Botón de marca de tiempo mostrado</string>
<string name="revanced_hide_comments_preview_comment_title">Ocultar comentario de vista previa</string>
<string name="revanced_hide_comments_preview_comment_summary_on">El comentario de la vista previa está oculto</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Vista previa del comentario se muestra</string>
@@ -678,6 +678,9 @@ Para mostrar el menú de la pista de audio, cambia \"Suplantar transmisiones de
<string name="revanced_hide_autoplay_button_title">Ocultar el botón Reproducción automática</string>
<string name="revanced_hide_autoplay_button_summary_on">El botón de reproducción automática está oculto</string>
<string name="revanced_hide_autoplay_button_summary_off">Se muestra el botón de reproducción automática</string>
<string name="revanced_hide_player_control_buttons_background_title">Ocultar el fondo de los botones de control del reproductor</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">El fondo de los botones de control del reproductor está oculto</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">Se muestra el fondo de los botones de control del reproductor</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Ocultar tarjetas de pantalla final</string>
@@ -747,6 +750,9 @@ Para mostrar el menú de la pista de audio, cambia \"Suplantar transmisiones de
<string name="revanced_hide_shorts_location_label_title">Ocultar etiqueta de ubicación</string>
<string name="revanced_hide_shorts_location_label_summary_on">Etiqueta de ubicación oculta</string>
<string name="revanced_hide_shorts_location_label_summary_off">Etiqueta de ubicación mostrada</string>
<string name="revanced_hide_shorts_preview_comment_title">Ocultar comentario de vista previa</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">El comentario de vista previa está oculto</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Se muestra la vista previa del comentario</string>
<string name="revanced_hide_shorts_save_sound_button_title">Ocultar el botón Guardar música</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">El botón Guardar música está oculto</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">Mostrar el botón de guardar música</string>
@@ -759,6 +765,9 @@ Para mostrar el menú de la pista de audio, cambia \"Suplantar transmisiones de
<string name="revanced_hide_shorts_green_screen_button_title">Ocultar el botón Pantalla verde</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">El botón verde de pantalla está oculto</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">Se muestra el botón verde de pantalla</string>
<string name="revanced_hide_shorts_new_posts_button_title">Ocultar el botón Publicaciones nuevas</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">Se muestra el botón Publicaciones nuevas</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">El botón Publicaciones nuevas está oculto</string>
<string name="revanced_hide_shorts_hashtag_button_title">Ocultar botón de hashtag</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">El botón Hashtag está oculto</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">Se muestra el botón Hashtag</string>
@@ -1241,6 +1250,9 @@ Desliza el dedo 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>
<string name="splash_screen_animation_style_title">Estilo de la pantalla de presentación</string>
<string name="splash_screen_animation_style_entry_1">Color</string>
<string name="splash_screen_animation_style_entry_2">Blanco y negro</string>
<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>
@@ -1386,7 +1398,7 @@ Habilitar esto puede desbloquear calidades de vídeo más altas"</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>
<string name="revanced_playback_speed_dialog_button_summary_on">Se muestra el botón</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Se muestra el botón. Mantén pulsado para restablecer la velocidad de reproducción predeterminada</string>
<string name="revanced_playback_speed_dialog_button_summary_off">El botón no se muestra</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1398,6 +1410,7 @@ Habilitar esto puede desbloquear calidades de vídeo más altas"</string>
<string name="revanced_custom_playback_speeds_invalid">Las velocidades personalizadas deben ser menores que %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Velocidades de reproducción personalizadas no válidas</string>
<string name="revanced_custom_playback_speeds_auto">Automático</string>
<string name="revanced_custom_playback_speeds_reset_toast">Velocidad de reproducción restablecida a: %s</string>
<string name="revanced_speed_tap_and_hold_title">Velocidad personalizada al tocar y mantener</string>
<string name="revanced_speed_tap_and_hold_summary">Velocidad de reproducción entre 0-8</string>
</patch>

View File

@@ -311,9 +311,9 @@ Teid ei teavitata ühestki ootamatust sündmusest."</string>
<string name="revanced_hide_comments_create_a_short_button_title">Peida nupp \"Loo lühis\"</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">Nupp Loo lühivideo on peidetud</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">Nupp Loo lühivideo on kuvatud</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Peida emotikonide ja ajatempli nupud</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Emotikonide ja ajatempli nupud on peidetud</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Emotikonide ja ajatempli nupud on kuvatud</string>
<string name="revanced_hide_comments_timestamp_button_title">Peida ajatempli nupp</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Ajatempli nupp on peidetud</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Ajatempli nupp on nähtav</string>
<string name="revanced_hide_comments_preview_comment_title">Peida eelvaate kommentaar</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Eelvaate kommentaar on peidetud</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Eelvaate kommentaar on kuvatud</string>
@@ -681,6 +681,9 @@ Heliriba menüü kuvamiseks muutke valikut „Võltsitud videovoogedastus“ vä
<string name="revanced_hide_autoplay_button_title">Peida Automaatse esitamise nupp</string>
<string name="revanced_hide_autoplay_button_summary_on">Automaatse esituse nupp on peidetud</string>
<string name="revanced_hide_autoplay_button_summary_off">Automaatse esituse nupp on nähtav</string>
<string name="revanced_hide_player_control_buttons_background_title">Peida pleieri juhtnuppude taust</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">Pleieri juhtnuppude taust on peidetud</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">Pleieri juhtnuppude taust on näidatud</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Peida lõpukujunduse kaardid</string>
@@ -750,6 +753,9 @@ Heliriba menüü kuvamiseks muutke valikut „Võltsitud videovoogedastus“ vä
<string name="revanced_hide_shorts_location_label_title">Peida asukoha silt</string>
<string name="revanced_hide_shorts_location_label_summary_on">Asukoha silt on peidetud</string>
<string name="revanced_hide_shorts_location_label_summary_off">Asukoha silt on nähtav</string>
<string name="revanced_hide_shorts_preview_comment_title">Peida eelvaate kommentaar</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Kommentaari eelvaade on peidetud</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Kommentaari eelvaade on nähtav</string>
<string name="revanced_hide_shorts_save_sound_button_title">Peida Salvesta muusika nupp</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">Muusika salvestamise nupp on peidetud</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">Muusika salvestamise nupp on nähtav</string>
@@ -762,6 +768,9 @@ Heliriba menüü kuvamiseks muutke valikut „Võltsitud videovoogedastus“ vä
<string name="revanced_hide_shorts_green_screen_button_title">Peida Roheline ekraan nupp</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">Rohelise ekraani nupp on peidetud</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">Rohelise ekraani nupp on nähtav</string>
<string name="revanced_hide_shorts_new_posts_button_title">Peida uute postituste nupp</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">Uute postituste nupp on nähtav</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">Uute postituste nupp on peidetud</string>
<string name="revanced_hide_shorts_hashtag_button_title">Peida räsimärgi nupp</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">Räsimärgi nupp on peidetud</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">Räsimärgi nupp on nähtav</string>
@@ -1253,6 +1262,9 @@ Laiendamiseks või sulgemiseks libista"</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>
<string name="splash_screen_animation_style_title">Sissejuhatava ekraani stiil</string>
<string name="splash_screen_animation_style_entry_1">Värv</string>
<string name="splash_screen_animation_style_entry_2">Mustvalge</string>
<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>
@@ -1398,7 +1410,7 @@ Selle lubamine võib avada kõrgema video kvaliteedi"</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Kuva kiiruse dialoogi nupp</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Nupp kuvatakse</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Nupp on nähtaval. Puudutage ja hoidke all, et taastada taasesituse kiirus vaikeväärtusele</string>
<string name="revanced_playback_speed_dialog_button_summary_off">Nuppi ei kuvata</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1410,6 +1422,7 @@ Selle lubamine võib avada kõrgema video kvaliteedi"</string>
<string name="revanced_custom_playback_speeds_invalid">Kohandatud kiirused peavad olema alla %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Kehtetud kohandatud video taasesituse kiirused</string>
<string name="revanced_custom_playback_speeds_auto">Automaatne</string>
<string name="revanced_custom_playback_speeds_reset_toast">Taasesituse kiirus on lähtestatud: %s</string>
<string name="revanced_speed_tap_and_hold_title">Kohandatud puuduta ja hoia kiiruse tase</string>
<string name="revanced_speed_tap_and_hold_summary">Taasesituse kiirus vahemikus 0-8</string>
</patch>

View File

@@ -88,9 +88,13 @@ Second \"item\" text"</string>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- '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_summary_on">دکمه پنهان است</string>
<string name="revanced_hide_join_membership_button_summary_off">دکمه نمایان است</string>
<!-- 'For you' should be translated using the same localized wording YouTube displays. -->
<!-- '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_summary_on">دکمه پنهان است</string>
<string name="revanced_hide_notify_me_button_summary_off">دکمه نمایان است</string>
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- 'Show more' should be translated with the same localized wording that YouTube displays.
This button usually appears when searching for a YT creator. -->
@@ -210,9 +214,12 @@ Second \"item\" text"</string>
</patch>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch">
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title' -->
<string name="revanced_sb_general">عمومی</string>
<string name="revanced_sb_settings_copy">رونوشت‌</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. -->
<!-- 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. -->
<string name="revanced_sb_about_title">درباره</string>
</patch>
<patch id="layout.formfactor.changeFormFactorPatch">
</patch>
@@ -296,6 +303,10 @@ Second \"item\" text"</string>
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title' -->
</patch>
<patch id="misc.settings.settingsPatch">
<string name="revanced_about_title">درباره</string>
<string name="revanced_twitch_debug_title">گزارش عیب</string>
<string name="revanced_twitch_debug_summary_on">لاگ عیب فعال است</string>
<string name="revanced_twitch_debug_summary_off">لاگ عیب غیرفعال است</string>
</patch>
</app>
</resources>

View File

@@ -117,7 +117,7 @@ Napauta jatka-painiketta ja salli optimoinnin muutokset."</string>
<string name="revanced_debug_protobuffer_title">Loki protokollan puskuri</string>
<string name="revanced_debug_protobuffer_summary_on">Virheenkorjauslokit sisältävät proto-puskurin</string>
<string name="revanced_debug_protobuffer_summary_off">Virheenkorjauslokit eivät sisällä proto-puskuria</string>
<string name="revanced_debug_protobuffer_user_dialog_message">"Tämän asetuksen käyttöönotto kirjaa lisätietoja asettelusta, mm. joidenkin käyttöliittymäkomponenttien näyttötekstiä.
<string name="revanced_debug_protobuffer_user_dialog_message">"Tämän asetuksen käyttöönotto kirjaa lisätietoja asettelusta, mm. joidenkin käyttöliittymän osien näyttötekstiä.
Tämä voi auttaa komponenttien tunnistamisessa, kun luot mukautettuja suodattimia.
@@ -311,9 +311,9 @@ Et saa ilmoituksia odottamattomista tapahtumista."</string>
<string name="revanced_hide_comments_create_a_short_button_title">Piilota \"Luo Shorts-video\" -painike</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">Luo Shorts-video -painike on piilotettu</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">Luo Shorts-video -painike näytetään</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Piilota emoji- ja aikaleima-painikkeet</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Emoji- ja aikaleima-painikkeet on piilotettu</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Emoji- ja aikaleima-painikkeet näytetään</string>
<string name="revanced_hide_comments_timestamp_button_title">Piilota aikaleimapainike</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Aikaleimapainike on piilotettu</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Aikaleimapainike näytetään</string>
<string name="revanced_hide_comments_preview_comment_title">Piilota kommentin esikatselu</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Kommentin esikatselu on piilotettu</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Kommentin esikatselu näytetään</string>
@@ -327,15 +327,15 @@ Et saa ilmoituksia odottamattomista tapahtumista."</string>
<string name="revanced_hide_doodles_user_dialog_message">"YouTube Doodlet näkyvät muutamana päivänä vuodessa.
Jos Doodle näkyy tällä hetkellä alueellasi ja tämä piilotusasetus on käytössä, myös hakupalkin alla oleva suodatinpalkki piilotetaan."</string>
<string name="revanced_custom_filter_screen_title">Oma suodatin</string>
<string name="revanced_custom_filter_screen_summary">Piilota osia omilla suodattimilla</string>
<string name="revanced_custom_filter_title">Ota oma suodatin käyttöön</string>
<string name="revanced_custom_filter_summary_on">Oma suodatin on käytössä</string>
<string name="revanced_custom_filter_summary_off">Oma suodatin ei ole käytössä</string>
<string name="revanced_custom_filter_strings_title">Oma suodatin</string>
<string name="revanced_custom_filter_screen_title">Mukautettu suodatin</string>
<string name="revanced_custom_filter_screen_summary">Piilota osia mukautetuilla suodattimilla</string>
<string name="revanced_custom_filter_title">Ota mukautettu suodatin käyttöön</string>
<string name="revanced_custom_filter_summary_on">Mukautettu suodatin on käytössä</string>
<string name="revanced_custom_filter_summary_off">Mukautettu suodatin ei ole käytössä</string>
<string name="revanced_custom_filter_strings_title">Mukautettu suodatin</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">Luettelo komponentin polun rakentajan merkkijonoista suodatettavaksi uudella rivillä erotettuna</string>
<string name="revanced_custom_filter_toast_invalid_syntax">Virheellinen oma suodatin: %s</string>
<string name="revanced_custom_filter_toast_invalid_syntax">Virheellinen mukautettu suodatin: %s</string>
<string name="revanced_hide_keyword_content_screen_title">Piilota sisältöä avainsanojen mukaan</string>
<string name="revanced_hide_keyword_content_screen_summary">Piilota haku- ja syötevideoita avainsanasuodattimilla</string>
<string name="revanced_hide_keyword_content_home_title">Piilota koti-videoita avainsanojen mukaan</string>
@@ -750,6 +750,9 @@ Jos haluat nähdä sen, aseta \"Naamioi videovirrat\" iOS TV:ksi"</string>
<string name="revanced_hide_shorts_location_label_title">Piilota sijaintitieto</string>
<string name="revanced_hide_shorts_location_label_summary_on">Sijaintitieto on piilotettu</string>
<string name="revanced_hide_shorts_location_label_summary_off">Sijaintitieto näytetään</string>
<string name="revanced_hide_shorts_preview_comment_title">Piilota kommentin esikatselu</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Kommentin esikatselu on piilotettu</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Kommentin esikatselu näytetään</string>
<string name="revanced_hide_shorts_save_sound_button_title">Piilota Tallenna musiikki -painike</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">Tallenna musiikki -painike on piilotettu</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">Tallenna musiikki -painike näytetään</string>
@@ -1253,12 +1256,15 @@ 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>
<string name="revanced_seekbar_custom_color_title">Ota oma etenemispalkin väri käyttöön</string>
<string name="revanced_seekbar_custom_color_summary_on">Oma etenemispalkin väri näytetään</string>
<string name="splash_screen_animation_style_title">Aloitussivun tyyli</string>
<string name="splash_screen_animation_style_entry_1">Väri</string>
<string name="splash_screen_animation_style_entry_2">Musta ja valkoinen</string>
<string name="revanced_seekbar_custom_color_title">Ota mukautettu etenemispalkin väri käyttöön</string>
<string name="revanced_seekbar_custom_color_summary_on">Mukautettu etenemispalkin väri näytetään</string>
<string name="revanced_seekbar_custom_color_summary_off">Alkuperäinen etenemispalkin väri näytetään</string>
<string name="revanced_seekbar_custom_color_primary_title">Oma etenemispalkin väri</string>
<string name="revanced_seekbar_custom_color_primary_title">Mukautettu etenemispalkin väri</string>
<string name="revanced_seekbar_custom_color_primary_summary">Etenemispalkin väri</string>
<string name="revanced_seekbar_custom_color_accent_title">Oma etenemispalkin korostusväri</string>
<string name="revanced_seekbar_custom_color_accent_title">Mukautettu etenemispalkin korostusväri</string>
<string name="revanced_seekbar_custom_color_accent_summary">Etenemispalkin korostusväri</string>
<string name="revanced_seekbar_custom_color_invalid">Virheellinen etenemispalkin väriarvo</string>
</patch>
@@ -1398,19 +1404,20 @@ Tämä voi avata korkealaatuisemmat videot"</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Näytä nopeuden valintapainike</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Painike näytetään</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Painike näytetään. Napauta ja pidä pohjassa palauttaaksesi soiton nopeuden oletukseksi</string>
<string name="revanced_playback_speed_dialog_button_summary_off">Painiketta ei näytetä</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
<string name="revanced_custom_speed_menu_title">Oma toistonopeusvalikko</string>
<string name="revanced_custom_speed_menu_summary_on">Oma nopeusvalikko näytetään</string>
<string name="revanced_custom_speed_menu_summary_off">Omaa nopeusvalikkoa ei näytetä</string>
<string name="revanced_custom_playback_speeds_title">Omat toistonopeudet</string>
<string name="revanced_custom_playback_speeds_summary">Lisää tai muuta omia toistonopeuksia</string>
<string name="revanced_custom_playback_speeds_invalid">Omien nopeuksien tulee olla alle %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Virheelliset omat toistonopeudet</string>
<string name="revanced_custom_speed_menu_title">Mukautettu toistonopeusvalikko</string>
<string name="revanced_custom_speed_menu_summary_on">Mukautettu nopeusvalikko näytetään</string>
<string name="revanced_custom_speed_menu_summary_off">Mukautettua nopeusvalikkoa ei näytetä</string>
<string name="revanced_custom_playback_speeds_title">Mukautetut toistonopeudet</string>
<string name="revanced_custom_playback_speeds_summary">Lisää tai muuta mukautettuja toistonopeuksia</string>
<string name="revanced_custom_playback_speeds_invalid">Mukautettujen nopeuksien tulee olla alle %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Virheelliset mukautetut toistonopeudet</string>
<string name="revanced_custom_playback_speeds_auto">Automaattinen</string>
<string name="revanced_speed_tap_and_hold_title">Oma napauta ja pidä pohjassa -nopeus</string>
<string name="revanced_custom_playback_speeds_reset_toast">Toistonopeus palautettu: %s</string>
<string name="revanced_speed_tap_and_hold_title">Mukautettu napauta ja pidä pohjassa -nopeus</string>
<string name="revanced_speed_tap_and_hold_summary">Toistonopeus 08 välillä</string>
</patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch">

View File

@@ -311,9 +311,9 @@ Hindi ka aabisuhan ng anumang hindi inaasahang mga kaganapan."</string>
<string name="revanced_hide_comments_create_a_short_button_title">Itago ang butong \'Gumawa ng Short\'</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">Nakatago ang button na Gumawa ng isang Short</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">Ipinapakita ang button na Gumawa ng isang Short</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Itago ang mga button ng emoji at timestamp</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Nakatago ang mga button ng Emoji at timestamp</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Ipinapakita ang mga button ng Emoji at timestamp</string>
<string name="revanced_hide_comments_timestamp_button_title">Itago ang button na timestamp</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Nakatago ang button na timestamp</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Ipinapakita ang button na timestamp</string>
<string name="revanced_hide_comments_preview_comment_title">Itago ang preview na komento</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Nakatago ang preview ng komento</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Ang pag-preview ng komento ay ipinapakita</string>
@@ -679,6 +679,9 @@ Upang ipakita ang menu ng Audio track, baguhin ang 'Spoof video streams' sa iOS
<string name="revanced_hide_autoplay_button_title">Itago ang Autoplay button</string>
<string name="revanced_hide_autoplay_button_summary_on">Nakatago ang autoplay button</string>
<string name="revanced_hide_autoplay_button_summary_off">Ang autoplay na button ay ipinapakita</string>
<string name="revanced_hide_player_control_buttons_background_title">Itago ang background ng mga button ng kontrol ng player</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">Nakatago ang background ng mga button ng kontrol ng player</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">Ipinapakita ang background ng mga button ng kontrol ng player</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Itago ang mga end screen card</string>
@@ -748,6 +751,9 @@ Upang ipakita ang menu ng Audio track, baguhin ang 'Spoof video streams' sa iOS
<string name="revanced_hide_shorts_location_label_title">Itago ang label ng lokasyon</string>
<string name="revanced_hide_shorts_location_label_summary_on">Nakatago ang label ng lokasyon</string>
<string name="revanced_hide_shorts_location_label_summary_off">Ipinapakita ang label ng lokasyon</string>
<string name="revanced_hide_shorts_preview_comment_title">Itago ang komento sa preview</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Nakatago ang komento sa preview</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Ipinapakita ang preview na komento</string>
<string name="revanced_hide_shorts_save_sound_button_title">Itago ang Save music button</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">Ang buton ng pag-save ng musika ay nakatago</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">Ang buton ng pag-save ng musika ay ipinapakita</string>
@@ -760,6 +766,9 @@ Upang ipakita ang menu ng Audio track, baguhin ang 'Spoof video streams' sa iOS
<string name="revanced_hide_shorts_green_screen_button_title">Itago ang Green screen button</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">Nakatago ang pindutan ng \"Green screen\"</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">Ipinapakita ang pindutan ng \"Green screen\"</string>
<string name="revanced_hide_shorts_new_posts_button_title">Itago ang button na Mga bagong post</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">Ipinapakita ang button na Mga bagong post</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">Nakatago ang button na Mga bagong post</string>
<string name="revanced_hide_shorts_hashtag_button_title">Itago ang pindutan ng \"Hashtag\"</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">Nakatago ang pindutan ng \"Hashtag\"</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">Ipinapakita ang pindutan ng \"Hashtag\"</string>
@@ -1251,6 +1260,9 @@ Mag-swipe para 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>
<string name="splash_screen_animation_style_title">Estilo ng splash screen</string>
<string name="splash_screen_animation_style_entry_1">Kulay</string>
<string name="splash_screen_animation_style_entry_2">Itim at puti</string>
<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>
@@ -1396,7 +1408,7 @@ Ang pagpapagana nito ay maaaring magbukas ng mas mataas na kalidad ng video"</st
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Ipakita ang pindutan ng dialog ng bilis</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Ang pindutan ay ipinapakita</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Ipinapakita ang button. I-tap at i-hold para i-reset ang bilis ng pag-playback sa default</string>
<string name="revanced_playback_speed_dialog_button_summary_off">Hindi ipinapakita ang button</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1408,6 +1420,7 @@ Ang pagpapagana nito ay maaaring magbukas ng mas mataas na kalidad ng video"</st
<string name="revanced_custom_playback_speeds_invalid">Ang mga custom na bilis ay dapat na mas mababa sa %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Hindi wastong custom na bilis ng paglalaro</string>
<string name="revanced_custom_playback_speeds_auto">Awtomatik</string>
<string name="revanced_custom_playback_speeds_reset_toast">Na-reset ang bilis ng pag-playback sa: %s</string>
<string name="revanced_speed_tap_and_hold_title">Custom speed para sa pag-tap at pag-hold</string>
<string name="revanced_speed_tap_and_hold_summary">Tugtugin ang bilis ng playback sa pagitan ng 0-8</string>
</patch>

View File

@@ -311,9 +311,9 @@ Vous ne serez pas informé des événements inattendus."</string>
<string name="revanced_hide_comments_create_a_short_button_title">Masquer le bouton Créer un Short</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">Le bouton \"Créer un Short\" est masqué</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">Le bouton \"Créer un Short\" est affiché</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Masquer les boutons emoji et d\'horodatage</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Les boutons emoji et d\'horodatage sont masqués</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Les boutons emoji et d\'horodatage sont affichés</string>
<string name="revanced_hide_comments_timestamp_button_title">Masquer le bouton d\'horodatage</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Le bouton d\'horodatage est masqué</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Le bouton d\'horodatage est affiché</string>
<string name="revanced_hide_comments_preview_comment_title">Masquer le commentaire servant d\'aperçu</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Le commentaire servant d\'aperçu est masqué</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Le commentaire servant d\'aperçu est affiché</string>
@@ -681,6 +681,9 @@ Pour afficher le menu Piste audio, définissez \"Falsifier les flux vidéo\" sur
<string name="revanced_hide_autoplay_button_title">Masquer le bouton Lecture automatique</string>
<string name="revanced_hide_autoplay_button_summary_on">Le bouton Lecture automatique est masqué</string>
<string name="revanced_hide_autoplay_button_summary_off">Le bouton Lecture automatique est affiché</string>
<string name="revanced_hide_player_control_buttons_background_title">Masquer l\'arrière-plan des boutons de commande du lecteur</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">L\'arrière-plan des boutons de commande du lecteur est masqué</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">L\'arrière-plan des boutons de commande du lecteur est affiché</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Masquer les écrans de fin au format fiche</string>
@@ -750,6 +753,9 @@ Pour afficher le menu Piste audio, définissez \"Falsifier les flux vidéo\" sur
<string name="revanced_hide_shorts_location_label_title">Masquer le libellé de lieu</string>
<string name="revanced_hide_shorts_location_label_summary_on">Le libellé de lieu est masqué</string>
<string name="revanced_hide_shorts_location_label_summary_off">Le libellé de lieu est affiché</string>
<string name="revanced_hide_shorts_preview_comment_title">Masquer le commentaire servant d\'aperçu</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Le commentaire servant d\'aperçu est masqué</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Le commentaire servant d\'aperçu est affiché</string>
<string name="revanced_hide_shorts_save_sound_button_title">Masquer le bouton Enregistrer la musique</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">Le bouton Enregistrer la musique est masqué</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">Le bouton Enregistrer la musique est affiché</string>
@@ -762,6 +768,9 @@ Pour afficher le menu Piste audio, définissez \"Falsifier les flux vidéo\" sur
<string name="revanced_hide_shorts_green_screen_button_title">Masquer le bouton Écran vert</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">Le bouton Écran vert est masqué</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">Le bouton Écran vert est affiché</string>
<string name="revanced_hide_shorts_new_posts_button_title">Masquer le bouton Nouveaux posts</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">Le bouton Nouveaux posts est affiché</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">Le bouton Nouveaux posts est masqué</string>
<string name="revanced_hide_shorts_hashtag_button_title">Masquer le bouton de hashtag</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">Le bouton de hashtag est masqué</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">Le bouton de hashtag est affiché</string>
@@ -1252,6 +1261,9 @@ Balayez pour agrandir 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>
<string name="splash_screen_animation_style_title">Style de l\'écran de lancement</string>
<string name="splash_screen_animation_style_entry_1">Couleur </string>
<string name="splash_screen_animation_style_entry_2">Noir et blanc</string>
<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>
@@ -1397,7 +1409,7 @@ Activer cette option peut déverrouiller des qualités vidéo supérieures"</str
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Afficher un bouton Vitesse</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Le bouton est affiché</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Le bouton est affiché. Appuyez longuement dessus pour rétablir la vitesse de lecture par défaut.</string>
<string name="revanced_playback_speed_dialog_button_summary_off">Le bouton n\'est pas affiché</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1409,6 +1421,7 @@ Activer cette option peut déverrouiller des qualités vidéo supérieures"</str
<string name="revanced_custom_playback_speeds_invalid">Il doit y avoir moins de %s vitesses personnalisées</string>
<string name="revanced_custom_playback_speeds_parse_exception">Vitesses de lecture personnalisées invalides</string>
<string name="revanced_custom_playback_speeds_auto">Automatique</string>
<string name="revanced_custom_playback_speeds_reset_toast">Vitesse de lecture réinitialisée à : %s</string>
<string name="revanced_speed_tap_and_hold_title">Vitesse personnalisée d\'accélération sur appui long</string>
<string name="revanced_speed_tap_and_hold_summary">Vitesse de lecture comprise entre 0 et 8</string>
</patch>

View File

@@ -311,9 +311,9 @@ Ní chuirfear ar an eolas thú faoi aon imeachtaí gan choinne."</string>
<string name="revanced_hide_comments_create_a_short_button_title">Folaigh an cnaipe \'Cruthaigh Short\'</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">Tá cnaipe Cruthaigh gearrscéal i bhfolach</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">Taispeántar cnaipe Cruthaigh gearrscéal</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Folaigh cnaipí emoji agus amlínte</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Tá cnaipí emoji agus amlínte i bhfolach</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Taispeántar cnaipí emoji agus amlínte</string>
<string name="revanced_hide_comments_timestamp_button_title">Folaigh cnaipe an stampa ama</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Tá cnaipe an stampa ama i bhfolach</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Taispeántar cnaipe an stampa ama</string>
<string name="revanced_hide_comments_preview_comment_title">Folaigh trácht réamhamharc</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Tá trácht réamhamhar i bhfolach</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Taispeántar trácht réamhamharc</string>
@@ -681,6 +681,9 @@ Chun roghchlár na rian fuaime a thaispeáint, athraigh 'Srutháin físeáin bhr
<string name="revanced_hide_autoplay_button_title">Folaigh cnaipe an Uathoimh</string>
<string name="revanced_hide_autoplay_button_summary_on">Tá cnaipe Autoplay i bhfolach</string>
<string name="revanced_hide_autoplay_button_summary_off">Taispeántar cnaipe Autoplay</string>
<string name="revanced_hide_player_control_buttons_background_title">Folaigh cúlra cnaipí rialaithe an tseinnteora</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">Tá cúlra cnaipí rialaithe an tseinnteora folaithe</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">Taispeántar cúlra cnaipí rialaithe an tseinnteora</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Folaigh cártaí scáileáin deireadh</string>
@@ -750,6 +753,9 @@ Chun roghchlár na rian fuaime a thaispeáint, athraigh 'Srutháin físeáin bhr
<string name="revanced_hide_shorts_location_label_title">Folaigh lipéad suímh</string>
<string name="revanced_hide_shorts_location_label_summary_on">Tá lipéad suímh i bhfolach</string>
<string name="revanced_hide_shorts_location_label_summary_off">Taispeántar lipéad suímh</string>
<string name="revanced_hide_shorts_preview_comment_title">Folaigh réamhamharc ar an nóta tráchta</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Tá réamhamharc ar an nóta tráchta i bhfolach</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Taispeántar réamhamharc ar an nóta tráchta</string>
<string name="revanced_hide_shorts_save_sound_button_title">Folaigh cnaipe \'Sábháil ceol\'</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">Tá an cnaipe Sábháil ceoil i bhfolach</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">Taispeántar an cnaipe Sábháil ceoil</string>
@@ -762,6 +768,9 @@ Chun roghchlár na rian fuaime a thaispeáint, athraigh 'Srutháin físeáin bhr
<string name="revanced_hide_shorts_green_screen_button_title">Folaigh cnaipe \'Scáileán glas\'</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">Tá cnaipe an scáileáin glas i bhfolach</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">Taispeántar cnaipe an scáileáin glas</string>
<string name="revanced_hide_shorts_new_posts_button_title">Folaigh cnaipe na bpostálacha nua</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">Taispeántar cnaipe na bpostálacha nua</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">Tá cnaipe na bpostálacha nua i bhfolach</string>
<string name="revanced_hide_shorts_hashtag_button_title">Folaigh an cnaipe hashtag</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">Tá cnaipe hashtag i bhfolach</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">Taispeántar an cnaipe hashtag</string>
@@ -1253,6 +1262,9 @@ Svaidhpeáil 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>
<string name="splash_screen_animation_style_title">Stíl scáileáin splancais</string>
<string name="splash_screen_animation_style_entry_1">Dath</string>
<string name="splash_screen_animation_style_entry_2">Dubh agus bán</string>
<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>
@@ -1398,7 +1410,7 @@ Is féidir le seo caighdeáin físeáin níos airde a dhíghlasáil"</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Taispeáin cnaipe dialóg luais</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Taispeántar an cnaipe</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Taispeántar an cnaipe. Tapáil agus coinnigh chun luas athsheinm a athshocrú go réamhshocrú</string>
<string name="revanced_playback_speed_dialog_button_summary_off">Ní thaispeántar an cnaipe</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1410,6 +1422,7 @@ Is féidir le seo caighdeáin físeáin níos airde a dhíghlasáil"</string>
<string name="revanced_custom_playback_speeds_invalid">Ní mór luas saincheaptha a bheith níos lú ná %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Luasanna athsheinm saincheaptha neamhbhailí</string>
<string name="revanced_custom_playback_speeds_auto">Uathoibríoch</string>
<string name="revanced_custom_playback_speeds_reset_toast">Athshocraíodh luas athsheinm go: %s</string>
<string name="revanced_speed_tap_and_hold_title">Luas tap is agus greim</string>
<string name="revanced_speed_tap_and_hold_summary">Luas athsheinm eatarthu 0-8</string>
</patch>

View File

@@ -311,9 +311,9 @@ Nem fog értesülni semmilyen váratlan eseményről."</string>
<string name="revanced_hide_comments_create_a_short_button_title">A „Rövid létrehozása” gomb elrejtése</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">A Rövidfilm létrehozása gomb rejtett</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">A Rövidfilm létrehozása gomb látható</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Hangulatjel- és időbélyegző gombok elrejtése</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">A hangulatjel- és időbélyegző gombok rejtettek</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">A hangulatjel- és időbélyegző gombok láthatók</string>
<string name="revanced_hide_comments_timestamp_button_title">Az időbélyegző gomb elrejtése</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Az időbélyegző gomb el van rejtve</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Az időbélyegző gomb megjelenik</string>
<string name="revanced_hide_comments_preview_comment_title">Megjegyzés előnézet elrejtése</string>
<string name="revanced_hide_comments_preview_comment_summary_on">A megjegyzés előnézet el van rejtve</string>
<string name="revanced_hide_comments_preview_comment_summary_off">A megjegyzés előnézet megjelenik</string>
@@ -681,6 +681,9 @@ Az audiosáv menü megjelenítéséhez módosítsa a \"Videófolyamok hamisítá
<string name="revanced_hide_autoplay_button_title">Automatikus lejátszás gomb elrejtése</string>
<string name="revanced_hide_autoplay_button_summary_on">Az automatikus lejátszás gomb el van rejtve</string>
<string name="revanced_hide_autoplay_button_summary_off">Az automatikus lejátszás gomb látható</string>
<string name="revanced_hide_player_control_buttons_background_title">A lejátszó vezérlőgombjainak hátterének elrejtése</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">A lejátszó vezérlőgombjainak háttere rejtve</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">A lejátszó vezérlőgombjainak háttere látható</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Záróképernyő kártyák elrejtése</string>
@@ -750,6 +753,9 @@ Az audiosáv menü megjelenítéséhez módosítsa a \"Videófolyamok hamisítá
<string name="revanced_hide_shorts_location_label_title">Helycímke elrejtése</string>
<string name="revanced_hide_shorts_location_label_summary_on">A helycízke címke el van rejtve</string>
<string name="revanced_hide_shorts_location_label_summary_off">A helycízke címke meg van jelenítve</string>
<string name="revanced_hide_shorts_preview_comment_title">Elrejtés előnézeti megjegyzés</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Az előnézeti megjegyzés rejtve van</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Megjelenik a megjegyzés előnézete</string>
<string name="revanced_hide_shorts_save_sound_button_title">Zene mentése gomb elrejtése</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">A zene mentés gomb el van rejtve</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">A zene mentés gomb látható</string>
@@ -762,6 +768,9 @@ Az audiosáv menü megjelenítéséhez módosítsa a \"Videófolyamok hamisítá
<string name="revanced_hide_shorts_green_screen_button_title">Zöld háttér gomb elrejtése</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">A zöld képernyő gomb el van rejtve</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">A zöld képernyő gomb látható</string>
<string name="revanced_hide_shorts_new_posts_button_title">Új bejegyzések gomb elrejtése</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">Az új bejegyzések gomb megjelenik</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">Az új bejegyzések gomb rejtve van</string>
<string name="revanced_hide_shorts_hashtag_button_title">A hashtag gomb elrejtése</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">A Hashtag gomb el van rejtve</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">A Hashtag gomb látható</string>
@@ -1250,6 +1259,9 @@ 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>
<string name="splash_screen_animation_style_title">Üdvözlőképernyő stílusa</string>
<string name="splash_screen_animation_style_entry_1">Színes</string>
<string name="splash_screen_animation_style_entry_2">Fekete-fehér</string>
<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>
@@ -1395,7 +1407,7 @@ Ez a beállítás lehetővé teszi a magasabb videóminőségek feloldását"</s
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Sebesség párbeszédpanel megjelenítése</string>
<string name="revanced_playback_speed_dialog_button_summary_on">A gomb megjelenik</string>
<string name="revanced_playback_speed_dialog_button_summary_on">A gomb látható. Tartsa lenyomva a lejátszási sebesség alapértelmezettre állításához</string>
<string name="revanced_playback_speed_dialog_button_summary_off">A gomb nem látható</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1407,6 +1419,7 @@ Ez a beállítás lehetővé teszi a magasabb videóminőségek feloldását"</s
<string name="revanced_custom_playback_speeds_invalid">Az egyéni sebességeknek kevesebbnek kell lenniük, mint %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Érvénytelen egyéni lejátszási sebességek</string>
<string name="revanced_custom_playback_speeds_auto">Automatikus</string>
<string name="revanced_custom_playback_speeds_reset_toast">Lejátszási sebesség visszaállítva: %s</string>
<string name="revanced_speed_tap_and_hold_title">Egyéni koppintás és tartás sebesség</string>
<string name="revanced_speed_tap_and_hold_summary">Lejátszási sebesség 0-8 között</string>
</patch>

View File

@@ -311,9 +311,9 @@ MicroG-ի համար մարտկոցի օպտիմալացումը անջատել
<string name="revanced_hide_comments_create_a_short_button_title">Թաքցնել \"Ստեղծել Shorts\" կոճակը</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">\"Ստեղծել Short\" կոճակը թաքցված է</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">\"Ստեղծել Short\" կոճակը ցուցադրվում է</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Թաքցնել էմոջիների և ժամանակային կնիքի կոճակները</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Էմոջիների և ժամանակային կնիքի կոճակները թաքցված են</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Էմոջիների և ժամանակային կնիքի կոճակները ցուցադրվում են</string>
<string name="revanced_hide_comments_timestamp_button_title">Թաքցնել ժամանակային նշումով կոճակը</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Ժամանակային նշումով կոճակը թաքցված է</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Ժամանակային նշումով կոճակը ցուցադրվում է</string>
<string name="revanced_hide_comments_preview_comment_title">Թաքցնել նախադիտման մեկնաբանությունը</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Նախադիտման մեկնաբանությունը թաքցված է</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Նախադիտման մեկնաբանությունը երևում է</string>
@@ -681,6 +681,9 @@ MicroG-ի համար մարտկոցի օպտիմալացումը անջատել
<string name="revanced_hide_autoplay_button_title">Թաքցնել Ավտոմատ կրկնում կոճակը</string>
<string name="revanced_hide_autoplay_button_summary_on">Ավտոմատ վերարտադրման կոճակը թաքցված է</string>
<string name="revanced_hide_autoplay_button_summary_off">Ավտոմատ վերարտադրման կոճակը երևում է</string>
<string name="revanced_hide_player_control_buttons_background_title">Թաքցնել նվագարկչի կառավարման կոճակների ֆոնը</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">Նվագարկչի կառավարման կոճակների ֆոնը թաքնված է</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">Նվագարկչի կառավարման կոճակների ֆոնը ցուցադրվում է</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Էկրանի վերջում քարտերը թաքցնել</string>
@@ -750,6 +753,9 @@ MicroG-ի համար մարտկոցի օպտիմալացումը անջատել
<string name="revanced_hide_shorts_location_label_title">Թաքցնել տեղանքի նշումը</string>
<string name="revanced_hide_shorts_location_label_summary_on">Տեղանքի նշումը թաքցված է</string>
<string name="revanced_hide_shorts_location_label_summary_off">Տեղանքի նշումը ցուցադրվում է</string>
<string name="revanced_hide_shorts_preview_comment_title">Թաքցնել նախադիտման մեկնաբանությունը</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Նախադիտման մեկնաբանությունը թաքնված է</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Ցուցադրվում է մեկնաբանության նախադիտումը</string>
<string name="revanced_hide_shorts_save_sound_button_title">Թաքցնել երաժշտությունը պահպանել կոճակը</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">«Save music» կոճակը թաքցված է</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">«Save music» կոճակը ցուցադրվում է</string>
@@ -762,6 +768,9 @@ MicroG-ի համար մարտկոցի օպտիմալացումը անջատել
<string name="revanced_hide_shorts_green_screen_button_title">Թաքցնել Կանաչ էկրան կոճակը</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">\"Green Screen\" կոճակը թաքցված է</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">\"Green Screen\" կոճակը երևում է</string>
<string name="revanced_hide_shorts_new_posts_button_title">Թաքցնել «Նոր գրառումներ» կոճակը</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">«Նոր գրառումներ» կոճակը երևում է</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">«Նոր գրառումներ» կոճակը թաքցված է</string>
<string name="revanced_hide_shorts_hashtag_button_title">Թաքցնել \"Hashtag\" կոճակը</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">\"Hashtag\" կոճակը թաքցված է</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">\"Hashtag\" կոճակը երևում է</string>
@@ -1253,6 +1262,9 @@ 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>
<string name="splash_screen_animation_style_title">Մեկնարկային էկրանի ոճը</string>
<string name="splash_screen_animation_style_entry_1">Գույն</string>
<string name="splash_screen_animation_style_entry_2">Սև և սպիտակ</string>
<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>
@@ -1398,7 +1410,7 @@ Mini-player-ը կարող է գրավվել էկրանից դուրս՝ դեպի
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Ցուցադրել արագության դիալոգի պատուհանի կոճակը</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Կոճակը ցուցադրվում է</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Կոճակը ցուցադրվում է: Հպեք և պահեք՝ նվագարկման արագությունը լռելյայնի վերականգնելու համար</string>
<string name="revanced_playback_speed_dialog_button_summary_off">Կոճակը չի ցուցադրվում</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1410,6 +1422,7 @@ Mini-player-ը կարող է գրավվել էկրանից դուրս՝ դեպի
<string name="revanced_custom_playback_speeds_invalid">Պատրաստված արագությունները պետք է լինեն ավելի քիչ քան %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Չի աշխատում պատրաստված վերարտադրման արագությունները։</string>
<string name="revanced_custom_playback_speeds_auto">Ավտո</string>
<string name="revanced_custom_playback_speeds_reset_toast">Նվագարկման արագությունը վերականգնվել է. %s</string>
<string name="revanced_speed_tap_and_hold_title">Զգայական վերահսկում՝ անվանափոխման համար</string>
<string name="revanced_speed_tap_and_hold_summary">Վերարտադրման արագությունը 0-8 միջակայքում</string>
</patch>

View File

@@ -41,7 +41,7 @@ Second \"item\" text"</string>
<string name="revanced_settings_restart">Mulai ulang</string>
<string name="revanced_settings_import">Impor</string>
<string name="revanced_settings_import_copy">Salin</string>
<string name="revanced_settings_import_reset">Pengaturan ReVanced diatur ke setelan awal</string>
<string name="revanced_settings_import_reset">Pengaturan ReVanced diatur ke bawaan</string>
<string name="revanced_settings_import_success">Mengimpor setelan %d</string>
<string name="revanced_settings_import_failure_parse">Impor gagal: %s</string>
<string name="revanced_settings_search_hint">Pengaturan pencarian</string>
@@ -55,7 +55,7 @@ Second \"item\" text"</string>
<string name="revanced_language_user_dialog_message">"Terjemahan untuk beberapa bahasa mungkin hilang atau tidak lengkap.
Untuk menerjemahkan bahasa baru kunjungi translate.revanced.app"</string>
<string name="revanced_language_DEFAULT">Bahasa Aplikasi</string>
<string name="revanced_language_DEFAULT">Bahasa aplikasi</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. -->
@@ -311,9 +311,9 @@ Anda tidak akan diberi tahu tentang kejadian yang tidak terduga."</string>
<string name="revanced_hide_comments_create_a_short_button_title">Sembunyikan tombol \'Buat Short\'</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">Tombol Buat Short disembunyikan</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">Tombol Buat Short ditampilkan</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Sembunyikan tombol emoji dan stempel waktu</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Tombol emoji dan stempel waktu disembunyikan</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Tombol emoji dan stempel waktu ditampilkan</string>
<string name="revanced_hide_comments_timestamp_button_title">Sembunyikan tombol penanda waktu</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Tombol penanda waktu disembunyikan</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Tombol penanda waktu ditampilkan</string>
<string name="revanced_hide_comments_preview_comment_title">Sembunyikan pratinjau komentar</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Pratinjau komentar disembunyikan</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Pratinjau komentar ditampilkan</string>
@@ -424,12 +424,12 @@ Fitur ini hanya tersedia untuk perangkat yang lebih lama"</string>
</patch>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch">
<string name="revanced_share_copy_url_success">URL disalin ke papan klip</string>
<string name="revanced_share_copy_url_timestamp_success">URL dengan timestamp telah disalin</string>
<string name="revanced_share_copy_url_timestamp_success">URL dengan penanda waktu telah disalin</string>
<string name="revanced_copy_video_url_title">Tampilkan tombol salin URL video</string>
<string name="revanced_copy_video_url_summary_on">Tombol ditampilkan. Ketuk untuk menyalin URL video. Ketuk dan tahan untuk menyalin dengan stempel waktu</string>
<string name="revanced_copy_video_url_summary_on">Tombol ditampilkan. Ketuk untuk menyalin URL video. Ketuk dan tahan untuk menyalin dengan penanda waktu</string>
<string name="revanced_copy_video_url_summary_off">Tombol tidak ditampilkan</string>
<string name="revanced_copy_video_url_timestamp_title">Tampilkan tombol salin timestamp URL</string>
<string name="revanced_copy_video_url_timestamp_summary_on">Tombol ditampilkan. Ketuk untuk menyalin URL video dengan stempel waktu. Ketuk dan tahan untuk menyalin tanpa stempel waktu</string>
<string name="revanced_copy_video_url_timestamp_title">Tampilkan tombol salin penanda waktu URL</string>
<string name="revanced_copy_video_url_timestamp_summary_on">Tombol ditampilkan. Ketuk untuk menyalin URL video dengan stempel waktu. Ketuk dan tahan untuk menyalin tanpa penanda waktu</string>
<string name="revanced_copy_video_url_timestamp_summary_off">Tombol tidak ditampilkan</string>
</patch>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch">
@@ -681,6 +681,9 @@ Untuk menampilkan menu trek Audio, ubah 'Spoof aliran video' ke iOS TV"</string>
<string name="revanced_hide_autoplay_button_title">Sembunyikan tombol Putar Otomatis</string>
<string name="revanced_hide_autoplay_button_summary_on">Tombol putar otomatis disembunyikan</string>
<string name="revanced_hide_autoplay_button_summary_off">Tombol putar otomatis ditampilkan</string>
<string name="revanced_hide_player_control_buttons_background_title">Sembunyikan latar belakang tombol kontrol pemutar</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">Latar belakang tombol kontrol pemutar disembunyikan</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">Latar belakang tombol kontrol pemutar ditampilkan</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Sembunyikan kartu layar akhir</string>
@@ -750,6 +753,9 @@ Untuk menampilkan menu trek Audio, ubah 'Spoof aliran video' ke iOS TV"</string>
<string name="revanced_hide_shorts_location_label_title">Sembunyikan label lokasi</string>
<string name="revanced_hide_shorts_location_label_summary_on">Label lokasi disembunyikan</string>
<string name="revanced_hide_shorts_location_label_summary_off">Label lokasi ditampilkan</string>
<string name="revanced_hide_shorts_preview_comment_title">Sembunyikan pratinjau komentar</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Pratinjau komentar disembunyikan</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Pratinjau komentar ditampilkan</string>
<string name="revanced_hide_shorts_save_sound_button_title">Sembunyikan Simpan musik</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">Tombol simpan musik disembunyikan</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">Tombol simpan musik ditampilkan</string>
@@ -762,6 +768,9 @@ Untuk menampilkan menu trek Audio, ubah 'Spoof aliran video' ke iOS TV"</string>
<string name="revanced_hide_shorts_green_screen_button_title">Sembunyikan tombol Layar Hijau</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">Tombol layar hijau disembunyikan</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">Tombol layar hijau ditampilkan</string>
<string name="revanced_hide_shorts_new_posts_button_title">Sembunyikan tombol postingan Baru</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">Tombol postingan baru ditampilkan</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">Tombol postingan baru disembunyikan</string>
<string name="revanced_hide_shorts_hashtag_button_title">Sembunyikan tombol tagar</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">Tombol tagar disembunyikan</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">Tombol tagar ditampilkan</string>
@@ -827,9 +836,9 @@ Pengaturan → Pemutaran → Putar otomatis video berikutnya"</string>
<string name="revanced_hide_related_video_overlay_summary_off">Hamparan video terkait ditampilkan</string>
</patch>
<patch id="layout.hide.time.hideTimestampPatch">
<string name="revanced_hide_timestamp_title">Sembunyikan timestamp video</string>
<string name="revanced_hide_timestamp_summary_on">Timestamp disembunyikan</string>
<string name="revanced_hide_timestamp_summary_off">Timestamp ditampilkan</string>
<string name="revanced_hide_timestamp_title">Sembunyikan penanda waktu video</string>
<string name="revanced_hide_timestamp_summary_on">Penanda waktu disembunyikan</string>
<string name="revanced_hide_timestamp_summary_off">Penanda waktu ditampilkan</string>
</patch>
<patch id="layout.panels.popup.playerPopupPanelsPatch">
<string name="revanced_hide_player_popup_panels_title">Sembunyikan panel popup pemutar</string>
@@ -1252,6 +1261,9 @@ Geser 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>
<string name="splash_screen_animation_style_title">Gaya layar pembuka</string>
<string name="splash_screen_animation_style_entry_1">Berwarna</string>
<string name="splash_screen_animation_style_entry_2">Hitam dan putih</string>
<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>
@@ -1397,7 +1409,7 @@ Mengaktifkan ini dapat membuka kualitas video yang lebih tinggi"</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Tampilkan tombol dialog kecepatan</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Tombol ditampilkan</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Tombol ditampilkan. Ketuk dan tahan untuk mengatur ulang kecepatan pemutaran ke bawaan</string>
<string name="revanced_playback_speed_dialog_button_summary_off">Tombol tidak ditampilkan</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1409,6 +1421,7 @@ Mengaktifkan ini dapat membuka kualitas video yang lebih tinggi"</string>
<string name="revanced_custom_playback_speeds_invalid">Kecepatan khusus harus kurang dari %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Kecepatan pemutaran khusus tidak valid</string>
<string name="revanced_custom_playback_speeds_auto">Otomatis</string>
<string name="revanced_custom_playback_speeds_reset_toast">Kecepatan pemutaran diatur ulang ke: %s</string>
<string name="revanced_speed_tap_and_hold_title">Kecepatan ketuk dan tahan khusus</string>
<string name="revanced_speed_tap_and_hold_summary">Kecepatan pemutaran antara 0-8</string>
</patch>

View File

@@ -311,9 +311,9 @@ Non sarai notificato di eventi imprevisti."</string>
<string name="revanced_hide_comments_create_a_short_button_title">Nascondi il pulsante \'Crea uno Short\'</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">Il pulsante Crea uno Short è nascosto</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">Il pulsante Crea uno Short è visibile</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Nascondi i pulsanti emoji e timestamp</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">I pulsanti emoji e timestamp sono nascosti</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">I pulsanti emoji e timestamp sono visibili</string>
<string name="revanced_hide_comments_timestamp_button_title">Nascondi pulsante timestamp</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Il pulsante timestamp è nascosto</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Il pulsante timestamp è visibile</string>
<string name="revanced_hide_comments_preview_comment_title">Nascondi il commento di anteprima</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Il commento di anteprima è nascosto</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Il commento di anteprima è visibile</string>
@@ -681,6 +681,9 @@ Per mostrare il menu della traccia audio, cambia \"Spoof video streams\" in iOS
<string name="revanced_hide_autoplay_button_title">Nascondi il pulsante Riproduzione Automatica</string>
<string name="revanced_hide_autoplay_button_summary_on">Il pulsante Riproduzione Automatica è nascosto</string>
<string name="revanced_hide_autoplay_button_summary_off">Il pulsante Riproduzione Automatica è visibile</string>
<string name="revanced_hide_player_control_buttons_background_title">Nascondi sfondo dei pulsanti di controllo del player</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">Lo sfondo dei pulsanti di controllo del player è nascosto</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">Lo sfondo dei pulsanti di controllo del player è mostrato</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Nascondi le schede della schermata finale</string>
@@ -750,6 +753,9 @@ Per mostrare il menu della traccia audio, cambia \"Spoof video streams\" in iOS
<string name="revanced_hide_shorts_location_label_title">Nascondi etichetta di posizione</string>
<string name="revanced_hide_shorts_location_label_summary_on">L\'etichetta di posizione è nascosta</string>
<string name="revanced_hide_shorts_location_label_summary_off">L\'etichetta di posizione è visibile</string>
<string name="revanced_hide_shorts_preview_comment_title">Nascondi commento di anteprima</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Il commento di anteprima è nascosto</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Viene mostrata l\'anteprima del commento</string>
<string name="revanced_hide_shorts_save_sound_button_title">Nascondi il pulsante Salva Musica</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">Il pulsante Salva traccia è nascosto</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">Il pulsante Salva traccia è visibile</string>
@@ -762,6 +768,9 @@ Per mostrare il menu della traccia audio, cambia \"Spoof video streams\" in iOS
<string name="revanced_hide_shorts_green_screen_button_title">Nascondi il pulsante Green Screen</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">Il pulsante Schermo verde è nascosto</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">Il pulsante Schermo verde è visibile</string>
<string name="revanced_hide_shorts_new_posts_button_title">Nascondi il pulsante Nuovi post</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">Il pulsante Nuovi post è visibile</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">Il pulsante Nuovi post è nascosto</string>
<string name="revanced_hide_shorts_hashtag_button_title">Nascondi il pulsante Hashtag</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">Il pulsante Hashtag è nascosto</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">Il pulsante Hashtag è visibile</string>
@@ -1252,6 +1261,9 @@ Scorri 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>
<string name="splash_screen_animation_style_title">Stile schermata iniziale</string>
<string name="splash_screen_animation_style_entry_1">Colore</string>
<string name="splash_screen_animation_style_entry_2">Bianco e nero</string>
<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>
@@ -1397,7 +1409,7 @@ Abilitare questa opzione può sbloccare qualità video più elevate"</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Mostra il pulsante Velocità Video</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Il pulsante è visibile</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Il pulsante è visualizzato. Tieni premuto per ripristinare la velocità di riproduzione predefinita</string>
<string name="revanced_playback_speed_dialog_button_summary_off">Il pulsante non è visibile</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1409,6 +1421,7 @@ Abilitare questa opzione può sbloccare qualità video più elevate"</string>
<string name="revanced_custom_playback_speeds_invalid">Le velocità personalizzate devono essere inferiori a %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Velocità di riproduzione personalizzata non valida</string>
<string name="revanced_custom_playback_speeds_auto">Automatico</string>
<string name="revanced_custom_playback_speeds_reset_toast">Velocità di riproduzione reimpostata su: %s</string>
<string name="revanced_speed_tap_and_hold_title">Velocità personalizzata di tocca e tieni premuto</string>
<string name="revanced_speed_tap_and_hold_summary">Velocità di riproduzione tra 0-8</string>
</patch>

View File

@@ -311,9 +311,9 @@ Second \"item\" text"</string>
<string name="revanced_hide_comments_create_a_short_button_title">הסתר לחצן \'יצירת Short\'</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">לחצן יצירת Short מוסתר</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">לחצן יצירת Short מוצג</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">הסתר לחצני אמוג\'י וחותמת זמן</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">לחצני אמוג\'י וחותמת זמן מוסתרים</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">לחצני אמוג\'י וחותמת זמן מוצגים</string>
<string name="revanced_hide_comments_timestamp_button_title">הסתר לחצן חותם זמן</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">לחצן חותם זמן מוסתר</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">לחצן חותם זמן מוצג</string>
<string name="revanced_hide_comments_preview_comment_title">הסתר תצוגה מקדימה של תגובה</string>
<string name="revanced_hide_comments_preview_comment_summary_on">תצוגה מקדימה של תגובה מוסתרת</string>
<string name="revanced_hide_comments_preview_comment_summary_off">תצוגה מקדימה של תגובה מוצגת</string>
@@ -681,6 +681,9 @@ Second \"item\" text"</string>
<string name="revanced_hide_autoplay_button_title">הסתר לחצן הפעלה אוטומטית</string>
<string name="revanced_hide_autoplay_button_summary_on">לחצן הפעלה אוטומטית מוסתר</string>
<string name="revanced_hide_autoplay_button_summary_off">לחצן הפעלה אוטומטית מוצג</string>
<string name="revanced_hide_player_control_buttons_background_title">הסתר רקע של לחצני שליטה בנגן</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">רקע לחצני השליטה בנגן מוסתר</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">רקע לחצני השליטה בנגן מוצג</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">הסתר כרטיסי מסך סיום</string>
@@ -750,6 +753,9 @@ Second \"item\" text"</string>
<string name="revanced_hide_shorts_location_label_title">הסתר תווית מיקום</string>
<string name="revanced_hide_shorts_location_label_summary_on">תווית מיקום מוסתרת</string>
<string name="revanced_hide_shorts_location_label_summary_off">תווית מיקום מוצגת</string>
<string name="revanced_hide_shorts_preview_comment_title">הסתר תצוגה מקדימה של תגובה</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">תצוגה מקדימה של תגובה מוסתרת</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">תצוגה מקדימה של תגובה מוצגת</string>
<string name="revanced_hide_shorts_save_sound_button_title">הסתר לחצן שמור מוזיקה</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">לחצן שמור מוזיקה מוסתר</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">לחצן שמור מוזיקה מוצג</string>
@@ -762,6 +768,9 @@ Second \"item\" text"</string>
<string name="revanced_hide_shorts_green_screen_button_title">הסתר לחצן מסך ירוק</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">לחצן מסך ירוק מוסתר</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">לחצן מסך ירוק מוצג</string>
<string name="revanced_hide_shorts_new_posts_button_title">הסתר לחצן \"פוסטים חדשים\"</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">לחצן \"פוסטים חדשים\" מוצג</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">לחצן \"פוסטים חדשים\" מוסתר</string>
<string name="revanced_hide_shorts_hashtag_button_title">הסתר לחצן hashtag</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">לחצן hashtag מוסתר</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">לחצן hashtag מוצג</string>
@@ -1253,6 +1262,9 @@ 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>
<string name="splash_screen_animation_style_title">סגנון מסך פתיחה</string>
<string name="splash_screen_animation_style_entry_1">צבע</string>
<string name="splash_screen_animation_style_entry_2">שחור ולבן</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>
@@ -1398,7 +1410,7 @@ Second \"item\" text"</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">הצג לחצן דו-שיח של מהירות</string>
<string name="revanced_playback_speed_dialog_button_summary_on">הלחצן מוצג</string>
<string name="revanced_playback_speed_dialog_button_summary_on">הלחצן מוצג. יש להקיש ולהחזיק כדי לאפס את מהירות ההפעלה לברירת מחדל</string>
<string name="revanced_playback_speed_dialog_button_summary_off">הלחצן אינו מוצג</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1410,6 +1422,7 @@ Second \"item\" text"</string>
<string name="revanced_custom_playback_speeds_invalid">מהירויות מותאמות אישית חייבות להיות קטנות מ-%s</string>
<string name="revanced_custom_playback_speeds_parse_exception">מהירויות הפעלה מותאמות אישית לא חוקיות</string>
<string name="revanced_custom_playback_speeds_auto">אוטומטי</string>
<string name="revanced_custom_playback_speeds_reset_toast">מהירות ההפעלה אופסה ל: %s</string>
<string name="revanced_speed_tap_and_hold_title">מהירות הקשה והחזקה מותאמת אישית</string>
<string name="revanced_speed_tap_and_hold_summary">מהירות הפעלה בין 0 ל-8</string>
</patch>

View File

@@ -140,7 +140,7 @@ MicroG GmsCore に対する電池の最適化を無効にしても、バッテ
<string name="revanced_debug_logs_failed_to_export">ログのエクスポートに失敗: $s</string>
<string name="revanced_debug_logs_clear_buffer_title">デバッグログを消去する</string>
<string name="revanced_debug_logs_clear_buffer_summary">保存されている ReVanced のデバッグログをすべて消去します</string>
<string name="revanced_debug_logs_clear_toast">ログ消去されました</string>
<string name="revanced_debug_logs_clear_toast">ログ消去ました</string>
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<string name="revanced_hide_album_cards_title">アルバム情報を非表示</string>
@@ -314,9 +314,9 @@ MicroG GmsCore に対する電池の最適化を無効にしても、バッテ
<string name="revanced_hide_comments_create_a_short_button_title">「ショートを作成」ボタンを非表示</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">「ショートを作成」ボタンは表示されません</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">「ショートを作成」ボタンは表示されます</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">絵文字ボタンとタイムスタンプ ボタンを非表示</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">絵文字ボタンとタイムスタンプ ボタンは表示されません</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">絵文字ボタンとタイムスタンプ ボタンは表示されます</string>
<string name="revanced_hide_comments_timestamp_button_title">タイムスタンプ ボタンを非表示</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">タイムスタンプ ボタンは表示されません</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">タイムスタンプ ボタンは表示されます</string>
<string name="revanced_hide_comments_preview_comment_title">コメントのプレビューを非表示</string>
<string name="revanced_hide_comments_preview_comment_summary_on">コメントのプレビューは表示されません</string>
<string name="revanced_hide_comments_preview_comment_summary_off">コメントのプレビューは表示されます</string>
@@ -428,10 +428,10 @@ MicroG GmsCore に対する電池の最適化を無効にしても、バッテ
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch">
<string name="revanced_share_copy_url_success">URL をクリップボードにコピーしました</string>
<string name="revanced_share_copy_url_timestamp_success">タイムスタンプ付きの URL がコピーされました</string>
<string name="revanced_copy_video_url_title">「動画の URL をコピー」ボタンを表示</string>
<string name="revanced_copy_video_url_title">「動画の URL をコピー」ボタンを表示する</string>
<string name="revanced_copy_video_url_summary_on">ボタンはオーバーレイに表示されます。タップすると動画の URL を、長押しするとタイムスタンプ付きの URL をそれぞれコピーできます</string>
<string name="revanced_copy_video_url_summary_off">ボタンはオーバーレイに表示されません</string>
<string name="revanced_copy_video_url_timestamp_title">「動画のタイムスタンプ付き URL をコピー」ボタンを表示</string>
<string name="revanced_copy_video_url_timestamp_title">「動画のタイムスタンプ付き URL をコピー」ボタンを表示する</string>
<string name="revanced_copy_video_url_timestamp_summary_on">ボタンはオーバーレイに表示されます。タップするとタイムスタンプ付きの URL を、長押しするとタイムスタンプなしの URL をそれぞれコピーできます</string>
<string name="revanced_copy_video_url_timestamp_summary_off">ボタンはオーバーレイに表示されません</string>
</patch>
@@ -684,6 +684,9 @@ MicroG GmsCore に対する電池の最適化を無効にしても、バッテ
<string name="revanced_hide_autoplay_button_title">自動再生ボタンを非表示</string>
<string name="revanced_hide_autoplay_button_summary_on">自動再生ボタンはオーバーレイに表示されません</string>
<string name="revanced_hide_autoplay_button_summary_off">自動再生ボタンはオーバーレイに表示されます</string>
<string name="revanced_hide_player_control_buttons_background_title">プレーヤーのコントロール ボタンの背景を非表示</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">プレーヤーのコントロール ボタンの背景は表示されません</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">プレーヤーのコントロール ボタンの背景は表示されます</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">動画の終了画面を非表示</string>
@@ -753,6 +756,9 @@ MicroG GmsCore に対する電池の最適化を無効にしても、バッテ
<string name="revanced_hide_shorts_location_label_title">位置情報ラベルを非表示</string>
<string name="revanced_hide_shorts_location_label_summary_on">位置情報ラベルは表示されません</string>
<string name="revanced_hide_shorts_location_label_summary_off">位置情報ラベルは表示されます</string>
<string name="revanced_hide_shorts_preview_comment_title">コメントのプレビューを非表示</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">コメントのプレビューは表示されません</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">コメントのプレビューは表示されます</string>
<string name="revanced_hide_shorts_save_sound_button_title">「音楽を保存」ボタンを非表示</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">「音楽を保存」ボタンは表示されません</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">「音楽を保存」ボタンは表示されます</string>
@@ -765,6 +771,9 @@ MicroG GmsCore に対する電池の最適化を無効にしても、バッテ
<string name="revanced_hide_shorts_green_screen_button_title">グリーンスクリーン ボタンを非表示</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">グリーンスクリーン ボタンは表示されません</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">グリーンスクリーン ボタンは表示されます</string>
<string name="revanced_hide_shorts_new_posts_button_title">「新しい投稿」ボタンを非表示</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">「新しい投稿」ボタンは表示されます</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">「新しい投稿」ボタンは表示されません</string>
<string name="revanced_hide_shorts_hashtag_button_title">ハッシュタグ ボタンを非表示</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">ハッシュタグ ボタンは表示されません</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">ハッシュタグ ボタンは表示されます</string>
@@ -1122,14 +1131,14 @@ MicroG 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>
@@ -1253,6 +1262,9 @@ 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>
<string name="splash_screen_animation_style_title">スプラッシュ画面のスタイル</string>
<string name="splash_screen_animation_style_entry_1">カラー</string>
<string name="splash_screen_animation_style_entry_2">白黒</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>
@@ -1371,9 +1383,9 @@ Automotive レイアウト
<string name="revanced_remove_tracking_query_parameter_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>
<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 -->
<string name="revanced_force_original_audio_not_available">この機能を使用するには、「動画ストリームを偽装する」のクライアントを iOS TV に変更してください</string>
</patch>
@@ -1396,9 +1408,9 @@ Automotive レイアウト
<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>
<string name="revanced_playback_speed_dialog_button_summary_on">再生速度設定ボタンはオーバーレイに表示されます</string>
<string name="revanced_playback_speed_dialog_button_summary_off">再生速度設定ボタンはオーバーレイに表示されません</string>
<string name="revanced_playback_speed_dialog_button_title">再生速度設定ボタンを表示する</string>
<string name="revanced_playback_speed_dialog_button_summary_on">ボタンはオーバーレイに表示されます。長押しすると、再生速度がデフォルトの値にリセットされます</string>
<string name="revanced_playback_speed_dialog_button_summary_off">ボタンはオーバーレイに表示されません</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
<string name="revanced_custom_speed_menu_title">カスタムした再生速度リストを使用する</string>
@@ -1409,8 +1421,9 @@ Automotive レイアウト
<string name="revanced_custom_playback_speeds_invalid">再生速度は %s 未満である必要があります</string>
<string name="revanced_custom_playback_speeds_parse_exception">カスタム再生速度リストが無効です</string>
<string name="revanced_custom_playback_speeds_auto">自動</string>
<string name="revanced_custom_playback_speeds_reset_toast">再生速度をリセットしました: %s</string>
<string name="revanced_speed_tap_and_hold_title">長押し倍速再生の速度</string>
<string name="revanced_speed_tap_and_hold_summary">長押し倍速再生速度のは 0-8 の範囲で、0 および 8 は含まれません</string>
<string name="revanced_speed_tap_and_hold_summary">再生速度の範囲は 0-8 で、0 および 8 は含まれません</string>
</patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch">
<string name="revanced_remember_playback_speed_last_selected_title">再生速度の変更を保存する</string>
@@ -1436,7 +1449,7 @@ Automotive レイアウト
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<string name="revanced_spoof_video_streams_screen_title">動画ストリームを偽装する</string>
<string name="revanced_spoof_video_streams_screen_summary">動画再生失敗しないために、クライアントの動画ストリームを偽装します</string>
<string name="revanced_spoof_video_streams_screen_summary">動画再生失敗を回避するために、クライアントの動画ストリームを偽装します</string>
<string name="revanced_spoof_video_streams_title">動画ストリームを偽装する</string>
<string name="revanced_spoof_video_streams_summary_on">動画ストリームは偽装されます</string>
<string name="revanced_spoof_video_streams_summary_off">"動画ストリームは偽装されません
@@ -1457,7 +1470,7 @@ AVC は、最大解像度が 1080p であり、Opus オーディオ コーデッ
<string name="revanced_spoof_video_streams_about_android_title">Android クライアントの副作用</string>
<string name="revanced_spoof_video_streams_about_android_summary">"• 「音声トラック」がフライアウト メニューに表示されない
• 「一定音量」が利用できない
• 「デフォルトの吹き替えを無効にする」が利用できない"</string>
• 「デフォルトの吹き替え再生を無効にする」が利用できない"</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>

View File

@@ -189,9 +189,9 @@ MicroG 앱 배터리 최적화를 비활성화(제한 없음)하더라도, 배
<string name="revanced_hide_show_more_button_title">\'자세히 보기\' 버튼 숨기기</string>
<string name="revanced_hide_show_more_button_summary_on">\'자세히 보기\' 버튼이 숨겨집니다</string>
<string name="revanced_hide_show_more_button_summary_off">\'자세히 보기\' 버튼이 표시됩니다</string>
<string name="revanced_hide_ticket_shelf_title">콘서트 티켓 선반 숨기기</string>
<string name="revanced_hide_ticket_shelf_summary_on">콘서트 티켓 선반이 숨겨집니다\n• 일부 국가에서는 아직 서비스가 제공되지 않습니다</string>
<string name="revanced_hide_ticket_shelf_summary_off">콘서트 티켓 선반이 표시됩니다\n• 일부 국가에서는 아직 서비스가 제공되지 않습니다</string>
<string name="revanced_hide_ticket_shelf_title">이벤트 티켓 선반 숨기기</string>
<string name="revanced_hide_ticket_shelf_summary_on">이벤트 티켓 선반이 숨겨집니다</string>
<string name="revanced_hide_ticket_shelf_summary_off">이벤트 티켓 선반이 표시됩니다</string>
<string name="revanced_hide_timed_reactions_title">실시간 이모티콘 리액션 숨기기</string>
<string name="revanced_hide_timed_reactions_summary_on">실시간 이모티콘 리액션이 숨겨집니다</string>
<string name="revanced_hide_timed_reactions_summary_off">실시간 이모티콘 리액션이 표시됩니다</string>
@@ -315,9 +315,9 @@ MicroG 앱 배터리 최적화를 비활성화(제한 없음)하더라도, 배
<string name="revanced_hide_comments_create_a_short_button_title">Shorts 만들기 버튼 숨기기</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">Shorts 만들기 버튼이 숨겨집니다</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">Shorts 만들기 버튼이 표시됩니다</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">타임스탬프 &amp; 이모지 버튼 숨기기</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">타임스탬프 &amp; 이모지 버튼이 숨겨집니다</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">타임스탬프 &amp; 이모지 버튼이 표시됩니다</string>
<string name="revanced_hide_comments_timestamp_button_title">타임스탬프 버튼 숨기기</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">타임스탬프 버튼이 숨겨집니다</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">타임스탬프 버튼이 표시됩니다</string>
<string name="revanced_hide_comments_preview_comment_title">댓글 미리보기 숨기기</string>
<string name="revanced_hide_comments_preview_comment_summary_on">댓글 미리보기가 숨겨집니다</string>
<string name="revanced_hide_comments_preview_comment_summary_off">댓글 미리보기가 표시됩니다</string>
@@ -488,14 +488,14 @@ MicroG 앱 배터리 최적화를 비활성화(제한 없음)하더라도, 배
<string name="revanced_swipe_overlay_timeout_title">스와이프 오버레이 타임아웃</string>
<string name="revanced_swipe_overlay_timeout_summary">오버레이가 표시되는 시간을 지정할 수 있습니다 (밀리초)</string>
<string name="revanced_swipe_overlay_background_opacity_title">스와이프 오버레이 배경 불투명도</string>
<string name="revanced_swipe_overlay_background_opacity_summary">배경 불투명도 값을 지정할 수 있습니다 (0-100)</string>
<string name="revanced_swipe_overlay_background_opacity_summary">배경 불투명도 값을 0-100 사이에서 지정할 수 있습니다</string>
<string name="revanced_swipe_overlay_background_opacity_invalid_toast">스와이프 배경 불투명도 값은 0-100 사이여야 합니다</string>
<string name="revanced_swipe_overlay_progress_brightness_color_title">스와이프 오버레이 밝기 조절바 색상</string>
<string name="revanced_swipe_overlay_progress_brightness_color_summary">밝기 조절바 색상을 지정할 수 있습니다</string>
<string name="revanced_swipe_overlay_progress_volume_color_title">스와이프 오버레이 볼륨 조절바 색상</string>
<string name="revanced_swipe_overlay_progress_volume_color_summary">볼륨 조절바 색상을 지정할 수 있습니다</string>
<string name="revanced_swipe_text_overlay_size_title">스와이프 오버레이 텍스트 크기</string>
<string name="revanced_swipe_text_overlay_size_summary">텍스트 크기를 지정할 수 있습니다 (1-30)</string>
<string name="revanced_swipe_text_overlay_size_summary">텍스트 크기를 1-30 사이에서 지정할 수 있습니다</string>
<string name="revanced_swipe_text_overlay_size_invalid_toast">텍스트 크기는 1-30 사이여야 합니다</string>
<string name="revanced_swipe_threshold_title">스와이프 한계치</string>
<string name="revanced_swipe_threshold_summary">제스처 인식을 위해 얼마나 스와이프를 해야 할지를 지정할 수 있으며, 원하지 않은 제스처 인식을 방지할 수 있습니다</string>
@@ -681,6 +681,9 @@ MicroG 앱 배터리 최적화를 비활성화(제한 없음)하더라도, 배
<string name="revanced_hide_autoplay_button_title">자동재생 버튼 숨기기</string>
<string name="revanced_hide_autoplay_button_summary_on">자동재생 버튼이 숨겨집니다</string>
<string name="revanced_hide_autoplay_button_summary_off">자동재생 버튼이 표시됩니다</string>
<string name="revanced_hide_player_control_buttons_background_title">플레이어 컨트롤 버튼 배경 숨기기</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">플레이어 컨트롤 버튼 배경이 숨겨집니다</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">플레이어 컨트롤 버튼 배경이 표시됩니다</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">최종 화면 카드 숨기기</string>
@@ -750,6 +753,9 @@ MicroG 앱 배터리 최적화를 비활성화(제한 없음)하더라도, 배
<string name="revanced_hide_shorts_location_label_title">위치 라벨 숨기기</string>
<string name="revanced_hide_shorts_location_label_summary_on">위치 라벨이 숨겨집니다</string>
<string name="revanced_hide_shorts_location_label_summary_off">위치 라벨이 표시됩니다</string>
<string name="revanced_hide_shorts_preview_comment_title">댓글 미리보기 숨기기</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">댓글 미리보기가 숨겨집니다</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">댓글 미리보기가 표시됩니다</string>
<string name="revanced_hide_shorts_save_sound_button_title">(재생목록에) 음악 저장 버튼 숨기기</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">(재생목록에) 음악 저장 버튼이 숨겨집니다</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">(재생목록에) 음악 저장 버튼이 표시됩니다</string>
@@ -762,6 +768,9 @@ MicroG 앱 배터리 최적화를 비활성화(제한 없음)하더라도, 배
<string name="revanced_hide_shorts_green_screen_button_title">그린 스크린 버튼 숨기기</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">그린 스크린 버튼이 숨겨집니다</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">그린 스크린 버튼이 표시됩니다</string>
<string name="revanced_hide_shorts_new_posts_button_title">새로운 게시물 버튼 숨기기</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">새로운 게시물 버튼이 표시됩니다</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">새로운 게시물 버튼이 숨겨집니다</string>
<string name="revanced_hide_shorts_hashtag_button_title">해시태그 버튼 숨기기</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">해시태그 버튼이 숨겨집니다</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">해시태그 버튼이 표시됩니다</string>
@@ -850,7 +859,7 @@ MicroG 앱 배터리 최적화를 비활성화(제한 없음)하더라도, 배
</patch>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch">
<string name="revanced_player_overlay_opacity_title">플레이어 오버레이 불투명도</string>
<string name="revanced_player_overlay_opacity_summary">불투명도 값 0-100 사이이며, 0은 투명입니다</string>
<string name="revanced_player_overlay_opacity_summary">불투명도 값 0-100 사이에서 지정할 수 있습니다 (투명: 0)</string>
<string name="revanced_player_overlay_opacity_invalid_toast">플레이어 오버레이 불투명도는 0-100 사이여야 합니다</string>
</patch>
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
@@ -1249,13 +1258,16 @@ MicroG 앱 배터리 최적화를 비활성화(제한 없음)하더라도, 배
<string name="revanced_miniplayer_width_dip_summary">화면 크기 초기값을 지정할 수 있습니다 (픽셀)</string>
<string name="revanced_miniplayer_width_dip_invalid_toast">픽셀 크기는 %1$s-%2$s 사이여야 합니다</string>
<string name="revanced_miniplayer_opacity_title">미니 플레이어 오버레이 불투명도</string>
<string name="revanced_miniplayer_opacity_summary">불투명도 값 0-100 사이이며, 0은 투명입니다</string>
<string name="revanced_miniplayer_opacity_summary">불투명도 값 0-100 사이에서 지정할 수 있습니다 (투명: 0)</string>
<string name="revanced_miniplayer_opacity_invalid_toast">미니 플레이어 오버레이 불투명도는 0-100 사이여야 합니다</string>
</patch>
<patch id="layout.theme.themePatch">
<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>
<string name="splash_screen_animation_style_title">스플래시 애니메이션 스타일</string>
<string name="splash_screen_animation_style_entry_1">컬러</string>
<string name="splash_screen_animation_style_entry_2">흑백</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>
@@ -1401,7 +1413,7 @@ DeArrow에 대해 자세히 알아보려면 여기를 누르세요"</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">동영상 재생 속도 다이얼로그 버튼 표시하기</string>
<string name="revanced_playback_speed_dialog_button_summary_on">버튼을 표시합니다</string>
<string name="revanced_playback_speed_dialog_button_summary_on">버튼을 표시합니다\n\n• 버튼을 길게 누르면 동영상 재생 속도가 기본값으로 초기화됩니다</string>
<string name="revanced_playback_speed_dialog_button_summary_off">버튼을 표시하지 않습니다</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1413,6 +1425,7 @@ DeArrow에 대해 자세히 알아보려면 여기를 누르세요"</string>
<string name="revanced_custom_playback_speeds_invalid">재생 속도 값은 %s배속보다 작아야 합니다</string>
<string name="revanced_custom_playback_speeds_parse_exception">잘못된 사용자 정의 재생 속도 값입니다</string>
<string name="revanced_custom_playback_speeds_auto">자동</string>
<string name="revanced_custom_playback_speeds_reset_toast">동영상 재생 속도를 %s 으로 초기화하였습니다</string>
<string name="revanced_speed_tap_and_hold_title">사용자 정의 길게 눌러서 동영상 재생 속도</string>
<string name="revanced_speed_tap_and_hold_summary">화면을 길게 누르는 동안에 변경되는 동영상 재생 속도를 0-8 사이에서 지정할 수 있습니다</string>
</patch>

View File

@@ -311,9 +311,9 @@ Apie netikėtus įvykius nebus pranešta."</string>
<string name="revanced_hide_comments_create_a_short_button_title">Slėpti \"Kurti Short\" mygtuką</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">Mygtukas „Sukurti Short“ paslėptas</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">Mygtukas „Sukurti Short“ rodomas</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Slėpti jaustukų ir laiko žymų mygtukus</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Jaustukų ir laiko žymų mygtukai paslėpti</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Jaustukų ir laiko žymų mygtukai rodomi</string>
<string name="revanced_hide_comments_timestamp_button_title">Slėpti datos ir laiko žymos mygtuką</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Datos ir laiko žymos mygtukas paslėptas</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Datos ir laiko žymos mygtukas rodomas</string>
<string name="revanced_hide_comments_preview_comment_title">Slėpti peržiūros komentarą</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Peržiūros komentaras yra paslėptas</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Peržiūros komentaras yra rodomas</string>
@@ -679,6 +679,9 @@ Jei pakeitus šį nustatymą neįsigalioja, pabandykite perjungti į inkognito r
<string name="revanced_hide_autoplay_button_title">Paslėpti mygtuką „Automatinis atkūrimas\"</string>
<string name="revanced_hide_autoplay_button_summary_on">Automatinio paleidimo mygtukas yra paslėptas</string>
<string name="revanced_hide_autoplay_button_summary_off">Automatinio paleidimo mygtukas yra rodomas</string>
<string name="revanced_hide_player_control_buttons_background_title">Slėpti grotuvo valdymo mygtukų foną</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">Grotuvo valdymo mygtukų fonas paslėptas</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">Grotuvo valdymo mygtukų fonas rodomas</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Slėpti ekrano pabaigos korteles</string>
@@ -748,6 +751,9 @@ Jei pakeitus šį nustatymą neįsigalioja, pabandykite perjungti į inkognito r
<string name="revanced_hide_shorts_location_label_title">Slėpti vietovės etiketę</string>
<string name="revanced_hide_shorts_location_label_summary_on">Vietovės etiketė paslėpta</string>
<string name="revanced_hide_shorts_location_label_summary_off">Vietovės etiketė rodoma</string>
<string name="revanced_hide_shorts_preview_comment_title">Slėpti peržiūros komentarą</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Komentaro peržiūra paslėpta</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Parodyta komentaro peržiūra</string>
<string name="revanced_hide_shorts_save_sound_button_title">Paslėpti mygtuką „Įrašyti muziką\"</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">\"Išsaugoti muziką\" mygtukas paslėptas</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">\"Išsaugoti muziką\" mygtukas rodomas</string>
@@ -760,6 +766,9 @@ Jei pakeitus šį nustatymą neįsigalioja, pabandykite perjungti į inkognito r
<string name="revanced_hide_shorts_green_screen_button_title">Paslėpti mygtuką „Žalias ekranas\"</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">\"Žaliojo ekrano\" mygtukas paslėptas</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">\"Žaliojo ekrano\" mygtukas rodomas</string>
<string name="revanced_hide_shorts_new_posts_button_title">Slėpti mygtuką „Nauji įrašai“</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">Rodomas mygtukas „Nauji įrašai“</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">Paslėptas mygtukas „Nauji įrašai“</string>
<string name="revanced_hide_shorts_hashtag_button_title">Slėpti grotažymės mygtuką</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">Grotažymės mygtukas paslėptas</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">Grotažymės mygtukas rodomas</string>
@@ -1252,6 +1261,9 @@ Braukite, kad išplėstumėte arba uždarytumėte"</string>
<string name="revanced_gradient_loading_screen_title">Įgalinti gradientinį įkėlimo ekraną</string>
<string name="revanced_gradient_loading_screen_summary_on">Įkėlimo ekranas turės gradientinį foną</string>
<string name="revanced_gradient_loading_screen_summary_off">Įkėlimo ekranas turės tvirtą foną</string>
<string name="splash_screen_animation_style_title">Paleidimo ekrano stilius</string>
<string name="splash_screen_animation_style_entry_1">Spalva</string>
<string name="splash_screen_animation_style_entry_2">Juoda ir balta</string>
<string name="revanced_seekbar_custom_color_title">Įgalinti pritaikytą slankiklio spalvą</string>
<string name="revanced_seekbar_custom_color_summary_on">Rodoma pritaikyta slankiklio spalva</string>
<string name="revanced_seekbar_custom_color_summary_off">Rodoma originali slankiklio spalva</string>
@@ -1397,7 +1409,7 @@ Gali būti atrakinta aukštesnės vaizdo įrašų kokybės, bet galite patirti v
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Rodyti greičio dialogo mygtuką</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Mygtukas rodomas</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Mygtukas rodomas. Palieskite ir palaikykite, kad atkūrimo greitį nustatytumėte į numatytąjį.</string>
<string name="revanced_playback_speed_dialog_button_summary_off">Mygtukas nerodomas</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1409,6 +1421,7 @@ Gali būti atrakinta aukštesnės vaizdo įrašų kokybės, bet galite patirti v
<string name="revanced_custom_playback_speeds_invalid">Pasirinktinis greitis turi būti mažesnis nei %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Netinkamas pasirinktinis atkūrimo greitis</string>
<string name="revanced_custom_playback_speeds_auto">Automatinis</string>
<string name="revanced_custom_playback_speeds_reset_toast">Atkūrimo greitis nustatytas iš naujo: %s</string>
<string name="revanced_speed_tap_and_hold_title">Pritaikytas bakstelėjimo ir laikymo greitis</string>
<string name="revanced_speed_tap_and_hold_summary">Atkūrimo greitis: nuo 0 iki 8</string>
</patch>

View File

@@ -311,9 +311,9 @@ Jūs netiksit informēts par neparedzētiem notikumiem."</string>
<string name="revanced_hide_comments_create_a_short_button_title">Paslēpt \"Izveidot īso\" pogu</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">Poga Izveidot Short ir paslēpta</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">Poga Izveidot Short ir redzama</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Paslēpt emocijzīmju un laikazīmogu pogas</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Emocijzīmju un laikazīmogu pogas ir paslēptas</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Emocijzīmju un laikazīmogu pogas ir redzamas</string>
<string name="revanced_hide_comments_timestamp_button_title">Paslēpt laika zīmoga pogu</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Laika zīmoga poga ir paslēpta</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Laika zīmoga poga ir redzama</string>
<string name="revanced_hide_comments_preview_comment_title">Paslēpt priekšskatījuma komentāru</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Priekšskatījuma komentārs ir paslēpts</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Priekšskatījuma komentārs ir redzams</string>
@@ -681,6 +681,9 @@ Lai parādītu audio celiņu izvēlni, mainiet \"Video straumju viltošana\" uz
<string name="revanced_hide_autoplay_button_title">Paslēpt pogu \"Automātiskā atskaņošana\"</string>
<string name="revanced_hide_autoplay_button_summary_on">Automātiskās atskaņošanas poga ir paslēpta</string>
<string name="revanced_hide_autoplay_button_summary_off">Automātiskās atskaņošanas poga ir redzama</string>
<string name="revanced_hide_player_control_buttons_background_title">Slēpt atskaņotāja vadības pogu fonu</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">Atskaņotāja vadības pogu fons ir paslēpts</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">Atskaņotāja vadības pogu fons ir redzams</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Paslēpt ekrāna beigās esošās kartītes</string>
@@ -750,6 +753,9 @@ Lai parādītu audio celiņu izvēlni, mainiet \"Video straumju viltošana\" uz
<string name="revanced_hide_shorts_location_label_title">Paslēpt atrašanās vietas nosaukumu</string>
<string name="revanced_hide_shorts_location_label_summary_on">Atrašanās vietas nosaukums ir paslēpts</string>
<string name="revanced_hide_shorts_location_label_summary_off">Atrašanās vietas nosaukums ir redzams</string>
<string name="revanced_hide_shorts_preview_comment_title">Paslēpt priekšskatījuma komentāru</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Komentāra priekšskatījums ir paslēpts</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Priekšskatījuma komentārs tiek rādīts</string>
<string name="revanced_hide_shorts_save_sound_button_title">Paslēpt pogu \"Saglabāt mūziku\"</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">“Saglabāt mūziku” poga ir paslēpta</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">“Saglabāt mūziku” poga ir redzama</string>
@@ -762,6 +768,9 @@ Lai parādītu audio celiņu izvēlni, mainiet \"Video straumju viltošana\" uz
<string name="revanced_hide_shorts_green_screen_button_title">Paslēpt pogu \"Zaļais ekrāns\"</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">Zaļā ekrāna poga ir paslēpta</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">Zaļā ekrāna poga ir redzama</string>
<string name="revanced_hide_shorts_new_posts_button_title">Paslēpt pogu Jauni ieraksti</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">Poga Jauni ieraksti ir redzama</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">Poga Jauni ieraksti ir paslēpta</string>
<string name="revanced_hide_shorts_hashtag_button_title">Paslēpt hashtags pogu</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">Hashtags poga ir paslēpta</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">Hashtags poga ir redzama</string>
@@ -1252,6 +1261,9 @@ Velciet, lai izvērstu vai aizvērtu"</string>
<string name="revanced_gradient_loading_screen_title">Iespējot gradientu ielādes ekrānu</string>
<string name="revanced_gradient_loading_screen_summary_on">Ielādes ekrānam būs gradientu fons</string>
<string name="revanced_gradient_loading_screen_summary_off">Ielādes ekrānam būs ciets fons</string>
<string name="splash_screen_animation_style_title">Sākuma ekrāna stils</string>
<string name="splash_screen_animation_style_entry_1">Krāsa</string>
<string name="splash_screen_animation_style_entry_2">Melnbalts</string>
<string name="revanced_seekbar_custom_color_title">Iespējot pielāgotu meklēšanas joslas krāsu</string>
<string name="revanced_seekbar_custom_color_summary_on">Pielāgota meklēšanas joslas krāsa ir redzama</string>
<string name="revanced_seekbar_custom_color_summary_off">Oriģinālā meklēšanas joslas krāsa ir redzama</string>
@@ -1397,7 +1409,7 @@ Var tikt atbloķētas augstākas video kvalitātes, taču var rasties video atsk
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Rādīt ātruma dialoga pogu</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Poga tiek rādīta</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Poga ir redzama. Pieskarieties un turiet, lai atiestatītu atskaņošanas ātrumu uz noklusējuma</string>
<string name="revanced_playback_speed_dialog_button_summary_off">Poga netiek rādīta</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1409,6 +1421,7 @@ Var tikt atbloķētas augstākas video kvalitātes, taču var rasties video atsk
<string name="revanced_custom_playback_speeds_invalid">Pielāgoti ātrumi ir jābūt mazākiem par %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Nederīgi pielāgoti video atskaņošanas ātrumi</string>
<string name="revanced_custom_playback_speeds_auto">Automātiski</string>
<string name="revanced_custom_playback_speeds_reset_toast">Atskaņošanas ātrums atiestatīts uz: %s</string>
<string name="revanced_speed_tap_and_hold_title">Pielāgots pieskaršanās un turēšanas ātrums</string>
<string name="revanced_speed_tap_and_hold_summary">Atskaņošanas ātrums no 0 līdz 8</string>
</patch>

View File

@@ -190,6 +190,7 @@ Second \"item\" text"</string>
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch>
<patch id="misc.announcements.announcementsPatch">
<string name="revanced_announcements_dialog_dismiss">Melepaskan</string>
</patch>
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch">
</patch>

View File

@@ -311,9 +311,9 @@ U wordt niet op de hoogte gesteld van onverwachte gebeurtenissen."</string>
<string name="revanced_hide_comments_create_a_short_button_title">Verberg \'Create a Short\' knop</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">Knop \'Een Short maken\' is verborgen</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">Knop \'Een Short maken\' wordt weergegeven</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Emoji- en tijdstempelknoppen verbergen</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Emoji- en tijdstempelknoppen zijn verborgen</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Emoji- en tijdstempelknoppen worden weergegeven</string>
<string name="revanced_hide_comments_timestamp_button_title">Knop voor tijdstempel verbergen</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Knop voor tijdstempel is verborgen</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Knop voor tijdstempel wordt weergegeven</string>
<string name="revanced_hide_comments_preview_comment_title">Reactie in preview verbergen</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Preview reactie is verborgen</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Preview reactie wordt getoond</string>
@@ -681,6 +681,9 @@ Om het audiotrackmenu weer te geven, wijzigt u 'Videostreams vervalsen' in iOS T
<string name="revanced_hide_autoplay_button_title">Verberg knop voor automatisch afspelen</string>
<string name="revanced_hide_autoplay_button_summary_on">Automatische afspeelknop is verborgen</string>
<string name="revanced_hide_autoplay_button_summary_off">Automatische afspeelknop wordt weergegeven</string>
<string name="revanced_hide_player_control_buttons_background_title">Achtergrond van afspeelknoppen verbergen</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">Achtergrond van afspeelknoppen is verborgen</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">Achtergrond van afspeelknoppen wordt weergegeven</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Verberg eindschermkaarten</string>
@@ -750,6 +753,9 @@ Om het audiotrackmenu weer te geven, wijzigt u 'Videostreams vervalsen' in iOS T
<string name="revanced_hide_shorts_location_label_title">Verberg locatie-etiket</string>
<string name="revanced_hide_shorts_location_label_summary_on">Locatie-etiket is verborgen</string>
<string name="revanced_hide_shorts_location_label_summary_off">Locatie-etiket wordt weergegeven</string>
<string name="revanced_hide_shorts_preview_comment_title">Voorbeeldcommentaar verbergen</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Voorbeeldcommentaar is verborgen</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Voorbeeldcommentaar wordt weergegeven</string>
<string name="revanced_hide_shorts_save_sound_button_title">Verberg de knop \"Muziek opslaan\"</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">Muziek opslaan-knop is verborgen</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">Muziek opslaan-knop wordt weergegeven</string>
@@ -762,6 +768,9 @@ Om het audiotrackmenu weer te geven, wijzigt u 'Videostreams vervalsen' in iOS T
<string name="revanced_hide_shorts_green_screen_button_title">Verberg de knop \"Groen scherm\"</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">De knop \"Groen scherm\" is verborgen</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">De knop \"Groen scherm\" is zichtbaar</string>
<string name="revanced_hide_shorts_new_posts_button_title">Knop Nieuwe berichten verbergen</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">Knop Nieuwe berichten wordt weergegeven</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">Knop Nieuwe berichten is verborgen</string>
<string name="revanced_hide_shorts_hashtag_button_title">Verberg de knop \"Hashtag\"</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">De knop \"Hashtag\" is verborgen</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">De knop \"Hashtag\" is zichtbaar</string>
@@ -1251,6 +1260,9 @@ Swipe om uit te vouwen of te sluiten"</string>
<string name="revanced_gradient_loading_screen_title">Schakel het laden van het verloopscherm in</string>
<string name="revanced_gradient_loading_screen_summary_on">Het laadscherm heeft een verlopende achtergrond</string>
<string name="revanced_gradient_loading_screen_summary_off">Het laadscherm heeft een effen achtergrond</string>
<string name="splash_screen_animation_style_title">Stijl van opstartscherm</string>
<string name="splash_screen_animation_style_entry_1">Kleur</string>
<string name="splash_screen_animation_style_entry_2">Zwart-wit</string>
<string name="revanced_seekbar_custom_color_title">Schakel aangepaste schuifregelaar kleur in</string>
<string name="revanced_seekbar_custom_color_summary_on">De aangepaste kleur van de schuifregelaar is zichtbaar</string>
<string name="revanced_seekbar_custom_color_summary_off">De oorspronkelijke kleur van de schuifregelaar is zichtbaar</string>
@@ -1396,7 +1408,7 @@ Het inschakelen hiervan kan hogere videokwaliteiten ontgrendelen"</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Snelheidsdialoogknop weergeven</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Knop wordt weergegeven</string>
<string name="revanced_playback_speed_dialog_button_summary_on">De knop wordt weergegeven. Tik en houd vast om de afspeelsnelheid terug te zetten naar de standaardwaarde</string>
<string name="revanced_playback_speed_dialog_button_summary_off">Knop wordt niet weergegeven</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1408,6 +1420,7 @@ Het inschakelen hiervan kan hogere videokwaliteiten ontgrendelen"</string>
<string name="revanced_custom_playback_speeds_invalid">Aangepaste snelheden moeten lager zijn dan %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Ongeldige aangepaste afspeelsnelheden</string>
<string name="revanced_custom_playback_speeds_auto">Automatisch</string>
<string name="revanced_custom_playback_speeds_reset_toast">Afspeelsnelheid hersteld naar: %s</string>
<string name="revanced_speed_tap_and_hold_title">De snelheid van aangepast tikken en vasthouden</string>
<string name="revanced_speed_tap_and_hold_summary">Afspeelsnelheid tussen 0-8</string>
</patch>

View File

@@ -307,9 +307,9 @@ Nie będziesz informowany o żadnych nieoczekiwanych zdarzeniach."</string>
<string name="revanced_hide_comments_create_a_short_button_title">Przycisk od tworzenia Shortsów</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">Przycisk Utwórz Short jest ukryty</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">Przycisk Utwórz Short jest widoczny</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Ukryj przyciski emoji i znacznika czasu</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Przyciski emoji i znacznika czasu ukryte</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Przyciski emoji i znacznika czasu widoczne</string>
<string name="revanced_hide_comments_timestamp_button_title">Ukryj przycisk znacznika czasu</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Przycisk znacznika czasu jest ukryty</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Przycisk znacznika czasu jest widoczny</string>
<string name="revanced_hide_comments_preview_comment_title">Ukryj podgląd komentarzy</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Podgląd komentarzy jest ukryty</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Podgląd komentarzy jest widoczny</string>
@@ -677,6 +677,9 @@ Aby pokazać menu ścieżki audio, zmień opcję „Fałszuj strumienie wideo”
<string name="revanced_hide_autoplay_button_title">Ukryj przycisk automatycznego odtwarzania</string>
<string name="revanced_hide_autoplay_button_summary_on">Przycisk automatycznego odtwarzania jest ukryty</string>
<string name="revanced_hide_autoplay_button_summary_off">Przycisk automatycznego odtwarzania jest widoczny</string>
<string name="revanced_hide_player_control_buttons_background_title">Ukryj tło przycisków sterowania odtwarzacza</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">Tło przycisków sterowania odtwarzacza jest ukryte</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">Tło przycisków sterowania odtwarzacza jest wyświetlane</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Karty ekranu końcowego</string>
@@ -746,6 +749,9 @@ Aby pokazać menu ścieżki audio, zmień opcję „Fałszuj strumienie wideo”
<string name="revanced_hide_shorts_location_label_title">Etykieta lokalizacji</string>
<string name="revanced_hide_shorts_location_label_summary_on">Etykieta lokalizacji jest ukryta</string>
<string name="revanced_hide_shorts_location_label_summary_off">Etykieta lokalizacji jest widoczna</string>
<string name="revanced_hide_shorts_preview_comment_title">Ukryj komentarz podglądu</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Komentarz podglądu jest ukryty</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Podgląd komentarza jest wyświetlany</string>
<string name="revanced_hide_shorts_save_sound_button_title">Ukryj przycisk \"Zapisz muzykę\"</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">Przycisk od zapisywania muzyki jest ukryty</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">Przycisk od zapisywania muzyki jest widoczny</string>
@@ -758,6 +764,9 @@ Aby pokazać menu ścieżki audio, zmień opcję „Fałszuj strumienie wideo”
<string name="revanced_hide_shorts_green_screen_button_title">Ukryj przycisk \"Zielony ekran\"</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">Przycisk od greenscreena jest ukryty</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">Przycisk od greenscreena jest widoczny</string>
<string name="revanced_hide_shorts_new_posts_button_title">Ukryj przycisk Nowe posty</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">Przycisk Nowe posty jest widoczny</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">Przycisk Nowe posty jest ukryty</string>
<string name="revanced_hide_shorts_hashtag_button_title">Przycisk hashtagu</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">Przycisk hashtagu jest ukryty</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">Przycisk hashtagu jest widoczny</string>
@@ -1249,6 +1258,9 @@ Przesuń, aby rozwinąć lub zamknąć"</string>
<string name="revanced_gradient_loading_screen_title">Kolorowy ekran ładowania</string>
<string name="revanced_gradient_loading_screen_summary_on">Ekran ładowania będzie miał kolorowe tło</string>
<string name="revanced_gradient_loading_screen_summary_off">Ekran ładowania będzie miał stałe tło</string>
<string name="splash_screen_animation_style_title">Styl ekranu powitalnego</string>
<string name="splash_screen_animation_style_entry_1">Kolor</string>
<string name="splash_screen_animation_style_entry_2">Czarno-biały</string>
<string name="revanced_seekbar_custom_color_title">Niestandardowy kolor paska postępu</string>
<string name="revanced_seekbar_custom_color_summary_on">Niestandardowy</string>
<string name="revanced_seekbar_custom_color_summary_off">Oryginalny</string>
@@ -1394,7 +1406,7 @@ Włączenie tego może odblokować wyższe jakości wideo"</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Przycisk od prędkości</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Przycisk jest widoczny</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Przycisk jest widoczny. Dotknij i przytrzymaj, aby zresetować prędkość odtwarzania do domyślnej</string>
<string name="revanced_playback_speed_dialog_button_summary_off">Przycisk nie jest widoczny</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1406,6 +1418,7 @@ Włączenie tego może odblokować wyższe jakości wideo"</string>
<string name="revanced_custom_playback_speeds_invalid">Prędkości niestandardowe muszą być mniejsze niż %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Nieprawidłowe prędkości odtwarzania niestandardowego</string>
<string name="revanced_custom_playback_speeds_auto">Automatyczne</string>
<string name="revanced_custom_playback_speeds_reset_toast">Prędkość odtwarzania zresetowana do: %s</string>
<string name="revanced_speed_tap_and_hold_title">Szybkość dostosowywania dotknięciem i przytrzymaniem</string>
<string name="revanced_speed_tap_and_hold_summary">Prędkość odtwarzania w granicach 0-8</string>
</patch>

View File

@@ -309,9 +309,9 @@ Você não será notificado sobre nenhum evento inesperado."</string>
<string name="revanced_hide_comments_create_a_short_button_title">Ocultar botão \'Criar um Short\'</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">O botão Criar um Short está oculto</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">O botão Criar um Short é mostrado</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Ocultar botões de emoji e carimbo de data/hora</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Os botões de emoji e carimbo de data/hora estão ocultos</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Os botões de emoji e carimbo de data/hora são mostrados</string>
<string name="revanced_hide_comments_timestamp_button_title">Ocultar o botão de carimbo de data/hora</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">O botão de carimbo de data/hora está oculto</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">O botão de carimbo de data/hora é mostrado</string>
<string name="revanced_hide_comments_preview_comment_title">Ocultar prévia de comentário</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Prévia de comentário está oculta</string>
<string name="revanced_hide_comments_preview_comment_summary_off">A prévia de comentário é exibida</string>
@@ -679,6 +679,9 @@ Para exibir o menu da faixa de áudio, altere \"Spoof video streams\" para iOS T
<string name="revanced_hide_autoplay_button_title">Ocultar botão Reprodução automática</string>
<string name="revanced_hide_autoplay_button_summary_on">Botão de reprodução automática está oculto</string>
<string name="revanced_hide_autoplay_button_summary_off">Botão de reprodução automática não está oculto</string>
<string name="revanced_hide_player_control_buttons_background_title">Ocultar o fundo dos botões de controle do player</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">O fundo dos botões de controle do player está oculto</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">O fundo dos botões de controle do player está visível</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Ocultar cartões de tela final</string>
@@ -748,6 +751,9 @@ Para exibir o menu da faixa de áudio, altere \"Spoof video streams\" para iOS T
<string name="revanced_hide_shorts_location_label_title">Ocultar rótulo de localização</string>
<string name="revanced_hide_shorts_location_label_summary_on">Rótulo de localização está oculto</string>
<string name="revanced_hide_shorts_location_label_summary_off">Rótulo de localização é mostrado</string>
<string name="revanced_hide_shorts_preview_comment_title">Ocultar comentário de visualização</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">O comentário de visualização está oculto</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">A visualização do comentário é mostrada</string>
<string name="revanced_hide_shorts_save_sound_button_title">Ocultar botão Salvar música</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">O botão Salvar música está oculto</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">O botão Salvar música será exibido</string>
@@ -760,6 +766,9 @@ Para exibir o menu da faixa de áudio, altere \"Spoof video streams\" para iOS T
<string name="revanced_hide_shorts_green_screen_button_title">Ocultar botão Tela verde</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">O botão de tela verde está oculto</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">O botão de tela verde será exibido</string>
<string name="revanced_hide_shorts_new_posts_button_title">Ocultar botão de novas postagens</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">O botão de novas postagens é exibido</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">O botão de novas postagens está oculto</string>
<string name="revanced_hide_shorts_hashtag_button_title">Ocultar botão hashtag</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">O botão hashtag está oculto</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">Botão hashtag é mostrado</string>
@@ -1250,6 +1259,9 @@ Passe o dedo para expandir ou fechar"</string>
<string name="revanced_gradient_loading_screen_title">Ativar tela de carregamento em gradiente</string>
<string name="revanced_gradient_loading_screen_summary_on">Tela de carregamento terá um fundo em gradiente</string>
<string name="revanced_gradient_loading_screen_summary_off">Tela de carregamento terá um fundo sólido</string>
<string name="splash_screen_animation_style_title">Estilo da tela inicial</string>
<string name="splash_screen_animation_style_entry_1">Cor</string>
<string name="splash_screen_animation_style_entry_2">Preto e branco</string>
<string name="revanced_seekbar_custom_color_title">Ativar cor personalizada da barra de busca</string>
<string name="revanced_seekbar_custom_color_summary_on">Cor personalizada da barra de busca é mostrada</string>
<string name="revanced_seekbar_custom_color_summary_off">Cor original da barra de busca é mostrada</string>
@@ -1395,7 +1407,7 @@ Habilitar isso pode desbloquear qualidades de vídeo mais altas"</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Mostrar botão de velocidade</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Botão não esta oculto</string>
<string name="revanced_playback_speed_dialog_button_summary_on">O botão é exibido. Toque e mantenha pressionado para redefinir a velocidade de reprodução para o padrão</string>
<string name="revanced_playback_speed_dialog_button_summary_off">Botão não está visível</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1407,6 +1419,7 @@ Habilitar isso pode desbloquear qualidades de vídeo mais altas"</string>
<string name="revanced_custom_playback_speeds_invalid">Velocidades personalizadas devem ser menores que %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Velocidades de reprodução personalizadas inválidas</string>
<string name="revanced_custom_playback_speeds_auto">Automático</string>
<string name="revanced_custom_playback_speeds_reset_toast">Velocidade de reprodução redefinida para: %s</string>
<string name="revanced_speed_tap_and_hold_title">Velocidade personalizada de tocar e segurar</string>
<string name="revanced_speed_tap_and_hold_summary">Velocidade de reprodução entre 0-8</string>
</patch>

View File

@@ -311,9 +311,9 @@ Não será notificado de quaisquer eventos inesperados."</string>
<string name="revanced_hide_comments_create_a_short_button_title">Ocultar o botão \'Criar um Short\'</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">O botão Criar um Short está oculto</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">O botão Criar um Short é mostrado</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Ocultar botões de emoji e carimbo de data/hora</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Os botões de emoji e carimbo de data/hora estão ocultos</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Os botões de emoji e carimbo de data/hora são mostrados</string>
<string name="revanced_hide_comments_timestamp_button_title">Ocultar o botão de carimbo de data/hora</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">O botão de carimbo de data/hora está oculto</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">O botão de carimbo de data/hora está visível</string>
<string name="revanced_hide_comments_preview_comment_title">Esconder comentário de pré-visualização</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Visualização do comentário está escondida</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Pré-visualização de comentário é exibida</string>
@@ -681,6 +681,9 @@ Para mostrar o menu da faixa de áudio, altere \"Spoof video streams\" para iOS
<string name="revanced_hide_autoplay_button_title">Ocultar botão de reprodução automática</string>
<string name="revanced_hide_autoplay_button_summary_on">O botão de reprodução automática está escondido</string>
<string name="revanced_hide_autoplay_button_summary_off">Botão de reprodução automática é visível</string>
<string name="revanced_hide_player_control_buttons_background_title">Ocultar o fundo dos botões de controlo do reprodutor</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">O fundo dos botões de controlo do reprodutor está oculto</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">O fundo dos botões de controlo do reprodutor é mostrado</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Esconder cartões de ecrã final</string>
@@ -750,6 +753,9 @@ Para mostrar o menu da faixa de áudio, altere \"Spoof video streams\" para iOS
<string name="revanced_hide_shorts_location_label_title">Ocultar rótulo de localização</string>
<string name="revanced_hide_shorts_location_label_summary_on">Rótulo de localização está oculto</string>
<string name="revanced_hide_shorts_location_label_summary_off">Rótulo de localização é mostrado</string>
<string name="revanced_hide_shorts_preview_comment_title">Esconder comentário de pré-visualização</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Visualização do comentário está escondida</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Pré-visualização de comentário é exibida</string>
<string name="revanced_hide_shorts_save_sound_button_title">Ocultar botão de salvar música</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">O botão salvar música está oculto</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">O botão salvar música é mostrado</string>
@@ -762,6 +768,9 @@ Para mostrar o menu da faixa de áudio, altere \"Spoof video streams\" para iOS
<string name="revanced_hide_shorts_green_screen_button_title">Botão de ecrã verde está oculto</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">O botão de ecrã verde está oculto</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">Botão de ecrã verde é mostrado</string>
<string name="revanced_hide_shorts_new_posts_button_title">Ocultar botão Novas postagens</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">O botão Novas postagens é exibido</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">O botão Novas postagens está oculto</string>
<string name="revanced_hide_shorts_hashtag_button_title">Ocultar botão de hashtag</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">O botão Hashtag está oculto</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">Botão Hashtag é mostrado</string>
@@ -1253,6 +1262,9 @@ Deslize para expandir ou fechar"</string>
<string name="revanced_gradient_loading_screen_title">Ativar ecrã de carregamento do gradiente</string>
<string name="revanced_gradient_loading_screen_summary_on">Carregar ecrã terá um fundo em gradiente</string>
<string name="revanced_gradient_loading_screen_summary_off">Carregar ecrã terá um fundo sólido</string>
<string name="splash_screen_animation_style_title">Estilo da tela inicial</string>
<string name="splash_screen_animation_style_entry_1">Cor</string>
<string name="splash_screen_animation_style_entry_2">Preto e branco</string>
<string name="revanced_seekbar_custom_color_title">Ativar a cor personalizada</string>
<string name="revanced_seekbar_custom_color_summary_on">Cor personalizada da barra de busca é visível</string>
<string name="revanced_seekbar_custom_color_summary_off">Cor original da barra de busca é visível</string>
@@ -1398,7 +1410,7 @@ Bật tính năng này có thể mở khóa chất lượng video cao hơn"</str
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Mostrar botão de diálogo de velocidade</string>
<string name="revanced_playback_speed_dialog_button_summary_on">O botão está visível</string>
<string name="revanced_playback_speed_dialog_button_summary_on">O botão é mostrado. Toque e segure para redefinir a velocidade de reprodução para o padrão</string>
<string name="revanced_playback_speed_dialog_button_summary_off">O botão não está visível</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1410,6 +1422,7 @@ Bật tính năng này có thể mở khóa chất lượng video cao hơn"</str
<string name="revanced_custom_playback_speeds_invalid">Tốc độ tùy chỉnh phải nhỏ hơn %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Tốc độ phát lại tùy chỉnh không hợp lệ</string>
<string name="revanced_custom_playback_speeds_auto">Automático</string>
<string name="revanced_custom_playback_speeds_reset_toast">Velocidade de reprodução redefinida para: %s</string>
<string name="revanced_speed_tap_and_hold_title">Velocidade personalizada ao tocar e segurar</string>
<string name="revanced_speed_tap_and_hold_summary">Velocidade de reprodução de 0 a 8</string>
</patch>

View File

@@ -311,9 +311,9 @@ Nu veți fi notificat de niciun eveniment neașteptat."</string>
<string name="revanced_hide_comments_create_a_short_button_title">Ascunde butonul \'Creare Short\'</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">Butonul Creează un Short este ascuns</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">Butonul Creează un Short este afișat</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Ascunde butoanele emoji și timestamp</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Butoanele Emoji și timestamp sunt ascunse</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Butoanele Emoji și timestamp sunt afișate</string>
<string name="revanced_hide_comments_timestamp_button_title">Ascunde butonul de marcaj temporal</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Butonul de marcaj temporal este ascuns</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Butonul de marcaj temporal este afișat</string>
<string name="revanced_hide_comments_preview_comment_title">Ascunde previzualizarea comentariului</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Previzualizarea comentariului este ascunsă</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Previzualizarea comentariului este afișată</string>
@@ -681,6 +681,9 @@ Pentru a afișa meniul pentru pista audio, schimbați opțiunea „Falsifică fl
<string name="revanced_hide_autoplay_button_title">Ascunde butonul Redare automată</string>
<string name="revanced_hide_autoplay_button_summary_on">Butonul Autoplay este ascuns</string>
<string name="revanced_hide_autoplay_button_summary_off">Butonul Auto-redare este afișat</string>
<string name="revanced_hide_player_control_buttons_background_title">Ascunde fundalul butoanelor de control al playerului</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">Fundalul butoanelor de control al playerului este ascuns</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">Fundalul butoanelor de control al playerului este afișat</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Ascunde cardurile ecranului final</string>
@@ -750,6 +753,9 @@ Pentru a afișa meniul pentru pista audio, schimbați opțiunea „Falsifică fl
<string name="revanced_hide_shorts_location_label_title">Ascunde eticheta locației</string>
<string name="revanced_hide_shorts_location_label_summary_on">Eticheta locației este ascunsă</string>
<string name="revanced_hide_shorts_location_label_summary_off">Eticheta locației este afișată</string>
<string name="revanced_hide_shorts_preview_comment_title">Ascunde comentariul de previzualizare</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Comentariul de previzualizare este ascuns</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Previzualizarea comentariului este afișată</string>
<string name="revanced_hide_shorts_save_sound_button_title">Ascunde butonul Salvează melodia</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">Butonul de salvare a muzicii este ascuns</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">Butonul de salvare a muzicii este afișat</string>
@@ -762,6 +768,9 @@ Pentru a afișa meniul pentru pista audio, schimbați opțiunea „Falsifică fl
<string name="revanced_hide_shorts_green_screen_button_title">Ascunde butonul Ecran verde</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">Butonul de ecran verde este ascuns</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">Butonul de ecran verde este afișat</string>
<string name="revanced_hide_shorts_new_posts_button_title">Ascunde butonul Postări noi</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">Butonul Postări noi este afișat</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">Butonul Postări noi este ascuns</string>
<string name="revanced_hide_shorts_hashtag_button_title">Ascunde butonul hashtag</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">Butonul Hashtag este ascuns</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">Butonul Hashtag este afișat</string>
@@ -1252,6 +1261,9 @@ Trageți pentru a extinde sau a închide"</string>
<string name="revanced_gradient_loading_screen_title">Activează ecranul de încărcare gradient</string>
<string name="revanced_gradient_loading_screen_summary_on">Încărcarea ecranului va avea un fundal pentru gradient</string>
<string name="revanced_gradient_loading_screen_summary_off">Ecranul de încărcare va avea un fundal solid</string>
<string name="splash_screen_animation_style_title">Stil ecran de pornire</string>
<string name="splash_screen_animation_style_entry_1">Culoare</string>
<string name="splash_screen_animation_style_entry_2">Alb-negru</string>
<string name="revanced_seekbar_custom_color_title">Activează culoarea barei de căutare personalizate</string>
<string name="revanced_seekbar_custom_color_summary_on">Culoarea personalizată a barei de căutare este afișată</string>
<string name="revanced_seekbar_custom_color_summary_off">Culoarea bara de căutare originală este afișată</string>
@@ -1397,7 +1409,7 @@ Activarea acestei opțiuni poate debloca calități video mai mari"</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Arată butonul de dialog de viteză</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Butonul este afișat</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Butonul este afișat. Atingeți și mențineți apăsat pentru a reseta viteza de redare la cea implicită</string>
<string name="revanced_playback_speed_dialog_button_summary_off">Butonul nu este afișat</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1409,6 +1421,7 @@ Activarea acestei opțiuni poate debloca calități video mai mari"</string>
<string name="revanced_custom_playback_speeds_invalid">Vitezele personalizate trebuie să fie mai mici de %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Viteze de redare personalizate nevalide</string>
<string name="revanced_custom_playback_speeds_auto">Automat</string>
<string name="revanced_custom_playback_speeds_reset_toast">Viteza de redare a fost resetată la: %s</string>
<string name="revanced_speed_tap_and_hold_title">Viteză personalizată de apăsare și menținere</string>
<string name="revanced_speed_tap_and_hold_summary">Viteză de redare între 0-8</string>
</patch>

View File

@@ -311,9 +311,9 @@ Second \"item\" text"</string>
<string name="revanced_hide_comments_create_a_short_button_title">Скрыть кнопку \"Создать Short\"</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">Кнопка \"Создать Short\" при ответе на комментарий скрыта</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">Кнопка \"Создать Short\" при ответе на комментарий показана</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Скрыть кнопки эмодзи и меток времени</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Кнопки эмодзи и меток времени скрыты</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Кнопки эмодзи и меток времени показаны</string>
<string name="revanced_hide_comments_timestamp_button_title">Скрыть кнопку метки времени</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Кнопка метки времени скрыта</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Кнопка метки времени показана</string>
<string name="revanced_hide_comments_preview_comment_title">Скрыть предпросмотр комментария</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Предпросмотр комментария под плеером скрыт</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Предпросмотр комментария под плеером показан</string>
@@ -681,6 +681,9 @@ Second \"item\" text"</string>
<string name="revanced_hide_autoplay_button_title">Скрыть кнопку \"Автовоспроизведение\"</string>
<string name="revanced_hide_autoplay_button_summary_on">Кнопка \"Автовоспроизведение\" в плеере скрыта</string>
<string name="revanced_hide_autoplay_button_summary_off">Кнопка \"Автовоспроизведение\" в плеере показана</string>
<string name="revanced_hide_player_control_buttons_background_title">Скрыть фон кнопок управления плеера</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">Фон кнопок управления плеера скрыт</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">Фон кнопок управления плеера показан</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Скрыть заставки следующих видео</string>
@@ -750,6 +753,9 @@ Second \"item\" text"</string>
<string name="revanced_hide_shorts_location_label_title">Скрыть метку местоположения</string>
<string name="revanced_hide_shorts_location_label_summary_on">Метка местоположения в Shorts скрыта</string>
<string name="revanced_hide_shorts_location_label_summary_off">Метка местоположения в Shorts показана</string>
<string name="revanced_hide_shorts_preview_comment_title">Скрыть превью комментариев</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Превью комментариев под плеером скрыто</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Превью комментариев под плеером показано</string>
<string name="revanced_hide_shorts_save_sound_button_title">Скрыть кнопку \"Сохранить музыку\"</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">Кнопка \"Сохранить музыку\" в Shorts скрыта</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">Кнопка \"Сохранить музыку\" в Shorts показана</string>
@@ -762,6 +768,9 @@ Second \"item\" text"</string>
<string name="revanced_hide_shorts_green_screen_button_title">Скрыть кнопку \"Зеленый экран\"</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">Кнопка \"Зеленый экран\" в Shorts скрыта</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">Кнопка \"Зеленый экран\" в Shorts показана</string>
<string name="revanced_hide_shorts_new_posts_button_title">Скрыть кнопку \"Новые публикации\"</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">Кнопка \"Новые публикации\" в плеере Shorts показана</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">Кнопка \"Новые публикации\" в плеере Shorts скрыта</string>
<string name="revanced_hide_shorts_hashtag_button_title">Скрыть кнопку хэштега</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">Кнопка хэштега в Shorts скрыта</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">Кнопка хэштега в Shorts показана</string>
@@ -1253,6 +1262,9 @@ 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>
<string name="splash_screen_animation_style_title">Стиль экрана заставки</string>
<string name="splash_screen_animation_style_entry_1">Цветной</string>
<string name="splash_screen_animation_style_entry_2">Черно-белый</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>
@@ -1398,7 +1410,7 @@ Second \"item\" text"</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Показать кнопку скорости воспроизведения</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Кнопка выбора скорости воспроизведения показана</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Кнопка показана. Нажмите и удерживайте, чтобы сбросить скорость воспроизведения до значения по умолчанию</string>
<string name="revanced_playback_speed_dialog_button_summary_off">Кнопка выбора скорости воспроизведения скрыта</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1410,6 +1422,7 @@ Second \"item\" text"</string>
<string name="revanced_custom_playback_speeds_invalid">Кастомные скорости должны быть меньше, чем %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Недопустимые кастомные скорости воспроизведения</string>
<string name="revanced_custom_playback_speeds_auto">Автоматически</string>
<string name="revanced_custom_playback_speeds_reset_toast">Скорость воспроизведения сброшена до: %s</string>
<string name="revanced_speed_tap_and_hold_title">Кастомная скорость при нажатии и удержании</string>
<string name="revanced_speed_tap_and_hold_summary">Значение кастомной скорости воспроизведения при нажатии и удержании от 0 до 8</string>
</patch>

View File

@@ -309,9 +309,9 @@ Nebudete informovaní o žiadnych nepredvídaných udalostiach."</string>
<string name="revanced_hide_comments_create_a_short_button_title">Skryť tlačidlo „Vytvoriť krátke video“</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">Tlačidlo Vytvoriť Short je skryté</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">Tlačidlo Vytvoriť Short je zobrazené</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Skryť tlačidlá s emoji a časovou pečiatkou</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Tlačidlá s emoji a časovou pečiatkou skryté</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Tlačidlá s emoji a časovou pečiatkou sú zobrazené</string>
<string name="revanced_hide_comments_timestamp_button_title">Skryť tlačidlo s časovou pečiatkou</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Tlačidlo s časovou pečiatkou je skryté</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Zobrazí sa tlačidlo s časovou pečiatkou</string>
<string name="revanced_hide_comments_preview_comment_title">Skryť ukážkový komentár</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Komentár ukážky je skrytý</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Zobrazí sa ukážka komentára</string>
@@ -674,6 +674,9 @@ Ak chcete zobraziť ponuku zvukovej stopy, zmeňte možnosť „Oklamať videost
<string name="revanced_hide_autoplay_button_title">Skryť tlačidlo Automatické prehrávanie</string>
<string name="revanced_hide_autoplay_button_summary_on">Tlačidlo automatického prehrávania je skryté</string>
<string name="revanced_hide_autoplay_button_summary_off">Zobrazí sa tlačidlo automatického prehrávania</string>
<string name="revanced_hide_player_control_buttons_background_title">Skryť pozadie tlačidiel ovládania prehrávača</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">Pozadie tlačidiel ovládania prehrávača je skryté</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">Zobrazuje sa pozadie tlačidiel ovládania prehrávača</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Skryť karty záverečnej obrazovky</string>
@@ -743,6 +746,9 @@ Ak chcete zobraziť ponuku zvukovej stopy, zmeňte možnosť „Oklamať videost
<string name="revanced_hide_shorts_location_label_title">Skryť štítok polohy</string>
<string name="revanced_hide_shorts_location_label_summary_on">Štítok miesta je skrytý</string>
<string name="revanced_hide_shorts_location_label_summary_off">Zobrazí sa štítok s umiestnením</string>
<string name="revanced_hide_shorts_preview_comment_title">Skryť náhľadový komentár</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Náhľadový komentár je skrytý</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Zobrazuje sa ukážka komentára</string>
<string name="revanced_hide_shorts_save_sound_button_title">Skryť tlačidlo Uložiť hudbu</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">Tlačidlo na uloženie hudby je skryté</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">Tlačidlo na uloženie hudby sa zobrazuje</string>
@@ -755,6 +761,9 @@ Ak chcete zobraziť ponuku zvukovej stopy, zmeňte možnosť „Oklamať videost
<string name="revanced_hide_shorts_green_screen_button_title">Skryť tlačidlo Zelená obrazovka</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">Tlačidlo pre zelené pozadie bude skryté</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">Tlačidlo pre zelené pozadie bude zobrazené</string>
<string name="revanced_hide_shorts_new_posts_button_title">Skryť tlačidlo Nové príspevky</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">Zobrazí sa tlačidlo Nové príspevky</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">Tlačidlo Nové príspevky je skryté</string>
<string name="revanced_hide_shorts_hashtag_button_title">Skryť tlačidlo pre hashtag</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">Tlačidlo pre hashtag bude skryté</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">Tlačidlo pre hashtag bude zobrazené</string>
@@ -1241,6 +1250,9 @@ Potiahnutím rozbalíte alebo zatvoríte"</string>
<string name="revanced_gradient_loading_screen_title">Povoliť obrazovku načítania gradientu</string>
<string name="revanced_gradient_loading_screen_summary_on">Načítavacia obrazovka bude mať pozadie s prechodom</string>
<string name="revanced_gradient_loading_screen_summary_off">Načítavacia obrazovka bude mať pevné pozadie</string>
<string name="splash_screen_animation_style_title">Štýl úvodnej obrazovky</string>
<string name="splash_screen_animation_style_entry_1">Farba</string>
<string name="splash_screen_animation_style_entry_2">Čiernobiela</string>
<string name="revanced_seekbar_custom_color_title">Povoliť vlastnú farbu vyhľadávacieho panela</string>
<string name="revanced_seekbar_custom_color_summary_on">Zobrazí sa vlastná farba panela vyhľadávania</string>
<string name="revanced_seekbar_custom_color_summary_off">Zobrazí sa pôvodná farba vyhľadávacieho panela</string>
@@ -1386,7 +1398,7 @@ Povolením tejto možnosti môžete odomknúť vyššie kvality videa"</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Zobraziť dialógové tlačidlo rýchlosti</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Tlačidlo je zobrazené</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Zobrazuje sa tlačidlo. Ťuknite a podržte, ak chcete obnoviť predvolenú rýchlosť prehrávania</string>
<string name="revanced_playback_speed_dialog_button_summary_off">Tlačidlo nie je zobrazené</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1398,6 +1410,7 @@ Povolením tejto možnosti môžete odomknúť vyššie kvality videa"</string>
<string name="revanced_custom_playback_speeds_invalid">Vlastné rýchlosti musia byť menšie ako %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Neplatné vlastné rýchlosti prehrávania</string>
<string name="revanced_custom_playback_speeds_auto">Automaticky</string>
<string name="revanced_custom_playback_speeds_reset_toast">Rýchlosť prehrávania obnovená na: %s</string>
<string name="revanced_speed_tap_and_hold_title">Vlastná rýchlosť ťuknutia a podržania</string>
<string name="revanced_speed_tap_and_hold_summary">Rýchlosť prehrávania medzi 0-8</string>
</patch>

View File

@@ -311,9 +311,9 @@ Ne boste obveščeni o nobenih nepričakovanih dogodkih."</string>
<string name="revanced_hide_comments_create_a_short_button_title">Skrij gumb \"Ustvari Shorts\"</string>
<string name="revanced_hide_comments_create_a_short_button_summary_on">Gumb »Ustvari Short« je skrit</string>
<string name="revanced_hide_comments_create_a_short_button_summary_off">Gumb »Ustvari Short« je prikazan</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_title">Skrij gumbe z emojiji in časovnim žigom</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_on">Gumbi z emojiji in časovnim žigom so skriti</string>
<string name="revanced_hide_comments_timestamp_and_emoji_buttons_summary_off">Gumbi z emojiji in časovnim žigom so prikazani</string>
<string name="revanced_hide_comments_timestamp_button_title">Skrij gumb časovnega žiga</string>
<string name="revanced_hide_comments_timestamp_button_summary_on">Gumb časovnega žiga je skrit</string>
<string name="revanced_hide_comments_timestamp_button_summary_off">Gumb časovnega žiga je prikazan</string>
<string name="revanced_hide_comments_preview_comment_title">Skrij predogled komentarja</string>
<string name="revanced_hide_comments_preview_comment_summary_on">Predogled komentarja je skrit</string>
<string name="revanced_hide_comments_preview_comment_summary_off">Predogled komentarja je prikazan</string>
@@ -681,6 +681,9 @@ Opomba: Omogočanje tega tudi prisilno skrije video oglase"</string>
<string name="revanced_hide_autoplay_button_title">Skrij gumb \'Samodejno predvajanje\'</string>
<string name="revanced_hide_autoplay_button_summary_on">Gumb za samodejno predvajanje je skrit</string>
<string name="revanced_hide_autoplay_button_summary_off">Gumb za samodejno predvajanje je prikazan</string>
<string name="revanced_hide_player_control_buttons_background_title">Skrij ozadje gumbov za upravljanje predvajalnika</string>
<string name="revanced_hide_player_control_buttons_background_summary_on">Ozadje gumbov za upravljanje predvajalnika je skrito</string>
<string name="revanced_hide_player_control_buttons_background_summary_off">Ozadje gumbov za upravljanje predvajalnika je prikazano</string>
</patch>
<patch id="layout.hide.endscreencards.hideEndscreenCardsResourcePatch">
<string name="revanced_hide_endscreen_cards_title">Skrij kartice na končnem zaslonu</string>
@@ -750,6 +753,9 @@ Opomba: Omogočanje tega tudi prisilno skrije video oglase"</string>
<string name="revanced_hide_shorts_location_label_title">Skrij oznako lokacije</string>
<string name="revanced_hide_shorts_location_label_summary_on">Oznaka lokacije je skrita</string>
<string name="revanced_hide_shorts_location_label_summary_off">Oznaka lokacije je prikazana</string>
<string name="revanced_hide_shorts_preview_comment_title">Skrij predogled komentarja</string>
<string name="revanced_hide_shorts_preview_comment_summary_on">Predogled komentarja je skrit</string>
<string name="revanced_hide_shorts_preview_comment_summary_off">Predogled komentarja je prikazan</string>
<string name="revanced_hide_shorts_save_sound_button_title">Skrij gumb \'Shrani glasbo\'</string>
<string name="revanced_hide_shorts_save_sound_button_summary_on">Gumb za shranjevanje glasbe je skrit</string>
<string name="revanced_hide_shorts_save_sound_button_summary_off">Gumb za shranjevanje glasbe je prikazan</string>
@@ -762,6 +768,9 @@ Opomba: Omogočanje tega tudi prisilno skrije video oglase"</string>
<string name="revanced_hide_shorts_green_screen_button_title">Skrij gumb \'Zelena scena\'</string>
<string name="revanced_hide_shorts_green_screen_button_summary_on">Gumb za zeleno ozadje je skrit</string>
<string name="revanced_hide_shorts_green_screen_button_summary_off">Gumb za zeleno ozadje je prikazan</string>
<string name="revanced_hide_shorts_new_posts_button_title">Skrij gumb za nove objave</string>
<string name="revanced_hide_shorts_new_posts_button_summary_off">Gumb za nove objave je prikazan</string>
<string name="revanced_hide_shorts_new_posts_button_summary_on">Gumb za nove objave je skrit</string>
<string name="revanced_hide_shorts_hashtag_button_title">Skrij gumb za ključnik</string>
<string name="revanced_hide_shorts_hashtag_button_summary_on">Gumb za ključnik je skrit</string>
<string name="revanced_hide_shorts_hashtag_button_summary_off">Gumb za ključnik je prikazan</string>
@@ -1252,6 +1261,9 @@ Podrsnite za razširitev ali zapiranje"</string>
<string name="revanced_gradient_loading_screen_title">Omogoči zaslon za nalaganje z gradientom</string>
<string name="revanced_gradient_loading_screen_summary_on">Zaslon za nalaganje bo imel ozadje z gradientom</string>
<string name="revanced_gradient_loading_screen_summary_off">Zaslon za nalaganje bo imel enobarvno ozadje</string>
<string name="splash_screen_animation_style_title">Slog uvodnega zaslona</string>
<string name="splash_screen_animation_style_entry_1">Barva</string>
<string name="splash_screen_animation_style_entry_2">Črno-belo</string>
<string name="revanced_seekbar_custom_color_title">Omogoči prilagojeno barvo drsnika</string>
<string name="revanced_seekbar_custom_color_summary_on">Prilagojena barva drsnika je prikazana</string>
<string name="revanced_seekbar_custom_color_summary_off">Izvorna barva drsnika je prikazana</string>
@@ -1397,7 +1409,7 @@ Omogočanje tega lahko odklene višje kakovosti videa"</string>
</patch>
<patch id="video.speed.button.playbackSpeedButtonPatch">
<string name="revanced_playback_speed_dialog_button_title">Pokaži gumb za pogovor o hitrosti</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Gumb je prikazan</string>
<string name="revanced_playback_speed_dialog_button_summary_on">Gumb je prikazan. Dotaknite se ga in ga pridržite, da ponastavite hitrost predvajanja na privzeto.</string>
<string name="revanced_playback_speed_dialog_button_summary_off">Gumb ni prikazan</string>
</patch>
<patch id="video.speed.custom.customPlaybackSpeedPatch">
@@ -1409,6 +1421,7 @@ Omogočanje tega lahko odklene višje kakovosti videa"</string>
<string name="revanced_custom_playback_speeds_invalid">Hitrosti predvajanja po meri morajo biti manjše od %s</string>
<string name="revanced_custom_playback_speeds_parse_exception">Neveljavne hitrosti predvajanja po meri</string>
<string name="revanced_custom_playback_speeds_auto">Samodejno</string>
<string name="revanced_custom_playback_speeds_reset_toast">Hitrost predvajanja je bila ponastavljena na: %s</string>
<string name="revanced_speed_tap_and_hold_title">Hitrost pritiska in pridržanja po meri</string>
<string name="revanced_speed_tap_and_hold_summary">Hitrost predvajanja med 0 in 8</string>
</patch>

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