From aeb5299ca50cdeef1c6db273d312b2afea82af7b Mon Sep 17 00:00:00 2001 From: oSumAtrIX Date: Wed, 20 Sep 2023 05:33:02 +0200 Subject: [PATCH] build(Needs bump): Bump dependencies (#2946) Co-authored-by: Ushie Co-authored-by: aAbed Co-authored-by: CnC-Robert --- build.gradle.kts | 20 ++- gradle/libs.versions.toml | 17 +++ .../app/revanced/extensions/Extensions.kt | 24 ++- .../kotlin/app/revanced/meta/JsonGenerator.kt | 78 ++++------ .../app/revanced/meta/PatchesFileGenerator.kt | 6 +- .../{patch => }/ExportAllActivitiesPatch.kt | 22 ++- .../wifi/spoof/{patch => }/SpoofWifiPatch.kt | 64 ++++---- .../{patch => }/PredictiveBackGesturePatch.kt | 24 ++- .../EnableAndroidDebuggingPatch.kt | 20 +-- .../OverrideCertificatePinningPatch.kt | 22 +-- .../{patch => }/ChangePackageNamePatch.kt | 39 +++-- .../RemoveCaptureRestrictionPatch.kt | 33 ++-- .../RemoveCaptureRestrictionResourcePatch.kt | 8 +- .../RemoveScreenshotRestrictionPatch.kt | 57 ++++--- .../misc/pro/{patch => }/ProUnlockPatch.kt | 21 ++- .../pro/annotations/ProUnlockCompatibility.kt | 7 - .../{patch => }/UnlockProPatch.kt | 21 ++- .../annotations/UnlockProCompatibility.kt | 8 - .../{patch => }/UnlockDuolingoSuperPatch.kt | 40 +++-- .../{patch => }/BootloaderDetectionPatch.kt | 22 +-- .../root/{patch => }/RootDetectionPatch.kt | 22 +-- .../annotations/DetectionCompatibility.kt | 8 - .../{patch => }/RemoveDeviceRestrictions.kt | 23 ++- .../patches/hexeditor/ad/DisableAdsPatch.kt | 26 ++++ .../annotations/HexEditorAdsCompatibility.kt | 12 -- .../hexeditor/ad/patch/HexEditorAdsPatch.kt | 32 ---- .../misc/pro/{patch => }/UnlockProPatch.kt | 23 ++- .../pro/annotations/UnlockProCompatibility.kt | 8 - .../detection/root/RootDetectionPatch.kt | 21 +++ .../root/patch/RootDetectionPatch.kt | 21 --- .../annotations/DetectionCompatibility.kt | 8 - .../{patch => }/SpoofSignaturePatch.kt | 27 ++-- .../ad/{patch => }/InshortsAdsPatch.kt | 21 ++- .../ad/annotations/HideAdsCompatibility.kt | 9 -- .../{patch => }/HideTimelineAdsPatch.kt | 20 +-- .../IrplusAdsPatch.kt => RemoveAdsPatch.kt} | 21 ++- .../ad/annotations/IrplusAdsCompatibility.kt | 8 - .../{patch => }/DisableMandatoryLoginPatch.kt | 21 +-- .../DisableMandatoryLoginCompatibility.kt | 8 - .../IsLoggedInFingerprint.kt | 2 +- .../misc/premium/UnlockPremiumPatch.kt | 24 +++ .../annotations/UnlockPremiumCompatibility.kt | 8 - .../HasPurchasedFingerprint.kt | 2 +- .../misc/premium/patch/UnlockPremiumPatch.kt | 23 --- .../{patch => }/LicenseValidationPatch.kt | 12 +- .../LicenseValidationFingerprint.kt | 2 +- .../{patch => }/SignatureVerificationPatch.kt | 12 +- .../VerifySignatureFingerprint.kt | 2 +- .../misc/pro/UnlockProVersionPatch.kt | 44 ++++++ .../pro/annotations/UnlockProCompatibility.kt | 17 --- .../IsFreeVersionFingerprint.kt | 2 +- .../misc/pro/patch/UnlockProVersionPatch.kt | 39 ----- .../ads/inbox/patch/HideInboxAdsPatch.kt | 18 ++- ...=> DisableSwitchingEmojiToStickerPatch.kt} | 18 ++- ...ator.kt => DisableTypingIndicatorPatch.kt} | 21 +-- .../{patch => }/UnlockProPatch.kt | 23 ++- .../annotations/UnlockProCompatibility.kt | 8 - .../video/{patch => }/MusicVideoAdsPatch.kt | 22 +-- .../music/annotations/MusicCompatibility.kt | 8 - .../codecs/{patch => }/CodecsUnlockPatch.kt | 24 ++- .../{patch => }/ExclusiveAudioPatch.kt | 22 +-- .../{patch => }/PermanentRepeatPatch.kt | 23 +-- .../permanentshuffle/PermanentShufflePatch.kt | 25 +++ .../patch/PermanentShufflePatch.kt | 25 --- .../{patch => }/CompactHeaderPatch.kt | 23 +-- .../MinimizedPlaybackPatch.kt | 26 ++++ .../patch/MinimizedPlaybackPatch.kt | 27 ---- .../{patch => }/HideGetPremiumPatch.kt | 22 ++- .../{patch => }/RemoveUpgradeButtonPatch.kt | 22 +-- .../BypassCertificateChecksPatch.kt | 23 ++- .../bytecode => }/MicroGBytecodePatch.kt | 27 ++-- .../resource => }/MicroGResourcePatch.kt | 12 +- .../backgroundplay/BackgroundPlayPatch.kt | 26 ++++ .../patch/BackgroundPlayPatch.kt | 28 ---- .../myexpenses/misc/pro/UnlockProPatch.kt | 25 +++ .../pro/annotations/UnlockProCompatibility.kt | 8 - .../misc/pro/patch/UnlockProPatch.kt | 31 ---- .../RemoveBroadcastsRestrictionPatch.kt | 22 +-- ...emoveBroadcastsRestrictionCompatibility.kt | 8 - .../nfctoolsse/misc/pro/UnlockProPatch.kt | 25 +++ .../pro/annotations/UnlockProCompatibility.kt | 8 - .../misc/pro/patch/UnlockProPatch.kt | 35 ----- .../patches/nyx/misc/pro/UnlockProPatch.kt | 24 +++ .../pro/annotations/UnlockProCompatibility.kt | 8 - .../nyx/misc/pro/patch/UnlockProPatch.kt | 31 ---- .../detection/deviceid/SpoofDeviceIdPatch.kt | 30 ++++ .../deviceid/patch/SpoofDeviceIdPatch.kt | 32 ---- .../{patch => }/SignatureDetectionPatch.kt | 12 +- .../{patch => }/EnableBookpointPatch.kt | 10 +- .../misc/unlockplus/UnlockPlusPatch.kt | 29 ++++ .../misc/unlockplus/patch/UnlockPlusPatch.kt | 30 ---- .../patches/pixiv/ads/HideAdsPatch.kt | 28 ++++ .../patches/pixiv/ads/patch/HideAdsPatch.kt | 28 ---- .../ad/banner/{patch => }/HideBannerPatch.kt | 16 +- .../reddit/ad/comments/HideCommentAdsPatch.kt | 22 +++ .../ad/comments/patch/HideCommentAdsPatch.kt | 27 ---- .../ad/general/{patch => }/HideAdsPatch.kt | 42 +++-- .../annotations/HideAdsCompatibility.kt | 8 - .../customclients/AbstractSpoofClientPatch.kt | 30 ++-- .../customclients/SpoofClientAnnotation.kt | 9 -- .../api/{patch => }/SpoofClientPatch.kt | 32 ++-- .../boostforreddit/api/SpoofClientPatch.kt | 31 ++++ .../api/patch/SpoofClientPatch.kt | 32 ---- .../api/{patch => }/SpoofClientPatch.kt | 39 +++-- .../ads/{patch => }/DisableAdsPatch.kt | 23 ++- .../api/{patch => }/SpoofClientPatch.kt | 39 +++-- .../DisablePiracyDetectionPatch.kt | 4 +- .../api/{patch => }/SpoofClientPatch.kt | 29 ++-- .../api/{patch => }/SpoofClientPatch.kt | 29 ++-- .../slide/api/SpoofClientPatch.kt | 31 ++++ .../slide/api/patch/SpoofClientPatch.kt | 32 ---- .../ads/{patch => }/DisableAdsPatch.kt | 22 +-- .../DisableSyncForLemmyBottomSheetPatch.kt | 30 ++++ .../DisableSyncForLemmyBottomSheetPatch.kt | 31 ---- .../api/{patch => }/SpoofClientPatch.kt | 38 +++-- .../DisablePiracyDetectionPatch.kt | 11 +- .../DisableScreenshotPopupPatch.kt | 22 ++- .../DisableScreenshotPopupCompatibility.kt | 8 - .../premiumicon/UnlockPremiumIconPatch.kt | 27 ++++ .../annotations/PremiumIconCompatibility.kt | 8 - ....kt => HasPremiumIconAccessFingerprint.kt} | 2 +- .../premiumicon/patch/PremiumIconPatch.kt | 31 ---- .../url/{patch => }/SanitizeUrlQueryPatch.kt | 26 ++-- .../SanitizeUrlQueryCompatibility.kt | 12 -- .../RemoveDebuggingDetectionPatch.kt | 30 ++++ .../RemoveDebuggingDetectionCompatibility.kt | 8 - .../patch/RemoveDebuggingDetectionPatch.kt | 28 ---- .../{patch => }/AbstractIntegrationsPatch.kt | 8 +- .../misc/{patch => }/ResourceMappingPatch.kt | 21 ++- .../{patch => }/VerticalScrollPatch.kt | 12 +- .../VerticalScrollCompatibility.kt | 13 -- .../AbstractSettingsResourcePatch.kt | 4 +- .../preference/impl/SwitchPreference.kt | 2 +- .../{patch => }/RemoveFileSizeLimitPatch.kt | 22 +-- .../badge/{patch => }/BadgeTabPatch.kt | 29 ++-- .../badge/RemoveNotificationBadgePatch.kt | 22 +++ .../badge/annotations/BadgeCompatibility.kt | 8 - .../fingerprints/CreateTabsFingerprint.kt | 2 +- .../patch/RemoveNotificationBadgePatch.kt | 25 --- .../spotify/layout/theme/CustomThemePatch.kt | 54 +++++++ .../theme/annotations/ThemeCompatibility.kt | 8 - .../spotify/layout/theme/patch/ThemePatch.kt | 61 -------- .../ondemand/{patch => }/OnDemandPatch.kt | 24 ++- .../annotations/OnDemandCompatibility.kt | 10 -- .../patch => navbar}/PremiumNavbarTabPatch.kt | 33 ++-- .../AddPremiumNavbarTabFingerprint.kt | 2 +- .../AddPremiumNavbarTabParentFingerprint.kt | 2 +- .../PremiumNavbarTabCompatibility.kt | 8 - .../{patch => }/UnlockSubscriptionPatch.kt | 21 ++- .../{patch => }/UnlockThemePatch.kt | 25 ++- .../annotations/UnlockThemesCompatibility.kt | 8 - .../tiktok/ad/{patch => }/HideAdsPatch.kt | 27 ++-- .../ad/annotations/HideAdsCompatibility.kt | 13 -- .../feedfilter/{patch => }/FeedFilterPatch.kt | 42 +++-- .../annotations/FeedFilterCompatibility.kt | 13 -- .../downloads/{patch => }/DownloadsPatch.kt | 32 ++-- .../annotations/DownloadsCompatibility.kt | 13 -- .../ACLCommonShareFingerprint2.kt | 4 - .../ACLCommonShareFingerprint3.kt | 4 - .../seekbar/{patch => }/ShowSeekbarPatch.kt | 29 ++-- .../annotations/ShowSeekbarCompatibility.kt | 13 -- .../speed/{patch => }/PlaybackSpeedPatch.kt | 27 ++-- .../annotations/PlaybackSpeedCompatibility.kt | 13 -- .../misc/integrations/IntegrationsPatch.kt | 11 ++ .../fingerprints/InitFingerprint.kt | 2 +- .../integrations/patch/IntegrationsPatch.kt | 13 -- .../DisableLoginRequirementPatch.kt | 27 ++-- .../DisableLoginRequirementCompatibility.kt | 13 -- .../MandatoryLoginServiceFingerprint2.kt | 4 - .../{patch => }/FixGoogleLoginPatch.kt | 28 ++-- .../FixGoogleLoginCompatibility.kt | 13 -- .../settings/{patch => }/SettingsPatch.kt | 63 ++++---- .../annotations/SettingsCompatibility.kt | 13 -- .../spoof/sim/{patch => }/SpoofSimPatch.kt | 49 +++--- .../sim/annotations/SpoofSimCompatibility.kt | 13 -- .../trakt/{patch => }/UnlockProPatch.kt | 39 +++-- .../annotations/UnlockProCompatibility.kt | 8 - .../lockscreen/patch/ShowOnLockscreenPatch.kt | 30 ++-- .../ads/{patch => }/DisableDashboardAds.kt | 23 ++- .../DisableBlogNotificationReminderPatch.kt | 21 ++- .../patch/DisableGiftMessagePopupPatch.kt | 21 ++- .../{patch => }/UnlockPaidWidgetsPatch.kt | 20 +-- .../ad/audio/{patch => }/AudioAdsPatch.kt | 29 ++-- .../annotations/AudioAdsCompatibility.kt | 9 -- .../embedded/{patch => }/EmbeddedAdsPatch.kt | 36 +++-- .../annotations/EmbeddedAdsCompatibility.kt | 9 -- .../twitch/ad/shared/util/AbstractAdPatch.kt | 2 +- .../ad/video/{patch => }/VideoAdsPatch.kt | 28 ++-- .../annotations/VideoAdsCompatibility.kt | 9 -- .../{patch => }/ShowDeletedMessagesPatch.kt | 29 ++-- .../ShowDeletedMessagesCompatibility.kt | 9 -- .../AutoClaimChannelPointsPatch.kt | 27 ++-- .../AutoClaimChannelPointsCompatibility.kt | 8 - .../debug/{patch => }/DebugModePatch.kt | 30 ++-- .../annotations/DebugModeCompatibility.kt | 9 -- .../misc/integrations/IntegrationsPatch.kt | 11 ++ .../fingerprints/InitFingerprint.kt | 4 +- .../integrations/patch/IntegrationsPatch.kt | 13 -- .../{bytecode/patch => }/SettingsPatch.kt | 111 +++++++------- .../misc/settings/SettingsResourcePatch.kt | 36 +++++ .../annotations/SettingsCompatibility.kt | 8 - .../resource/patch/SettingsResourcePatch.kt | 38 ----- .../{patch => }/DynamicColorPatch.kt | 20 +-- .../annotations/DynamicColorCompatibility.kt | 8 - .../hook/json/{patch => }/JsonHookPatch.kt | 49 +++--- .../misc/hook/patch/BaseHookPatchPatch.kt | 2 +- .../misc/hook/patch/ads/HideAdsPatch.kt | 15 ++ .../ads/annotations/HideAdsCompatibility.kt | 8 - .../misc/hook/patch/ads/patch/HideAdsPatch.kt | 16 -- .../HideRecommendedUsersPatch.kt | 16 ++ .../HideRecommendedUsersCompatibility.kt | 8 - .../patch/HideRecommendedUsersPatch.kt | 18 --- .../misc/pro/{patch => }/UnlockProPatch.kt | 20 +-- .../{patch => }/FirebaseGetCertPatch.kt | 18 +-- .../FirebaseGetCertPatchCompatibility.kt | 8 - .../misc/promocode/PromoCodeUnlockPatch.kt | 31 ++++ .../PromoCodeUnlockCompatibility.kt | 8 - .../promocode/patch/PromoCodeUnlockPatch.kt | 41 ----- .../unlockpro/{patch => }/UnlockProPatch.kt | 24 ++- .../annotations/UnlockProCompatibility.kt | 8 - .../{bytecode/patch => }/HideAdsPatch.kt | 43 +++--- .../patch => }/HideAdsResourcePatch.kt | 32 ++-- .../annotation/HideAdsCompatibility.kt | 9 -- .../HideGetPremiumVideoAdvertisementPatch.kt | 33 ++-- .../HideGetPremiumCompatibility.kt | 8 - .../fingerprints/GetPremiumViewFingerprint.kt | 2 +- .../ad/video/{patch => }/VideoAdsPatch.kt | 46 +++--- .../annotations/VideoAdsCompatibility.kt | 9 -- .../copyvideourl/CopyVideoUrlBytecodePatch.kt | 47 ++++++ .../patch => }/CopyVideoUrlResourcePatch.kt | 17 ++- .../annotation/CopyVideoUrlCompatibility.kt | 8 - .../patch/CopyVideoUrlBytecodePatch.kt | 40 ----- .../ExternalDownloadsBytecodePatch.kt | 51 +++++++ .../ExternalDownloadsResourcePatch.kt | 17 ++- .../ExternalDownloadsCompatibility.kt | 9 -- .../patch/ExternalDownloadsBytecodePatch.kt | 39 ----- .../{patch => }/EnableSeekbarTappingPatch.kt | 50 +++--- .../EnableSeekbarTappingResourcePatch.kt | 12 +- .../annotation/SeekbarTappingCompatibility.kt | 9 -- .../SwipeControlsBytecodePatch.kt | 42 ++--- .../SwipeControlsResourcePatch.kt | 12 +- .../annotation/SwipeControlsCompatibility.kt | 8 - .../{patch => }/AutoCaptionsPatch.kt | 44 +++--- .../annotations/AutoCaptionsCompatibility.kt | 8 - .../{icon/patch => }/CustomBrandingPatch.kt | 62 ++++---- .../header/{patch => }/PremiumHeadingPatch.kt | 22 +-- .../PremiumHeadingCompatibility.kt | 8 - .../CustomBrandingCompatibility.kt | 8 - .../action/{patch => }/HideButtonsPatch.kt | 52 ++++--- .../annotations/HideButtonsCompatibility.kt | 8 - .../{patch => }/HideAutoplayButtonPatch.kt | 51 ++++--- .../AutoplayButtonCompatibility.kt | 8 - .../{patch => }/HideCaptionsButtonPatch.kt | 46 ++++-- .../HideCaptionsButtonCompatibility.kt | 8 - .../cast/{patch => }/HideCastButtonPatch.kt | 31 ++-- .../annotations/CastPatchCompatibility.kt | 8 - .../{patch => }/NavigationButtonsPatch.kt | 50 +++--- .../ResolvePivotBarFingerprintsPatch.kt | 22 +-- .../NavigationButtonsCompatibility.kt | 8 - .../InitializeButtonsFingerprint.kt | 4 +- .../{patch => }/HidePlayerButtonsPatch.kt | 60 +++++--- .../HidePlayerButtonsCompatibility.kt | 8 - .../{bytecode/patch => }/AlbumCardsPatch.kt | 47 +++--- .../patch => }/AlbumCardsResourcePatch.kt | 21 +-- .../annotations/AlbumCardsCompatibility.kt | 8 - .../fingerprints/AlbumCardsFingerprint.kt | 6 +- .../hide/breakingnews/BreakingNewsPatch.kt | 62 ++++++++ .../patch => }/BreakingNewsResourcePatch.kt | 21 +-- .../annotations/BreakingNewsCompatibility.kt | 8 - .../bytecode/patch/BreakingNewsPatch.kt | 48 ------ .../fingerprints/BreakingNewsFingerprint.kt | 6 +- .../comments/{patch => }/CommentsPatch.kt | 49 +++--- .../annotations/HideCommentsCompatibility.kt | 8 - .../crowdfundingbox/CrowdfundingBoxPatch.kt | 52 +++++++ .../CrowdfundingBoxResourcePatch.kt | 21 +-- .../CrowdfundingBoxCompatibility.kt | 8 - .../bytecode/patch/CrowdfundingBoxPatch.kt | 43 ------ .../CrowdfundingBoxFingerprint.kt | 6 +- .../patch => }/HideEndscreenCardsPatch.kt | 49 +++--- .../HideEndscreenCardsResourcePatch.kt | 25 +-- .../HideEndscreenCardsCompatibility.kt | 8 - .../fingerprints/LayoutCircleFingerprint.kt | 6 +- .../fingerprints/LayoutIconFingerprint.kt | 6 +- .../fingerprints/LayoutVideoFingerprint.kt | 6 +- .../hide/filterbar/HideFilterBarPatch.kt | 91 +++++++++++ .../{patch => }/HideFilterBarResourcePatch.kt | 22 ++- .../filterbar/annotations/HideFilterBar.kt | 8 - .../FilterBarHeightFingerprint.kt | 4 +- .../RelatedChipCloudFingerprint.kt | 4 +- .../SearchResultsChipBarFingerprint.kt | 4 +- .../filterbar/patch/HideFilterBarPatch.kt | 81 ---------- .../HideFloatingMicrophoneButtonPatch.kt | 48 +++--- ...deFloatingMicrophoneButtonResourcePatch.kt | 25 +-- ...deFloatingMicrophoneButtonCompatibility.kt | 8 - ...ShowFloatingMicrophoneButtonFingerprint.kt | 4 +- .../{patch => }/HideLayoutComponentsPatch.kt | 42 ++--- .../HideLayoutComponentsCompatibility.kt | 9 -- .../{patch => }/HideInfoCardsPatch.kt | 45 ++++-- .../patch => }/HideInfocardsResourcePatch.kt | 23 +-- .../annotations/HideInfocardsCompatibility.kt | 8 - .../InfocardsMethodCallFingerprint.kt | 4 +- .../loadmorebutton/HideLoadMoreButtonPatch.kt | 54 +++++++ .../HideLoadMoreButtonResourcePatch.kt | 23 +-- .../HideLoadMoreButtonCompatibility.kt | 9 -- .../bytecode/patch/HideLoadMoreButtonPatch.kt | 43 ------ .../HideLoadMoreButtonFingerprint.kt | 6 +- .../patch => }/HideEmailAddressPatch.kt | 43 +++--- .../HideEmailAddressResourcePatch.kt | 17 +-- .../HideEmailAddressCompatibility.kt | 8 - ...ntSwitcherAccessibilityLabelFingerprint.kt | 6 +- .../{patch => }/HidePlayerFlyoutMenuPatch.kt | 51 ++++--- .../HidePlayerFlyoutMenuItemsCompatibility.kt | 8 - .../seekbar/{patch => }/HideSeekbarPatch.kt | 58 ++++--- .../annotations/HideSeekbarCompatibility.kt | 8 - .../patch => }/HideShortsComponentsPatch.kt | 70 +++++---- .../HideShortsComponentsResourcePatch.kt | 20 ++- .../HideShortsComponentsCompatibility.kt | 8 - .../BottomNavigationBarFingerprint.kt | 2 +- .../CreateShortsButtonsFingerprint.kt | 6 +- .../ReelConstructorFingerprint.kt | 6 +- .../RenderBottomNavigationBarFingerprint.kt | 2 +- ...derBottomNavigationBarParentFingerprint.kt | 2 +- .../SetPivotBarVisibilityFingerprint.kt | 2 +- .../SetPivotBarVisibilityParentFingerprint.kt | 2 +- .../time/{patch => }/HideTimestampPatch.kt | 42 ++--- .../time/annotations/HideTimeCompatibility.kt | 8 - .../{patch => }/HideWatermarkPatch.kt | 43 +++--- .../annotations/HideWatermarkCompatibility.kt | 8 - .../{patch => }/PlayerPopupPanelsPatch.kt | 42 ++--- .../PlayerPopupPanelsCompatibility.kt | 8 - .../PlayerControlsBackgroundPatch.kt | 42 +++++ .../PlayerControlsBackgroundCompatibility.kt | 7 - .../patch/PlayerControlsBackgroundPatch.kt | 32 ---- .../CustomPlayerOverlayOpacityPatch.kt | 36 +++-- ...CustomPlayerOverlayOpacityResourcePatch.kt | 20 +-- .../PlayerOverlayPatchCompatibility.kt | 8 - .../CreatePlayerOverviewFingerprint.kt | 4 +- .../{patch => }/ReturnYouTubeDislikePatch.kt | 58 ++++--- .../ReturnYouTubeDislikeResourcePatch.kt | 18 +-- .../ReturnYouTubeDislikeCompatibility.kt | 8 - .../DislikesOldLayoutTextViewFingerprint.kt | 4 +- .../{patch => }/WideSearchbarPatch.kt | 83 +++++----- .../annotations/WideSearchbarCompatibility.kt | 8 - .../patch => }/SeekbarColorBytecodePatch.kt | 44 +++--- .../SeekbarColorResourcePatch.kt | 21 ++- .../{resource => }/SeekbarPreferencesPatch.kt | 26 ++-- .../annotations/SeekbarColorCompatibility.kt | 8 - .../PlayerSeekbarColorFingerprint.kt | 4 +- .../SetSeekbarClickedColorFingerprint.kt | 2 +- .../ShortsSeekbarColorFingerprint.kt | 6 +- .../patch => }/SponsorBlockBytecodePatch.kt | 81 +++++----- .../patch => }/SponsorBlockResourcePatch.kt | 12 +- .../annotations/SponsorBlockCompatibility.kt | 8 - .../fingerprints/AppendTimeFingerprint.kt | 2 +- .../ControlsOverlayFingerprint.kt | 2 +- .../RectangleFieldInvalidatorFingerprint.kt | 2 +- .../patch => }/SpoofAppVersionPatch.kt | 51 ++++--- .../SpoofAppVersionCompatibility.kt | 9 -- .../SpoofAppVersionFingerprint.kt | 2 +- .../DisableShortsOnStartupPatch.kt | 42 ++--- .../StartupShortsResetCompatibility.kt | 8 - .../{patch => }/EnableTabletLayoutPatch.kt | 29 ++-- .../EnableTabletLayoutCompatibility.kt | 8 - .../{patch => }/TabletMiniPlayerPatch.kt | 81 +++++----- .../TabletMiniPlayerCompatibility.kt | 8 - .../layout/theme/LithoColorHookPatch.kt | 41 +++++ .../layout/theme/ThemeBytecodePatch.kt | 40 +++++ .../{resource => }/ThemeResourcePatch.kt | 26 ++-- .../theme/annotations/ThemeCompatibility.kt | 8 - .../bytecode/patch/LithoColorHookPatch.kt | 41 ----- .../bytecode/patch/ThemeBytecodePatch.kt | 45 ------ .../fingerprints/LithoThemeFingerprint.kt | 2 +- .../{patch => }/AlternativeThumbnailsPatch.kt | 144 ++++++++++-------- .../AlternativeThumbnailsCompatibility.kt | 8 - .../autorepeat/{patch => }/AutoRepeatPatch.kt | 44 +++--- .../annotations/AutoRepeatCompatibility.kt | 8 - .../bottomsheet/hook/BottomSheetHookPatch.kt} | 0 .../hook/BottomSheetHookResourcePatch.kt} | 0 .../CreateBottomSheetFingerprint.kt | 0 .../debugging/{patch => }/DebuggingPatch.kt | 27 ++-- .../annotations/DebuggingCompatibility.kt | 8 - .../{patch => }/FixBackToExitGesturePatch.kt | 61 ++++---- .../FixBackToExitGestureCompatibility.kt | 8 - .../playback/{patch => }/ClientSpoofPatch.kt | 43 +++--- .../SpoofSignatureVerificationPatch.kt | 38 +++-- ...SpoofSignatureVerificationResourcePatch.kt | 17 +-- .../annotations/ClientSpoofCompatibility.kt | 8 - .../ScrubbedPreviewLayoutFingerprint.kt | 4 +- .../{patch => }/IntegrationsPatch.kt | 14 +- .../APIPlayerServiceFingerprint.kt | 2 +- .../ApplicationInitFingerprint.kt | 2 +- ...mbeddedPlayerControlsOverlayFingerprint.kt | 2 +- .../fingerprints/EmbeddedPlayerFingerprint.kt | 2 +- .../RemoteEmbedFragmentFingerprint.kt | 2 +- .../RemoteEmbeddedPlayerFingerprint.kt | 2 +- .../StandalonePlayerActivityFingerprint.kt | 2 +- .../{patch => }/OpenLinksExternallyPatch.kt | 22 +-- .../OpenLinksExternallyCompatibility.kt | 8 - .../filter/{patch => }/LithoFilterPatch.kt | 52 +++---- .../bytecode => }/MicroGBytecodePatch.kt | 41 ++--- .../resource => }/MicroGResourcePatch.kt | 11 +- .../annotations/MicroGPatchCompatibility.kt | 8 - .../{patch => }/MinimizedPlaybackPatch.kt | 59 ++++--- .../MinimizedPlaybackCompatibility.kt | 8 - .../BottomControlsResourcePatch.kt | 75 +++++++++ .../PlayerControlsBytecodePatch.kt | 69 +++++++++ .../annotation/PlayerControlsCompatibility.kt | 8 - .../patch/PlayerControlsBytecodePatch.kt | 79 ---------- .../BottomControlsInflateFingerprint.kt | 4 +- .../patch/BottomControlsResourcePatch.kt | 77 ---------- .../{patch => }/PlayerOverlaysHookPatch.kt | 35 +++-- .../PlayerOverlaysHookCompatibility.kt | 8 - .../{patch => }/PlayerTypeHookPatch.kt | 28 ++-- .../annotation/PlayerTypeHookCompatibility.kt | 8 - .../{patch => }/RecyclerViewTreeHookPatch.kt | 23 ++- .../{bytecode/patch => }/SettingsPatch.kt | 84 +++++----- .../patch => }/SettingsResourcePatch.kt | 112 +++++++------- .../LicenseActivityFingerprint.kt | 2 +- .../fingerprints/SetThemeFingerprint.kt | 6 +- .../{patch => }/ZoomHapticsPatch.kt | 27 ++-- .../annotations/ZoomHapticsCompatibility.kt | 8 - .../shared/fingerprints/SeekbarFingerprint.kt | 2 +- .../{patch => }/HDRBrightnessPatch.kt | 40 +++-- .../annotations/HDRBrightnessCompatibility.kt | 8 - .../{patch => }/VideoInformationPatch.kt | 142 ++++++++--------- .../VideoInformationCompatibility.kt | 8 - .../{patch => }/RememberVideoQualityPatch.kt | 50 +++--- .../RememberVideoQualityCompatibility.kt | 8 - .../youtube/video/speed/PlaybackSpeed.kt | 20 --- .../video/speed/PlaybackSpeedCompatibility.kt | 8 - .../youtube/video/speed/PlaybackSpeedPatch.kt | 31 ++++ .../{patch => }/CustomPlaybackSpeedPatch.kt | 39 +++-- .../{patch => }/RememberPlaybackSpeedPatch.kt | 37 ++--- .../video/videoid/{patch => }/VideoIdPatch.kt | 42 +++-- .../annotation/VideoIdCompatibility.kt | 8 - .../{patch => }/OldVideoQualityMenuPatch.kt | 65 ++++---- .../OldVideoQualityMenuResourcePatch.kt | 20 +-- .../OldVideoQualityMenuCompatibility.kt | 8 - .../VideoQualityMenuViewInflateFingerprint.kt | 4 +- .../ad/general/{patch => }/HideAdsPatch.kt | 29 ++-- .../annotations/HideAdsCompatibility.kt | 8 - ...kPremiunPatch.kt => UnlockPremiumPatch.kt} | 25 ++- .../annotations/UnlockPremiumCompatibility.kt | 8 - .../util/patch/LiteralValueFingerprint.kt | 5 +- .../revanced/util/resources/ResourceUtils.kt | 2 +- 445 files changed, 4668 insertions(+), 5477 deletions(-) create mode 100644 gradle/libs.versions.toml rename src/main/kotlin/app/revanced/patches/all/activity/exportall/{patch => }/ExportAllActivitiesPatch.kt (71%) rename src/main/kotlin/app/revanced/patches/all/connectivity/wifi/spoof/{patch => }/SpoofWifiPatch.kt (89%) rename src/main/kotlin/app/revanced/patches/all/interaction/gestures/{patch => }/PredictiveBackGesturePatch.kt (54%) rename src/main/kotlin/app/revanced/patches/all/misc/debugging/{patch => }/EnableAndroidDebuggingPatch.kt (53%) rename src/main/kotlin/app/revanced/patches/all/misc/network/{patch => }/OverrideCertificatePinningPatch.kt (82%) rename src/main/kotlin/app/revanced/patches/all/misc/packagename/{patch => }/ChangePackageNamePatch.kt (58%) rename src/main/kotlin/app/revanced/patches/all/screencapture/removerestriction/{bytecode/patch => }/RemoveCaptureRestrictionPatch.kt (63%) rename src/main/kotlin/app/revanced/patches/all/screencapture/removerestriction/{resource/patch => }/RemoveCaptureRestrictionResourcePatch.kt (77%) rename src/main/kotlin/app/revanced/patches/all/screenshot/removerestriction/{patch => }/RemoveScreenshotRestrictionPatch.kt (67%) rename src/main/kotlin/app/revanced/patches/backdrops/misc/pro/{patch => }/ProUnlockPatch.kt (70%) delete mode 100644 src/main/kotlin/app/revanced/patches/backdrops/misc/pro/annotations/ProUnlockCompatibility.kt rename src/main/kotlin/app/revanced/patches/candylinkvpn/{patch => }/UnlockProPatch.kt (57%) delete mode 100644 src/main/kotlin/app/revanced/patches/candylinkvpn/annotations/UnlockProCompatibility.kt rename src/main/kotlin/app/revanced/patches/duolingo/unlocksuper/{patch => }/UnlockDuolingoSuperPatch.kt (65%) rename src/main/kotlin/app/revanced/patches/finanzonline/detection/bootloader/{patch => }/BootloaderDetectionPatch.kt (59%) rename src/main/kotlin/app/revanced/patches/finanzonline/detection/root/{patch => }/RootDetectionPatch.kt (56%) delete mode 100644 src/main/kotlin/app/revanced/patches/finanzonline/detection/shared/annotations/DetectionCompatibility.kt rename src/main/kotlin/app/revanced/patches/googlerecorder/restrictions/{patch => }/RemoveDeviceRestrictions.kt (68%) create mode 100644 src/main/kotlin/app/revanced/patches/hexeditor/ad/DisableAdsPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/hexeditor/ad/annotations/HexEditorAdsCompatibility.kt delete mode 100644 src/main/kotlin/app/revanced/patches/hexeditor/ad/patch/HexEditorAdsPatch.kt rename src/main/kotlin/app/revanced/patches/iconpackstudio/misc/pro/{patch => }/UnlockProPatch.kt (53%) delete mode 100644 src/main/kotlin/app/revanced/patches/iconpackstudio/misc/pro/annotations/UnlockProCompatibility.kt create mode 100644 src/main/kotlin/app/revanced/patches/idaustria/detection/root/RootDetectionPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/idaustria/detection/root/patch/RootDetectionPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/idaustria/detection/shared/annotations/DetectionCompatibility.kt rename src/main/kotlin/app/revanced/patches/idaustria/detection/signature/{patch => }/SpoofSignaturePatch.kt (73%) rename src/main/kotlin/app/revanced/patches/inshorts/ad/{patch => }/InshortsAdsPatch.kt (61%) delete mode 100644 src/main/kotlin/app/revanced/patches/inshorts/ad/annotations/HideAdsCompatibility.kt rename src/main/kotlin/app/revanced/patches/instagram/patches/ads/timeline/{patch => }/HideTimelineAdsPatch.kt (90%) rename src/main/kotlin/app/revanced/patches/irplus/ad/{patch/IrplusAdsPatch.kt => RemoveAdsPatch.kt} (56%) delete mode 100644 src/main/kotlin/app/revanced/patches/irplus/ad/annotations/IrplusAdsCompatibility.kt rename src/main/kotlin/app/revanced/patches/lightroom/misc/login/{patch => }/DisableMandatoryLoginPatch.kt (53%) delete mode 100644 src/main/kotlin/app/revanced/patches/lightroom/misc/login/annotations/DisableMandatoryLoginCompatibility.kt rename src/main/kotlin/app/revanced/patches/lightroom/misc/login/{fingerprint => fingerprints}/IsLoggedInFingerprint.kt (89%) create mode 100644 src/main/kotlin/app/revanced/patches/lightroom/misc/premium/UnlockPremiumPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/lightroom/misc/premium/annotations/UnlockPremiumCompatibility.kt rename src/main/kotlin/app/revanced/patches/lightroom/misc/premium/{fingerprint => fingerprints}/HasPurchasedFingerprint.kt (89%) delete mode 100644 src/main/kotlin/app/revanced/patches/lightroom/misc/premium/patch/UnlockPremiumPatch.kt rename src/main/kotlin/app/revanced/patches/memegenerator/detection/license/{patch => }/LicenseValidationPatch.kt (68%) rename src/main/kotlin/app/revanced/patches/memegenerator/detection/license/{fingerprint => fingerprints}/LicenseValidationFingerprint.kt (98%) rename src/main/kotlin/app/revanced/patches/memegenerator/detection/signature/{patch => }/SignatureVerificationPatch.kt (67%) rename src/main/kotlin/app/revanced/patches/memegenerator/detection/signature/{fingerprint => fingerprints}/VerifySignatureFingerprint.kt (98%) create mode 100644 src/main/kotlin/app/revanced/patches/memegenerator/misc/pro/UnlockProVersionPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/memegenerator/misc/pro/annotations/UnlockProCompatibility.kt rename src/main/kotlin/app/revanced/patches/memegenerator/misc/pro/{fingerprint => fingerprints}/IsFreeVersionFingerprint.kt (91%) delete mode 100644 src/main/kotlin/app/revanced/patches/memegenerator/misc/pro/patch/UnlockProVersionPatch.kt rename src/main/kotlin/app/revanced/patches/messenger/inputfield/patch/{DisableSwitchingEmojiToStickerInMessageInputField.kt => DisableSwitchingEmojiToStickerPatch.kt} (70%) rename src/main/kotlin/app/revanced/patches/messenger/inputfield/patch/{DisableTypingIndicator.kt => DisableTypingIndicatorPatch.kt} (54%) rename src/main/kotlin/app/revanced/patches/moneymanager/{patch => }/UnlockProPatch.kt (53%) delete mode 100644 src/main/kotlin/app/revanced/patches/moneymanager/annotations/UnlockProCompatibility.kt rename src/main/kotlin/app/revanced/patches/music/ad/video/{patch => }/MusicVideoAdsPatch.kt (65%) delete mode 100644 src/main/kotlin/app/revanced/patches/music/annotations/MusicCompatibility.kt rename src/main/kotlin/app/revanced/patches/music/audio/codecs/{patch => }/CodecsUnlockPatch.kt (73%) rename src/main/kotlin/app/revanced/patches/music/audio/exclusiveaudio/{patch => }/ExclusiveAudioPatch.kt (58%) rename src/main/kotlin/app/revanced/patches/music/interaction/permanentrepeat/{patch => }/PermanentRepeatPatch.kt (64%) create mode 100644 src/main/kotlin/app/revanced/patches/music/interaction/permanentshuffle/PermanentShufflePatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/music/interaction/permanentshuffle/patch/PermanentShufflePatch.kt rename src/main/kotlin/app/revanced/patches/music/layout/compactheader/{patch => }/CompactHeaderPatch.kt (65%) create mode 100644 src/main/kotlin/app/revanced/patches/music/layout/minimizedplayback/MinimizedPlaybackPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/music/layout/minimizedplayback/patch/MinimizedPlaybackPatch.kt rename src/main/kotlin/app/revanced/patches/music/layout/premium/{patch => }/HideGetPremiumPatch.kt (71%) rename src/main/kotlin/app/revanced/patches/music/layout/upgradebutton/{patch => }/RemoveUpgradeButtonPatch.kt (83%) rename src/main/kotlin/app/revanced/patches/music/misc/androidauto/{patch => }/BypassCertificateChecksPatch.kt (54%) rename src/main/kotlin/app/revanced/patches/music/misc/microg/{patch/bytecode => }/MicroGBytecodePatch.kt (73%) rename src/main/kotlin/app/revanced/patches/music/misc/microg/{patch/resource => }/MicroGResourcePatch.kt (78%) create mode 100644 src/main/kotlin/app/revanced/patches/music/premium/backgroundplay/BackgroundPlayPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/music/premium/backgroundplay/patch/BackgroundPlayPatch.kt create mode 100644 src/main/kotlin/app/revanced/patches/myexpenses/misc/pro/UnlockProPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/myexpenses/misc/pro/annotations/UnlockProCompatibility.kt delete mode 100644 src/main/kotlin/app/revanced/patches/myexpenses/misc/pro/patch/UnlockProPatch.kt rename src/main/kotlin/app/revanced/patches/netguard/broadcasts/removerestriction/{resource/patch => }/RemoveBroadcastsRestrictionPatch.kt (64%) delete mode 100644 src/main/kotlin/app/revanced/patches/netguard/broadcasts/removerestriction/resource/annotations/RemoveBroadcastsRestrictionCompatibility.kt create mode 100644 src/main/kotlin/app/revanced/patches/nfctoolsse/misc/pro/UnlockProPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/nfctoolsse/misc/pro/annotations/UnlockProCompatibility.kt delete mode 100644 src/main/kotlin/app/revanced/patches/nfctoolsse/misc/pro/patch/UnlockProPatch.kt create mode 100644 src/main/kotlin/app/revanced/patches/nyx/misc/pro/UnlockProPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/nyx/misc/pro/annotations/UnlockProCompatibility.kt delete mode 100644 src/main/kotlin/app/revanced/patches/nyx/misc/pro/patch/UnlockProPatch.kt create mode 100644 src/main/kotlin/app/revanced/patches/photomath/detection/deviceid/SpoofDeviceIdPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/photomath/detection/deviceid/patch/SpoofDeviceIdPatch.kt rename src/main/kotlin/app/revanced/patches/photomath/detection/signature/{patch => }/SignatureDetectionPatch.kt (78%) rename src/main/kotlin/app/revanced/patches/photomath/misc/bookpoint/{patch => }/EnableBookpointPatch.kt (71%) create mode 100644 src/main/kotlin/app/revanced/patches/photomath/misc/unlockplus/UnlockPlusPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/photomath/misc/unlockplus/patch/UnlockPlusPatch.kt create mode 100644 src/main/kotlin/app/revanced/patches/pixiv/ads/HideAdsPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/pixiv/ads/patch/HideAdsPatch.kt rename src/main/kotlin/app/revanced/patches/reddit/ad/banner/{patch => }/HideBannerPatch.kt (69%) create mode 100644 src/main/kotlin/app/revanced/patches/reddit/ad/comments/HideCommentAdsPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/reddit/ad/comments/patch/HideCommentAdsPatch.kt rename src/main/kotlin/app/revanced/patches/reddit/ad/general/{patch => }/HideAdsPatch.kt (72%) delete mode 100644 src/main/kotlin/app/revanced/patches/reddit/ad/general/annotations/HideAdsCompatibility.kt delete mode 100644 src/main/kotlin/app/revanced/patches/reddit/customclients/SpoofClientAnnotation.kt rename src/main/kotlin/app/revanced/patches/reddit/customclients/baconreader/api/{patch => }/SpoofClientPatch.kt (63%) create mode 100644 src/main/kotlin/app/revanced/patches/reddit/customclients/boostforreddit/api/SpoofClientPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/reddit/customclients/boostforreddit/api/patch/SpoofClientPatch.kt rename src/main/kotlin/app/revanced/patches/reddit/customclients/infinityforreddit/api/{patch => }/SpoofClientPatch.kt (64%) rename src/main/kotlin/app/revanced/patches/reddit/customclients/joeyforreddit/ads/{patch => }/DisableAdsPatch.kt (60%) rename src/main/kotlin/app/revanced/patches/reddit/customclients/joeyforreddit/api/{patch => }/SpoofClientPatch.kt (51%) rename src/main/kotlin/app/revanced/patches/reddit/customclients/joeyforreddit/detection/piracy/{patch => }/DisablePiracyDetectionPatch.kt (88%) rename src/main/kotlin/app/revanced/patches/reddit/customclients/redditisfun/api/{patch => }/SpoofClientPatch.kt (79%) rename src/main/kotlin/app/revanced/patches/reddit/customclients/relayforreddit/api/{patch => }/SpoofClientPatch.kt (71%) create mode 100644 src/main/kotlin/app/revanced/patches/reddit/customclients/slide/api/SpoofClientPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/reddit/customclients/slide/api/patch/SpoofClientPatch.kt rename src/main/kotlin/app/revanced/patches/reddit/customclients/syncforreddit/ads/{patch => }/DisableAdsPatch.kt (65%) create mode 100644 src/main/kotlin/app/revanced/patches/reddit/customclients/syncforreddit/annoyances/startup/DisableSyncForLemmyBottomSheetPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/reddit/customclients/syncforreddit/annoyances/startup/patch/DisableSyncForLemmyBottomSheetPatch.kt rename src/main/kotlin/app/revanced/patches/reddit/customclients/syncforreddit/api/{patch => }/SpoofClientPatch.kt (72%) rename src/main/kotlin/app/revanced/patches/reddit/customclients/syncforreddit/detection/piracy/{patch => }/DisablePiracyDetectionPatch.kt (73%) rename src/main/kotlin/app/revanced/patches/reddit/layout/disablescreenshotpopup/{patch => }/DisableScreenshotPopupPatch.kt (54%) delete mode 100644 src/main/kotlin/app/revanced/patches/reddit/layout/disablescreenshotpopup/annotations/DisableScreenshotPopupCompatibility.kt create mode 100644 src/main/kotlin/app/revanced/patches/reddit/layout/premiumicon/UnlockPremiumIconPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/reddit/layout/premiumicon/annotations/PremiumIconCompatibility.kt rename src/main/kotlin/app/revanced/patches/reddit/layout/premiumicon/fingerprints/{PremiumIconFingerprint.kt => HasPremiumIconAccessFingerprint.kt} (83%) delete mode 100644 src/main/kotlin/app/revanced/patches/reddit/layout/premiumicon/patch/PremiumIconPatch.kt rename src/main/kotlin/app/revanced/patches/reddit/misc/tracking/url/{patch => }/SanitizeUrlQueryPatch.kt (50%) delete mode 100644 src/main/kotlin/app/revanced/patches/reddit/misc/tracking/url/annotations/SanitizeUrlQueryCompatibility.kt create mode 100644 src/main/kotlin/app/revanced/patches/scbeasy/detection/debugging/RemoveDebuggingDetectionPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/scbeasy/detection/debugging/annotations/RemoveDebuggingDetectionCompatibility.kt delete mode 100644 src/main/kotlin/app/revanced/patches/scbeasy/detection/debugging/patch/RemoveDebuggingDetectionPatch.kt rename src/main/kotlin/app/revanced/patches/shared/integrations/{patch => }/AbstractIntegrationsPatch.kt (85%) rename src/main/kotlin/app/revanced/patches/shared/mapping/misc/{patch => }/ResourceMappingPatch.kt (77%) rename src/main/kotlin/app/revanced/patches/shared/misc/fix/verticalscroll/{patch => }/VerticalScrollPatch.kt (71%) delete mode 100644 src/main/kotlin/app/revanced/patches/shared/misc/fix/verticalscroll/annotations/VerticalScrollCompatibility.kt rename src/main/kotlin/app/revanced/patches/shared/settings/{resource/patch => }/AbstractSettingsResourcePatch.kt (98%) rename src/main/kotlin/app/revanced/patches/solidexplorer2/functionality/filesize/{patch => }/RemoveFileSizeLimitPatch.kt (67%) rename src/main/kotlin/app/revanced/patches/songpal/badge/{patch => }/BadgeTabPatch.kt (71%) create mode 100644 src/main/kotlin/app/revanced/patches/songpal/badge/RemoveNotificationBadgePatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/songpal/badge/annotations/BadgeCompatibility.kt delete mode 100644 src/main/kotlin/app/revanced/patches/songpal/badge/patch/RemoveNotificationBadgePatch.kt create mode 100644 src/main/kotlin/app/revanced/patches/spotify/layout/theme/CustomThemePatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/spotify/layout/theme/annotations/ThemeCompatibility.kt delete mode 100644 src/main/kotlin/app/revanced/patches/spotify/layout/theme/patch/ThemePatch.kt rename src/main/kotlin/app/revanced/patches/spotify/lite/ondemand/{patch => }/OnDemandPatch.kt (51%) delete mode 100644 src/main/kotlin/app/revanced/patches/spotify/lite/ondemand/annotations/OnDemandCompatibility.kt rename src/main/kotlin/app/revanced/patches/spotify/{premium_navbar_tab/patch => navbar}/PremiumNavbarTabPatch.kt (65%) rename src/main/kotlin/app/revanced/patches/spotify/{premium_navbar_tab => navbar}/fingerprints/AddPremiumNavbarTabFingerprint.kt (72%) rename src/main/kotlin/app/revanced/patches/spotify/{premium_navbar_tab => navbar}/fingerprints/AddPremiumNavbarTabParentFingerprint.kt (76%) delete mode 100644 src/main/kotlin/app/revanced/patches/spotify/premium_navbar_tab/annotations/PremiumNavbarTabCompatibility.kt rename src/main/kotlin/app/revanced/patches/strava/subscription/{patch => }/UnlockSubscriptionPatch.kt (55%) rename src/main/kotlin/app/revanced/patches/ticktick/misc/themeunlock/{patch => }/UnlockThemePatch.kt (60%) delete mode 100644 src/main/kotlin/app/revanced/patches/ticktick/misc/themeunlock/annotations/UnlockThemesCompatibility.kt rename src/main/kotlin/app/revanced/patches/tiktok/ad/{patch => }/HideAdsPatch.kt (79%) delete mode 100644 src/main/kotlin/app/revanced/patches/tiktok/ad/annotations/HideAdsCompatibility.kt rename src/main/kotlin/app/revanced/patches/tiktok/feedfilter/{patch => }/FeedFilterPatch.kt (57%) delete mode 100644 src/main/kotlin/app/revanced/patches/tiktok/feedfilter/annotations/FeedFilterCompatibility.kt rename src/main/kotlin/app/revanced/patches/tiktok/interaction/downloads/{patch => }/DownloadsPatch.kt (87%) delete mode 100644 src/main/kotlin/app/revanced/patches/tiktok/interaction/downloads/annotations/DownloadsCompatibility.kt rename src/main/kotlin/app/revanced/patches/tiktok/interaction/seekbar/{patch => }/ShowSeekbarPatch.kt (66%) delete mode 100644 src/main/kotlin/app/revanced/patches/tiktok/interaction/seekbar/annotations/ShowSeekbarCompatibility.kt rename src/main/kotlin/app/revanced/patches/tiktok/interaction/speed/{patch => }/PlaybackSpeedPatch.kt (68%) delete mode 100644 src/main/kotlin/app/revanced/patches/tiktok/interaction/speed/annotations/PlaybackSpeedCompatibility.kt create mode 100644 src/main/kotlin/app/revanced/patches/tiktok/misc/integrations/IntegrationsPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/tiktok/misc/integrations/patch/IntegrationsPatch.kt rename src/main/kotlin/app/revanced/patches/tiktok/misc/login/disablerequirement/{patch => }/DisableLoginRequirementPatch.kt (62%) delete mode 100644 src/main/kotlin/app/revanced/patches/tiktok/misc/login/disablerequirement/annotations/DisableLoginRequirementCompatibility.kt rename src/main/kotlin/app/revanced/patches/tiktok/misc/login/fixgoogle/{patch => }/FixGoogleLoginPatch.kt (59%) delete mode 100644 src/main/kotlin/app/revanced/patches/tiktok/misc/login/fixgoogle/annotations/FixGoogleLoginCompatibility.kt rename src/main/kotlin/app/revanced/patches/tiktok/misc/settings/{patch => }/SettingsPatch.kt (71%) delete mode 100644 src/main/kotlin/app/revanced/patches/tiktok/misc/settings/annotations/SettingsCompatibility.kt rename src/main/kotlin/app/revanced/patches/tiktok/misc/spoof/sim/{patch => }/SpoofSimPatch.kt (77%) delete mode 100644 src/main/kotlin/app/revanced/patches/tiktok/misc/spoof/sim/annotations/SpoofSimCompatibility.kt rename src/main/kotlin/app/revanced/patches/trakt/{patch => }/UnlockProPatch.kt (62%) delete mode 100644 src/main/kotlin/app/revanced/patches/trakt/annotations/UnlockProCompatibility.kt rename src/main/kotlin/app/revanced/patches/tumblr/ads/{patch => }/DisableDashboardAds.kt (70%) rename src/main/kotlin/app/revanced/patches/twelvewidgets/unlock/{patch => }/UnlockPaidWidgetsPatch.kt (79%) rename src/main/kotlin/app/revanced/patches/twitch/ad/audio/{patch => }/AudioAdsPatch.kt (70%) delete mode 100644 src/main/kotlin/app/revanced/patches/twitch/ad/audio/annotations/AudioAdsCompatibility.kt rename src/main/kotlin/app/revanced/patches/twitch/ad/embedded/{patch => }/EmbeddedAdsPatch.kt (71%) delete mode 100644 src/main/kotlin/app/revanced/patches/twitch/ad/embedded/annotations/EmbeddedAdsCompatibility.kt rename src/main/kotlin/app/revanced/patches/twitch/ad/video/{patch => }/VideoAdsPatch.kt (88%) delete mode 100644 src/main/kotlin/app/revanced/patches/twitch/ad/video/annotations/VideoAdsCompatibility.kt rename src/main/kotlin/app/revanced/patches/twitch/chat/antidelete/{patch => }/ShowDeletedMessagesPatch.kt (84%) delete mode 100644 src/main/kotlin/app/revanced/patches/twitch/chat/antidelete/annotations/ShowDeletedMessagesCompatibility.kt rename src/main/kotlin/app/revanced/patches/twitch/chat/autoclaim/{patch => }/AutoClaimChannelPointsPatch.kt (76%) delete mode 100644 src/main/kotlin/app/revanced/patches/twitch/chat/autoclaim/annotations/AutoClaimChannelPointsCompatibility.kt rename src/main/kotlin/app/revanced/patches/twitch/debug/{patch => }/DebugModePatch.kt (74%) delete mode 100644 src/main/kotlin/app/revanced/patches/twitch/debug/annotations/DebugModeCompatibility.kt create mode 100644 src/main/kotlin/app/revanced/patches/twitch/misc/integrations/IntegrationsPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/twitch/misc/integrations/patch/IntegrationsPatch.kt rename src/main/kotlin/app/revanced/patches/twitch/misc/settings/{bytecode/patch => }/SettingsPatch.kt (71%) create mode 100644 src/main/kotlin/app/revanced/patches/twitch/misc/settings/SettingsResourcePatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/twitch/misc/settings/annotations/SettingsCompatibility.kt delete mode 100644 src/main/kotlin/app/revanced/patches/twitch/misc/settings/resource/patch/SettingsResourcePatch.kt rename src/main/kotlin/app/revanced/patches/twitter/misc/dynamiccolor/{patch => }/DynamicColorPatch.kt (86%) delete mode 100644 src/main/kotlin/app/revanced/patches/twitter/misc/dynamiccolor/annotations/DynamicColorCompatibility.kt rename src/main/kotlin/app/revanced/patches/twitter/misc/hook/json/{patch => }/JsonHookPatch.kt (81%) create mode 100644 src/main/kotlin/app/revanced/patches/twitter/misc/hook/patch/ads/HideAdsPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/twitter/misc/hook/patch/ads/annotations/HideAdsCompatibility.kt delete mode 100644 src/main/kotlin/app/revanced/patches/twitter/misc/hook/patch/ads/patch/HideAdsPatch.kt create mode 100644 src/main/kotlin/app/revanced/patches/twitter/misc/hook/patch/recommendation/HideRecommendedUsersPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/twitter/misc/hook/patch/recommendation/annotations/HideRecommendedUsersCompatibility.kt delete mode 100644 src/main/kotlin/app/revanced/patches/twitter/misc/hook/patch/recommendation/patch/HideRecommendedUsersPatch.kt rename src/main/kotlin/app/revanced/patches/vsco/misc/pro/{patch => }/UnlockProPatch.kt (64%) rename src/main/kotlin/app/revanced/patches/warnwetter/misc/firebasegetcert/{patch => }/FirebaseGetCertPatch.kt (71%) delete mode 100644 src/main/kotlin/app/revanced/patches/warnwetter/misc/firebasegetcert/annotations/FirebaseGetCertPatchCompatibility.kt create mode 100644 src/main/kotlin/app/revanced/patches/warnwetter/misc/promocode/PromoCodeUnlockPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/warnwetter/misc/promocode/annotations/PromoCodeUnlockCompatibility.kt delete mode 100644 src/main/kotlin/app/revanced/patches/warnwetter/misc/promocode/patch/PromoCodeUnlockPatch.kt rename src/main/kotlin/app/revanced/patches/windyapp/misc/unlockpro/{patch => }/UnlockProPatch.kt (53%) delete mode 100644 src/main/kotlin/app/revanced/patches/windyapp/misc/unlockpro/annotations/UnlockProCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/ad/general/{bytecode/patch => }/HideAdsPatch.kt (72%) rename src/main/kotlin/app/revanced/patches/youtube/ad/general/{resource/patch => }/HideAdsResourcePatch.kt (80%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/ad/general/annotation/HideAdsCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/ad/getpremium/{bytecode/patch => }/HideGetPremiumVideoAdvertisementPatch.kt (75%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/ad/getpremium/annotations/HideGetPremiumCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/ad/getpremium/{bytecode => }/fingerprints/GetPremiumViewFingerprint.kt (91%) rename src/main/kotlin/app/revanced/patches/youtube/ad/video/{patch => }/VideoAdsPatch.kt (63%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/ad/video/annotations/VideoAdsCompatibility.kt create mode 100644 src/main/kotlin/app/revanced/patches/youtube/interaction/copyvideourl/CopyVideoUrlBytecodePatch.kt rename src/main/kotlin/app/revanced/patches/youtube/interaction/copyvideourl/{resource/patch => }/CopyVideoUrlResourcePatch.kt (85%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/interaction/copyvideourl/annotation/CopyVideoUrlCompatibility.kt delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/interaction/copyvideourl/bytecode/patch/CopyVideoUrlBytecodePatch.kt create mode 100644 src/main/kotlin/app/revanced/patches/youtube/interaction/downloads/ExternalDownloadsBytecodePatch.kt rename src/main/kotlin/app/revanced/patches/youtube/interaction/downloads/{resource/patch => }/ExternalDownloadsResourcePatch.kt (83%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/interaction/downloads/annotation/ExternalDownloadsCompatibility.kt delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/interaction/downloads/bytecode/patch/ExternalDownloadsBytecodePatch.kt rename src/main/kotlin/app/revanced/patches/youtube/interaction/seekbar/{patch => }/EnableSeekbarTappingPatch.kt (74%) rename src/main/kotlin/app/revanced/patches/youtube/interaction/seekbar/{patch => }/EnableSeekbarTappingResourcePatch.kt (72%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/interaction/seekbar/annotation/SeekbarTappingCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/interaction/swipecontrols/{patch/bytecode => }/SwipeControlsBytecodePatch.kt (69%) rename src/main/kotlin/app/revanced/patches/youtube/interaction/swipecontrols/{patch/resource => }/SwipeControlsResourcePatch.kt (94%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/interaction/swipecontrols/annotation/SwipeControlsCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/autocaptions/{patch => }/AutoCaptionsPatch.kt (72%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/autocaptions/annotations/AutoCaptionsCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/branding/{icon/patch => }/CustomBrandingPatch.kt (61%) rename src/main/kotlin/app/revanced/patches/youtube/layout/branding/header/{patch => }/PremiumHeadingPatch.kt (73%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/branding/header/annotations/PremiumHeadingCompatibility.kt delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/branding/icon/annotations/CustomBrandingCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/buttons/action/{patch => }/HideButtonsPatch.kt (82%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/buttons/action/annotations/HideButtonsCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/buttons/autoplay/{patch => }/HideAutoplayButtonPatch.kt (73%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/buttons/autoplay/annotations/AutoplayButtonCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/buttons/captions/{patch => }/HideCaptionsButtonPatch.kt (63%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/buttons/captions/annotations/HideCaptionsButtonCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/buttons/cast/{patch => }/HideCastButtonPatch.kt (66%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/buttons/cast/annotations/CastPatchCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/buttons/navigation/{patch => }/NavigationButtonsPatch.kt (88%) rename src/main/kotlin/app/revanced/patches/youtube/layout/buttons/navigation/{patch => }/ResolvePivotBarFingerprintsPatch.kt (71%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/buttons/navigation/annotations/NavigationButtonsCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/buttons/player/hide/{patch => }/HidePlayerButtonsPatch.kt (67%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/buttons/player/hide/annotations/HidePlayerButtonsCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/albumcards/{bytecode/patch => }/AlbumCardsPatch.kt (55%) rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/albumcards/{resource/patch => }/AlbumCardsResourcePatch.kt (65%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/hide/albumcards/annotations/AlbumCardsCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/albumcards/{bytecode => }/fingerprints/AlbumCardsFingerprint.kt (69%) create mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/hide/breakingnews/BreakingNewsPatch.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/breakingnews/{resource/patch => }/BreakingNewsResourcePatch.kt (65%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/hide/breakingnews/annotations/BreakingNewsCompatibility.kt delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/hide/breakingnews/bytecode/patch/BreakingNewsPatch.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/breakingnews/{bytecode => }/fingerprints/BreakingNewsFingerprint.kt (67%) rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/comments/{patch => }/CommentsPatch.kt (64%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/hide/comments/annotations/HideCommentsCompatibility.kt create mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/hide/crowdfundingbox/CrowdfundingBoxPatch.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/crowdfundingbox/{resource/patch => }/CrowdfundingBoxResourcePatch.kt (70%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/hide/crowdfundingbox/annotations/CrowdfundingBoxCompatibility.kt delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/hide/crowdfundingbox/bytecode/patch/CrowdfundingBoxPatch.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/crowdfundingbox/{bytecode => }/fingerprints/CrowdfundingBoxFingerprint.kt (81%) rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/endscreencards/{bytecode/patch => }/HideEndscreenCardsPatch.kt (53%) rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/endscreencards/{resource/patch => }/HideEndscreenCardsResourcePatch.kt (67%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/hide/endscreencards/annotations/HideEndscreenCardsCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/endscreencards/{bytecode => }/fingerprints/LayoutCircleFingerprint.kt (69%) rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/endscreencards/{bytecode => }/fingerprints/LayoutIconFingerprint.kt (69%) rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/endscreencards/{bytecode => }/fingerprints/LayoutVideoFingerprint.kt (69%) create mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/hide/filterbar/HideFilterBarPatch.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/filterbar/{patch => }/HideFilterBarResourcePatch.kt (86%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/hide/filterbar/annotations/HideFilterBar.kt delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/hide/filterbar/patch/HideFilterBarPatch.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/floatingmicrophone/{patch => }/HideFloatingMicrophoneButtonPatch.kt (54%) rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/floatingmicrophone/{patch => }/HideFloatingMicrophoneButtonResourcePatch.kt (67%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/hide/floatingmicrophone/annotations/HideFloatingMicrophoneButtonCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/general/{patch => }/HideLayoutComponentsPatch.kt (92%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/hide/general/annotations/HideLayoutComponentsCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/infocards/{patch => }/HideInfoCardsPatch.kt (75%) rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/infocards/{resource/patch => }/HideInfocardsResourcePatch.kt (60%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/hide/infocards/annotations/HideInfocardsCompatibility.kt create mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/hide/loadmorebutton/HideLoadMoreButtonPatch.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/loadmorebutton/{resource/patch => }/HideLoadMoreButtonResourcePatch.kt (65%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/hide/loadmorebutton/annotations/HideLoadMoreButtonCompatibility.kt delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/hide/loadmorebutton/bytecode/patch/HideLoadMoreButtonPatch.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/loadmorebutton/{bytecode => }/fingerprints/HideLoadMoreButtonFingerprint.kt (65%) rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/personalinformation/{bytecode/patch => }/HideEmailAddressPatch.kt (59%) rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/personalinformation/{resource/patch => }/HideEmailAddressResourcePatch.kt (69%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/hide/personalinformation/annotations/HideEmailAddressCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/personalinformation/{bytecode => }/fingerprints/AccountSwitcherAccessibilityLabelFingerprint.kt (79%) rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/player/flyoutmenupanel/{patch => }/HidePlayerFlyoutMenuPatch.kt (83%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/hide/player/flyoutmenupanel/annotations/HidePlayerFlyoutMenuItemsCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/seekbar/{patch => }/HideSeekbarPatch.kt (62%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/hide/seekbar/annotations/HideSeekbarCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/shorts/{bytecode/patch => }/HideShortsComponentsPatch.kt (71%) rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/shorts/{resource/patch => }/HideShortsComponentsResourcePatch.kt (91%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/hide/shorts/annotations/HideShortsComponentsCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/shorts/{bytecode => }/fingerprints/BottomNavigationBarFingerprint.kt (86%) rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/shorts/{bytecode => }/fingerprints/CreateShortsButtonsFingerprint.kt (56%) rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/shorts/{bytecode => }/fingerprints/ReelConstructorFingerprint.kt (59%) rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/shorts/{bytecode => }/fingerprints/RenderBottomNavigationBarFingerprint.kt (86%) rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/shorts/{bytecode => }/fingerprints/RenderBottomNavigationBarParentFingerprint.kt (74%) rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/shorts/{bytecode => }/fingerprints/SetPivotBarVisibilityFingerprint.kt (86%) rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/shorts/{bytecode => }/fingerprints/SetPivotBarVisibilityParentFingerprint.kt (73%) rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/time/{patch => }/HideTimestampPatch.kt (62%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/hide/time/annotations/HideTimeCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/hide/watermark/{patch => }/HideWatermarkPatch.kt (68%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/hide/watermark/annotations/HideWatermarkCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/panels/popup/{patch => }/PlayerPopupPanelsPatch.kt (64%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/panels/popup/annotations/PlayerPopupPanelsCompatibility.kt create mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/player/background/PlayerControlsBackgroundPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/player/background/annotations/PlayerControlsBackgroundCompatibility.kt delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/player/background/patch/PlayerControlsBackgroundPatch.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/player/overlay/{bytecode/patch => }/CustomPlayerOverlayOpacityPatch.kt (55%) rename src/main/kotlin/app/revanced/patches/youtube/layout/player/overlay/{resource/patch => }/CustomPlayerOverlayOpacityResourcePatch.kt (68%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/player/overlay/annotations/PlayerOverlayPatchCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/player/overlay/{bytecode => }/fingerprints/CreatePlayerOverviewFingerprint.kt (78%) rename src/main/kotlin/app/revanced/patches/youtube/layout/returnyoutubedislike/{patch => }/ReturnYouTubeDislikePatch.kt (85%) rename src/main/kotlin/app/revanced/patches/youtube/layout/returnyoutubedislike/{resource/patch => }/ReturnYouTubeDislikeResourcePatch.kt (72%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/returnyoutubedislike/annotations/ReturnYouTubeDislikeCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/searchbar/{patch => }/WideSearchbarPatch.kt (51%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/searchbar/annotations/WideSearchbarCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/seekbar/{bytecode/patch => }/SeekbarColorBytecodePatch.kt (63%) rename src/main/kotlin/app/revanced/patches/youtube/layout/seekbar/{resource => }/SeekbarColorResourcePatch.kt (75%) rename src/main/kotlin/app/revanced/patches/youtube/layout/seekbar/{resource => }/SeekbarPreferencesPatch.kt (52%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/seekbar/annotations/SeekbarColorCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/seekbar/{bytecode => }/fingerprints/PlayerSeekbarColorFingerprint.kt (80%) rename src/main/kotlin/app/revanced/patches/youtube/layout/seekbar/{bytecode => }/fingerprints/SetSeekbarClickedColorFingerprint.kt (84%) rename src/main/kotlin/app/revanced/patches/youtube/layout/seekbar/{bytecode => }/fingerprints/ShortsSeekbarColorFingerprint.kt (55%) rename src/main/kotlin/app/revanced/patches/youtube/layout/sponsorblock/{bytecode/patch => }/SponsorBlockBytecodePatch.kt (84%) rename src/main/kotlin/app/revanced/patches/youtube/layout/sponsorblock/{resource/patch => }/SponsorBlockResourcePatch.kt (89%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/sponsorblock/annotations/SponsorBlockCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/sponsorblock/{bytecode => }/fingerprints/AppendTimeFingerprint.kt (91%) rename src/main/kotlin/app/revanced/patches/youtube/layout/sponsorblock/{bytecode => }/fingerprints/ControlsOverlayFingerprint.kt (90%) rename src/main/kotlin/app/revanced/patches/youtube/layout/sponsorblock/{bytecode => }/fingerprints/RectangleFieldInvalidatorFingerprint.kt (92%) rename src/main/kotlin/app/revanced/patches/youtube/layout/spoofappversion/{bytecode/patch => }/SpoofAppVersionPatch.kt (74%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/spoofappversion/annotations/SpoofAppVersionCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/spoofappversion/{bytecode => }/fingerprints/SpoofAppVersionFingerprint.kt (90%) rename src/main/kotlin/app/revanced/patches/youtube/layout/startupshortsreset/{patch => }/DisableShortsOnStartupPatch.kt (65%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/startupshortsreset/annotations/StartupShortsResetCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/tablet/{patch => }/EnableTabletLayoutPatch.kt (71%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/tablet/annotations/EnableTabletLayoutCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/tabletminiplayer/{patch => }/TabletMiniPlayerPatch.kt (69%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/tabletminiplayer/annotations/TabletMiniPlayerCompatibility.kt create mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/theme/LithoColorHookPatch.kt create mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/theme/ThemeBytecodePatch.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/theme/{resource => }/ThemeResourcePatch.kt (84%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/theme/annotations/ThemeCompatibility.kt delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/theme/bytecode/patch/LithoColorHookPatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/theme/bytecode/patch/ThemeBytecodePatch.kt rename src/main/kotlin/app/revanced/patches/youtube/layout/theme/{bytecode => }/fingerprints/LithoThemeFingerprint.kt (92%) rename src/main/kotlin/app/revanced/patches/youtube/layout/thumbnails/{patch => }/AlternativeThumbnailsPatch.kt (60%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/layout/thumbnails/annotations/AlternativeThumbnailsCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/misc/autorepeat/{patch => }/AutoRepeatPatch.kt (78%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/misc/autorepeat/annotations/AutoRepeatCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/{layout/panels/fullscreen/remove/fingerprints/FullscreenViewAdderFingerprint.kt => misc/bottomsheet/hook/BottomSheetHookPatch.kt} (100%) rename src/main/kotlin/app/revanced/patches/youtube/{layout/panels/fullscreen/remove/fingerprints/FullscreenViewAdderParentFingerprint.kt => misc/bottomsheet/hook/BottomSheetHookResourcePatch.kt} (100%) create mode 100644 src/main/kotlin/app/revanced/patches/youtube/misc/bottomsheet/hook/fingerprints/CreateBottomSheetFingerprint.kt rename src/main/kotlin/app/revanced/patches/youtube/misc/debugging/{patch => }/DebuggingPatch.kt (81%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/misc/debugging/annotations/DebuggingCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/misc/fix/backtoexitgesture/{patch => }/FixBackToExitGesturePatch.kt (54%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/misc/fix/backtoexitgesture/annotation/FixBackToExitGestureCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/misc/fix/playback/{patch => }/ClientSpoofPatch.kt (56%) rename src/main/kotlin/app/revanced/patches/youtube/misc/fix/playback/{patch => }/SpoofSignatureVerificationPatch.kt (83%) rename src/main/kotlin/app/revanced/patches/youtube/misc/fix/playback/{patch => }/SpoofSignatureVerificationResourcePatch.kt (74%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/misc/fix/playback/annotations/ClientSpoofCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/misc/integrations/{patch => }/IntegrationsPatch.kt (53%) rename src/main/kotlin/app/revanced/patches/youtube/misc/links/{patch => }/OpenLinksExternallyPatch.kt (79%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/misc/links/annotations/OpenLinksExternallyCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/misc/litho/filter/{patch => }/LithoFilterPatch.kt (86%) rename src/main/kotlin/app/revanced/patches/youtube/misc/microg/{patch/bytecode => }/MicroGBytecodePatch.kt (66%) rename src/main/kotlin/app/revanced/patches/youtube/misc/microg/{patch/resource => }/MicroGResourcePatch.kt (82%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/misc/microg/annotations/MicroGPatchCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/misc/minimizedplayback/{patch => }/MinimizedPlaybackPatch.kt (71%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/misc/minimizedplayback/annotations/MinimizedPlaybackCompatibility.kt create mode 100644 src/main/kotlin/app/revanced/patches/youtube/misc/playercontrols/BottomControlsResourcePatch.kt create mode 100644 src/main/kotlin/app/revanced/patches/youtube/misc/playercontrols/PlayerControlsBytecodePatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/misc/playercontrols/annotation/PlayerControlsCompatibility.kt delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/misc/playercontrols/bytecode/patch/PlayerControlsBytecodePatch.kt delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/misc/playercontrols/resource/patch/BottomControlsResourcePatch.kt rename src/main/kotlin/app/revanced/patches/youtube/misc/playeroverlay/{patch => }/PlayerOverlaysHookPatch.kt (50%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/misc/playeroverlay/annotation/PlayerOverlaysHookCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/misc/playertype/{patch => }/PlayerTypeHookPatch.kt (69%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/misc/playertype/annotation/PlayerTypeHookCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/misc/recyclerviewtree/hook/{patch => }/RecyclerViewTreeHookPatch.kt (69%) rename src/main/kotlin/app/revanced/patches/youtube/misc/settings/{bytecode/patch => }/SettingsPatch.kt (60%) rename src/main/kotlin/app/revanced/patches/youtube/misc/settings/{resource/patch => }/SettingsResourcePatch.kt (69%) rename src/main/kotlin/app/revanced/patches/youtube/misc/settings/{bytecode => }/fingerprints/LicenseActivityFingerprint.kt (86%) rename src/main/kotlin/app/revanced/patches/youtube/misc/settings/{bytecode => }/fingerprints/SetThemeFingerprint.kt (65%) rename src/main/kotlin/app/revanced/patches/youtube/misc/zoomhaptics/{patch => }/ZoomHapticsPatch.kt (70%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/misc/zoomhaptics/annotations/ZoomHapticsCompatibility.kt rename src/main/kotlin/app/revanced/patches/{ => youtube}/shared/fingerprints/SeekbarFingerprint.kt (75%) rename src/main/kotlin/app/revanced/patches/youtube/video/hdrbrightness/{patch => }/HDRBrightnessPatch.kt (69%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/video/hdrbrightness/annotations/HDRBrightnessCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/video/information/{patch => }/VideoInformationPatch.kt (60%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/video/information/annotation/VideoInformationCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/video/quality/{patch => }/RememberVideoQualityPatch.kt (90%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/video/quality/annotations/RememberVideoQualityCompatibility.kt delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/video/speed/PlaybackSpeed.kt delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/video/speed/PlaybackSpeedCompatibility.kt create mode 100644 src/main/kotlin/app/revanced/patches/youtube/video/speed/PlaybackSpeedPatch.kt rename src/main/kotlin/app/revanced/patches/youtube/video/speed/custom/{patch => }/CustomPlaybackSpeedPatch.kt (87%) rename src/main/kotlin/app/revanced/patches/youtube/video/speed/remember/{patch => }/RememberPlaybackSpeedPatch.kt (80%) rename src/main/kotlin/app/revanced/patches/youtube/video/videoid/{patch => }/VideoIdPatch.kt (78%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/video/videoid/annotation/VideoIdCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtube/video/videoqualitymenu/{patch => }/OldVideoQualityMenuPatch.kt (59%) rename src/main/kotlin/app/revanced/patches/youtube/video/videoqualitymenu/{patch => }/OldVideoQualityMenuResourcePatch.kt (71%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtube/video/videoqualitymenu/annotations/OldVideoQualityMenuCompatibility.kt rename src/main/kotlin/app/revanced/patches/youtubevanced/ad/general/{patch => }/HideAdsPatch.kt (74%) delete mode 100644 src/main/kotlin/app/revanced/patches/youtubevanced/ad/general/annotations/HideAdsCompatibility.kt rename src/main/kotlin/app/revanced/patches/yuka/misc/unlockpremium/{patch/UnlockPremiunPatch.kt => UnlockPremiumPatch.kt} (62%) delete mode 100644 src/main/kotlin/app/revanced/patches/yuka/misc/unlockpremium/annotations/UnlockPremiumCompatibility.kt diff --git a/build.gradle.kts b/build.gradle.kts index 2a133216..ef4cbf56 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,5 +1,6 @@ plugins { kotlin("jvm") version "1.8.20" + alias(libs.plugins.ksp) } group = "app.revanced" @@ -25,16 +26,17 @@ repositories { } dependencies { - implementation("app.revanced:revanced-patcher:14.2.1") - implementation("com.android.tools.smali:smali:3.0.3") - // Required because build fails without it. - // TODO: Find a way to remove this dependency. - implementation("com.google.guava:guava:32.1.2-jre") + implementation(libs.revanced.patcher) + implementation(libs.smali) + implementation(libs.revanced.patch.annotation.processor) + // TODO: Required because build fails without it. Find a way to remove this dependency. + implementation(libs.guava) // Used in JsonGenerator. - implementation("com.google.code.gson:gson:2.10.1") - // A dependency to the Android library unfortunately fails the build, - // which is why this is required for the patch change-oauth-client-id. + implementation(libs.gson) + // A dependency to the Android library unfortunately fails the build, which is why this is required. compileOnly(project("dummy")) + + ksp(libs.revanced.patch.annotation.processor) } kotlin { @@ -63,6 +65,7 @@ tasks { } } } + register("generateMeta") { description = "Generate metadata for this bundle" dependsOn(build) @@ -70,6 +73,7 @@ tasks { classpath = sourceSets["main"].runtimeClasspath mainClass.set("app.revanced.meta.PatchesFileGenerator") } + // Dummy task to fix the Gradle semantic-release plugin. // Remove this if you forked it to support building only. // Tracking issue: https://github.com/KengoTODA/gradle-semantic-release-plugin/issues/435 diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml new file mode 100644 index 00000000..5673b992 --- /dev/null +++ b/gradle/libs.versions.toml @@ -0,0 +1,17 @@ +[versions] +revanced-patcher = "15.0.1" +revanced-patch-annotation-processor = "15.0.1" +ksp = "1.9.0-1.0.11" +smali = "3.0.3" +guava = "32.1.2-jre" +gson = "2.10.1" + +[libraries] +revanced-patcher = { module = "app.revanced:revanced-patcher", version.ref = "revanced-patcher" } +revanced-patch-annotation-processor = { module = "app.revanced:revanced-patch-annotation-processor", version.ref = "revanced-patch-annotation-processor" } +smali = { module = "com.android.tools.smali:smali", version.ref = "smali" } +guava = { module = "com.google.guava:guava", version.ref = "guava" } +gson = { module = "com.google.code.gson:gson", version.ref = "gson" } + +[plugins] +ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" } diff --git a/src/main/kotlin/app/revanced/extensions/Extensions.kt b/src/main/kotlin/app/revanced/extensions/Extensions.kt index 226f4b14..0a00f5dd 100644 --- a/src/main/kotlin/app/revanced/extensions/Extensions.kt +++ b/src/main/kotlin/app/revanced/extensions/Extensions.kt @@ -2,12 +2,11 @@ package app.revanced.extensions import app.revanced.patcher.data.BytecodeContext import app.revanced.patcher.extensions.InstructionExtensions.addInstruction -import app.revanced.patcher.extensions.MethodFingerprintExtensions.name import app.revanced.patcher.fingerprint.method.impl.MethodFingerprint import app.revanced.patcher.patch.PatchException import app.revanced.patcher.util.proxy.mutableTypes.MutableClass import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod -import app.revanced.patches.shared.mapping.misc.patch.ResourceMappingPatch +import app.revanced.patches.shared.mapping.misc.ResourceMappingPatch import com.android.tools.smali.dexlib2.Opcode import com.android.tools.smali.dexlib2.iface.Method import com.android.tools.smali.dexlib2.iface.instruction.WideLiteralInstruction @@ -20,7 +19,7 @@ import org.w3c.dom.Node * @return The [PatchException]. */ val MethodFingerprint.exception - get() = PatchException("Failed to resolve $name") + get() = PatchException("Failed to resolve ${this.javaClass.simpleName}") /** * Find the [MutableMethod] from a given [Method] in a [MutableClass]. @@ -77,22 +76,21 @@ fun Method.findIndexForIdResource(resourceName: String): Int { * * @return the first constant instruction with the value, or -1 if not found. */ -fun Method.indexOfFirstConstantInstructionValue(constantValue: Long): Int { - return implementation?.let { - it.instructions.indexOfFirst { instruction -> - instruction.opcode == Opcode.CONST && (instruction as WideLiteralInstruction).wideLiteral == constantValue - } - } ?: -1 -} +fun Method.indexOfFirstConstantInstructionValue(constantValue: Long) = implementation?.let { + it.instructions.indexOfFirst { instruction -> + instruction.opcode == Opcode.CONST && (instruction as WideLiteralInstruction).wideLiteral == constantValue + } +} ?: -1 + /** * Check if the method contains a constant with the given value. * * @return if the method contains a constant with the given value. */ -fun Method.containsConstantInstructionValue(constantValue: Long): Boolean { - return indexOfFirstConstantInstructionValue(constantValue) >= 0 -} +fun Method.containsConstantInstructionValue(constantValue: Long) = + indexOfFirstConstantInstructionValue(constantValue) >= 0 + /** * Traverse the class hierarchy starting from the given root class. diff --git a/src/main/kotlin/app/revanced/meta/JsonGenerator.kt b/src/main/kotlin/app/revanced/meta/JsonGenerator.kt index 3be7793f..dea128a7 100644 --- a/src/main/kotlin/app/revanced/meta/JsonGenerator.kt +++ b/src/main/kotlin/app/revanced/meta/JsonGenerator.kt @@ -1,67 +1,43 @@ package app.revanced.meta -import app.revanced.patcher.extensions.PatchExtensions.compatiblePackages -import app.revanced.patcher.extensions.PatchExtensions.dependencies -import app.revanced.patcher.extensions.PatchExtensions.description -import app.revanced.patcher.extensions.PatchExtensions.include -import app.revanced.patcher.extensions.PatchExtensions.options -import app.revanced.patcher.extensions.PatchExtensions.patchName -import app.revanced.patcher.patch.PatchOption +import app.revanced.patcher.PatchSet +import app.revanced.patcher.patch.Patch import com.google.gson.GsonBuilder import java.io.File internal class JsonGenerator : PatchesFileGenerator { - override fun generate(bundle: PatchBundlePatches) { - val patches = bundle.map { - JsonPatch( - it.patchName, - it.description ?: "This patch has no description.", - !it.include, - it.options?.map { option -> - JsonPatch.Option( - option.key, - option.title, - option.description, - option.required, - option.let { listOption -> - if (listOption is PatchOption.ListOption<*>) { - listOption.options.toMutableList().toTypedArray() - } else null - } - ) - }?.toTypedArray() ?: emptyArray(), - it.dependencies?.map { dep -> - dep.java.patchName - }?.toTypedArray() ?: emptyArray(), - it.compatiblePackages?.map { pkg -> - JsonPatch.CompatiblePackage(pkg.name, pkg.versions) - }?.toTypedArray() ?: emptyArray() - ) - } - - val json = File("patches.json") - json.writeText(GsonBuilder().serializeNulls().create().toJson(patches)) + override fun generate(patches: PatchSet) = patches.map { + JsonPatch( + it.name!!, + it.description, + it.compatiblePackages, + it.dependencies?.map { dependency -> dependency::class.java.name }?.toSet(), + it.use, + it.requiresIntegrations, + it.options.values.map { option -> + JsonPatch.Option(option.key, option.value, option.title, option.description, option.required) + } + ) + }.let { + File("patches.json").writeText(GsonBuilder().serializeNulls().create().toJson(it)) } + @Suppress("unused") private class JsonPatch( - val name: String, - val description: String, - val excluded: Boolean, - val options: Array