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) |
||
|---|---|---|
| .. | ||
| benchmarkview.go | ||
| colors.go | ||
| command_editor.go | ||
| components.go | ||
| mainmenu.go | ||
| queueview.go | ||