-
-
Notifications
You must be signed in to change notification settings - Fork 316
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(YouTube): Add 'About' preference to settings menu #2981
feat(YouTube): Add 'About' preference to settings menu #2981
Conversation
87a291b
to
0a8462b
Compare
@LisoUseInAIKyrios Would be nice if it also showing applied integrations version. :) |
Listing the integrations version is not difficult (do the same manifest lookup, but use an integrations class instead of a patch class). But ReVanced manager does not mention the integrations version, so the information might be confusing for users. Those who patch with dev release probably know what they have. Maybe if it was patched with dev it can show integrations version. Otherwise just show the patch release version. |
However, sometimes there is an integration version update, without a patches version update. For that case, it would be handy to also show the integrations version. |
Integrations aren't meant to be separate to begin with. This is a remnant back from how Vanced dealt with integrations and writing a system around it and supporting that design is not the way to go from here onwards. |
With this, the call to the Announcements API now includes the patches version. So the announcements can provide more specific notifications on first launch, such as showing the old "You will see announcements here" message if their patch version does not have the playback history issue since their version is fixed. |
I have conflicting opinions about including the version of the patches in the patched app. Showing which version was used when patching the app should be saved outside of the patched app. For example, ReVanced Manager could store the patches used for every patched app in the app info page. The "Settings"patch is also being abused for that purpose, whereas its purpose is merely to add settings to apps. A proper approachA proper approach would be to have the "Settings" patch have an abstract "BasePreference" class, which other patches can implement. The class would have an abstract "serialize" method, which the patches would implement for their "BasePreference" implementation. In this current case, it would mean, adding a "PatchesInformation" patch which would embed the patches used via an implementation of the abstract "BasePreference" class. Since the "Settings" patch only knows "BasePreference" and the "BasePreference" implementation in our "PatchesInformation" patch would extend the "BasePreference" class, the "Settings" patch would call the custom implementation of the "serialize" method. This design maintains the single responsibility of the "Settings" patch. The problem would be that the patch would be deselectable, whereas we want to brand the "Settings" patch with our link. Instead of embedding the patches version, it would be better to make use of https://api.revanced.app/v2/socials and add the links of ReVanced to the settings instead. This would also get rid of the hacky approach of extracting the patches version. |
Adding the social links can be done, but the preference would need to open a new dialog or view to display that. A preference can only have one tap action, so that action would need to open the social links view. Would the patches version be useful for the announcement API call? Looking into the jar and reading the manifest is not that hacky, the manifest has a known format and Java has built in tools to read manifest entries. |
A dialog can have a custom view, so that should be possible.
Generally speaking, yes. For example, if the app was patched with a problematic version of the patches. |
Instead of calling |
Oh yes, I forgot about that. If it's just going to be a list of links in the preference then this would be simpler (but obviously less flexible) compared to opening an intermediate embedded browser for the social links. |
The webview would need to call https://api.revanced.app/v2/socials and parse the results instead anyways. We would need a place to host it specifically for the purpose of YouTube, or statically embed it into the app. I think its fine to just show the links similar to how our announcements do it. |
I'm trying to get multiple links working for the summary of a preference, and it's not working out well. To get multiple touch listeners working, it requires either an xml layout file (which cannot be loaded from integrations, because layout files are declared in patches). Or it requires mucking about with removing all the existing summary views and adding your own programmatically (and I cannot get the layout to look right, and the padding and everything is different/wrong). Even if the layout was figured out, it feels weird and unintuitive touching and tapping on parts of the summary to open different links, and the summary is huge with all the links. Then there's the question of how does it fetch the social links, and how frequently does it fetch. I didn't even get to the asynchronous fetch code needed for this, I just got tied up in the layout issues. For the sake of usability and less mess in implementing this, I think this simple preference should behave as:
Or
|
If you check the announcements dialog, you will see that it parses the response as HTML and also renders clickable links correctly. Perhaps that can be used. No additional view or layout is necessary. |
That could work for a fancy popup dialog that opens when the preference is tapped (and would be minimal and look great). But that requires a new backend end point or it requires modifying the social API endpoint and add a 'fancyhtml' field containing the html for this dialog. For now can we use something similar to what's here, and make this smart and fancy later? I wanted to merge this before merging the GmsCore dialog improvement. |
The client would download the JSON from the API, build a small HTML string with tags and display it in the dialog. Moving this to API would be way too low.
I still have conflicted opinions on reading the patches version. I need a little more time to think about this. |
Sticking some basic html in the API call isn't much different from what the announcements call is already doing. I'll try doing a popup dialog with the social links similar to how the announcements are shown. |
d6eb706
to
f7d9eda
Compare
I am not sure if it's allowed to use trademark assets freely like its done in this PR. I know that Vanced got into trouble due to trademark violations in a related situation with Google. This also applies to all the other icons we plan to show. YouTube for example, requires explicit approval, as stated on https://www.youtube.com/howyoutubeworks/resources/brand-resources. Similarly, we may need to ask for approval from other sites. Do you have any idea regarding this? |
Can check the brand guidelines for each company and see what it says. These icons are not hosted by ReVanced and come straight from the websites favicon. RV Manager is already using the icons for some of these sites For YouTube can remove the social links (or make it not preferred and not display in app). There is no content on the YT channel anyways. |
We have once asked for approval for the YouTube trademark logo, but I think the rest of the icons we have not yet.
It's more of a placeholder for future content and a verification method since counterfeit sites can't show this kind of reach. Alternatively, we can just not show any icons at all and only the links. This spares us from having to make changes in the API to suite this PR and other matters such as approvals to use the logos. |
Looking at a few of the brand guidelines, it appears using their own fav icon has no issue (it's straight from them after all). The only issue I see is the complex guideline for how the text should appear with the icon, such as the Reddit guideline stating orange text is preferred when the background is white, and white text if the background is black. Plus other preferences of the font and padding around the logo/name. The branding kits for each of these sites provide banners where the logo and text is one part and it has the preferred font, spacing, color, etc. Those could be used as-is without modification, but it would require hosting the banner files and then this about screen might as well be a regular html file hosted on ReVanced.app so the programmatic html styling can be removed from this about preference code. Maybe these sites don't care if their own favicon are shown beside regular text links to their websites, but maybe they do care. For now, the icons can be removed until someone gets some kind of confirmation that "showing our favicon with a regular text link is ok". |
Some of these logos are on the website, such as https://revanced.app/socials/reddit.svg Another alternative, is to add the remaining icons to the website (YouTube, Twitter, GitHub), and then this about screen can show just the icon and not any text. Then there's no issues of what text color, spacing, or any of that. It would also look consistent with the website and more consistent with Manager. |
Because the icon urls were not added to the api, this PR is no longer dependent on the small changes in ReVanced/revanced-api#173 |
@oSumAtrIX Does this PR need any other changes? |
# [4.7.0](v4.6.0...v4.7.0) (2024-04-21) ### Bug Fixes * **Tumblr - Fix old versions:** Improve reliability by removing remnances of Tumblr Live ([#2988](#2988)) ([897b4db](897b4db)) * **YouTube - GmsCore support:** Prompt to disable battery optimizations, if not done already ([#2958](#2958)) ([82acb84](82acb84)) * **YouTube - Hide ads:** rename `Hide paid content` to `Hide paid promotion label` ([#3026](#3026)) ([17e4ac9](17e4ac9)) * **YouTube - Hide load more button:** Include patch with `Hide layout components`, and hide button only in search feed ([#2959](#2959)) ([b007e8e](b007e8e)) * **YouTube - Hide Shorts components:** Correctly hide Shorts if navigation tab is changed using device back button ([#3007](#3007)) ([e5848e9](e5848e9)) * **YouTube - Player flyout menu:** Add hide Lock screen menu ([#2985](#2985)) ([308de4a](308de4a)) * **YouTube - Spoof device dimensions:** Warn about potential performance issues ([#3039](#3039)) ([9d6f305](9d6f305)) * **YouTube Music - Remove upgrade button:** Fix compatibility with latest versions ([#3045](#3045)) ([80de996](80de996)) ### Features * Add `Hex` patch ([#3034](#3034)) ([3c95aac](3c95aac)) * **Amazon:** Add `Always allow deep-linking` patch ([#3000](#3000)) ([a92b7fb](a92b7fb)) * **Strava - Unlock subscription:** Remove compatible version constraint ([80a5599](80a5599)) * **Twitter:** Add `Sanitize sharing links` patch ([#3003](#3003)) ([186b887](186b887)) * **YouTube - Hide layout components:** Add option to hide horizontal shelves ([#2951](#2951)) ([9ae0650](9ae0650)) * **YouTube - Hide layout components:** Hide playables ([8423515](8423515)) * **YouTube - Hide Shorts components:** Hide `Shop`, `Location` and `Save sound to playlist` buttons ([#3018](#3018)) ([5210ac4](5210ac4)) * **YouTube - Hide Shorts components:** Hide tagged products, hide search suggestions ([#3019](#3019)) ([e0d2fe5](e0d2fe5)) * **YouTube - Swipe controls:** Save and restore brightness and add auto-brightness toggle ([#2996](#2996)) ([f6c3bc4](f6c3bc4)) * **YouTube:** Add 'About' preference to settings menu ([#2981](#2981)) ([5abf894](5abf894)) * **YouTube:** Match overlay icons style to YouTube ([#3023](#3023)) ([6849393](6849393)) * **YouTube:** Support version `19.09.38`, `19.10.39` and `19.11.43` ([#2971](#2971)) ([730f3e3](730f3e3)) * **YT Music - Hide 'Get Music Premium' label:** Remove occurences of label in settings ([#3046](#3046)) ([10e170a](10e170a))
# [4.7.0](v4.6.0...v4.7.0) (2024-04-21) ### Bug Fixes * **Tumblr - Fix old versions:** Improve reliability by removing remnances of Tumblr Live ([ReVanced#2988](https://github.com/E85Addict/revanced-patches/issues/2988)) ([897b4db](897b4db)) * **YouTube - GmsCore support:** Prompt to disable battery optimizations, if not done already ([ReVanced#2958](https://github.com/E85Addict/revanced-patches/issues/2958)) ([82acb84](82acb84)) * **YouTube - Hide ads:** rename `Hide paid content` to `Hide paid promotion label` ([ReVanced#3026](https://github.com/E85Addict/revanced-patches/issues/3026)) ([17e4ac9](17e4ac9)) * **YouTube - Hide load more button:** Include patch with `Hide layout components`, and hide button only in search feed ([ReVanced#2959](https://github.com/E85Addict/revanced-patches/issues/2959)) ([b007e8e](b007e8e)) * **YouTube - Hide Shorts components:** Correctly hide Shorts if navigation tab is changed using device back button ([ReVanced#3007](https://github.com/E85Addict/revanced-patches/issues/3007)) ([e5848e9](e5848e9)) * **YouTube - Player flyout menu:** Add hide Lock screen menu ([ReVanced#2985](https://github.com/E85Addict/revanced-patches/issues/2985)) ([308de4a](308de4a)) * **YouTube - Spoof device dimensions:** Warn about potential performance issues ([ReVanced#3039](https://github.com/E85Addict/revanced-patches/issues/3039)) ([9d6f305](9d6f305)) * **YouTube Music - Remove upgrade button:** Fix compatibility with latest versions ([ReVanced#3045](https://github.com/E85Addict/revanced-patches/issues/3045)) ([80de996](80de996)) ### Features * Add `Hex` patch ([ReVanced#3034](https://github.com/E85Addict/revanced-patches/issues/3034)) ([3c95aac](3c95aac)) * **Amazon:** Add `Always allow deep-linking` patch ([ReVanced#3000](https://github.com/E85Addict/revanced-patches/issues/3000)) ([a92b7fb](a92b7fb)) * **Strava - Unlock subscription:** Remove compatible version constraint ([80a5599](80a5599)) * **Twitter:** Add `Sanitize sharing links` patch ([ReVanced#3003](https://github.com/E85Addict/revanced-patches/issues/3003)) ([186b887](186b887)) * **YouTube - Hide layout components:** Add option to hide horizontal shelves ([ReVanced#2951](https://github.com/E85Addict/revanced-patches/issues/2951)) ([9ae0650](9ae0650)) * **YouTube - Hide layout components:** Hide playables ([8423515](8423515)) * **YouTube - Hide Shorts components:** Hide `Shop`, `Location` and `Save sound to playlist` buttons ([ReVanced#3018](https://github.com/E85Addict/revanced-patches/issues/3018)) ([5210ac4](5210ac4)) * **YouTube - Hide Shorts components:** Hide tagged products, hide search suggestions ([ReVanced#3019](https://github.com/E85Addict/revanced-patches/issues/3019)) ([e0d2fe5](e0d2fe5)) * **YouTube - Swipe controls:** Save and restore brightness and add auto-brightness toggle ([ReVanced#2996](https://github.com/E85Addict/revanced-patches/issues/2996)) ([f6c3bc4](f6c3bc4)) * **YouTube:** Add 'About' preference to settings menu ([ReVanced#2981](https://github.com/E85Addict/revanced-patches/issues/2981)) ([5abf894](5abf894)) * **YouTube:** Match overlay icons style to YouTube ([ReVanced#3023](https://github.com/E85Addict/revanced-patches/issues/3023)) ([6849393](6849393)) * **YouTube:** Support version `19.09.38`, `19.10.39` and `19.11.43` ([ReVanced#2971](https://github.com/E85Addict/revanced-patches/issues/2971)) ([730f3e3](730f3e3)) * **YT Music - Hide 'Get Music Premium' label:** Remove occurences of label in settings ([ReVanced#3046](https://github.com/E85Addict/revanced-patches/issues/3046)) ([10e170a](10e170a)) ### Performance Improvements * Personal Logo && Add upstream sync ([7f40bcb](7f40bcb))
# [4.7.0](v4.6.0...v4.7.0) (2024-04-22) ### Bug Fixes * **Tumblr - Fix old versions:** Improve reliability by removing remnances of Tumblr Live ([ReVanced#2988](https://github.com/E85Addict/revanced-patches/issues/2988)) ([897b4db](897b4db)) * **YouTube - GmsCore support:** Prompt to disable battery optimizations, if not done already ([ReVanced#2958](https://github.com/E85Addict/revanced-patches/issues/2958)) ([82acb84](82acb84)) * **YouTube - Hide ads:** rename `Hide paid content` to `Hide paid promotion label` ([ReVanced#3026](https://github.com/E85Addict/revanced-patches/issues/3026)) ([17e4ac9](17e4ac9)) * **YouTube - Hide load more button:** Include patch with `Hide layout components`, and hide button only in search feed ([ReVanced#2959](https://github.com/E85Addict/revanced-patches/issues/2959)) ([b007e8e](b007e8e)) * **YouTube - Hide Shorts components:** Correctly hide Shorts if navigation tab is changed using device back button ([ReVanced#3007](https://github.com/E85Addict/revanced-patches/issues/3007)) ([e5848e9](e5848e9)) * **YouTube - Player flyout menu:** Add hide Lock screen menu ([ReVanced#2985](https://github.com/E85Addict/revanced-patches/issues/2985)) ([308de4a](308de4a)) * **YouTube - Spoof device dimensions:** Warn about potential performance issues ([ReVanced#3039](https://github.com/E85Addict/revanced-patches/issues/3039)) ([9d6f305](9d6f305)) * **YouTube Music - Remove upgrade button:** Fix compatibility with latest versions ([ReVanced#3045](https://github.com/E85Addict/revanced-patches/issues/3045)) ([80de996](80de996)) ### Features * Add `Hex` patch ([ReVanced#3034](https://github.com/E85Addict/revanced-patches/issues/3034)) ([3c95aac](3c95aac)) * **Amazon:** Add `Always allow deep-linking` patch ([ReVanced#3000](https://github.com/E85Addict/revanced-patches/issues/3000)) ([a92b7fb](a92b7fb)) * **Strava - Unlock subscription:** Remove compatible version constraint ([80a5599](80a5599)) * **Twitter:** Add `Sanitize sharing links` patch ([ReVanced#3003](https://github.com/E85Addict/revanced-patches/issues/3003)) ([186b887](186b887)) * **YouTube - Hide layout components:** Add option to hide horizontal shelves ([ReVanced#2951](https://github.com/E85Addict/revanced-patches/issues/2951)) ([9ae0650](9ae0650)) * **YouTube - Hide layout components:** Hide playables ([8423515](8423515)) * **YouTube - Hide Shorts components:** Hide `Shop`, `Location` and `Save sound to playlist` buttons ([ReVanced#3018](https://github.com/E85Addict/revanced-patches/issues/3018)) ([5210ac4](5210ac4)) * **YouTube - Hide Shorts components:** Hide tagged products, hide search suggestions ([ReVanced#3019](https://github.com/E85Addict/revanced-patches/issues/3019)) ([e0d2fe5](e0d2fe5)) * **YouTube - Swipe controls:** Save and restore brightness and add auto-brightness toggle ([ReVanced#2996](https://github.com/E85Addict/revanced-patches/issues/2996)) ([f6c3bc4](f6c3bc4)) * **YouTube:** Add 'About' preference to settings menu ([ReVanced#2981](https://github.com/E85Addict/revanced-patches/issues/2981)) ([5abf894](5abf894)) * **YouTube:** Match overlay icons style to YouTube ([ReVanced#3023](https://github.com/E85Addict/revanced-patches/issues/3023)) ([6849393](6849393)) * **YouTube:** Support version `19.09.38`, `19.10.39` and `19.11.43` ([ReVanced#2971](https://github.com/E85Addict/revanced-patches/issues/2971)) ([730f3e3](730f3e3)) * **YT Music - Hide 'Get Music Premium' label:** Remove occurences of label in settings ([ReVanced#3046](https://github.com/E85Addict/revanced-patches/issues/3046)) ([10e170a](10e170a)) ### Performance Improvements * Personal Logo && Add upstream sync ([5e91b8b](5e91b8b))
# [4.7.0](v4.6.0...v4.7.0) (2024-04-22) ### Bug Fixes * **Tumblr - Fix old versions:** Improve reliability by removing remnances of Tumblr Live ([ReVanced#2988](https://github.com/E85Addict/revanced-patches/issues/2988)) ([897b4db](897b4db)) * **YouTube - GmsCore support:** Prompt to disable battery optimizations, if not done already ([ReVanced#2958](https://github.com/E85Addict/revanced-patches/issues/2958)) ([82acb84](82acb84)) * **YouTube - Hide ads:** rename `Hide paid content` to `Hide paid promotion label` ([ReVanced#3026](https://github.com/E85Addict/revanced-patches/issues/3026)) ([17e4ac9](17e4ac9)) * **YouTube - Hide load more button:** Include patch with `Hide layout components`, and hide button only in search feed ([ReVanced#2959](https://github.com/E85Addict/revanced-patches/issues/2959)) ([b007e8e](b007e8e)) * **YouTube - Hide Shorts components:** Correctly hide Shorts if navigation tab is changed using device back button ([ReVanced#3007](https://github.com/E85Addict/revanced-patches/issues/3007)) ([e5848e9](e5848e9)) * **YouTube - Player flyout menu:** Add hide Lock screen menu ([ReVanced#2985](https://github.com/E85Addict/revanced-patches/issues/2985)) ([308de4a](308de4a)) * **YouTube - Spoof device dimensions:** Warn about potential performance issues ([ReVanced#3039](https://github.com/E85Addict/revanced-patches/issues/3039)) ([9d6f305](9d6f305)) * **YouTube Music - Remove upgrade button:** Fix compatibility with latest versions ([ReVanced#3045](https://github.com/E85Addict/revanced-patches/issues/3045)) ([80de996](80de996)) ### Features * Add `Hex` patch ([ReVanced#3034](https://github.com/E85Addict/revanced-patches/issues/3034)) ([3c95aac](3c95aac)) * **Amazon:** Add `Always allow deep-linking` patch ([ReVanced#3000](https://github.com/E85Addict/revanced-patches/issues/3000)) ([a92b7fb](a92b7fb)) * **Strava - Unlock subscription:** Remove compatible version constraint ([80a5599](80a5599)) * **Twitter:** Add `Sanitize sharing links` patch ([ReVanced#3003](https://github.com/E85Addict/revanced-patches/issues/3003)) ([186b887](186b887)) * **YouTube - Hide layout components:** Add option to hide horizontal shelves ([ReVanced#2951](https://github.com/E85Addict/revanced-patches/issues/2951)) ([9ae0650](9ae0650)) * **YouTube - Hide layout components:** Hide playables ([8423515](8423515)) * **YouTube - Hide Shorts components:** Hide `Shop`, `Location` and `Save sound to playlist` buttons ([ReVanced#3018](https://github.com/E85Addict/revanced-patches/issues/3018)) ([5210ac4](5210ac4)) * **YouTube - Hide Shorts components:** Hide tagged products, hide search suggestions ([ReVanced#3019](https://github.com/E85Addict/revanced-patches/issues/3019)) ([e0d2fe5](e0d2fe5)) * **YouTube - Swipe controls:** Save and restore brightness and add auto-brightness toggle ([ReVanced#2996](https://github.com/E85Addict/revanced-patches/issues/2996)) ([f6c3bc4](f6c3bc4)) * **YouTube:** Add 'About' preference to settings menu ([ReVanced#2981](https://github.com/E85Addict/revanced-patches/issues/2981)) ([5abf894](5abf894)) * **YouTube:** Match overlay icons style to YouTube ([ReVanced#3023](https://github.com/E85Addict/revanced-patches/issues/3023)) ([6849393](6849393)) * **YouTube:** Support version `19.09.38`, `19.10.39` and `19.11.43` ([ReVanced#2971](https://github.com/E85Addict/revanced-patches/issues/2971)) ([730f3e3](730f3e3)) * **YT Music - Hide 'Get Music Premium' label:** Remove occurences of label in settings ([ReVanced#3046](https://github.com/E85Addict/revanced-patches/issues/3046)) ([10e170a](10e170a)) ### Performance Improvements * Personal Logo && Add upstream sync ([70ca602](70ca602))
# [4.7.0](v4.6.0...v4.7.0) (2024-04-29) ### Bug Fixes * **Tumblr - Fix old versions:** Improve reliability by removing remnances of Tumblr Live ([ReVanced#2988](https://github.com/E85Addict/revanced-patches/issues/2988)) ([897b4db](897b4db)) * **YouTube - GmsCore support:** Prompt to disable battery optimizations, if not done already ([ReVanced#2958](https://github.com/E85Addict/revanced-patches/issues/2958)) ([82acb84](82acb84)) * **YouTube - Hide ads:** rename `Hide paid content` to `Hide paid promotion label` ([ReVanced#3026](https://github.com/E85Addict/revanced-patches/issues/3026)) ([17e4ac9](17e4ac9)) * **YouTube - Hide load more button:** Include patch with `Hide layout components`, and hide button only in search feed ([ReVanced#2959](https://github.com/E85Addict/revanced-patches/issues/2959)) ([b007e8e](b007e8e)) * **YouTube - Hide Shorts components:** Correctly hide Shorts if navigation tab is changed using device back button ([ReVanced#3007](https://github.com/E85Addict/revanced-patches/issues/3007)) ([e5848e9](e5848e9)) * **YouTube - Player flyout menu:** Add hide Lock screen menu ([ReVanced#2985](https://github.com/E85Addict/revanced-patches/issues/2985)) ([308de4a](308de4a)) * **YouTube - Spoof device dimensions:** Warn about potential performance issues ([ReVanced#3039](https://github.com/E85Addict/revanced-patches/issues/3039)) ([9d6f305](9d6f305)) * **YouTube Music - Remove upgrade button:** Fix compatibility with latest versions ([ReVanced#3045](https://github.com/E85Addict/revanced-patches/issues/3045)) ([80de996](80de996)) ### Features * Add `Hex` patch ([ReVanced#3034](https://github.com/E85Addict/revanced-patches/issues/3034)) ([3c95aac](3c95aac)) * **Amazon:** Add `Always allow deep-linking` patch ([ReVanced#3000](https://github.com/E85Addict/revanced-patches/issues/3000)) ([a92b7fb](a92b7fb)) * **Strava - Unlock subscription:** Remove compatible version constraint ([80a5599](80a5599)) * **Twitter:** Add `Sanitize sharing links` patch ([ReVanced#3003](https://github.com/E85Addict/revanced-patches/issues/3003)) ([186b887](186b887)) * **YouTube - Hide layout components:** Add option to hide horizontal shelves ([ReVanced#2951](https://github.com/E85Addict/revanced-patches/issues/2951)) ([9ae0650](9ae0650)) * **YouTube - Hide layout components:** Hide playables ([8423515](8423515)) * **YouTube - Hide Shorts components:** Hide `Shop`, `Location` and `Save sound to playlist` buttons ([ReVanced#3018](https://github.com/E85Addict/revanced-patches/issues/3018)) ([5210ac4](5210ac4)) * **YouTube - Hide Shorts components:** Hide tagged products, hide search suggestions ([ReVanced#3019](https://github.com/E85Addict/revanced-patches/issues/3019)) ([e0d2fe5](e0d2fe5)) * **YouTube - Swipe controls:** Save and restore brightness and add auto-brightness toggle ([ReVanced#2996](https://github.com/E85Addict/revanced-patches/issues/2996)) ([f6c3bc4](f6c3bc4)) * **YouTube:** Add 'About' preference to settings menu ([ReVanced#2981](https://github.com/E85Addict/revanced-patches/issues/2981)) ([5abf894](5abf894)) * **YouTube:** Match overlay icons style to YouTube ([ReVanced#3023](https://github.com/E85Addict/revanced-patches/issues/3023)) ([6849393](6849393)) * **YouTube:** Support version `19.09.38`, `19.10.39` and `19.11.43` ([ReVanced#2971](https://github.com/E85Addict/revanced-patches/issues/2971)) ([730f3e3](730f3e3)) * **YT Music - Hide 'Get Music Premium' label:** Remove occurences of label in settings ([ReVanced#3046](https://github.com/E85Addict/revanced-patches/issues/3046)) ([10e170a](10e170a)) ### Performance Improvements * Personal Logo && Add upstream sync && Add Unlock Spotify Premium patch ([b6967ec](b6967ec))
# [4.7.0](v4.6.0...v4.7.0) (2024-04-30) ### Bug Fixes * **Tumblr - Fix old versions:** Improve reliability by removing remnances of Tumblr Live ([ReVanced#2988](https://github.com/E85Addict/revanced-patches/issues/2988)) ([897b4db](897b4db)) * **YouTube - GmsCore support:** Prompt to disable battery optimizations, if not done already ([ReVanced#2958](https://github.com/E85Addict/revanced-patches/issues/2958)) ([82acb84](82acb84)) * **YouTube - Hide ads:** rename `Hide paid content` to `Hide paid promotion label` ([ReVanced#3026](https://github.com/E85Addict/revanced-patches/issues/3026)) ([17e4ac9](17e4ac9)) * **YouTube - Hide load more button:** Include patch with `Hide layout components`, and hide button only in search feed ([ReVanced#2959](https://github.com/E85Addict/revanced-patches/issues/2959)) ([b007e8e](b007e8e)) * **YouTube - Hide Shorts components:** Correctly hide Shorts if navigation tab is changed using device back button ([ReVanced#3007](https://github.com/E85Addict/revanced-patches/issues/3007)) ([e5848e9](e5848e9)) * **YouTube - Player flyout menu:** Add hide Lock screen menu ([ReVanced#2985](https://github.com/E85Addict/revanced-patches/issues/2985)) ([308de4a](308de4a)) * **YouTube - Spoof device dimensions:** Warn about potential performance issues ([ReVanced#3039](https://github.com/E85Addict/revanced-patches/issues/3039)) ([9d6f305](9d6f305)) * **YouTube Music - Remove upgrade button:** Fix compatibility with latest versions ([ReVanced#3045](https://github.com/E85Addict/revanced-patches/issues/3045)) ([80de996](80de996)) ### Features * Add `Hex` patch ([ReVanced#3034](https://github.com/E85Addict/revanced-patches/issues/3034)) ([3c95aac](3c95aac)) * **Amazon:** Add `Always allow deep-linking` patch ([ReVanced#3000](https://github.com/E85Addict/revanced-patches/issues/3000)) ([a92b7fb](a92b7fb)) * **Strava - Unlock subscription:** Remove compatible version constraint ([80a5599](80a5599)) * **Twitter:** Add `Sanitize sharing links` patch ([ReVanced#3003](https://github.com/E85Addict/revanced-patches/issues/3003)) ([186b887](186b887)) * **YouTube - Hide layout components:** Add option to hide horizontal shelves ([ReVanced#2951](https://github.com/E85Addict/revanced-patches/issues/2951)) ([9ae0650](9ae0650)) * **YouTube - Hide layout components:** Hide playables ([8423515](8423515)) * **YouTube - Hide Shorts components:** Hide `Shop`, `Location` and `Save sound to playlist` buttons ([ReVanced#3018](https://github.com/E85Addict/revanced-patches/issues/3018)) ([5210ac4](5210ac4)) * **YouTube - Hide Shorts components:** Hide tagged products, hide search suggestions ([ReVanced#3019](https://github.com/E85Addict/revanced-patches/issues/3019)) ([e0d2fe5](e0d2fe5)) * **YouTube - Swipe controls:** Save and restore brightness and add auto-brightness toggle ([ReVanced#2996](https://github.com/E85Addict/revanced-patches/issues/2996)) ([f6c3bc4](f6c3bc4)) * **YouTube:** Add 'About' preference to settings menu ([ReVanced#2981](https://github.com/E85Addict/revanced-patches/issues/2981)) ([5abf894](5abf894)) * **YouTube:** Match overlay icons style to YouTube ([ReVanced#3023](https://github.com/E85Addict/revanced-patches/issues/3023)) ([6849393](6849393)) * **YouTube:** Support version `19.09.38`, `19.10.39` and `19.11.43` ([ReVanced#2971](https://github.com/E85Addict/revanced-patches/issues/2971)) ([730f3e3](730f3e3)) * **YT Music - Hide 'Get Music Premium' label:** Remove occurences of label in settings ([ReVanced#3046](https://github.com/E85Addict/revanced-patches/issues/3046)) ([10e170a](10e170a)) ### Performance Improvements * Personal Logo && Add upstream sync ([4ed3d3f](4ed3d3f))
# [4.0.0](v3.1.0...v4.0.0) (2024-05-22) ### Bug Fixes * Case patch option title correctly ([259c8b4](259c8b4)) * Compile DEX without debugging information ([f5df957](f5df957)) * Correctly handle patches jar path if it contains exclamation marks ([056e2d7](056e2d7)) * Indent patch option description correctly ([bd86ef6](bd86ef6)) * **Infinity for Reddit - Unlock subscription:** Do not crash by patching billing client ([7d76e2e](7d76e2e)) * **Infinity for Reddit - Unlock subscription:** Restore functionality on v7.0.0 ([bf19af9](bf19af9)) * **Mi Fitness - Fix login:** Patch correct register ([ReVanced#2942](https://github.com/n-34/revanced-patches/issues/2942)) ([dc96942](dc96942)) * Only set Android key if not null to prevent build errors ([1181b0b](1181b0b)) * **Override certificate pinning:** Always overwrite with a generic network security configuration ([2a842a1](2a842a1)) * Publicize abstract property ([b7c108e](b7c108e)) * **Reddit is Fun - Spoof client:** Fix login by updating the authorization subdomain from "old" to "ssl" ([b156cb1](b156cb1)) * Remove extra space from patch description ([ReVanced#2780](https://github.com/n-34/revanced-patches/issues/2780)) ([96a3f35](96a3f35)) * **Spoof SIM country:** Validate patch option value correctly ([8105463](8105463)) * **Tiktok - Remember clear display:** Use correct name ([d7e44cb](d7e44cb)) * **TikTok:** Hook application context earlier to prevent crash ([ReVanced#2893](https://github.com/n-34/revanced-patches/issues/2893)) ([395ccda](395ccda)) * **Tumblr - Fix old versions:** Improve reliability by removing remnances of Tumblr Live ([ReVanced#2988](https://github.com/n-34/revanced-patches/issues/2988)) ([897b4db](897b4db)) * **Tumblr:** Restore compatibility with latest versions ([ReVanced#2955](https://github.com/n-34/revanced-patches/issues/2955)) ([2954ba7](2954ba7)) * **Twitch:** Correct patch resources to fix build ([1b63898](1b63898)) * URL decode path to JAR containing spaces to get JAR manifest ([ReVanced#3079](https://github.com/n-34/revanced-patches/issues/3079)) ([e1bbcb3](e1bbcb3)) * Use correct preference key ([3732b2c](3732b2c)) * Use deprecated members to ensure backwards compatibility ([083bd40](083bd40)) * Use new integrations patch path ([51e2f3b](51e2f3b)) * Use UrlDecoder API available in older Android versions ([d42fbb1](d42fbb1)) * **YouTube - Alternative thumbnails:** Clarify DeArrow support is for thumbnails ([ReVanced#2531](https://github.com/n-34/revanced-patches/issues/2531)) ([828abb0](828abb0)) * **YouTube - Change header:** Improve patch descriptions ([ReVanced#2581](https://github.com/n-34/revanced-patches/issues/2581)) ([43a5677](43a5677)) * **YouTube - Client spoof:** Spoof all user agents ([44a8a13](44a8a13)) * **YouTube - Client spoof:** Spoof client to fix playback ([ReVanced#3199](https://github.com/n-34/revanced-patches/issues/3199)) ([bec1eef](bec1eef)) * **YouTube - Downloads:** Use new task context ([ReVanced#2841](https://github.com/n-34/revanced-patches/issues/2841)) ([6d88cb4](6d88cb4)) * **YouTube - Enable slide to seek:** Change patch default to excluded and add description disclaimer ([ReVanced#2610](https://github.com/n-34/revanced-patches/issues/2610)) ([2fdc4c2](2fdc4c2)) * **YouTube - GmsCore support:** Prompt to disable battery optimizations, if not done already ([ReVanced#2958](https://github.com/n-34/revanced-patches/issues/2958)) ([82acb84](82acb84)) * **YouTube - Hide ads:** Fix string typo ([ecc56d6](ecc56d6)) * **YouTube - Hide ads:** Prevent app crash if hiding fullscreen ads is not possible ([ReVanced#2910](https://github.com/n-34/revanced-patches/issues/2910)) ([9f50470](9f50470)) * **YouTube - Hide ads:** rename `Hide paid content` to `Hide paid promotion label` ([ReVanced#3026](https://github.com/n-34/revanced-patches/issues/3026)) ([17e4ac9](17e4ac9)) * **YouTube - Hide load more button:** Include patch with `Hide layout components`, and hide button only in search feed ([ReVanced#2959](https://github.com/n-34/revanced-patches/issues/2959)) ([b007e8e](b007e8e)) * **YouTube - Hide Shorts components:** Correctly hide Shorts if navigation tab is changed using device back button ([ReVanced#3007](https://github.com/n-34/revanced-patches/issues/3007)) ([e5848e9](e5848e9)) * **YouTube - Hide Shorts components:** Rename option title to make it consistent ([4d6e34b](4d6e34b)) * **YouTube - Hide video action buttons:** Remove obsolete `hide Shop button` ([ReVanced#3057](https://github.com/n-34/revanced-patches/issues/3057)) ([b5e34f3](b5e34f3)) * **YouTube - Navigation buttons:** Adjust summary text of switch notification button ([ReVanced#3130](https://github.com/n-34/revanced-patches/issues/3130)) ([cc8b4c9](cc8b4c9)) * **YouTube - Player flyout menu:** Add hide Lock screen menu ([ReVanced#2985](https://github.com/n-34/revanced-patches/issues/2985)) ([308de4a](308de4a)) * **YouTube - Player flyout menu:** Remove obsolete `Hide report menu` ([d627d44](d627d44)) * **YouTube - Restore old video quality menu:** Show advanced quality menu in Shorts quality flyout ([ReVanced#3155](https://github.com/n-34/revanced-patches/issues/3155)) ([c2b5bb7](c2b5bb7)) * **YouTube - SponsorBlock:** Export local statistics with saved settings ([f8365b4](f8365b4)) * **YouTube - SponsorBlock:** Show correct segment times if video is over 24 hours in length ([ReVanced#3138](https://github.com/n-34/revanced-patches/issues/3138)) ([6cdf697](6cdf697)) * **YouTube - Spoof app version:** Remove broken versions ([ReVanced#2776](https://github.com/n-34/revanced-patches/issues/2776)) ([9466d97](9466d97)) * **YouTube - Spoof device dimensions:** Warn about potential performance issues ([ReVanced#3039](https://github.com/n-34/revanced-patches/issues/3039)) ([9d6f305](9d6f305)) * **YouTube - Spoof signature:** Fix tracking such as history or watch time ([bcd8b48](bcd8b48)) * **YouTube Music - Remove upgrade button:** Fix compatibility with latest versions ([ReVanced#3045](https://github.com/n-34/revanced-patches/issues/3045)) ([80de996](80de996)) * **YouTube Music:** Fix compatibility with latest versions ([ReVanced#2924](https://github.com/n-34/revanced-patches/issues/2924)) ([8378c84](8378c84)) * **YouTube Music:** Make `Hide 'Get Music Premium' label` and `Remove upgrade button` compatible with latest version ([ReVanced#3164](https://github.com/n-34/revanced-patches/issues/3164)) ([3ff20de](3ff20de)) * **YouTube:** Correctly show channel page on tablet devices ([ReVanced#2656](https://github.com/n-34/revanced-patches/issues/2656)) ([c7c9700](c7c9700)) * **YouTube:** Do not crash on startup for root installs ([ReVanced#2655](https://github.com/n-34/revanced-patches/issues/2655)) ([02abace](02abace)) * **YouTube:** Fix grammer mistakes in patch descriptions ([ReVanced#2543](https://github.com/n-34/revanced-patches/issues/2543)) ([ebf5993](ebf5993)) * **YouTube:** Fix video playback by switching to ReVanced GmsCore vendor ([ReVanced#2907](https://github.com/n-34/revanced-patches/issues/2907)) ([33ea122](33ea122)) * **YouTube:** Move setting to correct screen ([a16eda8](a16eda8)) * **YouTube:** Shorten setting titles to fit on screen ([ReVanced#2579](https://github.com/n-34/revanced-patches/issues/2579)) ([b2a5dd3](b2a5dd3)) ### Code Refactoring * Fix package and code structure ([ReVanced#2541](https://github.com/n-34/revanced-patches/issues/2541)) ([a08457e](a08457e)) ### Features * Add `Hex` patch ([ReVanced#3034](https://github.com/n-34/revanced-patches/issues/3034)) ([3c95aac](3c95aac)) * **Amazon:** Add `Always allow deep-linking` patch ([ReVanced#3000](https://github.com/n-34/revanced-patches/issues/3000)) ([a92b7fb](a92b7fb)) * **Change package name:** Mention caveat of the patch in the description ([427b81a](427b81a)) * **ID Austria:** Remove constraint on any version ([ReVanced#2526](https://github.com/n-34/revanced-patches/issues/2526)) ([de2cb88](de2cb88)) * **Instagram - Hide timeline ads:** Make compatible with latest versions ([a212f29](a212f29)) * **Mi Fitness:** Add `Force English locale` and `Fix login` patch ([ReVanced#2734](https://github.com/n-34/revanced-patches/issues/2734)) ([7a25791](7a25791)) * Move strings to resources for localization ([ReVanced#2440](https://github.com/n-34/revanced-patches/issues/2440)) ([060ab8f](060ab8f)) * **MyFitnessPal:** Add `Hide ads` patch ([ReVanced#2594](https://github.com/n-34/revanced-patches/issues/2594)) ([fd4b3c7](fd4b3c7)) * **OpeningHours:** Add `Fix crash` patch ([ReVanced#2697](https://github.com/n-34/revanced-patches/issues/2697)) ([0d011b8](0d011b8)) * **Photomath:** Add `Hide update popup` patch ([ReVanced#2637](https://github.com/n-34/revanced-patches/issues/2637)) ([fbbecd3](fbbecd3)) * **Photomath:** Support version `8.37.0` ([ReVanced#3109](https://github.com/n-34/revanced-patches/issues/3109)) ([fb02b48](fb02b48)) * **Piccoma:** Add `Disable tracking` patch ([ReVanced#3143](https://github.com/n-34/revanced-patches/issues/3143)) ([8ab9e8f](8ab9e8f)) * **Piccoma:** Add `Spoof Android device ID` patch ([ReVanced#3145](https://github.com/n-34/revanced-patches/issues/3145)) ([d953c6b](d953c6b)) * **Public API:** Deprecate `HideEmailAddressPatch` ([866bceb](866bceb)) * **Public API:** Make `BottomControlsResource#addControls` public ([ReVanced#2514](https://github.com/n-34/revanced-patches/issues/2514)) ([f4e2257](f4e2257)) * Remove unnecessary description from patch ([1a89dd9](1a89dd9)) * **Strava - Unlock subscription:** Remove compatible version constraint ([80a5599](80a5599)) * **Sync for Lemmy:** Add `Disable ads` patch ([ReVanced#2872](https://github.com/n-34/revanced-patches/issues/2872)) ([0785819](0785819)) * **Sync for Reddit:** Add `Fix /s/ links` patch ([f15ef3f](f15ef3f)) * **Tiktok - Playback speed:** Remember playback speed ([ReVanced#2506](https://github.com/n-34/revanced-patches/issues/2506)) ([d2970e5](d2970e5)) * **Tiktok:** Add `Remember clear mode` patch ([ReVanced#2509](https://github.com/n-34/revanced-patches/issues/2509)) ([048bf59](048bf59)) * **Tumblr:** Add `Disable Ad-Free Banner` patch ([ReVanced#3091](https://github.com/n-34/revanced-patches/issues/3091)) ([54baf08](54baf08)) * **Tumblr:** Add `Fix old versions` patch ([ReVanced#2954](https://github.com/n-34/revanced-patches/issues/2954)) ([2fde60e](2fde60e)) * **Twitter - Unlock downloads:** Unlock GIF downloads ([d0f91c8](d0f91c8)) * **Twitter:** Add `Sanitize sharing links` patch ([ReVanced#3003](https://github.com/n-34/revanced-patches/issues/3003)) ([186b887](186b887)) * **VSCO - Unlock pro:** Constrain to last working version ([6dd4a7c](6dd4a7c)) * **WarnWetter - Promo code unlock:** Constrain to last working version ([ReVanced#3110](https://github.com/n-34/revanced-patches/issues/3110)) ([92fc8aa](92fc8aa)) * **X:** Add `Hide view count` patch ([bf064ec](bf064ec)) * **X:** Add `Open links as query` patch ([ReVanced#2730](https://github.com/n-34/revanced-patches/issues/2730)) ([ba75a51](ba75a51)) * **X:** Add `Unlock downloads` patch ([2c20844](2c20844)) * **YouTube - Alternative thumbnails:** Selectively enable for home / subscription / search ([ReVanced#2926](https://github.com/n-34/revanced-patches/issues/2926)) ([8549e1b](8549e1b)) * **YouTube - Change header:** Change to ReVanced borderless logo header by default ([ReVanced#2512](https://github.com/n-34/revanced-patches/issues/2512)) ([75f785d](75f785d)) * **YouTube - Change header:** Improve patch option description ([3b8bc08](3b8bc08)) * **YouTube - Change start page:** Add more start pages ([cc1d9b7](cc1d9b7)) * **YouTube - Comments:** Add option to hide timestamp and emoji buttons ([ReVanced#3076](https://github.com/n-34/revanced-patches/issues/3076)) ([7efe5ae](7efe5ae)) * **YouTube - Custom branding:** Improve patch option description ([e27f56c](e27f56c)) * **YouTube - Custom filter:** Custom filtering of the protocol buffer ([ReVanced#2682](https://github.com/n-34/revanced-patches/issues/2682)) ([872a5b6](872a5b6)) * **YouTube - Downloads:** Use external downloader when selecting 'Download' in home feed flyout menu ([ReVanced#2881](https://github.com/n-34/revanced-patches/issues/2881)) ([10afc8c](10afc8c)) * **YouTube - External downloader:** Add ability to use in-app download button ([d900011](d900011)) * **YouTube - GmsCore:** Require ignoring battery optimizations ([ReVanced#2952](https://github.com/n-34/revanced-patches/issues/2952)) ([c0bef25](c0bef25)) * **YouTube - Hide ads:** Add option to hide the 'Visit store' button on channel pages ([ReVanced#3077](https://github.com/n-34/revanced-patches/issues/3077)) ([03d2cfa](03d2cfa)) * **YouTube - Hide ads:** Hide fullscreen ads ([bdc9a12](bdc9a12)) * **YouTube - Hide layout components:** Add option to hide horizontal shelves ([ReVanced#2951](https://github.com/n-34/revanced-patches/issues/2951)) ([9ae0650](9ae0650)) * **YouTube - Hide layout components:** Filter home/search results by keywords ([ReVanced#2853](https://github.com/n-34/revanced-patches/issues/2853)) ([5916204](5916204)) * **YouTube - Hide layout components:** Hide playables ([8423515](8423515)) * **YouTube - Hide layout components:** Hide search result recommendations ([55cc7f1](55cc7f1)) * **YouTube - Hide Shorts components:** Hide 'Buy super thanks' button ([ReVanced#3176](https://github.com/n-34/revanced-patches/issues/3176)) ([89c1548](89c1548)) * **YouTube - Hide Shorts components:** Hide `Shop`, `Location` and `Save sound to playlist` buttons ([ReVanced#3018](https://github.com/n-34/revanced-patches/issues/3018)) ([5210ac4](5210ac4)) * **YouTube - Hide Shorts components:** Hide like / dislike button in video ads ([ReVanced#3062](https://github.com/n-34/revanced-patches/issues/3062)) ([1296985](1296985)) * **YouTube - Hide Shorts components:** Hide like and dislike buttons ([2df0892](2df0892)) * **YouTube - Hide Shorts components:** Hide sound metadata label ([ea7d1e0](ea7d1e0)) * **YouTube - Hide Shorts components:** Hide tagged products, hide search suggestions ([ReVanced#3019](https://github.com/n-34/revanced-patches/issues/3019)) ([e0d2fe5](e0d2fe5)) * **YouTube - Hide Shorts components:** Hide title and full video link label ([e7b64e1](e7b64e1)) * **YouTube - Hide Shorts components:** Selectively hide Shorts for home / subscription / search ([ReVanced#2925](https://github.com/n-34/revanced-patches/issues/2925)) ([497c067](497c067)) * **YouTube - Navigation buttons:** Add option to hide navigation button labels ([ReVanced#3189](https://github.com/n-34/revanced-patches/issues/3189)) ([f9dc705](f9dc705)) * **YouTube - Spoof app version:** Add `18.09.39` to restore library tab ([ReVanced#2643](https://github.com/n-34/revanced-patches/issues/2643)) ([dd108ff](dd108ff)) * **YouTube - Spoof app version:** Add target versions ([ReVanced#2787](https://github.com/n-34/revanced-patches/issues/2787)) ([83a7bd8](83a7bd8)) * **YouTube - Swipe controls:** Save and restore brightness and add auto-brightness toggle ([ReVanced#2996](https://github.com/n-34/revanced-patches/issues/2996)) ([f6c3bc4](f6c3bc4)) * **YouTube - Theme:** Add classic dark color to presets ([ReVanced#2542](https://github.com/n-34/revanced-patches/issues/2542)) ([4e1dc00](4e1dc00)) * **YouTube :** Remove `HDR auto brightness` patch ([ReVanced#2863](https://github.com/n-34/revanced-patches/issues/2863)) ([b4c7bf4](b4c7bf4)) * **YouTube Vanced:** Remove `Hide ads` patch ([87887e4](87887e4)) * **YouTube:** Add 'About' preference to settings menu ([ReVanced#2981](https://github.com/n-34/revanced-patches/issues/2981)) ([5abf894](5abf894)) * **YouTube:** Add `Remove viewer discretion dialog` patch ([a07f83f](a07f83f)) * **YouTube:** Improve patch descriptions ([ReVanced#2519](https://github.com/n-34/revanced-patches/issues/2519)) ([e8d1389](e8d1389)) * **YouTube:** Match overlay icons style to YouTube ([ReVanced#3023](https://github.com/n-34/revanced-patches/issues/3023)) ([6849393](6849393)) * **YouTube:** Remove `Hide email address` patch ([3b84305](3b84305)) * **YouTube:** Reorganize settings menu ([ReVanced#2737](https://github.com/n-34/revanced-patches/issues/2737)) ([36132df](36132df)) * **YouTube:** Support version `19.02.34` ([ReVanced#2627](https://github.com/n-34/revanced-patches/issues/2627)) ([94e08b7](94e08b7)) * **YouTube:** Support version `19.03.35` ([ReVanced#2640](https://github.com/n-34/revanced-patches/issues/2640)) ([ff08f58](ff08f58)) * **YouTube:** Support version `19.04.37` ([ReVanced#2687](https://github.com/n-34/revanced-patches/issues/2687)) ([c23e023](c23e023)) * **YouTube:** Support version `19.05`, `19.06`, `19.07`, `19.08` and `19.09` ([ReVanced#2862](https://github.com/n-34/revanced-patches/issues/2862)) ([f044dde](f044dde)) * **YouTube:** Support version `19.09.38`, `19.10.39` and `19.11.43` ([ReVanced#2971](https://github.com/n-34/revanced-patches/issues/2971)) ([730f3e3](730f3e3)) * **YouTube:** Support versions `18.48.39`, `18.49.37` and `19.01.34` ([ReVanced#2551](https://github.com/n-34/revanced-patches/issues/2551)) ([a938e73](a938e73)) * **YT Music - Hide 'Get Music Premium' label:** Remove occurences of label in settings ([ReVanced#3046](https://github.com/n-34/revanced-patches/issues/3046)) ([10e170a](10e170a)) * **YT Music:** Add support for `7.01.52` ([ReVanced#3177](https://github.com/n-34/revanced-patches/issues/3177)) ([e9bfb25](e9bfb25)) ### BREAKING CHANGES * **Photomath:** Some packages have changed locations. * Various APIs have been changed. * Various public APIs have changed names and packages or were removed entirely
# [4.0.0](v3.1.0...v4.0.0) (2024-05-22) ### Bug Fixes * Case patch option title correctly ([259c8b4](259c8b4)) * Compile DEX without debugging information ([f5df957](f5df957)) * Correctly handle patches jar path if it contains exclamation marks ([056e2d7](056e2d7)) * Indent patch option description correctly ([bd86ef6](bd86ef6)) * **Infinity for Reddit - Unlock subscription:** Do not crash by patching billing client ([7d76e2e](7d76e2e)) * **Infinity for Reddit - Unlock subscription:** Restore functionality on v7.0.0 ([bf19af9](bf19af9)) * **Mi Fitness - Fix login:** Patch correct register ([ReVanced#2942](https://github.com/n-34/revanced-patches/issues/2942)) ([dc96942](dc96942)) * Only set Android key if not null to prevent build errors ([1181b0b](1181b0b)) * **Override certificate pinning:** Always overwrite with a generic network security configuration ([2a842a1](2a842a1)) * Publicize abstract property ([b7c108e](b7c108e)) * **Reddit is Fun - Spoof client:** Fix login by updating the authorization subdomain from "old" to "ssl" ([b156cb1](b156cb1)) * Remove extra space from patch description ([ReVanced#2780](https://github.com/n-34/revanced-patches/issues/2780)) ([96a3f35](96a3f35)) * **Spoof SIM country:** Validate patch option value correctly ([8105463](8105463)) * **Tiktok - Remember clear display:** Use correct name ([d7e44cb](d7e44cb)) * **TikTok:** Hook application context earlier to prevent crash ([ReVanced#2893](https://github.com/n-34/revanced-patches/issues/2893)) ([395ccda](395ccda)) * **Tumblr - Fix old versions:** Improve reliability by removing remnances of Tumblr Live ([ReVanced#2988](https://github.com/n-34/revanced-patches/issues/2988)) ([897b4db](897b4db)) * **Tumblr:** Restore compatibility with latest versions ([ReVanced#2955](https://github.com/n-34/revanced-patches/issues/2955)) ([2954ba7](2954ba7)) * **Twitch:** Correct patch resources to fix build ([1b63898](1b63898)) * URL decode path to JAR containing spaces to get JAR manifest ([ReVanced#3079](https://github.com/n-34/revanced-patches/issues/3079)) ([e1bbcb3](e1bbcb3)) * Use correct preference key ([3732b2c](3732b2c)) * Use deprecated members to ensure backwards compatibility ([083bd40](083bd40)) * Use new integrations patch path ([51e2f3b](51e2f3b)) * Use UrlDecoder API available in older Android versions ([d42fbb1](d42fbb1)) * **YouTube - Alternative thumbnails:** Clarify DeArrow support is for thumbnails ([ReVanced#2531](https://github.com/n-34/revanced-patches/issues/2531)) ([828abb0](828abb0)) * **YouTube - Change header:** Improve patch descriptions ([ReVanced#2581](https://github.com/n-34/revanced-patches/issues/2581)) ([43a5677](43a5677)) * **YouTube - Client spoof:** Spoof all user agents ([44a8a13](44a8a13)) * **YouTube - Client spoof:** Spoof client to fix playback ([ReVanced#3199](https://github.com/n-34/revanced-patches/issues/3199)) ([bec1eef](bec1eef)) * **YouTube - Downloads:** Use new task context ([ReVanced#2841](https://github.com/n-34/revanced-patches/issues/2841)) ([6d88cb4](6d88cb4)) * **YouTube - Enable slide to seek:** Change patch default to excluded and add description disclaimer ([ReVanced#2610](https://github.com/n-34/revanced-patches/issues/2610)) ([2fdc4c2](2fdc4c2)) * **YouTube - GmsCore support:** Prompt to disable battery optimizations, if not done already ([ReVanced#2958](https://github.com/n-34/revanced-patches/issues/2958)) ([82acb84](82acb84)) * **YouTube - Hide ads:** Fix string typo ([ecc56d6](ecc56d6)) * **YouTube - Hide ads:** Prevent app crash if hiding fullscreen ads is not possible ([ReVanced#2910](https://github.com/n-34/revanced-patches/issues/2910)) ([9f50470](9f50470)) * **YouTube - Hide ads:** rename `Hide paid content` to `Hide paid promotion label` ([ReVanced#3026](https://github.com/n-34/revanced-patches/issues/3026)) ([17e4ac9](17e4ac9)) * **YouTube - Hide load more button:** Include patch with `Hide layout components`, and hide button only in search feed ([ReVanced#2959](https://github.com/n-34/revanced-patches/issues/2959)) ([b007e8e](b007e8e)) * **YouTube - Hide Shorts components:** Correctly hide Shorts if navigation tab is changed using device back button ([ReVanced#3007](https://github.com/n-34/revanced-patches/issues/3007)) ([e5848e9](e5848e9)) * **YouTube - Hide Shorts components:** Rename option title to make it consistent ([4d6e34b](4d6e34b)) * **YouTube - Hide video action buttons:** Remove obsolete `hide Shop button` ([ReVanced#3057](https://github.com/n-34/revanced-patches/issues/3057)) ([b5e34f3](b5e34f3)) * **YouTube - Navigation buttons:** Adjust summary text of switch notification button ([ReVanced#3130](https://github.com/n-34/revanced-patches/issues/3130)) ([cc8b4c9](cc8b4c9)) * **YouTube - Player flyout menu:** Add hide Lock screen menu ([ReVanced#2985](https://github.com/n-34/revanced-patches/issues/2985)) ([308de4a](308de4a)) * **YouTube - Player flyout menu:** Remove obsolete `Hide report menu` ([d627d44](d627d44)) * **YouTube - Restore old video quality menu:** Show advanced quality menu in Shorts quality flyout ([ReVanced#3155](https://github.com/n-34/revanced-patches/issues/3155)) ([c2b5bb7](c2b5bb7)) * **YouTube - SponsorBlock:** Export local statistics with saved settings ([f8365b4](f8365b4)) * **YouTube - SponsorBlock:** Show correct segment times if video is over 24 hours in length ([ReVanced#3138](https://github.com/n-34/revanced-patches/issues/3138)) ([6cdf697](6cdf697)) * **YouTube - Spoof app version:** Remove broken versions ([ReVanced#2776](https://github.com/n-34/revanced-patches/issues/2776)) ([9466d97](9466d97)) * **YouTube - Spoof device dimensions:** Warn about potential performance issues ([ReVanced#3039](https://github.com/n-34/revanced-patches/issues/3039)) ([9d6f305](9d6f305)) * **YouTube - Spoof signature:** Fix tracking such as history or watch time ([bcd8b48](bcd8b48)) * **YouTube Music - Remove upgrade button:** Fix compatibility with latest versions ([ReVanced#3045](https://github.com/n-34/revanced-patches/issues/3045)) ([80de996](80de996)) * **YouTube Music:** Fix compatibility with latest versions ([ReVanced#2924](https://github.com/n-34/revanced-patches/issues/2924)) ([8378c84](8378c84)) * **YouTube Music:** Make `Hide 'Get Music Premium' label` and `Remove upgrade button` compatible with latest version ([ReVanced#3164](https://github.com/n-34/revanced-patches/issues/3164)) ([3ff20de](3ff20de)) * **YouTube:** Correctly show channel page on tablet devices ([ReVanced#2656](https://github.com/n-34/revanced-patches/issues/2656)) ([c7c9700](c7c9700)) * **YouTube:** Do not crash on startup for root installs ([ReVanced#2655](https://github.com/n-34/revanced-patches/issues/2655)) ([02abace](02abace)) * **YouTube:** Fix grammer mistakes in patch descriptions ([ReVanced#2543](https://github.com/n-34/revanced-patches/issues/2543)) ([ebf5993](ebf5993)) * **YouTube:** Fix video playback by switching to ReVanced GmsCore vendor ([ReVanced#2907](https://github.com/n-34/revanced-patches/issues/2907)) ([33ea122](33ea122)) * **YouTube:** Move setting to correct screen ([a16eda8](a16eda8)) * **YouTube:** Shorten setting titles to fit on screen ([ReVanced#2579](https://github.com/n-34/revanced-patches/issues/2579)) ([b2a5dd3](b2a5dd3)) ### Code Refactoring * Fix package and code structure ([ReVanced#2541](https://github.com/n-34/revanced-patches/issues/2541)) ([a08457e](a08457e)) ### Features * Add `Hex` patch ([ReVanced#3034](https://github.com/n-34/revanced-patches/issues/3034)) ([3c95aac](3c95aac)) * **Amazon:** Add `Always allow deep-linking` patch ([ReVanced#3000](https://github.com/n-34/revanced-patches/issues/3000)) ([a92b7fb](a92b7fb)) * **Change package name:** Mention caveat of the patch in the description ([427b81a](427b81a)) * **ID Austria:** Remove constraint on any version ([ReVanced#2526](https://github.com/n-34/revanced-patches/issues/2526)) ([de2cb88](de2cb88)) * **Instagram - Hide timeline ads:** Make compatible with latest versions ([a212f29](a212f29)) * **Mi Fitness:** Add `Force English locale` and `Fix login` patch ([ReVanced#2734](https://github.com/n-34/revanced-patches/issues/2734)) ([7a25791](7a25791)) * Move strings to resources for localization ([ReVanced#2440](https://github.com/n-34/revanced-patches/issues/2440)) ([060ab8f](060ab8f)) * **MyFitnessPal:** Add `Hide ads` patch ([ReVanced#2594](https://github.com/n-34/revanced-patches/issues/2594)) ([fd4b3c7](fd4b3c7)) * **OpeningHours:** Add `Fix crash` patch ([ReVanced#2697](https://github.com/n-34/revanced-patches/issues/2697)) ([0d011b8](0d011b8)) * **Photomath:** Add `Hide update popup` patch ([ReVanced#2637](https://github.com/n-34/revanced-patches/issues/2637)) ([fbbecd3](fbbecd3)) * **Photomath:** Support version `8.37.0` ([ReVanced#3109](https://github.com/n-34/revanced-patches/issues/3109)) ([fb02b48](fb02b48)) * **Piccoma:** Add `Disable tracking` patch ([ReVanced#3143](https://github.com/n-34/revanced-patches/issues/3143)) ([8ab9e8f](8ab9e8f)) * **Piccoma:** Add `Spoof Android device ID` patch ([ReVanced#3145](https://github.com/n-34/revanced-patches/issues/3145)) ([d953c6b](d953c6b)) * **Public API:** Deprecate `HideEmailAddressPatch` ([866bceb](866bceb)) * **Public API:** Make `BottomControlsResource#addControls` public ([ReVanced#2514](https://github.com/n-34/revanced-patches/issues/2514)) ([f4e2257](f4e2257)) * Remove unnecessary description from patch ([1a89dd9](1a89dd9)) * **Strava - Unlock subscription:** Remove compatible version constraint ([80a5599](80a5599)) * **Sync for Lemmy:** Add `Disable ads` patch ([ReVanced#2872](https://github.com/n-34/revanced-patches/issues/2872)) ([0785819](0785819)) * **Sync for Reddit:** Add `Fix /s/ links` patch ([f15ef3f](f15ef3f)) * **Tiktok - Playback speed:** Remember playback speed ([ReVanced#2506](https://github.com/n-34/revanced-patches/issues/2506)) ([d2970e5](d2970e5)) * **Tiktok:** Add `Remember clear mode` patch ([ReVanced#2509](https://github.com/n-34/revanced-patches/issues/2509)) ([048bf59](048bf59)) * **Tumblr:** Add `Disable Ad-Free Banner` patch ([ReVanced#3091](https://github.com/n-34/revanced-patches/issues/3091)) ([54baf08](54baf08)) * **Tumblr:** Add `Fix old versions` patch ([ReVanced#2954](https://github.com/n-34/revanced-patches/issues/2954)) ([2fde60e](2fde60e)) * **Twitter - Unlock downloads:** Unlock GIF downloads ([d0f91c8](d0f91c8)) * **Twitter:** Add `Sanitize sharing links` patch ([ReVanced#3003](https://github.com/n-34/revanced-patches/issues/3003)) ([186b887](186b887)) * **VSCO - Unlock pro:** Constrain to last working version ([6dd4a7c](6dd4a7c)) * **WarnWetter - Promo code unlock:** Constrain to last working version ([ReVanced#3110](https://github.com/n-34/revanced-patches/issues/3110)) ([92fc8aa](92fc8aa)) * **X:** Add `Hide view count` patch ([bf064ec](bf064ec)) * **X:** Add `Open links as query` patch ([ReVanced#2730](https://github.com/n-34/revanced-patches/issues/2730)) ([ba75a51](ba75a51)) * **X:** Add `Unlock downloads` patch ([2c20844](2c20844)) * **YouTube - Alternative thumbnails:** Selectively enable for home / subscription / search ([ReVanced#2926](https://github.com/n-34/revanced-patches/issues/2926)) ([8549e1b](8549e1b)) * **YouTube - Change header:** Change to ReVanced borderless logo header by default ([ReVanced#2512](https://github.com/n-34/revanced-patches/issues/2512)) ([75f785d](75f785d)) * **YouTube - Change header:** Improve patch option description ([3b8bc08](3b8bc08)) * **YouTube - Change start page:** Add more start pages ([cc1d9b7](cc1d9b7)) * **YouTube - Comments:** Add option to hide timestamp and emoji buttons ([ReVanced#3076](https://github.com/n-34/revanced-patches/issues/3076)) ([7efe5ae](7efe5ae)) * **YouTube - Custom branding:** Improve patch option description ([e27f56c](e27f56c)) * **YouTube - Custom filter:** Custom filtering of the protocol buffer ([ReVanced#2682](https://github.com/n-34/revanced-patches/issues/2682)) ([872a5b6](872a5b6)) * **YouTube - Downloads:** Use external downloader when selecting 'Download' in home feed flyout menu ([ReVanced#2881](https://github.com/n-34/revanced-patches/issues/2881)) ([10afc8c](10afc8c)) * **YouTube - External downloader:** Add ability to use in-app download button ([d900011](d900011)) * **YouTube - GmsCore:** Require ignoring battery optimizations ([ReVanced#2952](https://github.com/n-34/revanced-patches/issues/2952)) ([c0bef25](c0bef25)) * **YouTube - Hide ads:** Add option to hide the 'Visit store' button on channel pages ([ReVanced#3077](https://github.com/n-34/revanced-patches/issues/3077)) ([03d2cfa](03d2cfa)) * **YouTube - Hide ads:** Hide fullscreen ads ([bdc9a12](bdc9a12)) * **YouTube - Hide layout components:** Add option to hide horizontal shelves ([ReVanced#2951](https://github.com/n-34/revanced-patches/issues/2951)) ([9ae0650](9ae0650)) * **YouTube - Hide layout components:** Filter home/search results by keywords ([ReVanced#2853](https://github.com/n-34/revanced-patches/issues/2853)) ([5916204](5916204)) * **YouTube - Hide layout components:** Hide playables ([8423515](8423515)) * **YouTube - Hide layout components:** Hide search result recommendations ([55cc7f1](55cc7f1)) * **YouTube - Hide Shorts components:** Hide 'Buy super thanks' button ([ReVanced#3176](https://github.com/n-34/revanced-patches/issues/3176)) ([89c1548](89c1548)) * **YouTube - Hide Shorts components:** Hide `Shop`, `Location` and `Save sound to playlist` buttons ([ReVanced#3018](https://github.com/n-34/revanced-patches/issues/3018)) ([5210ac4](5210ac4)) * **YouTube - Hide Shorts components:** Hide like / dislike button in video ads ([ReVanced#3062](https://github.com/n-34/revanced-patches/issues/3062)) ([1296985](1296985)) * **YouTube - Hide Shorts components:** Hide like and dislike buttons ([2df0892](2df0892)) * **YouTube - Hide Shorts components:** Hide sound metadata label ([ea7d1e0](ea7d1e0)) * **YouTube - Hide Shorts components:** Hide tagged products, hide search suggestions ([ReVanced#3019](https://github.com/n-34/revanced-patches/issues/3019)) ([e0d2fe5](e0d2fe5)) * **YouTube - Hide Shorts components:** Hide title and full video link label ([e7b64e1](e7b64e1)) * **YouTube - Hide Shorts components:** Selectively hide Shorts for home / subscription / search ([ReVanced#2925](https://github.com/n-34/revanced-patches/issues/2925)) ([497c067](497c067)) * **YouTube - Navigation buttons:** Add option to hide navigation button labels ([ReVanced#3189](https://github.com/n-34/revanced-patches/issues/3189)) ([f9dc705](f9dc705)) * **YouTube - Spoof app version:** Add `18.09.39` to restore library tab ([ReVanced#2643](https://github.com/n-34/revanced-patches/issues/2643)) ([dd108ff](dd108ff)) * **YouTube - Spoof app version:** Add target versions ([ReVanced#2787](https://github.com/n-34/revanced-patches/issues/2787)) ([83a7bd8](83a7bd8)) * **YouTube - Swipe controls:** Save and restore brightness and add auto-brightness toggle ([ReVanced#2996](https://github.com/n-34/revanced-patches/issues/2996)) ([f6c3bc4](f6c3bc4)) * **YouTube - Theme:** Add classic dark color to presets ([ReVanced#2542](https://github.com/n-34/revanced-patches/issues/2542)) ([4e1dc00](4e1dc00)) * **YouTube :** Remove `HDR auto brightness` patch ([ReVanced#2863](https://github.com/n-34/revanced-patches/issues/2863)) ([b4c7bf4](b4c7bf4)) * **YouTube Vanced:** Remove `Hide ads` patch ([87887e4](87887e4)) * **YouTube:** Add 'About' preference to settings menu ([ReVanced#2981](https://github.com/n-34/revanced-patches/issues/2981)) ([5abf894](5abf894)) * **YouTube:** Add `Remove viewer discretion dialog` patch ([a07f83f](a07f83f)) * **YouTube:** Improve patch descriptions ([ReVanced#2519](https://github.com/n-34/revanced-patches/issues/2519)) ([e8d1389](e8d1389)) * **YouTube:** Match overlay icons style to YouTube ([ReVanced#3023](https://github.com/n-34/revanced-patches/issues/3023)) ([6849393](6849393)) * **YouTube:** Remove `Hide email address` patch ([3b84305](3b84305)) * **YouTube:** Reorganize settings menu ([ReVanced#2737](https://github.com/n-34/revanced-patches/issues/2737)) ([36132df](36132df)) * **YouTube:** Support version `19.02.34` ([ReVanced#2627](https://github.com/n-34/revanced-patches/issues/2627)) ([94e08b7](94e08b7)) * **YouTube:** Support version `19.03.35` ([ReVanced#2640](https://github.com/n-34/revanced-patches/issues/2640)) ([ff08f58](ff08f58)) * **YouTube:** Support version `19.04.37` ([ReVanced#2687](https://github.com/n-34/revanced-patches/issues/2687)) ([c23e023](c23e023)) * **YouTube:** Support version `19.05`, `19.06`, `19.07`, `19.08` and `19.09` ([ReVanced#2862](https://github.com/n-34/revanced-patches/issues/2862)) ([f044dde](f044dde)) * **YouTube:** Support version `19.09.38`, `19.10.39` and `19.11.43` ([ReVanced#2971](https://github.com/n-34/revanced-patches/issues/2971)) ([730f3e3](730f3e3)) * **YouTube:** Support versions `18.48.39`, `18.49.37` and `19.01.34` ([ReVanced#2551](https://github.com/n-34/revanced-patches/issues/2551)) ([a938e73](a938e73)) * **YT Music - Hide 'Get Music Premium' label:** Remove occurences of label in settings ([ReVanced#3046](https://github.com/n-34/revanced-patches/issues/3046)) ([10e170a](10e170a)) * **YT Music:** Add support for `7.01.52` ([ReVanced#3177](https://github.com/n-34/revanced-patches/issues/3177)) ([e9bfb25](e9bfb25)) ### BREAKING CHANGES * **Photomath:** Some packages have changed locations. * Various APIs have been changed. * Various public APIs have changed names and packages or were removed entirely
# [4.0.0](v3.1.0...v4.0.0) (2024-05-22) ### Bug Fixes * Case patch option title correctly ([259c8b4](259c8b4)) * Compile DEX without debugging information ([f5df957](f5df957)) * Correctly handle patches jar path if it contains exclamation marks ([056e2d7](056e2d7)) * Indent patch option description correctly ([bd86ef6](bd86ef6)) * **Infinity for Reddit - Unlock subscription:** Do not crash by patching billing client ([7d76e2e](7d76e2e)) * **Infinity for Reddit - Unlock subscription:** Restore functionality on v7.0.0 ([bf19af9](bf19af9)) * **Mi Fitness - Fix login:** Patch correct register ([ReVanced#2942](https://github.com/n-34/revanced-patches/issues/2942)) ([dc96942](dc96942)) * Only set Android key if not null to prevent build errors ([1181b0b](1181b0b)) * **Override certificate pinning:** Always overwrite with a generic network security configuration ([2a842a1](2a842a1)) * Publicize abstract property ([b7c108e](b7c108e)) * **Reddit is Fun - Spoof client:** Fix login by updating the authorization subdomain from "old" to "ssl" ([b156cb1](b156cb1)) * Remove extra space from patch description ([ReVanced#2780](https://github.com/n-34/revanced-patches/issues/2780)) ([96a3f35](96a3f35)) * **Spoof SIM country:** Validate patch option value correctly ([8105463](8105463)) * **Tiktok - Remember clear display:** Use correct name ([d7e44cb](d7e44cb)) * **TikTok:** Hook application context earlier to prevent crash ([ReVanced#2893](https://github.com/n-34/revanced-patches/issues/2893)) ([395ccda](395ccda)) * **Tumblr - Fix old versions:** Improve reliability by removing remnances of Tumblr Live ([ReVanced#2988](https://github.com/n-34/revanced-patches/issues/2988)) ([897b4db](897b4db)) * **Tumblr:** Restore compatibility with latest versions ([ReVanced#2955](https://github.com/n-34/revanced-patches/issues/2955)) ([2954ba7](2954ba7)) * **Twitch:** Correct patch resources to fix build ([1b63898](1b63898)) * URL decode path to JAR containing spaces to get JAR manifest ([ReVanced#3079](https://github.com/n-34/revanced-patches/issues/3079)) ([e1bbcb3](e1bbcb3)) * Use correct preference key ([3732b2c](3732b2c)) * Use deprecated members to ensure backwards compatibility ([083bd40](083bd40)) * Use new integrations patch path ([51e2f3b](51e2f3b)) * Use UrlDecoder API available in older Android versions ([d42fbb1](d42fbb1)) * **YouTube - Alternative thumbnails:** Clarify DeArrow support is for thumbnails ([ReVanced#2531](https://github.com/n-34/revanced-patches/issues/2531)) ([828abb0](828abb0)) * **YouTube - Change header:** Improve patch descriptions ([ReVanced#2581](https://github.com/n-34/revanced-patches/issues/2581)) ([43a5677](43a5677)) * **YouTube - Client spoof:** Spoof all user agents ([44a8a13](44a8a13)) * **YouTube - Client spoof:** Spoof client to fix playback ([ReVanced#3199](https://github.com/n-34/revanced-patches/issues/3199)) ([bec1eef](bec1eef)) * **YouTube - Downloads:** Use new task context ([ReVanced#2841](https://github.com/n-34/revanced-patches/issues/2841)) ([6d88cb4](6d88cb4)) * **YouTube - Enable slide to seek:** Change patch default to excluded and add description disclaimer ([ReVanced#2610](https://github.com/n-34/revanced-patches/issues/2610)) ([2fdc4c2](2fdc4c2)) * **YouTube - GmsCore support:** Prompt to disable battery optimizations, if not done already ([ReVanced#2958](https://github.com/n-34/revanced-patches/issues/2958)) ([82acb84](82acb84)) * **YouTube - Hide ads:** Fix string typo ([ecc56d6](ecc56d6)) * **YouTube - Hide ads:** Prevent app crash if hiding fullscreen ads is not possible ([ReVanced#2910](https://github.com/n-34/revanced-patches/issues/2910)) ([9f50470](9f50470)) * **YouTube - Hide ads:** rename `Hide paid content` to `Hide paid promotion label` ([ReVanced#3026](https://github.com/n-34/revanced-patches/issues/3026)) ([17e4ac9](17e4ac9)) * **YouTube - Hide load more button:** Include patch with `Hide layout components`, and hide button only in search feed ([ReVanced#2959](https://github.com/n-34/revanced-patches/issues/2959)) ([b007e8e](b007e8e)) * **YouTube - Hide Shorts components:** Correctly hide Shorts if navigation tab is changed using device back button ([ReVanced#3007](https://github.com/n-34/revanced-patches/issues/3007)) ([e5848e9](e5848e9)) * **YouTube - Hide Shorts components:** Rename option title to make it consistent ([4d6e34b](4d6e34b)) * **YouTube - Hide video action buttons:** Remove obsolete `hide Shop button` ([ReVanced#3057](https://github.com/n-34/revanced-patches/issues/3057)) ([b5e34f3](b5e34f3)) * **YouTube - Navigation buttons:** Adjust summary text of switch notification button ([ReVanced#3130](https://github.com/n-34/revanced-patches/issues/3130)) ([cc8b4c9](cc8b4c9)) * **YouTube - Player flyout menu:** Add hide Lock screen menu ([ReVanced#2985](https://github.com/n-34/revanced-patches/issues/2985)) ([308de4a](308de4a)) * **YouTube - Player flyout menu:** Remove obsolete `Hide report menu` ([d627d44](d627d44)) * **YouTube - Restore old video quality menu:** Show advanced quality menu in Shorts quality flyout ([ReVanced#3155](https://github.com/n-34/revanced-patches/issues/3155)) ([c2b5bb7](c2b5bb7)) * **YouTube - SponsorBlock:** Export local statistics with saved settings ([f8365b4](f8365b4)) * **YouTube - SponsorBlock:** Show correct segment times if video is over 24 hours in length ([ReVanced#3138](https://github.com/n-34/revanced-patches/issues/3138)) ([6cdf697](6cdf697)) * **YouTube - Spoof app version:** Remove broken versions ([ReVanced#2776](https://github.com/n-34/revanced-patches/issues/2776)) ([9466d97](9466d97)) * **YouTube - Spoof device dimensions:** Warn about potential performance issues ([ReVanced#3039](https://github.com/n-34/revanced-patches/issues/3039)) ([9d6f305](9d6f305)) * **YouTube - Spoof signature:** Fix tracking such as history or watch time ([bcd8b48](bcd8b48)) * **YouTube Music - Remove upgrade button:** Fix compatibility with latest versions ([ReVanced#3045](https://github.com/n-34/revanced-patches/issues/3045)) ([80de996](80de996)) * **YouTube Music:** Fix compatibility with latest versions ([ReVanced#2924](https://github.com/n-34/revanced-patches/issues/2924)) ([8378c84](8378c84)) * **YouTube Music:** Make `Hide 'Get Music Premium' label` and `Remove upgrade button` compatible with latest version ([ReVanced#3164](https://github.com/n-34/revanced-patches/issues/3164)) ([3ff20de](3ff20de)) * **YouTube:** Correctly show channel page on tablet devices ([ReVanced#2656](https://github.com/n-34/revanced-patches/issues/2656)) ([c7c9700](c7c9700)) * **YouTube:** Do not crash on startup for root installs ([ReVanced#2655](https://github.com/n-34/revanced-patches/issues/2655)) ([02abace](02abace)) * **YouTube:** Fix grammer mistakes in patch descriptions ([ReVanced#2543](https://github.com/n-34/revanced-patches/issues/2543)) ([ebf5993](ebf5993)) * **YouTube:** Fix video playback by switching to ReVanced GmsCore vendor ([ReVanced#2907](https://github.com/n-34/revanced-patches/issues/2907)) ([33ea122](33ea122)) * **YouTube:** Move setting to correct screen ([a16eda8](a16eda8)) * **YouTube:** Shorten setting titles to fit on screen ([ReVanced#2579](https://github.com/n-34/revanced-patches/issues/2579)) ([b2a5dd3](b2a5dd3)) ### Code Refactoring * Fix package and code structure ([ReVanced#2541](https://github.com/n-34/revanced-patches/issues/2541)) ([a08457e](a08457e)) ### Features * Add `Hex` patch ([ReVanced#3034](https://github.com/n-34/revanced-patches/issues/3034)) ([3c95aac](3c95aac)) * **Amazon:** Add `Always allow deep-linking` patch ([ReVanced#3000](https://github.com/n-34/revanced-patches/issues/3000)) ([a92b7fb](a92b7fb)) * **Change package name:** Mention caveat of the patch in the description ([427b81a](427b81a)) * **ID Austria:** Remove constraint on any version ([ReVanced#2526](https://github.com/n-34/revanced-patches/issues/2526)) ([de2cb88](de2cb88)) * **Instagram - Hide timeline ads:** Make compatible with latest versions ([a212f29](a212f29)) * **Mi Fitness:** Add `Force English locale` and `Fix login` patch ([ReVanced#2734](https://github.com/n-34/revanced-patches/issues/2734)) ([7a25791](7a25791)) * Move strings to resources for localization ([ReVanced#2440](https://github.com/n-34/revanced-patches/issues/2440)) ([060ab8f](060ab8f)) * **MyFitnessPal:** Add `Hide ads` patch ([ReVanced#2594](https://github.com/n-34/revanced-patches/issues/2594)) ([fd4b3c7](fd4b3c7)) * **OpeningHours:** Add `Fix crash` patch ([ReVanced#2697](https://github.com/n-34/revanced-patches/issues/2697)) ([0d011b8](0d011b8)) * **Photomath:** Add `Hide update popup` patch ([ReVanced#2637](https://github.com/n-34/revanced-patches/issues/2637)) ([fbbecd3](fbbecd3)) * **Photomath:** Support version `8.37.0` ([ReVanced#3109](https://github.com/n-34/revanced-patches/issues/3109)) ([fb02b48](fb02b48)) * **Piccoma:** Add `Disable tracking` patch ([ReVanced#3143](https://github.com/n-34/revanced-patches/issues/3143)) ([8ab9e8f](8ab9e8f)) * **Piccoma:** Add `Spoof Android device ID` patch ([ReVanced#3145](https://github.com/n-34/revanced-patches/issues/3145)) ([d953c6b](d953c6b)) * **Public API:** Deprecate `HideEmailAddressPatch` ([866bceb](866bceb)) * **Public API:** Make `BottomControlsResource#addControls` public ([ReVanced#2514](https://github.com/n-34/revanced-patches/issues/2514)) ([f4e2257](f4e2257)) * Remove unnecessary description from patch ([1a89dd9](1a89dd9)) * **Strava - Unlock subscription:** Remove compatible version constraint ([80a5599](80a5599)) * **Sync for Lemmy:** Add `Disable ads` patch ([ReVanced#2872](https://github.com/n-34/revanced-patches/issues/2872)) ([0785819](0785819)) * **Sync for Reddit:** Add `Fix /s/ links` patch ([f15ef3f](f15ef3f)) * **Tiktok - Playback speed:** Remember playback speed ([ReVanced#2506](https://github.com/n-34/revanced-patches/issues/2506)) ([d2970e5](d2970e5)) * **Tiktok:** Add `Remember clear mode` patch ([ReVanced#2509](https://github.com/n-34/revanced-patches/issues/2509)) ([048bf59](048bf59)) * **Tumblr:** Add `Disable Ad-Free Banner` patch ([ReVanced#3091](https://github.com/n-34/revanced-patches/issues/3091)) ([54baf08](54baf08)) * **Tumblr:** Add `Fix old versions` patch ([ReVanced#2954](https://github.com/n-34/revanced-patches/issues/2954)) ([2fde60e](2fde60e)) * **Twitter - Unlock downloads:** Unlock GIF downloads ([d0f91c8](d0f91c8)) * **Twitter:** Add `Sanitize sharing links` patch ([ReVanced#3003](https://github.com/n-34/revanced-patches/issues/3003)) ([186b887](186b887)) * **VSCO - Unlock pro:** Constrain to last working version ([6dd4a7c](6dd4a7c)) * **WarnWetter - Promo code unlock:** Constrain to last working version ([ReVanced#3110](https://github.com/n-34/revanced-patches/issues/3110)) ([92fc8aa](92fc8aa)) * **X:** Add `Hide view count` patch ([bf064ec](bf064ec)) * **X:** Add `Open links as query` patch ([ReVanced#2730](https://github.com/n-34/revanced-patches/issues/2730)) ([ba75a51](ba75a51)) * **X:** Add `Unlock downloads` patch ([2c20844](2c20844)) * **YouTube - Alternative thumbnails:** Selectively enable for home / subscription / search ([ReVanced#2926](https://github.com/n-34/revanced-patches/issues/2926)) ([8549e1b](8549e1b)) * **YouTube - Change header:** Change to ReVanced borderless logo header by default ([ReVanced#2512](https://github.com/n-34/revanced-patches/issues/2512)) ([75f785d](75f785d)) * **YouTube - Change header:** Improve patch option description ([3b8bc08](3b8bc08)) * **YouTube - Change start page:** Add more start pages ([cc1d9b7](cc1d9b7)) * **YouTube - Comments:** Add option to hide timestamp and emoji buttons ([ReVanced#3076](https://github.com/n-34/revanced-patches/issues/3076)) ([7efe5ae](7efe5ae)) * **YouTube - Custom branding:** Improve patch option description ([e27f56c](e27f56c)) * **YouTube - Custom filter:** Custom filtering of the protocol buffer ([ReVanced#2682](https://github.com/n-34/revanced-patches/issues/2682)) ([872a5b6](872a5b6)) * **YouTube - Downloads:** Use external downloader when selecting 'Download' in home feed flyout menu ([ReVanced#2881](https://github.com/n-34/revanced-patches/issues/2881)) ([10afc8c](10afc8c)) * **YouTube - External downloader:** Add ability to use in-app download button ([d900011](d900011)) * **YouTube - GmsCore:** Require ignoring battery optimizations ([ReVanced#2952](https://github.com/n-34/revanced-patches/issues/2952)) ([c0bef25](c0bef25)) * **YouTube - Hide ads:** Add option to hide the 'Visit store' button on channel pages ([ReVanced#3077](https://github.com/n-34/revanced-patches/issues/3077)) ([03d2cfa](03d2cfa)) * **YouTube - Hide ads:** Hide fullscreen ads ([bdc9a12](bdc9a12)) * **YouTube - Hide layout components:** Add option to hide horizontal shelves ([ReVanced#2951](https://github.com/n-34/revanced-patches/issues/2951)) ([9ae0650](9ae0650)) * **YouTube - Hide layout components:** Filter home/search results by keywords ([ReVanced#2853](https://github.com/n-34/revanced-patches/issues/2853)) ([5916204](5916204)) * **YouTube - Hide layout components:** Hide playables ([8423515](8423515)) * **YouTube - Hide layout components:** Hide search result recommendations ([55cc7f1](55cc7f1)) * **YouTube - Hide Shorts components:** Hide 'Buy super thanks' button ([ReVanced#3176](https://github.com/n-34/revanced-patches/issues/3176)) ([89c1548](89c1548)) * **YouTube - Hide Shorts components:** Hide `Shop`, `Location` and `Save sound to playlist` buttons ([ReVanced#3018](https://github.com/n-34/revanced-patches/issues/3018)) ([5210ac4](5210ac4)) * **YouTube - Hide Shorts components:** Hide like / dislike button in video ads ([ReVanced#3062](https://github.com/n-34/revanced-patches/issues/3062)) ([1296985](1296985)) * **YouTube - Hide Shorts components:** Hide like and dislike buttons ([2df0892](2df0892)) * **YouTube - Hide Shorts components:** Hide sound metadata label ([ea7d1e0](ea7d1e0)) * **YouTube - Hide Shorts components:** Hide tagged products, hide search suggestions ([ReVanced#3019](https://github.com/n-34/revanced-patches/issues/3019)) ([e0d2fe5](e0d2fe5)) * **YouTube - Hide Shorts components:** Hide title and full video link label ([e7b64e1](e7b64e1)) * **YouTube - Hide Shorts components:** Selectively hide Shorts for home / subscription / search ([ReVanced#2925](https://github.com/n-34/revanced-patches/issues/2925)) ([497c067](497c067)) * **YouTube - Navigation buttons:** Add option to hide navigation button labels ([ReVanced#3189](https://github.com/n-34/revanced-patches/issues/3189)) ([f9dc705](f9dc705)) * **YouTube - Spoof app version:** Add `18.09.39` to restore library tab ([ReVanced#2643](https://github.com/n-34/revanced-patches/issues/2643)) ([dd108ff](dd108ff)) * **YouTube - Spoof app version:** Add target versions ([ReVanced#2787](https://github.com/n-34/revanced-patches/issues/2787)) ([83a7bd8](83a7bd8)) * **YouTube - Swipe controls:** Save and restore brightness and add auto-brightness toggle ([ReVanced#2996](https://github.com/n-34/revanced-patches/issues/2996)) ([f6c3bc4](f6c3bc4)) * **YouTube - Theme:** Add classic dark color to presets ([ReVanced#2542](https://github.com/n-34/revanced-patches/issues/2542)) ([4e1dc00](4e1dc00)) * **YouTube :** Remove `HDR auto brightness` patch ([ReVanced#2863](https://github.com/n-34/revanced-patches/issues/2863)) ([b4c7bf4](b4c7bf4)) * **YouTube Vanced:** Remove `Hide ads` patch ([87887e4](87887e4)) * **YouTube:** Add 'About' preference to settings menu ([ReVanced#2981](https://github.com/n-34/revanced-patches/issues/2981)) ([5abf894](5abf894)) * **YouTube:** Add `Remove viewer discretion dialog` patch ([a07f83f](a07f83f)) * **YouTube:** Improve patch descriptions ([ReVanced#2519](https://github.com/n-34/revanced-patches/issues/2519)) ([e8d1389](e8d1389)) * **YouTube:** Match overlay icons style to YouTube ([ReVanced#3023](https://github.com/n-34/revanced-patches/issues/3023)) ([6849393](6849393)) * **YouTube:** Remove `Hide email address` patch ([3b84305](3b84305)) * **YouTube:** Reorganize settings menu ([ReVanced#2737](https://github.com/n-34/revanced-patches/issues/2737)) ([36132df](36132df)) * **YouTube:** Support version `19.02.34` ([ReVanced#2627](https://github.com/n-34/revanced-patches/issues/2627)) ([94e08b7](94e08b7)) * **YouTube:** Support version `19.03.35` ([ReVanced#2640](https://github.com/n-34/revanced-patches/issues/2640)) ([ff08f58](ff08f58)) * **YouTube:** Support version `19.04.37` ([ReVanced#2687](https://github.com/n-34/revanced-patches/issues/2687)) ([c23e023](c23e023)) * **YouTube:** Support version `19.05`, `19.06`, `19.07`, `19.08` and `19.09` ([ReVanced#2862](https://github.com/n-34/revanced-patches/issues/2862)) ([f044dde](f044dde)) * **YouTube:** Support version `19.09.38`, `19.10.39` and `19.11.43` ([ReVanced#2971](https://github.com/n-34/revanced-patches/issues/2971)) ([730f3e3](730f3e3)) * **YouTube:** Support versions `18.48.39`, `18.49.37` and `19.01.34` ([ReVanced#2551](https://github.com/n-34/revanced-patches/issues/2551)) ([a938e73](a938e73)) * **YT Music - Hide 'Get Music Premium' label:** Remove occurences of label in settings ([ReVanced#3046](https://github.com/n-34/revanced-patches/issues/3046)) ([10e170a](10e170a)) * **YT Music:** Add support for `7.01.52` ([ReVanced#3177](https://github.com/n-34/revanced-patches/issues/3177)) ([e9bfb25](e9bfb25)) ### BREAKING CHANGES * **Photomath:** Some packages have changed locations. * Various APIs have been changed. * Various public APIs have changed names and packages or were removed entirely
Adds a simple 'About' preference to the settings menu that shows the patches version and social links.
Integration changes