Commit Graph

287 Commits

Author SHA1 Message Date
Ethanfel 9bc65a2b25 feat: add build_mask_output_dir utility 2026-04-06 15:34:08 +02:00
Ethanfel 8fe3dc1c1b docs: mask generation implementation plan 2026-04-06 15:32:36 +02:00
Ethanfel da5d903286 docs: mask generation design 2026-04-06 15:26:03 +02:00
Ethanfel 29b404ec23 feat: wire portrait crop into MainWindow 2026-04-06 13:53:55 +02:00
Ethanfel d8c7642f15 feat: CropBarWidget for portrait crop positioning 2026-04-06 13:51:56 +02:00
Ethanfel 1a43c4725d feat: portrait crop filter in build_ffmpeg_command
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-06 13:51:02 +02:00
Ethanfel d7b704efc3 docs: portrait crop implementation plan 2026-04-06 13:48:40 +02:00
Ethanfel 87be0d2408 docs: portrait crop design 2026-04-06 13:44:24 +02:00
Ethanfel 625ca2d21c feat: resize short-side field with QSettings persistence 2026-04-06 13:33:13 +02:00
Ethanfel 798c5ff4f4 feat: add short_side resize to build_ffmpeg_command 2026-04-06 13:31:58 +02:00
Ethanfel ce7e808249 docs: resize output implementation plan 2026-04-06 13:17:35 +02:00
Ethanfel b8f9d6541b docs: resize output design 2026-04-06 13:16:28 +02:00
Ethanfel 207518902f feat: wire timeline markers into MainWindow 2026-04-06 13:11:05 +02:00
Ethanfel 5960a2fe78 feat: timeline markers with hover tooltip 2026-04-06 13:10:12 +02:00
Ethanfel 63d48a968c feat: DB schema v2 — store start_time and output_path, add get_markers
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-06 13:08:49 +02:00
Ethanfel c34f3b4039 docs: timeline markers design 2026-04-06 13:03:07 +02:00
Ethanfel bcde41c4fc fix: list item selection styling, advance() guard against no selection 2026-04-06 12:59:18 +02:00
Ethanfel f93fea2a22 fix: clear stale DB warning, allow playlist panel to resize 2026-04-06 12:55:58 +02:00
Ethanfel ccdb50c6a4 feat: wire playlist and DB into MainWindow
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-06 12:53:41 +02:00
Ethanfel 75fd43577e feat: PlaylistWidget with drop support and auto-advance
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-06 12:51:46 +02:00
Ethanfel dab4b26ce1 fix: utcnow deprecation, DB unique constraint and index, regex comment 2026-04-06 12:50:53 +02:00
Ethanfel 558fa23da4 feat: ProcessedDB and _normalize_filename with tests
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-06 12:42:03 +02:00
Ethanfel 3124b64c29 docs: playlist and processed-files DB design 2026-04-06 12:37:58 +02:00
Ethanfel c5f508ffb9 fix: remove redundant _reset_counter call in _pick_folder 2026-04-06 12:27:51 +02:00
Ethanfel 1fb69b10fb fix: Wayland XCB force, AB-loop clamp, folder textChanged, drop validation 2026-04-06 12:26:08 +02:00
Ethanfel 73abd5429a feat: dark theme, complete 8-cut tool
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-06 12:22:49 +02:00
Ethanfel 9981cc84c1 docs: clarify format_time truncation and counter reset behavior 2026-04-06 12:22:17 +02:00
Ethanfel 322d89b688 feat: complete MainWindow UI with playback and export
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-06 12:19:54 +02:00
Ethanfel ad1a4283e8 feat: MpvWidget with seek and AB-loop
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-06 12:12:53 +02:00
Ethanfel ba736fe532 fix: end QPainter in finally block to prevent resource leak 2026-04-06 12:11:39 +02:00
Ethanfel f0313b10a8 feat: TimelineWidget with cursor and 8s highlight 2026-04-06 12:09:35 +02:00
Ethanfel 8a97c3c7c2 fix: ffmpeg command type hint, -ss comment, FileNotFoundError handler 2026-04-06 12:08:42 +02:00
Ethanfel f6832f58a6 feat: ExportWorker with ffmpeg command builder
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-06 12:06:32 +02:00
Ethanfel 68f9a01d2b fix: format_time rollover, move sys.path to conftest
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-06 11:16:52 +02:00
Ethanfel 5819ea2970 feat: add utility functions with tests
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-06 11:14:01 +02:00
Ethanfel a3e2cb4d3b chore: remove unused import, add .gitignore 2026-04-06 11:12:55 +02:00
Ethanfel 7c46ec3ae7 feat: project skeleton 2026-04-06 11:11:25 +02:00