Jonathan Sykes
|
f804a23761
|
Add contract-checked fallback and background asset synchronization
|
2026-10-08 00:30:31 +08:00 |
|
Jonathan Sykes
|
92404563b3
|
Fail closed when worker update status is unavailable
|
2026-10-08 00:10:04 +08:00 |
|
Jonathan Sykes
|
5d1e5ec791
|
Verify explicit activation and legacy incremental migration
|
2026-10-08 00:03:14 +08:00 |
|
Jonathan Sykes
|
5b25ccaa86
|
Publish asset state atomically and reject unavailable versions
|
2026-10-07 23:56:46 +08:00 |
|
Jonathan Sykes
|
54a07a0a2a
|
Synchronize verified assets incrementally and guard update activation
|
2026-10-07 23:40:20 +08:00 |
|
Jonathan Sykes
|
84546eeb7d
|
Group all Glass Stage dependencies under the selected layout
|
2026-10-07 23:09:04 +08:00 |
|
Jonathan Sykes
|
6cb00d5073
|
Add per-file asset hashes and a rollback-compatible server manifest
|
2026-10-07 22:57:41 +08:00 |
|
Jonathan Sykes
|
be1d939afd
|
Merge branch 'codex/prewarm-next'
# Conflicts:
# frontend/index.html
|
2026-10-07 22:44:11 +08:00 |
|
Jonathan Sykes
|
d65b9e032a
|
Prewarm upcoming queue streams
|
2026-10-07 16:30:15 +08:00 |
|
Jonathan Sykes
|
fcd98b6a4d
|
Add queue prewarm candidate selection
|
2026-10-07 16:30:01 +08:00 |
|
Jonathan Sykes
|
233bf94e4c
|
Pause non-playback UI timers while the page is hidden
|
2026-10-07 03:30:57 +08:00 |
|
Jonathan Sykes
|
722df3125f
|
Add visibility-aware interval helper
|
2026-10-07 03:30:22 +08:00 |
|
Jonathan Sykes
|
2e58924971
|
Add shell consistency test between index.html and the service worker
|
2026-10-07 03:29:24 +08:00 |
|
Jonathan Sykes
|
2b286ae146
|
Stop the last song from restarting and freezing service-mode lyrics
|
2026-10-07 02:12:07 +08:00 |
|
Jonathan Sykes
|
128f8e95e3
|
Respect the notch in the Framework7 top bar, sidebar and full sheet
|
2026-10-06 09:16:49 +08:00 |
|
Jonathan Sykes
|
63ff2173d8
|
Lift player to body for iOS fullscreen so the app never shows around it
|
2026-10-06 09:14:06 +08:00 |
|
Jonathan Sykes
|
a143c8331d
|
Stop video seek loop when returning from background
|
2026-10-06 09:14:06 +08:00 |
|
Jonathan Sykes
|
3be7a7b194
|
Fix fullscreen fit gesture clash and double swipe-remove in Framework7 layout
|
2026-10-06 04:19:01 +08:00 |
|
Jonathan Sykes
|
605d21a3e2
|
Use native icons in the Framework7 sidebar
|
2026-10-06 04:13:55 +08:00 |
|
Jonathan Sykes
|
cc4fb0d5c9
|
Simplify fullscreen playback controls
|
2026-10-06 04:12:28 +08:00 |
|
Jonathan Sykes
|
af38affdbe
|
Make fullscreen video fill the viewport
|
2026-10-06 04:12:25 +08:00 |
|
Jonathan Sykes
|
034b3df7ae
|
Complete Framework7 swipe gestures
|
2026-10-06 04:12:15 +08:00 |
|
Jonathan Sykes
|
d4497b0c05
|
Restyle the Framework7 layout
|
2026-10-06 04:12:09 +08:00 |
|
Jonathan Sykes
|
a81f4ffa51
|
Refine fullscreen control overlay
|
2026-10-06 02:32:43 +08:00 |
|
Jonathan Sykes
|
1cad18826b
|
Fill viewport in fullscreen playback
|
2026-10-06 02:32:36 +08:00 |
|
Jonathan Sykes
|
1ba3f8704b
|
Style Framework7 swipe layout
|
2026-10-06 02:32:36 +08:00 |
|
Jonathan Sykes
|
0bda242a98
|
Add Framework7 Swipe layout with swipeout rows, up-next sheet and mini-bar gestures
|
2026-10-06 02:01:56 +08:00 |
|
Jonathan Sykes
|
1754933f7e
|
Polish Bento scrolling and controls with full screen coverage
|
2026-10-04 23:44:51 +08:00 |
|
Jonathan Sykes
|
4e5b1584c6
|
Restore Bento theme integration lost during recovery
|
2026-10-04 22:47:33 +08:00 |
|
Jonathan Sykes
|
9589c38773
|
Apply Bento tiles to Settings, sheets and empty states
|
2026-10-04 22:46:23 +08:00 |
|
Jonathan Sykes
|
3baf67349f
|
Bring Bento playback and Service mode into the new theme
|
2026-10-04 22:44:54 +08:00 |
|
Jonathan Sykes
|
e100d47143
|
Style Bento library rows and download recovery controls
|
2026-10-04 22:42:22 +08:00 |
|
Jonathan Sykes
|
838798ca9b
|
Build the new Bento Hub shell and browsing tiles
|
2026-10-04 03:09:15 +08:00 |
|
Jonathan Sykes
|
04b620e3c7
|
Polish download action buttons in Classic and Glass Stage
|
2026-10-04 02:48:08 +08:00 |
|
Jonathan Sykes
|
2042c9b6fc
|
Recover related videos with bounded discovery and retryable fallbacks
|
2026-10-04 02:42:02 +08:00 |
|
Jonathan Sykes
|
df4acfc9f1
|
Keep iPhone audio playing through background handoffs
|
2026-10-04 02:29:10 +08:00 |
|
Jonathan Sykes
|
536555e12d
|
Add selectable fullscreen orientation and an iPhone landscape overlay
|
2026-10-04 02:26:54 +08:00 |
|
Jonathan Sykes
|
25ae810463
|
Glass Stage: float the section rail again, centred above the mini player
|
2026-10-04 02:17:48 +08:00 |
|
Jonathan Sykes
|
49ba470740
|
Keep the Glass Stage notes toolbar on one row at every player width
|
2026-10-03 21:58:03 +08:00 |
|
Jonathan Sykes
|
3c0adb2577
|
Keep Glass Stage section navigation and panel content clear of playback chrome
|
2026-10-03 21:45:34 +08:00 |
|
Jonathan Sykes
|
90ef21297a
|
Keep resume preparation and final verification outside connection timeouts
|
2026-10-03 20:49:08 +08:00 |
|
Jonathan Sykes
|
d78b06ff4b
|
Close unconfirmed transfer paths and reject binary signalling envelopes
|
2026-10-03 20:45:04 +08:00 |
|
Jonathan Sykes
|
5661eea6e6
|
Preview compatible fragmented MP4 transfers while saving the verified copy
|
2026-10-03 20:43:03 +08:00 |
|
Jonathan Sykes
|
795a5aaed4
|
Prefer direct copies for playback, saves and exports within verified device groups
|
2026-10-03 20:38:51 +08:00 |
|
Jonathan Sykes
|
08ff8398b5
|
Transfer saved songs directly between paired devices with resumable OPFS writes
|
2026-10-03 20:32:45 +08:00 |
|
Jonathan Sykes
|
88e2e67eeb
|
Authorize direct file invitations within paired rooms and parties
|
2026-10-03 20:26:07 +08:00 |
|
Jonathan Sykes
|
d93fc0d70f
|
Use Glass Stage icons for playlist and offline controls
|
2026-10-03 20:14:19 +08:00 |
|
Jonathan Sykes
|
79a3c28c8e
|
Center Glass Stage tab icons above their labels
|
2026-10-03 20:11:10 +08:00 |
|
Jonathan Sykes
|
5e78374efb
|
Explain save failures and keep download diagnostics available
|
2026-10-03 19:23:07 +08:00 |
|
Jonathan Sykes
|
f341b0c76e
|
Restart failed saves through a guarded server retry
|
2026-10-03 19:16:08 +08:00 |
|