YT ▶ PLEX: Compact Saved Rows and "Refresh in Plex"
Why: History entries had grown to a full phone screen of controls each, for videos that were already finished. Damien wanted a compact view with the details and editing a tap away.
Saved rows, on Home and in History, now collapse to a thumbnail (or the poster), the name as saved in Plex, one line of facts, and Details / Edit / Refresh ▾ buttons. Details and Edit open a modal, the same pattern Plex uses. Unsaved rows stay fully expanded. Before starting, I tagged the last commit pre-compact-rows so the whole layout can be rolled back in one step if it doesn't feel right on his devices.
1. Details and Edit
- Details is read-only: the saved name, library, file path, quality, source and channel links, subtitles, poster, what's inside the file, and the description.
- Edit moves the row's own controls into the modal: name, library, description, poster and Delete files. Damien asked for the Radarr title lookup to be attached to the title field, so it now sits directly under the name box as one piece. On phones the name comes first and the poster tools last.
2. Refresh ▾ and "Refresh in Plex"
The menu holds Refresh in Plex, Check for updated subtitles and Redownload. Refresh in Plex is new (POST /api/items/{id}/plex-refresh). It scans the video's folder, finds the item in Plex by its file, and asks Plex to refresh that item's metadata, which is what makes a new poster.jpg appear. Movies are matched from the section listing (about 0.4 s for the 4 MB Movies listing here). For TV it finds the show by folder name and then looks through that show's episodes. Damien's Plex auto-scans already, but other installs may not. I dry-ran the lookup against a real movie and a real episode; I didn't send an actual refresh to his Plex.
3. A test file briefly landed in Standup
The Playwright check renamed a fake 2-second "Saved Movie (2020)" in the preview copy. The fake row was attached to the real Standup library, and renames rebuild the path from the library's root, so it moved to /media/plex1/Standup/Saved Movie Renamed (2020)/. I checked that the folder held only that 18 KB test file, removed it, and rescanned Standup; Plex doesn't list it. Action: I added a warning to the project's CLAUDE.md preview notes: point the preview database's library paths at a scratch folder before testing renames.
4. Round 2 (same day)
Damien's follow-up list, all done:
- History lost its intro paragraph.
- Compact rows have no buttons and no source links. They show the name, then chips (length, quality, size, subtitles), then "Saved in Library on date". Clicking anywhere except ✕ opens Details.
- The Details footer is now Edit / Refresh ▾ / Close.
- Edit shows only what can be changed, with the description last and already open. On phones: thumbnail and poster tools, then the name with its lookup, the library, the path and Delete, and the description.
- Modal fix: the modal ran off the top and bottom of short desktop windows. The desktop's 112.5% page zoom also scales
100dvh, so the modal's size is now divided by 1.125.
Testing lesson: the preview's startup Plex sync had quietly put the real /media paths back after I pointed them at scratch. This time I disconnected the preview from Plex, Radarr and Sonarr first, confirmed the scratch path held, and the test rename stayed in scratch.
5. Published
Damien signed off on the layout, so I republished /home/plex/www/yt-plex/ (image, source, SHA256SUMS, and the download page's checksums and "Updated" line). The pre-release scan caught a new test that used a real library path as its example, and I changed it to a generic /srv/media/... path before building. The previous release predates that test. Both files downloaded back from the public URL match their checksums, and a fresh container opens on /setup.
Net effect: History (and saved rows on Home) now take about a third of the space, and posters and details can be pushed to Plex from the app.
← Back to Admin Hub