diff --git a/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/components/DescriptionComponentsFilter.java b/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/components/DescriptionComponentsFilter.java index 8e69ac4070..8c402b78d6 100644 --- a/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/components/DescriptionComponentsFilter.java +++ b/extensions/youtube/src/main/java/app/revanced/extension/youtube/patches/components/DescriptionComponentsFilter.java @@ -14,6 +14,9 @@ final class DescriptionComponentsFilter extends Filter { private final StringFilterGroup macroMarkersCarousel; + private final StringFilterGroup horizontalShelf; + private final ByteArrayFilterGroup cellVideoAttribute; + public DescriptionComponentsFilter() { exceptions.addPatterns( "compact_channel", @@ -35,8 +38,7 @@ public DescriptionComponentsFilter() { final StringFilterGroup attributesSection = new StringFilterGroup( Settings.HIDE_ATTRIBUTES_SECTION, - "gaming_section", - "music_section", + // "gaming_section", "music_section" "video_attributes_section" ); @@ -76,15 +78,26 @@ public DescriptionComponentsFilter() { ) ); + horizontalShelf = new StringFilterGroup( + Settings.HIDE_ATTRIBUTES_SECTION, + "horizontal_shelf.eml" + ); + + cellVideoAttribute = new ByteArrayFilterGroup( + null, + "cell_video_attribute" + ); + addPathCallbacks( aiGeneratedVideoSummarySection, askSection, attributesSection, infoCardsSection, + horizontalShelf, howThisWasMadeSection, + macroMarkersCarousel, podcastSection, - transcriptSection, - macroMarkersCarousel + transcriptSection ); } @@ -97,6 +110,10 @@ boolean isFiltered(@Nullable String identifier, String path, byte[] protobufBuff return contentIndex == 0 && macroMarkersCarouselGroupList.check(protobufBufferArray).isFiltered(); } + if (matchedGroup == horizontalShelf) { + return cellVideoAttribute.check(protobufBufferArray).isFiltered(); + } + return true; } }