Stu Leak
fc56137397
Add donation address to about dialog
2026-01-04 04:54:06 -05:00
Stu Leak
39d3127d06
Add styled output folder and filename rows to convert UI
2026-01-04 04:45:21 -05:00
Stu Leak
aa9df5a8e0
Fix enhancement analysis return and stray code
2026-01-04 04:34:46 -05:00
Stu Leak
c0eb9b6136
Fix imports and QR module dependency
2026-01-04 04:32:56 -05:00
Stu Leak
00788d1cf0
Drop qrencode dependency from installers
2026-01-04 04:28:28 -05:00
Stu Leak
010e21043a
Require qrencode in Windows dependency installer
2026-01-04 04:25:00 -05:00
Stu Leak
67f41de0c2
Add qrencode dependency to install script
2026-01-04 04:20:05 -05:00
Stu Leak
9535725ab7
Increase base text size for UI readability
2026-01-04 04:12:10 -05:00
Stu Leak
4954dc021f
Use ratio layout for codec and preset row
2026-01-04 04:11:27 -05:00
Stu Leak
3b6ea529de
Align video codec and preset controls in convert UI
2026-01-04 04:08:11 -05:00
Stu Leak
dccf26d71c
Update docs for dev23 and dev24 planning
2026-01-04 03:17:23 -05:00
Stu Leak
182f74ee4e
Bump version to v0.1.0-dev23
2026-01-04 03:11:18 -05:00
Stu Leak
dfba8c73df
Align convert action buttons with panel styling
2026-01-04 03:09:10 -05:00
Stu Leak
125fb5ab77
Align input background with dropdown styling
2026-01-04 03:05:22 -05:00
Stu Leak
dc160d264a
Fix about dialog sizing shim
2026-01-04 03:01:37 -05:00
Stu Leak
a12829a4f9
Add support coming soon line to about dialog
2026-01-04 02:59:30 -05:00
Stu Leak
442658d18b
Rework about dialog layout to match mockup
2026-01-04 02:59:04 -05:00
Stu Leak
fcac7fd4d7
Wrap about dialog text and allow scrolling
2026-01-04 02:45:11 -05:00
Stu Leak
de248bdc8a
Resize about logo for better legibility
2026-01-04 02:43:01 -05:00
Stu Leak
9aa800408d
Tighten about logo size and align top-right
2026-01-04 02:41:20 -05:00
Stu Leak
113cbb2da2
Polish colored select size and rounding
2026-01-04 02:36:27 -05:00
Stu Leak
0d5f814f34
Refine colored select styling and add accent bar
2026-01-04 02:32:52 -05:00
Stu Leak
f596a5b6e5
Fix audio module crash on initial quality select
2026-01-04 02:28:21 -05:00
Stu Leak
a757696258
Loosen split min size and scroll thumbnail settings
2026-01-04 02:12:45 -05:00
Stu Leak
4861052585
Add LT logo to About dialog
2026-01-04 02:05:22 -05:00
Stu Leak
3e60815c7f
Load multiple thumbnails like convert
2026-01-04 00:22:52 -05:00
Stu Leak
ba378cf2f4
Lazy-load thumbnail previews for batch drops
2026-01-04 00:16:27 -05:00
Stu Leak
6d59b5837a
Disable player sync in thumbnails preview
2026-01-04 00:14:08 -05:00
Stu Leak
44e51f3c8b
Write logs under user config
2026-01-04 00:02:22 -05:00
Stu Leak
83fdae4e3b
Persist thumbnail settings and set 4x8 default
2026-01-03 23:54:18 -05:00
Stu Leak
027049ff76
Improve contact sheet progress reporting
2026-01-03 23:53:07 -05:00
Stu Leak
530baf8711
Show multi-file list in thumbnails
2026-01-03 23:51:37 -05:00
Stu Leak
f9479c6aaf
Add lightweight queue elapsed updates
2026-01-03 23:49:25 -05:00
Stu Leak
63bce68007
Tighten thumbnail columns and queue refresh
2026-01-03 23:47:11 -05:00
Stu Leak
1f3c89fd85
Queue multiple thumbnail drops
2026-01-03 23:44:46 -05:00
Stu Leak
5ebfc0e91c
Increase contact sheet logo size
2026-01-03 23:41:35 -05:00
Stu Leak
f9161de1a9
Add thumbnail progress updates
2026-01-03 23:40:47 -05:00
Stu Leak
8994d2020b
Fix thumb module imports
2026-01-03 23:36:50 -05:00
Stu Leak
a169df74fb
Open thumbnail results in default viewer
2026-01-03 23:36:03 -05:00
Stu Leak
734a50aece
Improve thumbnail settings layout
2026-01-03 23:34:58 -05:00
Stu Leak
5cf83f0810
Adjust contact sheet logo margin
2026-01-03 23:31:49 -05:00
Stu Leak
b4c433bed2
Improve contact sheet metadata readability
2026-01-03 23:31:19 -05:00
Stu Leak
a7699c50dc
Increase contact sheet resolution
2026-01-03 23:28:29 -05:00
Stu Leak
658331cd67
Refine contact sheet sampling and metadata
2026-01-03 23:26:15 -05:00
Stu Leak
a44f612346
Align thumbnail logo to header right
2026-01-03 23:20:57 -05:00
Stu Leak
cecc5586cd
Center and enlarge thumbnail logo
2026-01-03 23:19:23 -05:00
Stu Leak
8983817de4
feat(ui): complete Phase 1 - debouncing, validation, callback registry
...
Phase 1 Complete - Convert UI Cleanup (dev23):
Debouncing (eliminates remaining sync flags):
- Add createDebouncedCallback() helper with 300ms delay
- Apply debouncing to CRF entry (updates: ~10/sec → ~3/sec)
- Apply debouncing to bitrate entry (eliminates syncingBitrate flag)
- Apply debouncing to target file size entry (eliminates syncingTargetSize flag)
- Remove all remaining sync boolean flags (syncingBitrate, syncingTargetSize)
Input Validation:
- Add validateCRF() - enforces 0-51 range
- Add validateBitrate() - checks positive numbers, warns on extremes
- Add validateFileSize() - checks positive numbers
- Apply validation to CRF, bitrate, and file size entries
- Provides immediate user feedback on invalid input
Callback Registry:
- Create callbackRegistry to replace nil checks
- Add registerCallback() and callCallback() with logging
- Use in setQuality() to eliminate 'if updateEncodingControls != nil'
- Foundation for eliminating 21+ nil checks (will expand in future)
Impact Summary:
- ALL sync flags eliminated: 5 → 0 (100% reduction!)
- Command preview updates while typing: ~10/sec → ~3/sec (70% reduction!)
- Input validation prevents invalid configurations
- Debouncing improves perceived responsiveness
- Callback registry provides better debugging (logs missing callbacks)
Files modified:
- internal/ui/components.go (SetSelectedSilent)
- main.go (debouncing, validation, callback registry)
Phase 1 COMPLETE! Ready for Phase 2 (ColoredSelect expansion & visual polish)
2026-01-03 23:16:08 -05:00
Stu Leak
85d60b7381
feat(ui): implement state manager pattern, eliminate 3 sync flags
...
Phase 1 Progress - Convert UI Cleanup (dev23):
Architecture Improvements:
- Add SetSelectedSilent() method to ColoredSelect to prevent callback loops
- Create convertUIState manager with setQuality(), setResolution(), setAspect(), setBitratePreset()
- Eliminate syncingQuality flag (quality widgets use state manager)
- Eliminate syncingAspect flag and syncAspect() function (aspect widgets use state manager)
- Eliminate syncingBitratePreset flag (bitrate preset widgets use state manager)
Impact:
- Sync flags reduced from 5 to 2 (60% reduction)
- Automatic widget synchronization (no manual SetSelected calls)
- Single source of truth for UI state
- Foundation for eliminating remaining sync flags
Remaining: syncingBitrate, syncingTargetSize (text entry debouncing needed)
Files modified:
- internal/ui/components.go (SetSelectedSilent method)
- main.go (state manager, widget callbacks)
2026-01-03 23:03:10 -05:00
Stu Leak
69a00e922f
Optimize queue updates and colored selects
2026-01-03 22:15:46 -05:00
Stu Leak
2332f2e9ca
fix: update main menu version display to dev22
...
- Update appVersion constant from dev21 to dev22
- Ensures main menu footer and About dialog show correct version
- Completes dev22 release preparation
All build fixes applied and version correctly displayed.
2026-01-03 13:58:22 -05:00