Lower video pane min sizes for window snapping

This commit is contained in:
Stu Leak 2025-12-20 16:41:07 -05:00
parent 66346d8cee
commit 762403b770
3 changed files with 7 additions and 5 deletions

View File

@ -832,6 +832,7 @@ This file tracks completed features, fixes, and milestones.
- ✅ Linked simple and advanced bitrate presets so they stay in sync
- ✅ Hide quality presets when bitrate mode is not CRF
- ✅ Snippet UI now shows Convert Snippet + batch + options with context-sensitive controls
- ✅ Reduced module video pane minimum sizes to allow GNOME window snapping
- ✅ Stabilized video seeking and embedded rendering
- ✅ Improved player window positioning
- ✅ Fixed clear video functionality

View File

@ -65,6 +65,7 @@ This file tracks upcoming features, improvements, and known issues.
- Simple/advanced bitrate presets synced
- Quality presets hidden when bitrate mode is not CRF
- Snippet UI rearranged into Convert Snippet / Batch / Options with context-sensitive visibility
- Reduce module video pane min sizes to allow GNOME snapping
*Last Updated: 2025-12-20*

10
main.go
View File

@ -11966,7 +11966,7 @@ func buildInspectView(state *appState) fyne.CanvasObject {
metadataText.SetText(formatMetadata(state.inspectFile))
// Build video player
videoContainer = buildVideoPane(state, fyne.NewSize(640, 360), state.inspectFile, nil)
videoContainer = buildVideoPane(state, fyne.NewSize(480, 270), state.inspectFile, nil)
} else {
fileLabel.SetText("No file loaded")
metadataText.SetText("No file loaded")
@ -12125,7 +12125,7 @@ func buildThumbView(state *appState) fyne.CanvasObject {
var videoContainer fyne.CanvasObject
if state.thumbFile != nil {
fileLabel.SetText(fmt.Sprintf("File: %s", filepath.Base(state.thumbFile.Path)))
videoContainer = buildVideoPane(state, fyne.NewSize(640, 360), state.thumbFile, nil)
videoContainer = buildVideoPane(state, fyne.NewSize(480, 270), state.thumbFile, nil)
} else {
videoContainer = container.NewCenter(widget.NewLabel("No video loaded"))
}
@ -12448,7 +12448,7 @@ func buildPlayerView(state *appState) fyne.CanvasObject {
var videoContainer fyne.CanvasObject
if state.playerFile != nil {
fileLabel.SetText(fmt.Sprintf("File: %s", filepath.Base(state.playerFile.Path)))
videoContainer = buildVideoPane(state, fyne.NewSize(960, 540), state.playerFile, nil)
videoContainer = buildVideoPane(state, fyne.NewSize(640, 360), state.playerFile, nil)
} else {
videoContainer = container.NewCenter(widget.NewLabel("No video loaded"))
}
@ -12537,7 +12537,7 @@ func buildFiltersView(state *appState) fyne.CanvasObject {
var videoContainer fyne.CanvasObject
if state.filtersFile != nil {
fileLabel.SetText(fmt.Sprintf("File: %s", filepath.Base(state.filtersFile.Path)))
videoContainer = buildVideoPane(state, fyne.NewSize(640, 360), state.filtersFile, nil)
videoContainer = buildVideoPane(state, fyne.NewSize(480, 270), state.filtersFile, nil)
} else {
videoContainer = container.NewCenter(widget.NewLabel("No video loaded"))
}
@ -12720,7 +12720,7 @@ func buildUpscaleView(state *appState) fyne.CanvasObject {
fileLabel.SetText(fmt.Sprintf("File: %s", filepath.Base(state.upscaleFile.Path)))
sourceResLabel = widget.NewLabel(fmt.Sprintf("Source: %dx%d", state.upscaleFile.Width, state.upscaleFile.Height))
sourceResLabel.TextStyle = fyne.TextStyle{Italic: true}
videoContainer = buildVideoPane(state, fyne.NewSize(640, 360), state.upscaleFile, nil)
videoContainer = buildVideoPane(state, fyne.NewSize(480, 270), state.upscaleFile, nil)
} else {
sourceResLabel = widget.NewLabel("Source: N/A")
sourceResLabel.TextStyle = fyne.TextStyle{Italic: true}