mirror of
https://github.com/ksyasuda/SubMiner.git
synced 2026-07-27 16:49:51 -07:00
feat(launcher): add post-playback history menu with previous episode
- After a history episode ends or mpv closes, show a menu to play the previous/next episode, rewatch, browse, or quit, looping back to the same series - Add findPreviousEpisode to step backward within and across season directories - Add quit option to the initial history series-action menu - Dedupe signal-handler registration in playback-command so repeated history sessions don't stack SIGINT/SIGTERM handlers - Update README and docs-site for the new history flow
This commit is contained in:
+8
-6
@@ -21,7 +21,7 @@ import { runDictionaryCommand } from './commands/dictionary-command.js';
|
||||
import { runLogsCommand } from './commands/logs-command.js';
|
||||
import { runStatsCommand } from './commands/stats-command.js';
|
||||
import { runJellyfinCommand } from './commands/jellyfin-command.js';
|
||||
import { runHistoryCommand } from './commands/history-command.js';
|
||||
import { runHistorySession } from './commands/history-command.js';
|
||||
import { runSyncCommand } from './commands/sync-command.js';
|
||||
import { runPlaybackCommand } from './commands/playback-command.js';
|
||||
import { runUpdateCommand } from './commands/update-command.js';
|
||||
@@ -149,13 +149,15 @@ async function main(): Promise<void> {
|
||||
}
|
||||
|
||||
if (appContext.args.history) {
|
||||
const selected = await runHistoryCommand(appContext);
|
||||
if (!selected) {
|
||||
const played = await runHistorySession(appContext, async (videoPath) => {
|
||||
appContext.args.target = videoPath;
|
||||
appContext.args.targetKind = 'file';
|
||||
await runPlaybackCommand(appContext);
|
||||
});
|
||||
if (!played) {
|
||||
log('info', args.logLevel, 'No watch history selection made, exiting');
|
||||
return;
|
||||
}
|
||||
appContext.args.target = selected;
|
||||
appContext.args.targetKind = 'file';
|
||||
return;
|
||||
}
|
||||
|
||||
await runPlaybackCommand(appContext);
|
||||
|
||||
Reference in New Issue
Block a user