Collapse snippet tools behind a toggle
This commit is contained in:
parent
7b264c7224
commit
a7b92cfa8e
1
DONE.md
1
DONE.md
|
|
@ -831,6 +831,7 @@ This file tracks completed features, fixes, and milestones.
|
|||
- ✅ Default bitrate preset normalized to 2.5 Mbps to avoid "select one"
|
||||
- ✅ Linked simple and advanced bitrate presets so they stay in sync
|
||||
- ✅ Hide quality presets when bitrate mode is not CRF
|
||||
- ✅ Collapsed snippet tools behind a toggle in the convert footer
|
||||
- ✅ Stabilized video seeking and embedded rendering
|
||||
- ✅ Improved player window positioning
|
||||
- ✅ Fixed clear video functionality
|
||||
|
|
|
|||
1
TODO.md
1
TODO.md
|
|
@ -64,6 +64,7 @@ This file tracks upcoming features, improvements, and known issues.
|
|||
- Default bitrate preset normalized to 2.5 Mbps to prevent empty select
|
||||
- Simple/advanced bitrate presets synced
|
||||
- Quality presets hidden when bitrate mode is not CRF
|
||||
- Snippet tools collapsed behind a toggle to reduce footer clutter
|
||||
|
||||
*Last Updated: 2025-12-20*
|
||||
|
||||
|
|
|
|||
22
main.go
22
main.go
|
|
@ -7235,6 +7235,24 @@ func buildConvertView(state *appState, src *videoSource) fyne.CanvasObject {
|
|||
snippetRow = container.NewHBox(snippetBtn, layout.NewSpacer(), snippetHint)
|
||||
}
|
||||
|
||||
snippetTools := container.NewVBox(snippetConfigRow, snippetRow)
|
||||
snippetTools.Hide()
|
||||
snippetToolsVisible := false
|
||||
snippetToggleBtn := widget.NewButton("Show Snippet Tools", func() {
|
||||
if snippetToolsVisible {
|
||||
snippetTools.Hide()
|
||||
snippetToggleBtn.SetText("Show Snippet Tools")
|
||||
} else {
|
||||
snippetTools.Show()
|
||||
snippetToggleBtn.SetText("Hide Snippet Tools")
|
||||
}
|
||||
snippetToolsVisible = !snippetToolsVisible
|
||||
})
|
||||
snippetToggleBtn.Importance = widget.LowImportance
|
||||
if src == nil {
|
||||
snippetToggleBtn.Disable()
|
||||
}
|
||||
|
||||
// Stack video and metadata directly so metadata sits immediately under the player.
|
||||
leftColumn := container.NewVBox(videoPanel, metaPanel)
|
||||
|
||||
|
|
@ -7558,8 +7576,8 @@ func buildConvertView(state *appState, src *videoSource) fyne.CanvasObject {
|
|||
|
||||
// Build footer sections
|
||||
footerSections := []fyne.CanvasObject{
|
||||
snippetConfigRow,
|
||||
snippetRow,
|
||||
snippetToggleBtn,
|
||||
snippetTools,
|
||||
widget.NewSeparator(),
|
||||
}
|
||||
if commandPreviewRow != nil && state.convertCommandPreviewShow {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user