Compare commits

..

2 Commits

Author SHA1 Message Date
b97182baac Clean up Logs menu and show log path 2025-12-09 14:34:39 -05:00
2682766eb5 Add 5:3 aspect option 2025-12-09 14:27:38 -05:00

43
main.go
View File

@ -788,21 +788,34 @@ func (s *appState) showMainMenu() {
}
menu := ui.BuildMainMenu(mods, s.showModule, s.handleModuleDrop, s.showQueue, func() {
// Logs button: offer to open logs folder or view app log
logDir := getLogsDir()
_ = os.MkdirAll(logDir, 0o755)
openFolderBtn := widget.NewButton("Open Logs Folder", func() {
if err := openFolder(logDir); err != nil {
dialog.ShowError(fmt.Errorf("failed to open logs folder: %w", err), s.window)
}
})
appLogPath := strings.TrimSpace(logging.FilePath())
viewAppLogBtn := widget.NewButton("View App Log", func() {
if appLogPath == "" {
dialog.ShowInformation("No Log", "No app log file found yet.", s.window)
return
}
s.openLogViewer("App Log", appLogPath, false)
})
if appLogPath == "" {
viewAppLogBtn.Disable()
}
infoLabel := widget.NewLabel(fmt.Sprintf("Logs directory: %s", logDir))
infoLabel.Wrapping = fyne.TextWrapWord
logOptions := container.NewVBox(
widget.NewButton("Open Logs Folder", func() {
if err := openFolder(getLogsDir()); err != nil {
dialog.ShowError(fmt.Errorf("failed to open logs folder: %w", err), s.window)
}
}),
widget.NewButton("View App Log", func() {
path := logging.FilePath()
if strings.TrimSpace(path) == "" {
dialog.ShowInformation("No Log", "No app log file found.", s.window)
return
}
s.openLogViewer("App Log", path, false)
}),
infoLabel,
openFolderBtn,
viewAppLogBtn,
)
dialog.ShowCustom("Logs", "Close", logOptions, s.window)
}, titleColor, queueColor, textColor, queueCompleted, queueTotal)
@ -2885,7 +2898,7 @@ func buildConvertView(state *appState, src *videoSource) fyne.CanvasObject {
transformHint := widget.NewLabel("Apply flips and rotation to correct video orientation")
transformHint.Wrapping = fyne.TextWrapWord
aspectTargets := []string{"Source", "16:9", "4:3", "5:4", "1:1", "9:16", "21:9"}
aspectTargets := []string{"Source", "16:9", "4:3", "5:4", "5:3", "1:1", "9:16", "21:9"}
targetAspectSelect := widget.NewSelect(aspectTargets, func(value string) {
logging.Debug(logging.CatUI, "target aspect set to %s", value)
state.convert.OutputAspect = value