From be7f98d054978afa6a187a51a712a70c920dee02 Mon Sep 17 00:00:00 2001 From: arichornlover <78001398+arichornlover@users.noreply.github.com> Date: Thu, 9 May 2024 17:22:36 -0500 Subject: [PATCH] New Option `uYou AdBlocking Workaround LITE` --- Sources/uYouPlus.xm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/Sources/uYouPlus.xm b/Sources/uYouPlus.xm index 50c7f93..0dd00e1 100644 --- a/Sources/uYouPlus.xm +++ b/Sources/uYouPlus.xm @@ -86,6 +86,33 @@ static int contrastMode() { } %end +// uYou AdBlocking Workaround LITE (This Version only removes ads from Videos/Shorts) - @PoomSmart +%group uYouAdBlockingWorkaroundLite +%hook YTReelInfinitePlaybackDataSource +- (void)setReels:(NSMutableOrderedSet *)reels { + if ([NSUserDefaults.standardUserDefaults boolForKey:@"removeYouTubeAds"]) { + [reels removeObjectsAtIndexes:[reels indexesOfObjectsPassingTest:^BOOL(YTReelModel *obj, NSUInteger idx, BOOL *stop) { + return [obj respondsToSelector:@selector(videoType)] ? obj.videoType == 3 : NO; + }]]; + } + %orig; +} +%end + +%hook YTAdsInnerTubeContextDecorator +- (void)decorateContext:(id)context { + if ([NSUserDefaults.standardUserDefaults boolForKey:@"removeYouTubeAds"]) {} +} +%end + +%hook YTAccountScopedAdsInnerTubeContextDecorator +- (void)decorateContext:(id)context { + if ([NSUserDefaults.standardUserDefaults boolForKey:@"removeYouTubeAds"]) {} +} +%end +%end + +// uYou AdBlocking Workaround - @PoomSmart %group uYouAdBlockingWorkaround // Workaround: uYou 3.0.3 Adblock fix - @PoomSmart %hook YTReelInfinitePlaybackDataSource