diff --git a/rip_module.go b/rip_module.go index 8d9c3c1..d87d719 100644 --- a/rip_module.go +++ b/rip_module.go @@ -162,6 +162,13 @@ func buildRipView(state *appState) fyne.CanvasObject { logScroll := container.NewVScroll(logEntry) // logScroll.SetMinSize(fyne.NewSize(0, 200)) // Removed for flexible sizing state.ripLogScroll = logScroll + copyLogBtn := widget.NewButton("Copy Log", func() { + if strings.TrimSpace(state.ripLogText) == "" { + return + } + state.window.Clipboard().SetContent(state.ripLogText) + }) + copyLogBtn.Importance = widget.LowImportance addQueueBtn := widget.NewButton("Add Rip to Queue", func() { if err := state.addRipToQueue(false); err != nil { @@ -258,7 +265,11 @@ func buildRipView(state *appState) fyne.CanvasObject { statusLabel, progressBar, widget.NewSeparator(), - widget.NewLabelWithStyle("Rip Log", fyne.TextAlignLeading, fyne.TextStyle{Bold: true}), + container.NewHBox( + widget.NewLabelWithStyle("Rip Log", fyne.TextAlignLeading, fyne.TextStyle{Bold: true}), + layout.NewSpacer(), + copyLogBtn, + ), logScroll, )