1f2b5e583c7ecb7aa9d82ee9f47797fe207ee81f
Three Phase-12 wins. 1. Streamlink --twitch-disable-ads is now a setting (default on, since most users hit this — Twitch mid-roll ads otherwise get embedded into the VOD output as black-screen audio gaps). Off only when the user explicitly opts out via the new checkbox in Download Settings. Applied in downloadVODPart args; clip downloads are unaffected (Twitch clips do not carry mid-roll ads). 2. Right-click context menu on queue items. Items vary by status: pending/paused -> Move to top, Move to bottom; failed -> Retry; completed -> Open file (when 1 output) / Show in folder; always -> Copy URL, Open on Twitch, Remove from queue. Move-to-top/ bottom calls existing reorderQueue IPC. Menu auto-dismisses on outside-click / Escape / scroll, repositions to stay inside the viewport. 3. Removed the global currentDownloadCancelled flag. It was a leftover from before per-item tracking — every site that set it (pause-download / cancel-download / remove-from-queue) already added every active item to cancelledItemIds via the activeDownloads loop. The four read sites (downloadVODPart close handler, processOneQueueItem retry-loop guard, processDownloadMergeGroup phase 1 and phase 3 guards, splitMergedFile loop) now check cancelledItemIds.has(itemId) directly. splitMergedFile reads from its itemId parameter (added in cycle 1) so the per-item intent threads through correctly. Net: -8 lines, one less global flag to reason about, no behaviour change for the intended cases (per-item cancel via remove + bulk cancel via pause/cancel both still work because they each populate the per-item set). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Description
No description provided
5.7 MiB
Releases
230
Twitch VOD Manager 1.0.23
Latest
Languages
TypeScript
74.7%
CSS
12.6%
HTML
7.1%
JavaScript
5.6%