podverse / podverse-rn

Podverse mobile app written in React Native for iOS, Android, and F-Droid
https://podverse.fm/about
GNU Affero General Public License v3.0
218 stars 36 forks source link

Quickly Mark Episodes as "Read" #2143

Open expatri0tic opened 9 months ago

expatri0tic commented 9 months ago

Is your feature request related to a problem? Please describe.

I'm trying to stop using non-FOSS shit (even though I'm an iOS user). My friend linkinparkrulz (Jordan) put me on to this app for sending sats to my favorite pod, Max at Ungovernable Misfits. My issue is that I've already listened to the first 167 episodes (more actually since it includes early RHR rips) of TFTC (Tales from the Crypt) and it's EXTREMELY slow to mark them as played. Essentially I have to hit the triple dots, click mark as read, then wait as it takes effect for a good 2 seconds. EACH episode is like this. Multiplied by trying to import 5-6 shows I've already watched through 1/3 to 1/2 of their shows already.

Describe the solution you'd like I'd love to be able to long press the episode and have a check-box appear for selecting multiple episodes all at once (plus an option for select-all) Be able to then mark many as read/unread all at once or all of them as read/unread all at once.

Describe alternatives you've considered Alternative solution would be to to be able to swipe the episode left or right in one motion like many iOS apps allow for marking emails as read/unread etc

Additional context NA

Please feel free to join our Discord and chat with us in the #dev channel if you'd like to work on this.

lovegaoshi commented 9 months ago

dunno how much this actually helps but I have this feature in mine: I keep the current podcast/playlist in a hook, and expose a toggleSelected (manipulating an array of bool) to keep track of what is selected; then pass on the episodes to whatever menu function selected. https://github.com/lovegaoshi/azusa-player-mobile/blob/74ed40cae268ef12d86ef22d01296260ca58e2ac/src/components/playlist/SongList/SongList.tsx#L104