sudacode
eef4500599
feat(launcher): add -H/--history command to browse local watch history ( #136 )
2026-07-05 16:46:05 -07:00
sudacode
36a3704815
fix(youtube): parse mpv EDL stream URLs with byte-length guards ( #134 )
2026-07-02 01:37:37 -07:00
sudacode
359cb0a301
Normalize generated Anki audio by default ( #135 )
2026-07-02 00:34:16 -07:00
sudacode
4b10e85053
chore(release): prepare v0.17.2
2026-06-28 23:03:18 -07:00
sudacode
c942a2cf2d
fFix(youtube): recover source URL for background media cache on direct mpv open ( #132 )
2026-06-28 22:46:11 -07:00
sudacode
f65afa6046
feat(youtube): notify on manual picker open and show success after track load ( #133 )
2026-06-28 22:43:16 -07:00
sudacode
0008b55b70
chore(release): prepare v0.17.1
2026-06-27 22:59:28 -07:00
sudacode
36f94151b8
fix(logs): use local date for log filenames and expand export redaction ( #131 )
2026-06-27 21:08:11 -07:00
sudacode
5326ad32f5
feat(youtube): add mediaCache mode and safer stream media extraction ( #130 )
2026-06-27 19:20:18 -07:00
sudacode
d199376364
chore(release): prepare v0.17.0
2026-06-15 01:58:42 -07:00
sudacode
70da3ee8bd
Fix Windows Anki startup and overlay regressions ( #128 )
2026-06-14 20:51:56 -07:00
sudacode
aa8eb753f6
fix: scope prerelease note reuse by version
2026-06-14 18:04:03 -07:00
sudacode
a117c5759c
fix(linux): auto-install managed plugin copy; include in asset updates ( #127 )
2026-06-14 17:25:28 -07:00
sudacode
ae7e6f82a8
fix(overlay): restore macOS Yomitan popup focus without breaking click-away ( #125 )
2026-06-14 16:46:13 -07:00
sudacode
1158be5b39
fix(overlay): preserve visible state across playlist item transitions ( #124 )
2026-06-12 23:38:54 -07:00
sudacode
33e767458f
refactor(main): split main.ts into focused runtime modules ( #123 )
2026-06-12 17:35:46 -07:00
sudacode
94a65416ae
fix(stats): strip Season N suffix from AniList title searches ( #121 )
2026-06-12 01:07:11 -07:00
sudacode
0a384a22c9
Replace subtitle delay actions with native mpv keybindings ( #120 )
2026-06-12 00:03:06 -07:00
sudacode
b3b45521b6
fix(release): preserve attribution placement; default update notifs to o
...
- Move What's Changed/New Contributors before Installation in release notes
- Preserve committed attribution when regenerating via writeReleaseNotesForVersion
- Change notificationType default from 'both' to 'overlay' for new installs
2026-06-10 23:53:31 -07:00
sudacode
131b23efa9
chore(release): prepare v0.16.0
2026-06-10 23:05:37 -07:00
sudacode
e2afceb492
fix(anki): write sentence card audio only to sentence audio field ( #118 )
2026-06-10 22:51:19 -07:00
sudacode
7be1843c41
feat(notifications): add overlay notifications with position config ( #110 )
2026-06-10 22:46:52 -07:00
sudacode
2007e28be8
feat(aniskip): move intro detection from mpv plugin to app runtime ( #117 )
2026-06-09 23:55:43 -07:00
sudacode
d5bfdcae7b
fix(stats): repair legacy combined-season anime rows on startup ( #116 )
2026-06-09 12:41:07 -07:00
sudacode
311f1e8ee5
feat(stats): speed up session maintenance and improve stats UI ( #111 )
2026-06-08 02:20:52 -07:00
sudacode
e6a16a069b
fix(anilist): mark entry completed when final episode is reached ( #115 )
2026-06-07 23:45:09 -07:00
Autumn (Bee)
af67c53dd6
[codex] Restart Jellyfin remote session after setup login ( #112 )
2026-06-06 11:52:16 -07:00
sudacode
ea79e331fa
build: make deps initializes submodules before installing JS deps
...
- Add `submodules` target that runs `git submodule update --init --recursive`
- `deps` now depends on `submodules` so fresh checkouts work out of the box
- Update docs to replace manual install steps with `make deps`
- Fix Windows build-from-source steps to include stats and submodule init
2026-06-06 01:25:01 -07:00
sudacode
ee89b0c8a9
feat(release): add contributor attribution to release notes ( #114 )
2026-06-06 01:07:47 -07:00
sudacode
f2fd58cd2b
docs(changelog): require reconciled fragments, not just new ones ( #113 )
2026-06-06 00:55:34 -07:00
sudacode
1280a30216
chore(release): prepare 0.15.2
2026-06-02 23:45:03 -07:00
sudacode
4cc6c12dc7
chore(vendor): update subminer-yomitan submodule ( #109 )
2026-06-02 00:37:45 -07:00
sudacode
425004879a
fix(anki): align animated AVIF clip bounds to frame boundaries ( #108 )
2026-06-01 15:20:06 -07:00
sudacode
76f99e6518
fix(overlay): correct Hyprland fullscreen overlay alignment on Linux ( #107 )
2026-06-01 02:12:16 -07:00
sudacode
f1e260e996
fix(overlay): fix macOS overlay interactivity and focus after autoplay ( #106 )
2026-06-01 01:34:27 -07:00
sudacode
54e90754ef
chore: release 0.15.1
2026-05-31 22:40:40 -07:00
sudacode
487143802a
feat(keybindings): add mouse button support for mpv keybindings ( #103 )
2026-05-31 22:22:38 -07:00
sudacode
e6a004ab8b
Fix Windows mpv shortcut attachment to background app ( #105 )
2026-05-31 21:46:00 -07:00
sudacode
b510c54875
fix(overlay): restore mpv focus and pointer state on macOS ( #104 )
2026-05-31 21:25:04 -07:00
sudacode
e1ea464bc9
fix(overlay): Linux X11/XWayland stacking, stale pause state, multi-copy selector ( #101 )
2026-05-31 20:59:18 -07:00
sudacode
d719b346e0
fix(overlay): use Lua dispatch syntax for Hyprland 0.55+ Lua configs ( #99 )
2026-05-29 00:13:31 -07:00
sudacode
a1da3dcdc8
docs(troubleshooting): fix Hyprland rules, add character dictionary + see also
...
Rewrite Hyprland overlay window-rule guidance with current Lua (hl.window_rule)
config and legacy hyprland.conf syntax, and note SubMiner's automatic hyprctl
placement. Add a Character Dictionary troubleshooting section (no AniList auth
required) and a See Also index linking each feature's own troubleshooting page.
2026-05-28 23:53:07 -07:00
sudacode
9927ef1581
docs(character-dictionary): correct auth requirement and add portrait do
...
- AniList auth not required for character dictionary; uses public GraphQL
- Document nameMatchImagesEnabled and inline portrait behavior
- Clarify AniList auth is only for watch-progress sync
- Delete stale release/release-notes.md
2026-05-28 23:30:19 -07:00
sudacode
38dbce517c
chore(release): 0.15.0
2026-05-28 19:46:05 -07:00
sudacode
91c8eb8faf
feat(changelog): add nested bullet format for release notes
...
- Prompt now requests short top-level bullets with nested change/benefit/action sub-bullets in release-notes mode
- CHANGELOG mode keeps single-line bullets unchanged
- Tests assert new prompt constraints are present
2026-05-28 02:08:44 -07:00
sudacode
eed0a6a243
feat: use cached annotations on subtitle change and skip pre-warmed cues ( #97 )
2026-05-28 00:50:41 -07:00
sudacode
d33009d4a3
style: update subtitle text shadow, JLPT underlines, and frequency topX default ( #96 )
...
* style: update subtitle text shadow, JLPT underlines, and frequency topX
- Replace directional text-shadow with 4-corner outline shadow for sharper readability
- Increase JLPT level border-bottom from 2px to 3px; add drop-shadow filter
- Add margin-left 0.18em to character image token
- Raise frequencyDictionary topX default from 1000 to 10000
* docs: add subtitle style changelog fragment
* docs: update generated config examples
* style: wrap long textShadow strings and add blank line in CSS
2026-05-28 00:18:39 -07:00
sudacode
8d0535f3ca
feat: add Anki deck dropdown with Yomitan auto-fill in settings ( #95 )
2026-05-27 23:13:43 -07:00
sudacode
c30cce0a14
chore: consolidate changelog fragments for release
...
- Merge per-fix fragments into grouped topic files (jellyfin, overlay, anki, character-dictionary, etc.)
- Improve auto-update fragment wording for clarity
2026-05-27 14:56:49 -07:00
sudacode
3e6591e390
fix: include audio padding in animated AVIF source range ( #94 )
2026-05-27 14:06:48 -07:00