mirror of
https://github.com/ksyasuda/SubMiner.git
synced 2026-03-20 12:11:28 -07:00
- Add main/renderer overlay notification pipeline with loading-state support - Preserve notificationType semantics across osd/system/both/none routing - Update plugin fallback behavior, docs/config examples, and regression tests
2.4 KiB
2.4 KiB
id, title, status, assignee, created_date, updated_date, labels, dependencies, references, priority
| id | title | status | assignee | created_date | updated_date | labels | dependencies | references | priority | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| TASK-166 | Replace OSD notifications with overlay notifications and runtime fallback | In Progress | 2026-03-16 00:00 | 2026-03-16 00:00 |
|
|
medium |
Description
Replace SubMiner's mpv OSD-first notification flow with overlay-native notifications. The visible overlay becomes the primary in-app notification surface, with fallback to mpv OSD only when the overlay is unavailable, hidden, disabled, or failed to load. Electron/system notifications remain unchanged. Existing notification copy and loading states should be refreshed to fit the richer overlay surface, especially spinner-driven loading states.
Acceptance Criteria
- #1 Main-process logical OSD notifications render on the overlay when the visible overlay is available and visible.
- #2 Logical OSD notifications fall back to actual mpv OSD when the overlay is hidden, disabled, unavailable, or fails to load.
- #3 Notification-type config semantics remain intact:
osduses the overlay-or-OSD channel,systemremains Electron notifications,bothuses both channels, andnonesuppresses notifications. - #4 Overlay notifications support richer presentation for loading/progress states, including a spinner/persistent loading state.
- #5 Regression coverage verifies routing, renderer behavior, and fallback handling.
Implementation Notes
Plan:
- Add failing tests for a pure main-process overlay notification router and a renderer overlay notification controller.
- Add overlay notification IPC/types plus renderer DOM/controller/CSS for styled toast notifications and spinner handling.
- Route existing logical OSD callsites through the new overlay-or-OSD fallback seam in main.
- Trim plugin-side direct OSD usage down to true fallback/error cases.
- Verify with targeted runtime-compat/core lanes, then escalate if runtime behavior claims remain unproven.