Bladeren bron

fix(cmd): initialize clipboard in newApplication func (#625)

Ayyan 5 maanden geleden
bovenliggende
commit
f2819e86d3
2 gewijzigde bestanden met toevoegingen van 13 en 13 verwijderingen
  1. 6 2
      cmd/application.go
  2. 7 11
      cmd/message_input.go

+ 6 - 2
cmd/application.go

@@ -1,9 +1,9 @@
 package cmd
 
 import (
+	"fmt"
 	"log/slog"
 	"strings"
-	"fmt"
 
 	"github.com/ayn2op/discordo/internal/config"
 	"github.com/ayn2op/discordo/internal/keyring"
@@ -44,6 +44,10 @@ func newApplication(cfg *config.Config) *application {
 		messageInput: newMessageInput(cfg),
 	}
 
+	if err := clipboard.Init(); err != nil {
+		app.onError("Failed to init clipboard", err)
+	}
+
 	app.pages.SetInputCapture(app.onPagesInputCapture)
 	app.
 		EnableMouse(cfg.Mouse).
@@ -242,7 +246,7 @@ func (a *application) showConfirmModal(prompt string, buttons []string, onDone f
 }
 
 func (a *application) showErrorModal(msg, err string, info ...any) {
-	a.showModal("[ ERROR ]", msg + "\nReason: " + err, []string{"Copy", "OK"}, func(label string) {
+	a.showModal("[ ERROR ]", msg+"\nReason: "+err, []string{"Copy", "OK"}, func(label string) {
 		if label != "Copy" {
 			return
 		}

+ 7 - 11
cmd/message_input.go

@@ -58,17 +58,13 @@ func newMessageInput(cfg *config.Config) *messageInput {
 		mentionsList:    tview.NewList(),
 	}
 
-	if err := clipboard.Init(); err != nil {
-		app.onError("Failed to init clipboard", err)
-	} else {
-		mi.
-			SetClipboard(func(s string) {
-				clipboard.Write(clipboard.FmtText, []byte(s))
-			}, func() string {
-				data := clipboard.Read(clipboard.FmtText)
-				return string(data)
-			})
-	}
+	mi.
+		SetClipboard(func(s string) {
+			clipboard.Write(clipboard.FmtText, []byte(s))
+		}, func() string {
+			data := clipboard.Read(clipboard.FmtText)
+			return string(data)
+		})
 
 	mi.Box = ui.ConfigureBox(mi.Box, &cfg.Theme)
 	mi.SetInputCapture(mi.onInputCapture)