mirror of
https://github.com/ksyasuda/SubMiner.git
synced 2026-06-10 03:13:32 -07:00
8111deac44
- New toggleNotificationHistory (Ctrl+N) session-scoped history panel; slides in from same edge as notification stack - Overlay error/recovery toast follows notifications.overlayPosition; stack and history side seeded at startup - Cold managed background startup initializes tray and visible overlay shell before tokenization warmups finish - Add Update button to overlay update-available notifications - Fix Ctrl+S sentence-card flow: only Anki progress notification, no duplicate status toast - Fix overlay notification close/actions clickability above subtitle bars on Linux - Increase pause-until-ready default timeout from 15s to 30s
30 lines
1.3 KiB
Markdown
30 lines
1.3 KiB
Markdown
<!-- read_when: changing managed mpv startup, pause-until-ready, or visible overlay boot ordering -->
|
|
|
|
# Early Managed Overlay Startup Design
|
|
|
|
Status: approved
|
|
Date: 2026-06-06
|
|
|
|
## Problem
|
|
|
|
Managed mpv startup can pause playback immediately, then leave SubMiner's tray and visible overlay
|
|
unavailable until Yomitan/tokenization warmups finish. Startup notifications therefore miss the
|
|
overlay surface and fall back to non-overlay status paths.
|
|
|
|
## Chosen Approach
|
|
|
|
For cold `--start --background --managed-playback` launches, handle initial args before waiting for
|
|
the deferred overlay warmup. That lets the tray and visible overlay shell initialize immediately
|
|
while the existing tokenization warmups continue in the background.
|
|
|
|
The mpv plugin pause gate stays armed. Playback release still waits for SubMiner's autoplay-ready
|
|
signal, which is emitted only after tokenization warmup and visible-overlay readiness. Existing
|
|
second-instance attach behavior remains unchanged: when the launcher finds an already-running
|
|
background app, it sends the same control command to that process and reuses its warmups/tokenizer.
|
|
|
|
## Checks
|
|
|
|
- Add a startup ordering regression test for managed background playback.
|
|
- Keep the existing deferred startup ordering for non-managed launches.
|
|
- Run the startup/runtime test slice plus SubMiner verification lane.
|