mirror of
https://github.com/arichornlover/uYouEnhanced.git
synced 2026-04-21 03:32:08 +00:00
Re-add uYou Key removeYouTubeAds for uYou Workaround
I accidentally removed it when updating the code from PoomSmart’s YouTube-X.
This commit is contained in:
parent
94d53814ca
commit
0deaf482c3
1 changed files with 24 additions and 20 deletions
|
|
@ -90,22 +90,24 @@ static int contrastMode() {
|
||||||
// Workaround: uYou 3.0.3 Adblock fix - @PoomSmart
|
// Workaround: uYou 3.0.3 Adblock fix - @PoomSmart
|
||||||
%hook YTReelInfinitePlaybackDataSource
|
%hook YTReelInfinitePlaybackDataSource
|
||||||
- (void)setReels:(NSMutableOrderedSet <YTReelModel *> *)reels {
|
- (void)setReels:(NSMutableOrderedSet <YTReelModel *> *)reels {
|
||||||
[reels removeObjectsAtIndexes:[reels indexesOfObjectsPassingTest:^BOOL(YTReelModel *obj, NSUInteger idx, BOOL *stop) {
|
if ([NSUserDefaults.standardUserDefaults boolForKey:@"removeYouTubeAds"]) {
|
||||||
return [obj respondsToSelector:@selector(videoType)] ? obj.videoType == 3 : NO;
|
[reels removeObjectsAtIndexes:[reels indexesOfObjectsPassingTest:^BOOL(YTReelModel *obj, NSUInteger idx, BOOL *stop) {
|
||||||
}]];
|
return [obj respondsToSelector:@selector(videoType)] ? obj.videoType == 3 : NO;
|
||||||
|
}]];
|
||||||
|
}
|
||||||
%orig;
|
%orig;
|
||||||
}
|
}
|
||||||
%end
|
%end
|
||||||
|
|
||||||
%hook YTAdsInnerTubeContextDecorator
|
%hook YTAdsInnerTubeContextDecorator
|
||||||
- (void)decorateContext:(id)context {
|
- (void)decorateContext:(id)context {
|
||||||
if ([NSUserDefaults.standardUserDefaults boolForKey:@"removeYouTubeAds"]) {}
|
if ([NSUserDefaults.standardUserDefaults boolForKey:@"removeYouTubeAds"]) {}
|
||||||
}
|
}
|
||||||
%end
|
%end
|
||||||
|
|
||||||
%hook YTAccountScopedAdsInnerTubeContextDecorator
|
%hook YTAccountScopedAdsInnerTubeContextDecorator
|
||||||
- (void)decorateContext:(id)context {
|
- (void)decorateContext:(id)context {
|
||||||
if ([NSUserDefaults.standardUserDefaults boolForKey:@"removeYouTubeAds"]) {}
|
if ([NSUserDefaults.standardUserDefaults boolForKey:@"removeYouTubeAds"]) {}
|
||||||
}
|
}
|
||||||
%end
|
%end
|
||||||
|
|
||||||
|
|
@ -148,21 +150,23 @@ NSData *cellDividerData;
|
||||||
|
|
||||||
%hook YTInnerTubeCollectionViewController
|
%hook YTInnerTubeCollectionViewController
|
||||||
- (void)loadWithModel:(YTISectionListRenderer *)model {
|
- (void)loadWithModel:(YTISectionListRenderer *)model {
|
||||||
if ([model isKindOfClass:%c(YTISectionListRenderer)]) {
|
if ([NSUserDefaults.standardUserDefaults boolForKey:@"removeYouTubeAds"]) {
|
||||||
NSMutableArray <YTISectionListSupportedRenderers *> *contentsArray = model.contentsArray;
|
if ([model isKindOfClass:%c(YTISectionListRenderer)]) {
|
||||||
NSIndexSet *removeIndexes = [contentsArray indexesOfObjectsPassingTest:^BOOL(YTISectionListSupportedRenderers *renderers, NSUInteger idx, BOOL *stop) {
|
NSMutableArray <YTISectionListSupportedRenderers *> *contentsArray = model.contentsArray;
|
||||||
if (![renderers isKindOfClass:%c(YTISectionListSupportedRenderers)])
|
NSIndexSet *removeIndexes = [contentsArray indexesOfObjectsPassingTest:^BOOL(YTISectionListSupportedRenderers *renderers, NSUInteger idx, BOOL *stop) {
|
||||||
return NO;
|
if (![renderers isKindOfClass:%c(YTISectionListSupportedRenderers)])
|
||||||
YTIItemSectionRenderer *sectionRenderer = renderers.itemSectionRenderer;
|
return NO;
|
||||||
YTIItemSectionSupportedRenderers *firstObject = [sectionRenderer.contentsArray firstObject];
|
YTIItemSectionRenderer *sectionRenderer = renderers.itemSectionRenderer;
|
||||||
YTIElementRenderer *elementRenderer = firstObject.elementRenderer;
|
YTIItemSectionSupportedRenderers *firstObject = [sectionRenderer.contentsArray firstObject];
|
||||||
NSString *description = [elementRenderer description];
|
YTIElementRenderer *elementRenderer = firstObject.elementRenderer;
|
||||||
return isAdString(description)
|
NSString *description = [elementRenderer description];
|
||||||
|| [description containsString:@"post_shelf"]
|
return isAdString(description)
|
||||||
|| [description containsString:@"product_carousel"]
|
|| [description containsString:@"post_shelf"]
|
||||||
|| [description containsString:@"statement_banner"];
|
|| [description containsString:@"product_carousel"]
|
||||||
}];
|
|| [description containsString:@"statement_banner"];
|
||||||
[contentsArray removeObjectsAtIndexes:removeIndexes];
|
}];
|
||||||
|
[contentsArray removeObjectsAtIndexes:removeIndexes];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
%orig;
|
%orig;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue