8 Commits

Author SHA1 Message Date
6a605451e4 fix: use browseURL scheme to detect SMB context — iOS maps SMB files to file:// URLs 2026-07-04 19:55:07 +08:00
80e332bda0 feat: iOS — saved server list, built-in file browser, HTTP stream server
- LocalStreamServer: NWListener-based HTTP proxy, streams SMB via localhost
- Saved server list with delete, one-tap reconnect
- Removed file importer — all browsing in MiniPlayer
- Removed SMBStreamingLoader (custom scheme approach didn't work)
2026-07-04 19:51:42 +08:00
b1a04526a2 feat: SMB streaming via AVAssetResourceLoaderDelegate — no file copy, reads on-demand.
- SMBStreamingLoader: wraps smb:// as miniplayer-smb:// custom scheme
- PlayerBridge.playSMBSource(): creates AVURLAsset with resource loader
- iOS NetworkFileBrowser: tap SMB media → stream directly
- Removed old FileManager.copyItem approach
2026-07-04 18:24:10 +08:00
b9e65f306a fix(iOS): copy SMB files to local Documents before playing — AVPlayer can't handle smb:// URLs 2026-07-04 18:10:31 +08:00
bf734454f8 fix(iOS): SMB connect flow — use FileManager first, fallback to Files app. Extract shared buildFileItems helper. 2026-07-04 18:06:50 +08:00
592a23b02e fix(iOS): SMB URL detection — show alert guiding to Files app instead of trying to play. Add import UIKit. 2026-07-04 18:00:44 +08:00
d01baed1c9 test: SMB network share verified — mount /Volumes/sambashare, browse media dirs. Fix NSWorkspace API + MediaLibraryView platform guard 2026-07-04 17:39:13 +08:00
0a9ed6e746 feat: network file browser — browse SMB/NFS shares, auto-pair ASS subtitles
- macOS: browse /Volumes (mounted shares), manual SMB/NFS connect
- iOS: system file picker (Files app SMB) + manual URL entry
- Auto-detect matching .ass files when selecting media
- Network button in control toolbar
- loadExternalSubtitle() skeleton for future ASS parsing
2026-07-04 17:33:58 +08:00