feat(author): Clear DVD title on module open and sync between tabs

- DVD title now starts empty each time Author module is opened
- Added DVD Title entry field to Videos tab
- Both Videos and Settings tab title fields update the same state
- Both trigger summary update and config persistence

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
Stu Leak 2025-12-31 15:12:24 -05:00
parent ff1fdd9c1e
commit 5c8ad4e355
2 changed files with 20 additions and 1 deletions

View File

@ -370,12 +370,28 @@ func buildVideoClipsTab(state *appState) fyne.CanvasObject {
listArea := container.NewMax(dropTarget, emptyOverlay)
// DVD Title entry (synced with Settings tab)
dvdTitleEntry := widget.NewEntry()
dvdTitleEntry.SetPlaceHolder("DVD Title")
dvdTitleEntry.SetText(state.authorTitle)
dvdTitleEntry.OnChanged = func(value string) {
state.authorTitle = value
state.updateAuthorSummary()
state.persistAuthorConfig()
}
// Note about chapter names
chapterNote := widget.NewLabel("Chapter names are saved for future DVD menu support")
chapterNote.TextStyle = fyne.TextStyle{Italic: true}
controls := container.NewBorder(
container.NewVBox(widget.NewLabel("Videos:"), chapterNote),
container.NewVBox(
widget.NewLabel("DVD Title:"),
dvdTitleEntry,
widget.NewSeparator(),
widget.NewLabel("Videos:"),
chapterNote,
),
container.NewVBox(chapterToggle, container.NewHBox(addBtn, clearBtn, addQueueBtn, compileBtn)),
nil,
nil,

View File

@ -3183,6 +3183,9 @@ func (s *appState) showAuthorView() {
s.authorSceneThreshold = 0.3
}
// Clear DVD title for fresh start
s.authorTitle = ""
s.setContent(buildAuthorView(s))
}