chore: Process strings from Crowdin correctly

This commit is contained in:
oSumAtrIX
2026-02-16 01:52:59 +01:00
parent 6b06b9d132
commit 450454019d
77 changed files with 77723 additions and 80358 deletions
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
File diff suppressed because it is too large Load Diff
@@ -17,294 +17,223 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch">
</patch> <string name="revanced_announcements_dialog_dismiss">খাৰিজ কৰক</string>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> </patch>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.branding.customBrandingPatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.changeHeaderPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> </patch>
</patch> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="video.codecs.disableVideoCodecsPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
</patch> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<patch id="misc.announcements.announcementsPatch"> </patch>
<string name="youtube.misc.announcements.announcementsPatch.revanced_announcements_dialog_dismiss">খাৰিজ কৰক</string> </app>
</patch> <app id="music">
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="layout.branding.customBrandingPatch"/>
</patch> <patch id="misc.settings.settingsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="ad.video.hideVideoAdsPatch"/>
</patch> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.buttons.hideButtons"/>
</patch> <patch id="layout.compactheader.hideCategoryBar"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
</patch> <patch id="layout.navigationbar.navigationBarPatch">
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> </patch>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.premium.hideGetPremiumPatch"/>
</patch> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
<patch id="video.quality.rememberVideoQualityPatch"> </app>
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <app id="twitch">
</patch> <patch id="ad.audio.audioAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.embedded.embeddedAdsPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
</patch> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <patch id="debug.debugModePatch">
</patch> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> </patch>
</patch> <patch id="misc.settings.settingsPatch"/>
<patch id="video.codecs.disableVideoCodecsPatch"> </app>
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
@@ -17,351 +17,283 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <string name="revanced_custom_branding_name_title">نام برنامه</string>
<string name="shared.layout.branding.baseCustomBrandingPatch.revanced_custom_branding_name_title">نام برنامه</string> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <string name="revanced_custom_branding_icon_title">آیکون برنامه</string>
<string name="shared.layout.branding.baseCustomBrandingPatch.revanced_custom_branding_icon_title">آیکون برنامه</string> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch">
<patch id="misc.checks.checkEnvironmentPatch"> <string name="revanced_check_environment_failed_title">بررسی ناموفق بود</string>
<string name="shared.misc.checks.checkEnvironmentPatch.revanced_check_environment_failed_title">بررسی ناموفق بود</string> <string name="revanced_check_environment_dialog_open_official_source_button">رفتن به وبسایت رسمی</string>
<string name="shared.misc.checks.checkEnvironmentPatch.revanced_check_environment_dialog_open_official_source_button">رفتن به وبسایت رسمی</string> <string name="revanced_check_environment_dialog_ignore_button">نادیده بگیر</string>
<string name="shared.misc.checks.checkEnvironmentPatch.revanced_check_environment_dialog_ignore_button">نادیده بگیر</string> <string name="revanced_check_environment_failed_message">&lt;h5&gt;به نظر نمی‌رسد این برنامه توسط شما وصله شده باشد.&lt;/h5&gt;&lt;br&gt;این برنامه ممکن است به درستی کار نکند، &lt;b&gt;ممکن است استفاده از آن مضر یا حتی خطرناک باشد&lt;/b&gt;.&lt;br&gt;&lt;بر&gt;این برنامه از قبل دریافت شده است یا این چک از قبل دریافت شده است else:&lt;br&gt;&lt;br&gt;&lt;small&gt;%1$s&lt;/small&gt;&lt;br&gt;اکیداً توصیه می‌شود که &lt;b&gt;این برنامه را حذف نصب کنید و خودتان آن را وصله کنید&lt;/b&gt; برای اطمینان از اینکه از یک برنامه معتبر و ایمن استفاده می‌کنید.&lt;p&gt;&lt;br&gt;اگر نادیده گرفته شود، این هشدار فقط دو بار نشان داده می‌شود.</string>
<string name="shared.misc.checks.checkEnvironmentPatch.revanced_check_environment_failed_message">&lt;h5&gt;به نظر نمی‌رسد این برنامه توسط شما وصله شده باشد.&lt;/h5&gt;&lt;br&gt;این برنامه ممکن است به درستی کار نکند، &lt;b&gt;ممکن است استفاده از آن مضر یا حتی خطرناک باشد&lt;/b&gt;.&lt;br&gt;&lt;بر&gt;این برنامه از قبل دریافت شده است یا این چک از قبل دریافت شده است else:&lt;br&gt;&lt;br&gt;&lt;small&gt;%1$s&lt;/small&gt;&lt;br&gt;اکیداً توصیه می‌شود که &lt;b&gt;این برنامه را حذف نصب کنید و خودتان آن را وصله کنید&lt;/b&gt; برای اطمینان از اینکه از یک برنامه معتبر و ایمن استفاده می‌کنید.&lt;p&gt;&lt;br&gt;اگر نادیده گرفته شود، این هشدار فقط دو بار نشان داده می‌شود.</string> <string name="revanced_check_environment_not_same_patching_device">روی دستگاه دیگری وصله شده است</string>
<string name="shared.misc.checks.checkEnvironmentPatch.revanced_check_environment_not_same_patching_device">روی دستگاه دیگری وصله شده است</string> <string name="revanced_check_environment_manager_not_expected_installer">به وسیله ReVanced Manager نصب نشده است</string>
<string name="shared.misc.checks.checkEnvironmentPatch.revanced_check_environment_manager_not_expected_installer">به وسیله ReVanced Manager نصب نشده است</string> <string name="revanced_check_environment_not_near_patch_time">بیشتر از ۱۰ دقیقه پیش وصله شده است</string>
<string name="shared.misc.checks.checkEnvironmentPatch.revanced_check_environment_not_near_patch_time">بیشتر از ۱۰ دقیقه پیش وصله شده است</string> <string name="revanced_check_environment_not_near_patch_time_days">%s روز پیش وصله شده است</string>
<string name="shared.misc.checks.checkEnvironmentPatch.revanced_check_environment_not_near_patch_time_days">%s روز پیش وصله شده است</string> <string name="revanced_check_environment_not_near_patch_time_invalid">تاریخ ایجاد APK مخدوش شده است</string>
<string name="shared.misc.checks.checkEnvironmentPatch.revanced_check_environment_not_near_patch_time_invalid">تاریخ ایجاد APK مخدوش شده است</string> </patch>
</patch> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <patch id="misc.settings.settingsResourcePatch">
</patch> <string name="revanced_settings_submenu_title">تنظیمات</string>
<patch id="misc.settings.settingsResourcePatch"> <string name="revanced_settings_reset">بازنشانی</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_settings_submenu_title">تنظیمات</string> <string name="revanced_settings_restart">راه‌اندازی مجدد</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_settings_reset">بازنشانی</string> <string name="revanced_settings_import">واردکردن</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_settings_restart">راه‌اندازی مجدد</string> <string name="revanced_settings_import_copy">رونوشت‌</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_settings_import">واردکردن</string> <string name="revanced_settings_import_reset">بازگرداندن تنظیمات ReVanced به پیش‌فرض</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_settings_import_copy">رونوشت‌</string> <string name="revanced_settings_import_success">%d تنظیمات وارد شدند</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_settings_import_reset">بازگرداندن تنظیمات ReVanced به پیش‌فرض</string> <string name="revanced_settings_import_failure_parse">واردکردن انجام نشد: %s</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_settings_import_success">%d تنظیمات وارد شدند</string> <string name="revanced_settings_search_hint">تنظیمات جستجو</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_settings_import_failure_parse">واردکردن انجام نشد: %s</string> <string name="revanced_settings_search_no_results_title">نتایجی برای %s یافت نشد</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_settings_search_hint">تنظیمات جستجو</string> <string name="revanced_settings_search_no_results_summary">کلیدواژه دیگری را امتحان کنید</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_settings_search_no_results_title">نتایجی برای %s یافت نشد</string> <string name="revanced_settings_search_remove_message">حذف از تاریخچه جستجو؟</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_settings_search_no_results_summary">کلیدواژه دیگری را امتحان کنید</string> <string name="revanced_settings_search_empty_history_title">تاریخچه جستجو خالی است</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_settings_search_remove_message">حذف از تاریخچه جستجو؟</string> <string name="revanced_settings_search_history_title">نمایش تاریخچه جستجوی تنظیمات</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_settings_search_empty_history_title">تاریخچه جستجو خالی است</string> <string name="revanced_show_menu_icons_title">نمایش آیکون تنظیمات ReVanced</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_settings_search_history_title">نمایش تاریخچه جستجوی تنظیمات</string> <string name="revanced_show_menu_icons_summary_on">نمادهای تنظیمات نشان داده می‌شوند</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_show_menu_icons_title">نمایش آیکون تنظیمات ReVanced</string> <string name="revanced_show_menu_icons_summary_off">نمادهای تنظیمات نمایش داده نمی شوند</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_show_menu_icons_summary_on">نمادهای تنظیمات نشان داده می‌شوند</string> <string name="revanced_language_title">زبان ReVanced</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_show_menu_icons_summary_off">نمادهای تنظیمات نمایش داده نمی شوند</string> <string name="revanced_language_DEFAULT">زبان برنامه</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_language_title">زبان ReVanced</string> <string name="revanced_pref_import_export_title">وارد کردن/صادر کردن</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_language_DEFAULT">زبان برنامه</string> <string name="revanced_pref_import_export_summary">وارد کردن / صادر کردن تنظیمات ReVanced</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_pref_import_export_title">وارد کردن/صادر کردن</string> <!-- Settings about dialog. -->
<string name="shared.misc.settings.settingsResourcePatch.revanced_pref_import_export_summary">وارد کردن / صادر کردن تنظیمات ReVanced</string> <string name="revanced_settings_about_links_body">شما درحال استفاده از نسخه &lt;i&gt;%s&lt;/i&gt; از پچ Revanced هستید</string>
<!-- Settings about dialog. --> <string name="revanced_settings_about_links_dev_header">توجه</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_settings_about_links_body">شما درحال استفاده از نسخه &lt;i&gt;%s&lt;/i&gt; از پچ Revanced هستید</string> <string name="revanced_settings_about_links_header">لینک‌های رسمی</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_settings_about_links_dev_header">توجه</string> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<string name="shared.misc.settings.settingsResourcePatch.revanced_settings_about_links_header">لینک‌های رسمی</string>
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
<string name="shared.misc.gms.gmsCoreSupportResourcePatch.gms_core_toast_not_installed_message">MicroG GmsCore نصب نشده است. آنرا نصب کنید.</string> <string name="gms_core_toast_not_installed_message">MicroG GmsCore نصب نشده است. آنرا نصب کنید.</string>
<string name="shared.misc.gms.gmsCoreSupportResourcePatch.gms_core_dialog_title">اقدام لازم است</string> <string name="gms_core_dialog_title">اقدام لازم است</string>
<string name="shared.misc.gms.gmsCoreSupportResourcePatch.gms_core_dialog_open_website_text">باز کردن تارنما</string> <string name="gms_core_dialog_open_website_text">باز کردن تارنما</string>
<string name="shared.misc.gms.gmsCoreSupportResourcePatch.gms_core_dialog_continue_text">ادامه</string> <string name="gms_core_dialog_continue_text">ادامه</string>
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch">
<patch id="misc.debugging.enableDebuggingPatch"> <string name="revanced_debug_screen_title">عیب‌یابی</string>
<string name="shared.misc.debugging.enableDebuggingPatch.revanced_debug_screen_title">عیب‌یابی</string> <string name="revanced_debug_screen_summary">فعال یا غیرفعال کردن گزینه‌های عیب یابی</string>
<string name="shared.misc.debugging.enableDebuggingPatch.revanced_debug_screen_summary">فعال یا غیرفعال کردن گزینه‌های عیب یابی</string> <string name="revanced_debug_title">گزارش عیب</string>
<string name="shared.misc.debugging.enableDebuggingPatch.revanced_debug_title">گزارش عیب</string> <string name="revanced_debug_summary_on">لاگ عیب فعال است</string>
<string name="shared.misc.debugging.enableDebuggingPatch.revanced_debug_summary_on">لاگ عیب فعال است</string> <string name="revanced_debug_summary_off">لاگ عیب غیرفعال است</string>
<string name="shared.misc.debugging.enableDebuggingPatch.revanced_debug_summary_off">لاگ عیب غیرفعال است</string> </patch>
</patch> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
</patch> <!-- '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. -->
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </patch>
<!-- '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. --> </app>
</patch> <app id="youtube">
</app> <patch id="misc.settings.settingsPatch">
<app id="youtube"> <string name="revanced_settings_screen_00_about_title">درباره</string>
<patch id="misc.settings.settingsPatch"> <string name="revanced_settings_screen_04_general_title">عمومی</string>
<string name="youtube.misc.settings.settingsPatch.revanced_settings_screen_00_about_title">درباره</string> <string name="revanced_settings_screen_05_player_title">اجراکننده</string>
<string name="youtube.misc.settings.settingsPatch.revanced_settings_screen_04_general_title">عمومی</string> <string name="revanced_settings_screen_07_seekbar_title">نوار جریان پخش</string>
<string name="youtube.misc.settings.settingsPatch.revanced_settings_screen_05_player_title">اجراکننده</string> <string name="revanced_settings_screen_12_video_title">ويدئو</string>
<string name="youtube.misc.settings.settingsPatch.revanced_settings_screen_07_seekbar_title">نوار جریان پخش</string> </patch>
<string name="youtube.misc.settings.settingsPatch.revanced_settings_screen_12_video_title">ويدئو</string> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.backgroundplayback.backgroundPlaybackPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<string name="youtube.layout.hide.general.hideLayoutComponentsPatch.revanced_hide_show_more_button_title">پنهان سازی دکمه \'نمایش بیشتر\'</string> <string name="revanced_hide_show_more_button_title">پنهان سازی دکمه \'نمایش بیشتر\'</string>
<string name="youtube.layout.hide.general.hideLayoutComponentsPatch.revanced_hide_ticket_shelf_title">پنهان سازی قفسه بلیط</string> <string name="revanced_hide_ticket_shelf_title">پنهان سازی قفسه بلیط</string>
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <string name="revanced_sb_general">عمومی</string>
<!-- Toast shown if network connection times out. Translations of this should not be longer than the original English or the text can be clipped and not entirely shown. --> <string name="revanced_sb_settings_copy">رونوشت‌</string>
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- 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. -->
<!-- Video likes have been set to hidden by the video uploader. --> <!-- A segment start and end time, such as "02:10 to 03:40". -->
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <string name="revanced_sb_about_title">درباره</string>
</patch> </patch>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.formfactor.changeFormFactorPatch"/>
</patch> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.startpage.changeStartPagePatch"/>
</patch> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
<string name="youtube.layout.sponsorblock.sponsorBlockResourcePatch.revanced_sb_general">عمومی</string> <patch id="layout.miniplayer.miniplayerPatch"/>
<string name="youtube.layout.sponsorblock.sponsorBlockResourcePatch.revanced_sb_settings_copy">رونوشت‌</string> <patch id="layout.theme.themePatch"/>
<!-- 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. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- A segment start and end time, such as "02:10 to 03:40". --> <patch id="layout.branding.changeHeaderPatch">
<!-- Shown in the settings preferences, and translations can be any text length. --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<string name="youtube.layout.sponsorblock.sponsorBlockResourcePatch.revanced_sb_about_title">درباره</string> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch">
</patch> <string name="revanced_about_title">درباره</string>
<patch id="video.codecs.disableVideoCodecsPatch"> <string name="revanced_twitch_debug_title">گزارش عیب</string>
</patch> <string name="revanced_twitch_debug_summary_on">لاگ عیب فعال است</string>
<patch id="video.quality.advancedVideoQualityMenuPatch"> <string name="revanced_twitch_debug_summary_off">لاگ عیب غیرفعال است</string>
</patch> </patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch"> </app>
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
<string name="twitch.misc.settings.settingsPatch.revanced_about_title">درباره</string>
<string name="twitch.misc.settings.settingsPatch.revanced_twitch_debug_title">گزارش عیب</string>
<string name="twitch.misc.settings.settingsPatch.revanced_twitch_debug_summary_on">لاگ عیب فعال است</string>
<string name="twitch.misc.settings.settingsPatch.revanced_twitch_debug_summary_off">لاگ عیب غیرفعال است</string>
</patch>
</app>
</resources> </resources>
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
@@ -17,294 +17,223 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<string name="shared.misc.fix.playback.spoofVideoStreamsPatch.revanced_spoof_video_streams_screen_summary">प्लेबैक समस्याओं को रोकने के लिए क्लाइंट वीडियो स्ट्रीम को स्पूफ करें</string> <string name="revanced_spoof_video_streams_screen_summary">प्लेबैक समस्याओं को रोकने के लिए क्लाइंट वीडियो स्ट्रीम को स्पूफ करें</string>
</patch> </patch>
<patch id="misc.audio.forceOriginalAudioPatch"> <patch id="misc.audio.forceOriginalAudioPatch">
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
</patch> </patch>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.debugging.enableDebuggingPatch"/>
</patch> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
</patch> <!-- '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. -->
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </patch>
<!-- '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. --> </app>
</patch> <app id="youtube">
</app> <patch id="misc.settings.settingsPatch"/>
<app id="youtube"> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<patch id="misc.settings.settingsPatch"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
</patch> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
@@ -17,295 +17,224 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch">
<patch id="misc.checks.checkEnvironmentPatch"> <string name="revanced_check_environment_failed_title">Provjere nisu uspjele</string>
<string name="shared.misc.checks.checkEnvironmentPatch.revanced_check_environment_failed_title">Provjere nisu uspjele</string> </patch>
</patch> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <patch id="misc.settings.settingsResourcePatch">
</patch> <string name="revanced_settings_save">Sačuvaj</string>
<patch id="misc.settings.settingsResourcePatch"> <!-- Settings about dialog. -->
<string name="shared.misc.settings.settingsResourcePatch.revanced_settings_save">Sačuvaj</string> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
@@ -17,308 +17,237 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch">
<patch id="misc.checks.checkEnvironmentPatch"> <string name="revanced_check_environment_failed_title">ಪರಿಶೀಲನೆ ವಿಫಲವಾಗಿದೆ</string>
<string name="shared.misc.checks.checkEnvironmentPatch.revanced_check_environment_failed_title">ಪರಿಶೀಲನೆ ವಿಫಲವಾಗಿದೆ</string> <string name="revanced_check_environment_dialog_open_official_source_button">ಅಧಿಕೃತ ಜಾಲತಾಣ ತೆರೆಯಿರಿ</string>
<string name="shared.misc.checks.checkEnvironmentPatch.revanced_check_environment_dialog_open_official_source_button">ಅಧಿಕೃತ ಜಾಲತಾಣ ತೆರೆಯಿರಿ</string> <string name="revanced_check_environment_dialog_ignore_button">ನಿರ್ಲಕ್ಷಿಸು</string>
<string name="shared.misc.checks.checkEnvironmentPatch.revanced_check_environment_dialog_ignore_button">ನಿರ್ಲಕ್ಷಿಸು</string> <string name="revanced_check_environment_failed_message">&lt;h5&gt;ಈ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ನೀವು ಪ್ಯಾಚ್ ಮಾಡಿದಂತೆ ಕಾಣುತ್ತಿಲ್ಲ.&lt;/h5&gt;&lt;br&gt;ಈ ಅಪ್ಲಿಕೇಶನ್ ಸರಿಯಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸದೇ ಇರಬಹುದು, &lt;b&gt; ಹಾಗು ಉಪಯೋಗಿಸಲು ಹಾನಿಕಾರಕ ಅಥವಾ ಅಪಾಯಕಾರಿಯಾಗಿರಬಹುದು&lt;/b&gt;.&lt;br&gt;&lt;br&gt;ಈ ಅಪ್ಲಿಕೇಶನ್ ಮೊದಲೇ ಪ್ಯಾಚ್ ಆಗಿದೆ ಅಥವಾ ಬೇರೆಯವರಿಂದ ಪಡೆದದ್ದು ಎಂದು ಈ ಪರಿಶೀಲನೆಗಳು ಸೂಚಿಸುತ್ತವೆ:&lt;br&gt;&lt;br&gt;&lt;small&gt;%1$s&lt;/small&gt;&lt;br&gt;ನೀವು ದೃಢೀಕೃತ ಮತ್ತು ಸುರಕ್ಷಿತ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಬಳಸುತ್ತಿರುವಿರಿ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು &lt;b&gt;ಈ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಅನ್‌ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಿ ಮತ್ತು ನೀವೇ ಪ್ಯಾಚ್ ಮಾಡಿ&lt;/b&gt; ಎಂದು ಬಲವಾಗಿ ಶಿಫಾರಸು ಮಾಡಲಾಗಿದೆ.&lt;p&gt;&lt;br&gt;ನಿರ್ಲಕ್ಷಿಸಿದರೆ, ಈ ಎಚ್ಚರಿಕೆಯನ್ನು ಎರಡು ಬಾರಿ ಮಾತ್ರ ತೋರಿಸಲಾಗುತ್ತದೆ.</string>
<string name="shared.misc.checks.checkEnvironmentPatch.revanced_check_environment_failed_message">&lt;h5&gt;ಈ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ನೀವು ಪ್ಯಾಚ್ ಮಾಡಿದಂತೆ ಕಾಣುತ್ತಿಲ್ಲ.&lt;/h5&gt;&lt;br&gt;ಈ ಅಪ್ಲಿಕೇಶನ್ ಸರಿಯಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸದೇ ಇರಬಹುದು, &lt;b&gt; ಹಾಗು ಉಪಯೋಗಿಸಲು ಹಾನಿಕಾರಕ ಅಥವಾ ಅಪಾಯಕಾರಿಯಾಗಿರಬಹುದು&lt;/b&gt;.&lt;br&gt;&lt;br&gt;ಈ ಅಪ್ಲಿಕೇಶನ್ ಮೊದಲೇ ಪ್ಯಾಚ್ ಆಗಿದೆ ಅಥವಾ ಬೇರೆಯವರಿಂದ ಪಡೆದದ್ದು ಎಂದು ಈ ಪರಿಶೀಲನೆಗಳು ಸೂಚಿಸುತ್ತವೆ:&lt;br&gt;&lt;br&gt;&lt;small&gt;%1$s&lt;/small&gt;&lt;br&gt;ನೀವು ದೃಢೀಕೃತ ಮತ್ತು ಸುರಕ್ಷಿತ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಬಳಸುತ್ತಿರುವಿರಿ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು &lt;b&gt;ಈ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಅನ್‌ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಿ ಮತ್ತು ನೀವೇ ಪ್ಯಾಚ್ ಮಾಡಿ&lt;/b&gt; ಎಂದು ಬಲವಾಗಿ ಶಿಫಾರಸು ಮಾಡಲಾಗಿದೆ.&lt;p&gt;&lt;br&gt;ನಿರ್ಲಕ್ಷಿಸಿದರೆ, ಈ ಎಚ್ಚರಿಕೆಯನ್ನು ಎರಡು ಬಾರಿ ಮಾತ್ರ ತೋರಿಸಲಾಗುತ್ತದೆ.</string> <string name="revanced_check_environment_not_same_patching_device">ಬೇರೆ ಸಾಧನದಲ್ಲಿ ಪ್ಯಾಚ್ ಮಾಡಲಾಗಿದೆ</string>
<string name="shared.misc.checks.checkEnvironmentPatch.revanced_check_environment_not_same_patching_device">ಬೇರೆ ಸಾಧನದಲ್ಲಿ ಪ್ಯಾಚ್ ಮಾಡಲಾಗಿದೆ</string> <string name="revanced_check_environment_manager_not_expected_installer">ReVanced Manager ನಿಂದ ಸ್ಥಾಪಿಸಿದ್ದಲ್ಲ</string>
<string name="shared.misc.checks.checkEnvironmentPatch.revanced_check_environment_manager_not_expected_installer">ReVanced Manager ನಿಂದ ಸ್ಥಾಪಿಸಿದ್ದಲ್ಲ</string> <string name="revanced_check_environment_not_near_patch_time">10 ನಿಮಿಷಗಳಿಗಿಂತ ಮುಂಚೆ ಪ್ಯಾಚ್ ಮಾಡಲಾಗಿದೆ</string>
<string name="shared.misc.checks.checkEnvironmentPatch.revanced_check_environment_not_near_patch_time">10 ನಿಮಿಷಗಳಿಗಿಂತ ಮುಂಚೆ ಪ್ಯಾಚ್ ಮಾಡಲಾಗಿದೆ</string> <string name="revanced_check_environment_not_near_patch_time_days">%s ದಿನಗಳ ಹಿಂದೆ ಪ್ಯಾಚ್ ಮಾಡಲಾಗಿದೆ</string>
<string name="shared.misc.checks.checkEnvironmentPatch.revanced_check_environment_not_near_patch_time_days">%s ದಿನಗಳ ಹಿಂದೆ ಪ್ಯಾಚ್ ಮಾಡಲಾಗಿದೆ</string> <string name="revanced_check_environment_not_near_patch_time_invalid">APK ನಿರ್ಮಾಣ ದಿನಾಂಕವು ಭ್ರಷ್ಟಗೊಂಡಿದೆ</string>
<string name="shared.misc.checks.checkEnvironmentPatch.revanced_check_environment_not_near_patch_time_invalid">APK ನಿರ್ಮಾಣ ದಿನಾಂಕವು ಭ್ರಷ್ಟಗೊಂಡಿದೆ</string> </patch>
</patch> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <patch id="misc.settings.settingsResourcePatch">
</patch> <string name="revanced_settings_submenu_title">ಸಂಯೋಜನೆಗಳು</string>
<patch id="misc.settings.settingsResourcePatch"> <string name="revanced_settings_confirm_user_dialog_title">ನೀವು ಮುಂದುವರಿಯಲು ಖಚಿತವಾಗಿ ಬಯಸುತ್ತೀರಾ?</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_settings_submenu_title">ಸಂಯೋಜನೆಗಳು</string> <string name="revanced_settings_reset">ಮರುಹೊಂದಿಸಿ</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_settings_confirm_user_dialog_title">ನೀವು ಮುಂದುವರಿಯಲು ಖಚಿತವಾಗಿ ಬಯಸುತ್ತೀರಾ?</string> <string name="revanced_settings_reset_color">ಬಣ್ಣ ಮರುಹೊಂದಿಸಿ</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_settings_reset">ಮರುಹೊಂದಿಸಿ</string> <string name="revanced_settings_color_invalid">ಅಮಾನ್ಯ ಬಣ್ಣ</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_settings_reset_color">ಬಣ್ಣ ಮರುಹೊಂದಿಸಿ</string> <string name="revanced_settings_restart_title">ಮರುಪ್ರಾರಂಭದ ಅಗತ್ಯವಿದೆ</string>
<string name="shared.misc.settings.settingsResourcePatch.revanced_settings_color_invalid">ಅಮಾನ್ಯ ಬಣ್ಣ</string> <!-- Settings about dialog. -->
<string name="shared.misc.settings.settingsResourcePatch.revanced_settings_restart_title">ಮರುಪ್ರಾರಂಭದ ಅಗತ್ಯವಿದೆ</string> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
File diff suppressed because it is too large Load Diff
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
@@ -17,294 +17,223 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch">
</patch> <string name="revanced_announcements_dialog_dismiss">Melepaskan</string>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> </patch>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.branding.customBrandingPatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.changeHeaderPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> </patch>
</patch> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="video.codecs.disableVideoCodecsPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
</patch> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<patch id="misc.announcements.announcementsPatch"> </patch>
<string name="youtube.misc.announcements.announcementsPatch.revanced_announcements_dialog_dismiss">Melepaskan</string> </app>
</patch> <app id="music">
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="layout.branding.customBrandingPatch"/>
</patch> <patch id="misc.settings.settingsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="ad.video.hideVideoAdsPatch"/>
</patch> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.buttons.hideButtons"/>
</patch> <patch id="layout.compactheader.hideCategoryBar"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
</patch> <patch id="layout.navigationbar.navigationBarPatch">
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> </patch>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.premium.hideGetPremiumPatch"/>
</patch> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
<patch id="video.quality.rememberVideoQualityPatch"> </app>
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <app id="twitch">
</patch> <patch id="ad.audio.audioAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.embedded.embeddedAdsPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
</patch> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <patch id="debug.debugModePatch">
</patch> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> </patch>
</patch> <patch id="misc.settings.settingsPatch"/>
<patch id="video.codecs.disableVideoCodecsPatch"> </app>
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
@@ -17,295 +17,224 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch">
<patch id="misc.checks.checkEnvironmentPatch"> <string name="revanced_check_environment_manager_not_expected_installer">ReVanced Manager द्वारा स्थापित छैन</string>
<string name="shared.misc.checks.checkEnvironmentPatch.revanced_check_environment_manager_not_expected_installer">ReVanced Manager द्वारा स्थापित छैन</string> <string name="revanced_check_environment_not_near_patch_time_invalid">APK निर्माण मिति खराब भएको छ</string>
<string name="shared.misc.checks.checkEnvironmentPatch.revanced_check_environment_not_near_patch_time_invalid">APK निर्माण मिति खराब भएको छ</string> </patch>
</patch> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <patch id="misc.settings.settingsResourcePatch">
</patch> <!-- Settings about dialog. -->
<patch id="misc.settings.settingsResourcePatch"> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
File diff suppressed because it is too large Load Diff
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -17,293 +17,221 @@
<string name="summary_key">"First 'item' text <string name="summary_key">"First 'item' text
Second \"item\" text"</string> Second \"item\" text"</string>
--> --><resources>
<resources> <app id="shared">
<app id="shared"> <patch id="layout.branding.baseCustomBrandingPatch">
<patch id="layout.branding.baseCustomBrandingPatch"> <!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_icon_entry_5 --> <!-- Translation of this should be identical to revanced_header_logo_entry_5 -->
<!-- Translation of this should be identical to revanced_header_logo_entry_5 --> <!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 -->
<!-- Translations of this should be identical to revanced_custom_branding_name_entry_5 --> </patch>
</patch> <patch id="misc.checks.checkEnvironmentPatch"/>
<patch id="misc.checks.checkEnvironmentPatch"> <patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"/>
</patch> <patch id="misc.settings.settingsResourcePatch">
<patch id="misc.dns.checkWatchHistoryDomainNameResolutionPatch"> <!-- Settings about dialog. -->
</patch> <!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
<patch id="misc.settings.settingsResourcePatch">
<!-- Settings about dialog. -->
<!-- NOTE: the about strings above are duplicated in the TikTok about screen code,
and changes made here must also be made there. --> and changes made here must also be made there. -->
</patch> </patch>
<patch id="misc.gms.gmsCoreSupportResourcePatch"> <patch id="misc.gms.gmsCoreSupportResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch"> <patch id="misc.fix.playback.spoofVideoStreamsPatch"/>
</patch> <patch id="misc.audio.forceOriginalAudioPatch">
<patch id="misc.audio.forceOriginalAudioPatch"> <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. --> </patch>
</patch> <patch id="misc.debugging.enableDebuggingPatch"/>
<patch id="misc.debugging.enableDebuggingPatch"> <patch id="misc.privacy.sanitizeSharingLinksPatch"/>
</patch> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.privacy.sanitizeSharingLinksPatch"> <!-- '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. -->
</patch> </patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch"> </app>
<!-- '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. --> <app id="youtube">
</patch> <patch id="misc.settings.settingsPatch"/>
</app> <patch id="misc.backgroundplayback.backgroundPlaybackPatch"/>
<app id="youtube"> <patch id="layout.hide.general.hideLayoutComponentsPatch">
<patch id="misc.settings.settingsPatch"> <!-- 'Notify me' should be translated using the same localized wording YouTube displays.
</patch>
<patch id="misc.backgroundplayback.backgroundPlaybackPatch">
</patch>
<patch id="layout.hide.general.hideLayoutComponentsPatch">
<!-- 'Notify me' should be translated using the same localized wording YouTube displays.
This item appear in the Subscriptions feed for future livestreams or unreleased videos. --> This item appear in the Subscriptions feed for future livestreams or unreleased videos. -->
<!-- 'Show more' should be translated with the same localized wording that 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. --> This button usually appears when searching for a YT creator. -->
<!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. --> <!-- 'People also watched' and 'You might also like' should be translated using the same localized wording YouTube displays. -->
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles --> <!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
<!-- 'Join' should be translated using the same localized wording YouTube displays. <!-- 'Join' should be translated using the same localized wording YouTube displays.
This appears in the video player for certain videos. --> This appears in the video player for certain videos. -->
<!-- 'Community' should be translated with the same localized wording that YouTube displays. --> <!-- 'Community' should be translated with the same localized wording that YouTube displays. -->
<!-- 'For You' should be translated using the same localized wording YouTube displays. --> <!-- 'For You' should be translated using the same localized wording YouTube displays. -->
<!-- 'Join' should be translated with the same localized wording that YouTube displays. --> <!-- 'Join' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Store' should be translated with the same localized wording that YouTube displays. --> <!-- 'Store' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. --> <!-- 'Subscribe' should be translated with the same localized wording that YouTube displays. -->
<!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_upload_time_user_dialog_message -->
<!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message --> <!-- Translations should lanaguge similar to revanced_hide_view_count_user_dialog_message -->
<!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word. <!-- For localization, it is preferred, but not required, if 'LeBlanc' is replaced with a localized name or a familiar word that has upper case letters in the middle of the word.
This is because keywords can be in any language, and showing an example in the localized script helps convey this. --> This is because keywords can be in any language, and showing an example in the localized script helps convey this. -->
<!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. --> <!-- Translations _must_ use a localized example. For languages that do not use spaces between words (Chinese, Japanese, etc.) the English AI example should be used since no localized examples exist. Or if using machine translations, or if nobody wants to think of a localized example, then the English 'ai' example should be left as-is. -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.general.hideAdsResourcePatch"> <patch id="ad.general.hideAdsResourcePatch">
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="ad.getpremium.hideGetPremiumPatch"> <patch id="ad.getpremium.hideGetPremiumPatch"/>
</patch> <patch id="ad.video.videoAdsPatch"/>
<patch id="ad.video.videoAdsPatch"> <patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"/>
</patch> <patch id="interaction.dialog.removeViewerDiscretionDialogPatch"/>
<patch id="interaction.copyvideourl.copyVideoUrlResourcePatch"> <patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"/>
</patch> <patch id="interaction.doubletap.disableDoubleTapActionsPatch"/>
<patch id="interaction.dialog.removeViewerDiscretionDialogPatch"> <patch id="interaction.downloads.downloadsResourcePatch">
</patch> <!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. -->
<patch id="layout.hide.signintotv.disableSignInToTvPopupPatch"> </patch>
</patch> <patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"/>
<patch id="interaction.doubletap.disableDoubleTapActionsPatch"> <patch id="interaction.seekbar.enableSeekbarTappingPatch"/>
</patch> <patch id="interaction.swipecontrols.swipeControlsResourcePatch"/>
<patch id="interaction.downloads.downloadsResourcePatch"> <patch id="layout.autocaptions.autoCaptionsPatch"/>
<!-- 'Download action button' should be translated using the same wording as the translation of 'revanced_hide_download_button_title'. --> <patch id="layout.buttons.action.hideButtonsPatch">
</patch> <!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<patch id="interaction.seekbar.disablePreciseSeekingGesturePatch"> <!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
</patch> <!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<patch id="interaction.seekbar.enableSeekbarTappingPatch"> <!-- 'Report' should be translated with the same localized wording that YouTube displays.
</patch>
<patch id="interaction.swipecontrols.swipeControlsResourcePatch">
</patch>
<patch id="layout.autocaptions.autoCaptionsPatch">
</patch>
<patch id="layout.buttons.action.hideButtonsPatch">
<!-- 'Share' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Stop ads' should be translated with the same localized wording that YouTube displays. -->
<!-- Button does not have any text and is only shown as an icon, and only when the video information area is collapsed to a compact state. -->
<!-- 'Report' should be translated with the same localized wording that YouTube displays.
This button usually only shows on live streams. --> This button usually only shows on live streams. -->
<!-- 'Remix' should be translated with the same localized wording that YouTube displays. --> <!-- 'Remix' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Download' should be translated with the same localized wording that YouTube displays. --> <!-- 'Download' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Hype' should be translated with the same localized wording that YouTube displays. <!-- 'Hype' should be translated with the same localized wording that YouTube displays.
This button only shows on videos uploaded by the logged-in user. --> This button only shows on videos uploaded by the logged-in user. -->
<!-- 'Promote' should be translated with the same localized wording that YouTube displays. --> <!-- 'Promote' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Thanks' should be translated with the same localized wording that YouTube displays. --> <!-- 'Thanks' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Ask' should be translated with the same localized wording that YouTube displays. <!-- 'Ask' should be translated with the same localized wording that YouTube displays.
This button only shows if the user ip is from specific region such as the USA or EU. --> This button only shows if the user ip is from specific region such as the USA or EU. -->
<!-- 'Clip' should be translated with the same localized wording that YouTube displays. --> <!-- 'Clip' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Shop' should be translated with the same localized wording that YouTube displays. --> <!-- 'Shop' should be translated with the same localized wording that YouTube displays. -->
<!-- 'Save' should be translated with the same localized wording that YouTube displays. --> <!-- 'Save' should be translated with the same localized wording that YouTube displays. -->
</patch> </patch>
<patch id="layout.buttons.navigation.navigationButtonsPatch"> <patch id="layout.buttons.navigation.navigationButtonsPatch">
<!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. --> <!-- 'Home' should be translated using the same localized wording YouTube displays for the tab. -->
<!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Shorts' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Create' has no display name. Translate normally. --> <!-- 'Create' has no display name. Translate normally. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays the tab. -->
<!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. --> <!-- 'Notifications' should be translated using the same localized wording YouTube displays the tab. -->
</patch> </patch>
<patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch"> <patch id="layout.hide.player.flyoutmenupanel.hidePlayerFlyoutMenuPatch">
<!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Captions' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Additional settings' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Sleep timer' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Loop video' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Ambient mode' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Help & feedback' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Playback speed' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Lock screen' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Listen with YouTube Music' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Audio track' should be translated using the same localized wording YouTube displays for the menu item. -->
<!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'. <!-- 'Spoof video streams' should be the same translation used for 'revanced_spoof_video_streams_screen_title'.
'Android No SDK' must be kept untranslated. --> 'Android No SDK' must be kept untranslated. -->
<!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. --> <!-- 'Watch in VR' should be translated using the same localized wording YouTube displays for the menu item. -->
</patch> </patch>
<patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch"> <patch id="layout.buttons.overlay.hidePlayerOverlayButtonsPatch">
<!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. --> <!-- This button does not display any text, but 'Captions' should be translated using the same wording used as the translation of 'revanced_hide_player_flyout_captions_title'. -->
</patch> </patch>
<patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"> <patch id="layout.hide.endscreencards.hideEndScreenCardsResourcePatch"/>
</patch> <patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"/>
<patch id="layout.hide.fullscreenambientmode.disableFullscreenAmbientModePatch"> <patch id="layout.hide.infocards.hideInfocardsResourcePatch"/>
</patch> <patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"/>
<patch id="layout.hide.infocards.hideInfocardsResourcePatch"> <patch id="layout.hide.seekbar.hideSeekbarPatch">
</patch> <!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. -->
<patch id="layout.hide.rollingnumber.disableRollingNumberAnimationPatch"> </patch>
</patch> <patch id="layout.hide.shorts.hideShortsComponentsResourcePatch">
<patch id="layout.hide.seekbar.hideSeekbarPatch"> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<!-- Seekbar shown inside video thumbnails found the home/feed/search/history. The seekbar shows the prior watch progress when the video was last open. --> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'Join' should be translated using the same localized wording YouTube displays for the button. -->
<patch id="layout.hide.shorts.hideShortsComponentsResourcePatch"> <!-- 'Share' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. -->
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> </patch>
<!-- 'Join' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"/>
<!-- 'Share' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"/>
<!-- 'Remix' should be translated using the same localized wording YouTube displays for the button. --> <patch id="layout.hide.time.hideTimestampPatch"/>
</patch> <patch id="layout.panels.popup.playerPopupPanelsPatch"/>
<patch id="layout.hide.endscreensuggestion.hideEndScreenSuggestedVideoPatch"> <patch id="layout.player.fullscreen.exitFullscreenPatch"/>
</patch> <patch id="layout.player.fullscreen.openVideosFullscreen"/>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch"> <patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"/>
</patch> <patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch">
<patch id="layout.hide.time.hideTimestampPatch"> <!-- 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. -->
</patch> <!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. -->
<patch id="layout.panels.popup.playerPopupPanelsPatch"> <!-- Video likes have been set to hidden by the video uploader. -->
</patch> <!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. -->
<patch id="layout.player.fullscreen.exitFullscreenPatch"> <!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. -->
</patch> </patch>
<patch id="layout.player.fullscreen.openVideosFullscreen"> <patch id="layout.searchbar.wideSearchbarPatch"/>
</patch> <patch id="layout.seekbar.seekbarThumbnailsPatch"/>
<patch id="layout.player.overlay.customPlayerOverlayOpacityResourcePatch"> <patch id="layout.sponsorblock.sponsorBlockResourcePatch">
</patch> <!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. -->
<patch id="layout.returnyoutubedislike.returnYouTubeDislikePatch"> <!-- 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. -->
<!-- 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". -->
<!-- Toast shown if the user enables RYD while a video is opened, and then tries to vote for the video. --> <!-- Shown in the settings preferences, and translations can be any text length. -->
<!-- Video likes have been set to hidden by the video uploader. --> </patch>
<!-- Translations should use language similar to 'revanced_sb_enable_compact_skip_button'. --> <patch id="layout.formfactor.changeFormFactorPatch"/>
<!-- Statistic strings are shown in the settings only when ReVanced debug mode is enabled. Typical users will never see these. --> <patch id="layout.spoofappversion.spoofAppVersionPatch"/>
</patch> <patch id="layout.startpage.changeStartPagePatch"/>
<patch id="layout.searchbar.wideSearchbarPatch"> <patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"/>
</patch> <patch id="layout.shortsplayer.shortsPlayerTypePatch"/>
<patch id="layout.seekbar.seekbarThumbnailsPatch"> <patch id="layout.shortsautoplay.shortsAutoplayPatch"/>
</patch> <patch id="layout.miniplayer.miniplayerPatch"/>
<patch id="layout.sponsorblock.sponsorBlockResourcePatch"> <patch id="layout.theme.themePatch"/>
<!-- Translations should use language similar to 'revanced_ryd_compact_layout_title'. --> <patch id="layout.branding.customBrandingPatch"/>
<!-- 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. --> <patch id="layout.branding.changeHeaderPatch">
<!-- A segment start and end time, such as "02:10 to 03:40". --> <!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 -->
<!-- Shown in the settings preferences, and translations can be any text length. --> </patch>
</patch> <patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"/>
<patch id="layout.formfactor.changeFormFactorPatch"> <patch id="layout.thumbnails.alternativeThumbnailsPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. -->
<patch id="layout.spoofappversion.spoofAppVersionPatch"> <!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. -->
</patch> <!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. -->
<patch id="layout.startpage.changeStartPagePatch"> <!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
</patch> </patch>
<patch id="layout.startupshortsreset.disableResumingShortsOnStartupPatch"> <patch id="misc.announcements.announcementsPatch"/>
</patch> <patch id="misc.loopvideo.loopVideoPatch"/>
<patch id="layout.shortsplayer.shortsPlayerTypePatch"> <patch id="misc.loopvideo.button.loopVideoButtonPatch"/>
</patch> <patch id="misc.audiofocus.pauseOnAudioInterruptPatch"/>
<patch id="layout.shortsautoplay.shortsAutoplayPatch"> <patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"/>
</patch> <patch id="misc.hapticfeedback.disableHapticFeedbackPatch"/>
<patch id="layout.miniplayer.miniplayerPatch"> <patch id="misc.gms.accountCredentialsInvalidTextPatch"/>
</patch> <patch id="misc.links.bypassURLRedirectsPatch"/>
<patch id="layout.theme.themePatch"> <patch id="misc.links.openLinksExternallyPatch"/>
</patch> <patch id="video.quality.rememberVideoQualityPatch">
<patch id="layout.branding.customBrandingPatch"> <!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. -->
</patch> </patch>
<patch id="layout.branding.changeHeaderPatch"> <patch id="video.speed.button.playbackSpeedButtonPatch"/>
<!-- Translation of this should be identical to revanced_custom_branding_icon_entry_3 --> <patch id="video.quality.button.videoQualityDialogButtonPatch"/>
</patch> <patch id="video.speed.custom.customPlaybackSpeedPatch"/>
<patch id="layout.thumbnails.bypassImageRegionRestrictionsPatch"> <patch id="video.speed.remember.rememberPlaybackSpeedPatch"/>
</patch> <patch id="video.codecs.disableVideoCodecsPatch"/>
<patch id="layout.thumbnails.alternativeThumbnailsPatch"> <patch id="video.quality.advancedVideoQualityMenuPatch"/>
<!-- 'Home' should be translated using the same localized wording YouTube displays for the Home tab. --> <patch id="interaction.seekbar.enableSlideToSeekPatch"/>
<!-- 'Subscriptions' should be translated using the same localized wording YouTube displays for the Subscriptions tab. --> <patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- 'You' should be translated using the same localized wording YouTube displays for the You (Library) tab. --> <!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. --> </patch>
</patch> </app>
<patch id="misc.announcements.announcementsPatch"> <app id="music">
</patch> <patch id="layout.branding.customBrandingPatch"/>
<patch id="misc.loopvideo.loopVideoPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> <patch id="ad.video.hideVideoAdsPatch"/>
<patch id="misc.loopvideo.button.loopVideoButtonPatch"> <patch id="interaction.permanentrepeat.permanentRepeatPatch"/>
</patch> <patch id="layout.buttons.hideButtons"/>
<patch id="misc.audiofocus.pauseOnAudioInterruptPatch"> <patch id="layout.compactheader.hideCategoryBar"/>
</patch> <patch id="layout.miniplayercolor.changeMiniplayerColor"/>
<patch id="misc.dimensions.spoof.spoofDeviceDimensionsPatch"> <patch id="layout.navigationbar.navigationBarPatch">
</patch> <!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.hapticfeedback.disableHapticFeedbackPatch"> <!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.gms.accountCredentialsInvalidTextPatch"> <!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch> <!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
<patch id="misc.links.bypassURLRedirectsPatch"> </patch>
</patch> <patch id="layout.premium.hideGetPremiumPatch"/>
<patch id="misc.links.openLinksExternallyPatch"> <patch id="layout.upgradebutton.hideUpgradeButtonPatch"/>
</patch> </app>
<patch id="video.quality.rememberVideoQualityPatch"> <app id="twitch">
<!-- Translations should use the same text as 'revanced_custom_playback_speeds_auto'. --> <patch id="ad.audio.audioAdsPatch"/>
</patch> <patch id="ad.embedded.embeddedAdsPatch"/>
<patch id="video.speed.button.playbackSpeedButtonPatch"> <patch id="ad.video.videoAdsPatch"/>
</patch> <patch id="chat.antidelete.showDeletedMessagesPatch"/>
<patch id="video.quality.button.videoQualityDialogButtonPatch"> <patch id="chat.autoclaim.autoClaimChannelPointsPatch"/>
</patch> <patch id="debug.debugModePatch">
<patch id="video.speed.custom.customPlaybackSpeedPatch"> <!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch> </patch>
<patch id="video.speed.remember.rememberPlaybackSpeedPatch"> <patch id="misc.settings.settingsPatch"/>
</patch> </app>
<patch id="video.codecs.disableVideoCodecsPatch">
</patch>
<patch id="video.quality.advancedVideoQualityMenuPatch">
</patch>
<patch id="interaction.seekbar.enableSlideToSeekPatch">
</patch>
<patch id="misc.fix.playback.spoofVideoStreamsPatch">
<!-- "Force original audio" should use the same text as revanced_force_original_audio_title -->
</patch>
</app>
<app id="music">
<patch id="layout.branding.customBrandingPatch">
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
<patch id="ad.video.hideVideoAdsPatch">
</patch>
<patch id="interaction.permanentrepeat.permanentRepeatPatch">
</patch>
<patch id="layout.buttons.hideButtons">
</patch>
<patch id="layout.compactheader.hideCategoryBar">
</patch>
<patch id="layout.miniplayercolor.changeMiniplayerColor">
</patch>
<patch id="layout.navigationbar.navigationBarPatch">
<!-- 'Home' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Samples' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Explore' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Library' should be translated using the same localized wording YouTube Music displays for the tab. -->
<!-- 'Upgrade' should be translated using the same localized wording YouTube Music displays for the tab. -->
</patch>
<patch id="layout.premium.hideGetPremiumPatch">
</patch>
<patch id="layout.upgradebutton.hideUpgradeButtonPatch">
</patch>
</app>
<app id="twitch">
<patch id="ad.audio.audioAdsPatch">
</patch>
<patch id="ad.embedded.embeddedAdsPatch">
</patch>
<patch id="ad.video.videoAdsPatch">
</patch>
<patch id="chat.antidelete.showDeletedMessagesPatch">
</patch>
<patch id="chat.autoclaim.autoClaimChannelPointsPatch">
</patch>
<patch id="debug.debugModePatch">
<!-- Twitch specific internal debug mode, and not the same as 'revanced_debug_title'. -->
</patch>
<patch id="misc.settings.settingsPatch">
</patch>
</app>
</resources> </resources>