feat(anime): auto-open Jimaku for Anime Browser playback

- Add hot-reloadable `anime.autoOpenJimaku` setting
- Pause and resume playback around subtitle selection
- Brand Anime Browser surfaces with the SubMiner logo
This commit is contained in:
2026-09-02 23:04:39 -07:00
parent 18beac13f4
commit 516fadd530
27 changed files with 403 additions and 11 deletions
+7
View File
@@ -202,11 +202,18 @@ there is nowhere to write them and the status bar says so.
| Key | Purpose |
| ------------------------ | ----------------------------------------------------------------------- |
| `anime.autoOpenJimaku` | Pause new episodes and open Jimaku for Japanese subtitles. |
| `anime.repos` | Repository index URLs. Empty by default. |
| `anime.extensionsDir` | Where APKs are read from. Empty uses `<userData>/anime-extensions`. |
| `anime.preferredQuality` | Preferred stream label, matched as a substring (for example `1080`). |
| `anime.bridgeDir` | A bridge bundle to run instead of the downloaded one. Empty by default. |
Enable `anime.autoOpenJimaku` to hand each newly loaded Anime Browser episode
to Jimaku. SubMiner pauses playback, closes the in-player browser if it is open,
and opens Jimaku with the source title, season, and episode already filled in.
Playback resumes after the selected subtitle loads. Closing Jimaku also releases
the automatic pause, while playback that was already paused stays paused.
## Source settings
Most extensions need configuration before they return anything — a server
+2
View File
@@ -1165,6 +1165,7 @@ Sources for the [anime browser](/anime-browser). SubMiner ships no extension rep
```json
{
"anime": {
"autoOpenJimaku": false,
"extensionsDir": "",
"repos": [],
"preferredQuality": ""
@@ -1174,6 +1175,7 @@ Sources for the [anime browser](/anime-browser). SubMiner ships no extension rep
| Option | Type | Default | Description |
| ------------------------ | ---------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `anime.autoOpenJimaku` | `boolean` | `false` | Pause Anime Browser playback and open Jimaku when an episode loads. Playback resumes after a subtitle loads or the modal closes. Playback that was already paused stays paused. |
| `anime.extensionsDir` | `string` | `""` | Directory holding Aniyomi extension `.apk` files. Empty uses `<userData>/anime-extensions`. |
| `anime.repos` | `string[]` | `[]` | Extension repository index URLs. Any `https` URL ending in `.json` works; `index.min.json` is only the common name. |
| `anime.preferredQuality` | `string` | `""` | Preferred stream quality label, matched as a substring (for example `1080`). Empty keeps the source's own order. A Japanese-audio entry always outranks a higher-quality dub. |
+2 -1
View File
@@ -626,9 +626,10 @@
// Anime Browser
// Anime browser sources. SubMiner ships no extension repositories and bundles no sources;
// add a repository index URL here (or drop .apk files in the extensions directory) to have any.
// Hot-reload: anime changes apply the next time the anime browser opens.
// Hot-reload: autoOpenJimaku applies to the next episode; other anime changes apply the next time the anime browser opens.
// ==========================================
"anime": {
"autoOpenJimaku": false, // Pause Anime Browser playback and open Jimaku when an episode loads. Playback resumes after a subtitle loads or the modal closes. Values: true | false
"extensionsDir": "", // Directory holding Aniyomi extension .apk files. Empty uses <userData>/anime-extensions.
"repos": [], // Extension repository index URLs (any https .json index, e.g. https://.../index.min.json). Empty by default; SubMiner ships no repositories.
"preferredQuality": "", // Preferred stream quality label, matched as a substring (for example: 1080). Empty uses the source order.