Compare commits

...

2 Commits

Author SHA1 Message Date
4b1bdea7ed Restore target size reduction presets 2025-12-20 15:35:37 -05:00
19269a204d Fix reset tabs scope in convert view 2025-12-20 15:33:08 -05:00
3 changed files with 10 additions and 1 deletions

View File

@ -820,6 +820,8 @@ This file tracks completed features, fixes, and milestones.
- ✅ Added unit selector for manual video bitrate entry
- ✅ Reset now restores full default convert settings even with no config file
- ✅ Reset now forces resolution and frame rate back to Source
- ✅ Fixed reset handler scope for convert tabs
- ✅ Restored 25%/33%/50%/75% target size reduction presets
- ✅ Stabilized video seeking and embedded rendering
- ✅ Improved player window positioning
- ✅ Fixed clear video functionality

View File

@ -53,6 +53,8 @@ This file tracks upcoming features, improvements, and known issues.
- Manual video bitrate uses a unit selector (KB/MB/GB)
- Reset restores full default convert settings
- Reset forces resolution/frame rate back to Source
- Reset handler scope fixed for convert tabs
- Target size reduction presets restored (25/33/50/75%)
## Priority Features for dev20+

View File

@ -5283,6 +5283,7 @@ func buildConvertView(state *appState, src *videoSource) fyne.CanvasObject {
bitrateContainer *fyne.Container
targetSizeContainer *fyne.Container
resetConvertDefaults func()
tabs *container.AppTabs
)
var (
updateEncodingControls func()
@ -6207,6 +6208,7 @@ func buildConvertView(state *appState, src *videoSource) fyne.CanvasObject {
srcSizeMB := float64(srcSize) / (1024 * 1024)
// Calculate smart reductions
size25 := int(srcSizeMB * 0.75) // 25% reduction
size33 := int(srcSizeMB * 0.67) // 33% reduction
size50 := int(srcSizeMB * 0.50) // 50% reduction
size75 := int(srcSizeMB * 0.25) // 75% reduction
@ -6222,6 +6224,9 @@ func buildConvertView(state *appState, src *videoSource) fyne.CanvasObject {
if size33 > 15 {
options = append(options, fmt.Sprintf("%dMB (33%% smaller)", size33))
}
if size25 > 20 {
options = append(options, fmt.Sprintf("%dMB (25%% smaller)", size25))
}
// Add common sizes
options = append(options, "25MB", "50MB", "100MB", "200MB", "500MB", "1GB")
@ -6910,7 +6915,7 @@ func buildConvertView(state *appState, src *videoSource) fyne.CanvasObject {
updateQualityVisibility()
}
tabs := container.NewAppTabs(
tabs = container.NewAppTabs(
container.NewTabItem("Simple", simpleScrollBox),
container.NewTabItem("Advanced", advancedScrollBox),
)