Description
Checklist
(fullfilled)
- I made sure that there are no existing issues - open or closed - which I could contribute my information to.
- I have read the FAQ and my problem isn't listed.
- I'm aware that this is a request for NewPipe itself and that requests for adding a new service need to be made at NewPipeExtractor.
- I have taken the time to fill in all the required details. I understand that the feature request will be dismissed otherwise.
- This issue contains only one feature request.
- I have read and understood the contribution guidelines.
Feature description
Enhance the "add to playlist" dialog to address the problem described in the "Why do you want this feature" section below.
I'm suggesting three solutions in the order of increasing complexity and power, but either one will do.
Throughout these suggestions, the term current medium denotes the audio or video the "add to playlist" dialog is referring to.
(a) Long-tap playlist to remove medium
Allow to remove the current medium from a playlist by long-tapping that playlist. The user should be asked for confirmation or be briefly informed about the removal.
Notes on (a)
- If the playlist does't contain the current medium (i. e. it's not greyed-out), there's nothing to do except informing the user about it.
- It remains to be discussed whether in the case of multiple occurrences in the playlist, long-tapping it should remove all occurrences or just the last (i. e. most recently added) occurrence of the medium.
(b) Toggle add/remove
Provide an option "remove from playlist if added twice" that alters the "add to playlist" menu so tapping a playlist toggles between "added" and "removed".
Notes on (b)
- Activating this option implies you can't add a medium multiple times to the same playlist anymore (which I'm sure many users would be perfectly fine with).
- Re-adding doesn't have to strictly undo removing (otherwise, you'd have to store the order of media beyond their removal) but can add the previously removed medium to the end of the playlist as usual. (On a side note, some users might enjoy "remove, then re-add" as a neat shortcut to quickly moving an already included medium to the end of the playlist.)
(c) Alternate dialog mode: "Remove from playlist"
In the header of the "add to playlist" dialog, provide a new button (next to "new playlist") that toggles add /remove modes.
The add mode works like established.
The remove mode works as follows:
- all playlists that don't contain the current medium are temporarily hidden, leaving only greyed-out playlists visible
Note on font style
In remove mode, contrast should be more pronounced than pale-grey-on-white (e. g. red on white) while still clearly distiguishable from black-on-white add mode, to raise awareness this is a remove list. - the user is verbally or symbolically (e. g. via red X symbox next to them) advised to tap any of these playlists in order to remove the medium from it
- tapping one of those playlists (or X symbols) then indeed removes the medium from that playlist (after confirmation)
- the user is briefly informed about the removal and the filtered list updated.
Notes on (c)
- As a bonus of such a remove mode, the filtered view also provides a quick overview of all playlists that contain the current medium. This addresses a rather frequent need that otherwise requires scrolling through the entire list of playlists and spotting the greyed-out ones.
With all three solutions, the long-tap menu item "add to playlist" in media listings, as well as the long-tap blurb to the "add to playlist" button in audio/video details, should be reworded to take account of both possibilities, adding and removing. Maybe just call it "select playlists"?
Why do you want this feature?
Playlisting a medium (i. e. deciding which (local) playlists it belongs) is often done best while actually hearing/watching it. The "add to playlist / remove from playlist" workflow should be consistent, easy and non-disruptive throughout app views, whether you're in details view or in the long-tap context menu of a medium in any listing (queue, search results, other playlists, channels, ...), and regardless of anything playing or paused in the popup/background player.
Adding is enjoyably easy: When in the medium's details view (main player), tap the "add to playlist" button, then the playlist. When in any media listing (queue, search results, ...), long-tap the medium to see the context menu, there tap "add to playlist", then the playlist.
Removing is much more convoluted - if you want to remove the current medium from a playlist (e. g. because the content turns out to be different, or you inadvertently tapped a wrong playlist when adding), NewPipe requires you to
- memorize the name of the medium, as well as the name of the wrong playlist
- navigate to the playlists tab in NewPipe's home screen, thereby possibly stopping video playback or having to switch to popup or background play,
- find and open the memorized playlist
- find and long-tap the memorized medium, then choose "delete"
- finally, continue where you left at 1. - good luck trying!
The actual procedure to restore the prior state heavily depends on that prior state: If playback stopped and there was no queue, you may reopen the medium from the history tab. If there was a queue and you switched to the popup or background player, you may try to switch back to main player (hoping it won't flush the queue). If that doesn't work or you got lost somehow, you may have to recreate the queue alltogether.
In any case, both adding and removing the current medium should be easily available right where you are, like in a simple combined "select playlists" dialog.