Add sort and filter controls to channel video tab#13488
Open
vbrankov wants to merge 1 commit into
Open
Conversation
Adds a Filter button to the playback control bar on channel stream tabs (alongside Background / Play All / Popup). Tapping it reveals a panel with the following controls: - Sort by upload date, view count, or name (ascending/descending) - Filter by age: predefined periods (1 day – 5 years) or custom input accepting natural language such as "3 months" or "2w" - Filter by title with wildcard support (prefix, suffix, infix via *) - Filter by minimum view count: presets (1K – 100M) or custom entry All channel pages are fetched in the background once the filter panel is opened. Results update progressively as pages arrive and the full list is cached in memory for the session. The implementation is entirely client-side and requires no extractor changes, making it service-agnostic (YouTube, PeerTube, SoundCloud, etc.). Closes TeamNewPipe#7729 Related: TeamNewPipe#12727, TeamNewPipe#13039, TeamNewPipe#11606, TeamNewPipe#5324
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What is it?
refactorbranchDescription of the changes in your PR
Adds sort and filter controls to the Videos tab of channel pages. A Filter button appears in the existing playback control bar (alongside Background / Play All / Popup). Tapping it reveals a panel with:
All pages are fetched in the background once the filter panel is opened. Results update progressively as pages arrive and the full list is cached in memory for the session. Sorting and filtering apply immediately as the user changes controls: no need to wait for all pages to load.
Why client-side rather than server-side
Issue #7729 has been open since 2022 and labelled requires extractor change because the assumed approach was requesting sorted results from YouTube's API. This implementation takes a different approach: all videos are fetched and sorted/filtered locally. This means:
Before/After Screenshots/Screen Record
Screen-20260509-081100.mp4
Bear in mind that this channel has over 3700 videos, which is a lot. Most channels with a few hundred videos work instantenously.
Fixes the following issue(s)
APK testing
The APK can be found by going to the "Checks" tab below the title. On the left pane, click on "CI", scroll down to "artifacts" and click "app" to download the zip file which contains the debug APK of this PR. You can find more info and a video demonstration on this wiki page.
Due diligence