0e84e66cf7
docs: v0.2.0 Player mode bugfixes design spec
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 19:39:51 -04:00
711f18ffe5
fix: add tabindex to seek bar slider role, remove dead handleVideoClick
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 19:16:04 -04:00
7e838dc391
chore: bump version to 0.2.0
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 19:13:18 -04:00
1a86a34152
feat: add FLIP transitions for Clipper/Player mode switching
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 19:12:26 -04:00
2472decb20
fix: bind captionsEnabled between App and VideoPlayer for Player mode CC sync
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 19:11:21 -04:00
3e219b7760
feat: conditional CC rendering and click-to-play in Player mode
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 19:10:43 -04:00
199ad1ce3b
fix: transport shortcuts work in Player mode via runTransportAction fallback
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 19:09:27 -04:00
d36138c550
feat: add Player/Clipper mode switching with auto-hide UI
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 19:08:25 -04:00
56686a36e6
feat: add PlayerTimeline simplified waveform component
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 19:06:32 -04:00
f717687b1b
feat: add PlayerControls floating overlay component
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 19:05:03 -04:00
bb5fa4bd63
feat: add SpeedSelector popup component
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 19:03:46 -04:00
d9f58747a4
feat: add PiP, fullscreen, and playbackRate helpers to playback module
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 19:02:03 -04:00
bd96da4dc9
feat: add appMode preference (clipper/player) with persistence
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 19:00:34 -04:00
8bcec23d8c
docs: add v0.2.0 player mode implementation plan
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 18:58:00 -04:00
4f7458d8f8
docs: add v0.2.0 player mode design spec
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 18:51:01 -04:00
c90b6765b7
fix: timeline resize regression + dynamic lane alignment
...
- Remove splitAreaEl dependency from handleResizeMove; use fixed 40-500 clamp
- Add computeLanes() + LaneLayout for dynamic lane height computation
- Update clipRenderer to accept LaneLayout instead of hardcoded constants
- Tighten CONTROLS_HEIGHT (30→22) and CLIP_HEIGHT (30→20) to reduce gaps
- Tighten label baseline offset (14→10) for better waveform-to-tick alignment
Co-authored-by: Cursor <cursoragent@cursor.com >
v0.1.3
2026-09-22 18:15:19 -04:00
23b30be357
fix: CSS-grid layout to preserve video on toggle + magnification enhancements (brighter, larger, minor ticks)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 17:30:47 -04:00
124542b4c4
fix: post-smoke-test polish — preserve playhead, clip list redesign, play-clip action, 1100x750 default
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 17:15:28 -04:00
279e27a9b5
docs: user edits to v0.1.3 spec (version bump section)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 16:54:53 -04:00
8c271773bd
feat: timeline right-click context menu with mark/seek/delete actions
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 16:53:43 -04:00
27c199e090
feat: larger timeline timestamps with mouse-proximity magnification
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 16:51:56 -04:00
923c7b0e23
fix: clip list width edge cases (falsy check, narrow-window clamp)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 16:50:57 -04:00
b371ec6c3e
feat: adjustable clip list layout (bottom/left sidebar)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 16:49:35 -04:00
0b8bec2496
chore: bump version to 0.1.3
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 16:48:14 -04:00
91550dacd6
docs: add v0.1.3 implementation plan
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 16:42:59 -04:00
9752a6d614
docs: add v0.1.3 polish/tweaks design spec
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 16:32:17 -04:00
9499d776fd
fix: about dialog, cache paths, keyframes, reprocess always uses low-res
...
- Replace native macOS About menu with custom Svelte dialog via Tauri event
- Inline SVG icon in AboutDialog (fixes broken image in webview)
- Align cache directory with Tauri $APPDATA, add to asset protocol scope
- Fix ffprobe 8.x keyframe parsing (skip_frame nokey, flexible parser)
- Copy caption files into cache dir when outside cache path
- Add -y flag to ffmpeg thumbnail extraction (prevent hang on re-extract)
- Reprocess always uses preview (low-res) file, never HQ export
- Prefer cached preview file for analysis even when HQ is cached
- Guard upgrade toast when already on HQ
Co-authored-by: Cursor <cursoragent@cursor.com >
v0.1.2
2026-09-22 16:16:00 -04:00
925a3fc054
chore: bump version to 0.1.2
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 14:49:47 -04:00
36ff3094b6
feat: add per-video reprocess button to status bar
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 14:48:26 -04:00
2c3d035d1f
feat: add cache management section to Preferences panel
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 14:47:29 -04:00
b180d4324c
feat: integrate analysis cache into video session processing
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 14:45:37 -04:00
b7a5caf4ae
feat: add TypeScript bindings for cache IPC commands
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 14:44:24 -04:00
6818938cb0
feat: add optional output_dir param to extract_thumbnails
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 14:43:24 -04:00
b7fb7929f0
feat: add cache IPC commands for analysis caching
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 14:41:37 -04:00
1773ae81e6
feat: add cache_manager service for analysis caching
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 14:39:43 -04:00
dc3e7945c6
chore: add sha2 dependency for URL hashing in analysis cache
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 14:38:16 -04:00
8bd2b34103
feat: auto-use cached HQ video file without upgrade prompt
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 14:36:33 -04:00
90f598050c
fix: show empty timeline lanes when no video is loaded
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 14:34:58 -04:00
2f810111cc
docs: add v0.1.2 polish implementation plan
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 14:31:36 -04:00
2055524d30
docs: add v0.1.2 polish design spec (placeholders, auto-upgrade, analysis cache)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 14:26:44 -04:00
d46973a719
v0.1.1: fix .app bundle PATH for pyenv/nvm, detect yt-dlp pot-provider plugin
...
- fix_path_env() now adds ~/.pyenv/shims (with PYENV_ROOT) before
Homebrew paths so pyenv-managed yt-dlp (with pip-installed plugins)
takes priority over Homebrew's bare yt-dlp binary
- Also handles ~/.nvm, ~/.deno/bin, ~/.cargo/bin for broader coverage
- check_pot_plugin uses lightweight 'yt-dlp -v' instead of network
simulation for reliable plugin detection
- Bump version to 0.1.1
Co-authored-by: Cursor <cursoragent@cursor.com >
v0.1.1
2026-09-22 14:09:23 -04:00
1ea7f19668
feat: add release build script
...
- scripts/build-release.sh: builds, signs, and copies .app to dist/release/
- Bundle targets narrowed to app + dmg
- npm run release convenience script
- README documents the release build workflow
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 13:39:16 -04:00
30b04b42d4
fix: correct clip in-point edit test for EDIT_TOLERANCE
...
markInPoint(5) is outside the clip (10-20) with 0.5s tolerance.
Use markInPoint(12) which is inside the clip and triggers the edit path.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 13:33:01 -04:00
d85fbdac05
fix: suppress Rust dead code warnings with annotations
...
- ExportEvent::Error and DownloadEvent::Error reserved for future use
- clip_exporter functions scaffolded for caption burn-in pipeline
- SubtitleFormat fields required for serde deserialization
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 13:32:23 -04:00
9d1f1cfcf3
fix: resolve all Svelte a11y warnings
...
- Associate labels with controls in CaptionSettingsPanel (9 warnings)
- Add tabindex and keyboard handlers to dialog overlays (8 warnings)
- Add <track> to video element for caption accessibility
- Add keyboard support to resize handle separator
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 13:30:27 -04:00
3eebe01d63
fix: resolve TypeScript errors in vite.config.ts
...
- Install @types/node for node:path, node:process, node:url
- Import defineConfig from vitest/config for test config type
- Add types: ["node"] to tsconfig.json
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 13:28:05 -04:00
4bf65458d0
docs: add v0.1.0 release polish chat summary
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 12:57:14 -04:00
9a10e609e9
chore: add .cursor/ and .vscode/ to .gitignore
...
Co-authored-by: Cursor <cursoragent@cursor.com >
v0.1.0
2026-09-22 12:56:03 -04:00
99d1a0ab31
docs: add v0.1.0 release polish spec and implementation plan
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 12:42:12 -04:00
05c4b4713a
feat: add About dialog with version, author, and license info
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-22 12:40:32 -04:00