refactor(tray): remove copy-token clipboard feature

Dashboard login now uses standard web auth (bcrypt + session cookie).
The system tray 'Copy dashboard token' menu item is no longer needed.

- Delete tray_offers_copy.go and tray_offers_copy_stub.go
- Remove mCopyTok menu item and clipboard handler from systray.go
- Remove launcherDashboardTokenForClipboard var from main.go
- Remove MenuCopyToken/MenuCopyTokenHint keys from i18n.go
This commit is contained in:
sky5454 2026-04-04 07:45:42 +08:00
parent 375b3336f7
commit 62bf21104c
5 changed files with 0 additions and 32 deletions

View file

@ -24,8 +24,6 @@ const (
AppTooltip TranslationKey = "AppTooltip" AppTooltip TranslationKey = "AppTooltip"
MenuOpen TranslationKey = "MenuOpen" MenuOpen TranslationKey = "MenuOpen"
MenuOpenTooltip TranslationKey = "MenuOpenTooltip" MenuOpenTooltip TranslationKey = "MenuOpenTooltip"
MenuCopyToken TranslationKey = "MenuCopyToken"
MenuCopyTokenHint TranslationKey = "MenuCopyTokenHint"
MenuAbout TranslationKey = "MenuAbout" MenuAbout TranslationKey = "MenuAbout"
MenuAboutTooltip TranslationKey = "MenuAboutTooltip" MenuAboutTooltip TranslationKey = "MenuAboutTooltip"
MenuVersion TranslationKey = "MenuVersion" MenuVersion TranslationKey = "MenuVersion"
@ -49,8 +47,6 @@ var translations = map[Language]map[TranslationKey]string{
AppTooltip: "%s - Web Console", AppTooltip: "%s - Web Console",
MenuOpen: "Open Console", MenuOpen: "Open Console",
MenuOpenTooltip: "Open PicoClaw console in browser", MenuOpenTooltip: "Open PicoClaw console in browser",
MenuCopyToken: "Copy dashboard token",
MenuCopyTokenHint: "Copy the current web console access token to the clipboard",
MenuAbout: "About", MenuAbout: "About",
MenuAboutTooltip: "About PicoClaw", MenuAboutTooltip: "About PicoClaw",
MenuVersion: "Version: %s", MenuVersion: "Version: %s",
@ -68,8 +64,6 @@ var translations = map[Language]map[TranslationKey]string{
AppTooltip: "%s - Web Console", AppTooltip: "%s - Web Console",
MenuOpen: "打开控制台", MenuOpen: "打开控制台",
MenuOpenTooltip: "在浏览器中打开 PicoClaw 控制台", MenuOpenTooltip: "在浏览器中打开 PicoClaw 控制台",
MenuCopyToken: "复制控制台口令",
MenuCopyTokenHint: "将当前 Web 控制台访问口令复制到剪贴板",
MenuAbout: "关于", MenuAbout: "关于",
MenuAboutTooltip: "关于 PicoClaw", MenuAboutTooltip: "关于 PicoClaw",
MenuVersion: "版本: %s", MenuVersion: "版本: %s",

View file

@ -50,8 +50,6 @@ var (
// Includes ?token= for same-machine dashboard login; keep serverAddr without secrets for other use. // Includes ?token= for same-machine dashboard login; keep serverAddr without secrets for other use.
browserLaunchURL string browserLaunchURL string
apiHandler *api.Handler apiHandler *api.Handler
// launcherDashboardTokenForClipboard is read by the system tray "copy token" action (GUI mode).
launcherDashboardTokenForClipboard string
noBrowser *bool noBrowser *bool
) )
@ -228,7 +226,6 @@ func main() {
logger.Fatalf("Dashboard auth setup failed: %v", dashErr) logger.Fatalf("Dashboard auth setup failed: %v", dashErr)
} }
dashboardSessionCookie := middleware.SessionCookieValue(dashboardSigningKey, dashboardToken) dashboardSessionCookie := middleware.SessionCookieValue(dashboardSigningKey, dashboardToken)
launcherDashboardTokenForClipboard = dashboardToken
// Open the bcrypt password store (creates the DB file on first run). // Open the bcrypt password store (creates the DB file on first run).
authStore, authStoreErr := dashboardauth.New(picoHome) authStore, authStoreErr := dashboardauth.New(picoHome)

View file

@ -6,7 +6,6 @@ import (
"fmt" "fmt"
"fyne.io/systray" "fyne.io/systray"
"github.com/atotto/clipboard"
"github.com/sipeed/picoclaw/pkg/logger" "github.com/sipeed/picoclaw/pkg/logger"
"github.com/sipeed/picoclaw/web/backend/utils" "github.com/sipeed/picoclaw/web/backend/utils"
@ -24,7 +23,6 @@ func onReady() {
// Create menu items // Create menu items
mOpen := systray.AddMenuItem(T(MenuOpen), T(MenuOpenTooltip)) mOpen := systray.AddMenuItem(T(MenuOpen), T(MenuOpenTooltip))
mCopyTok := systray.AddMenuItem(T(MenuCopyToken), T(MenuCopyTokenHint))
mAbout := systray.AddMenuItem(T(MenuAbout), T(MenuAboutTooltip)) mAbout := systray.AddMenuItem(T(MenuAbout), T(MenuAboutTooltip))
// Add version info under About menu // Add version info under About menu
@ -52,17 +50,6 @@ func onReady() {
logger.Errorf("Failed to open browser: %v", err) logger.Errorf("Failed to open browser: %v", err)
} }
case <-mCopyTok.ClickedCh:
if launcherDashboardTokenForClipboard == "" {
logger.WarnC("web", "Dashboard token is empty; cannot copy")
continue
}
if err := clipboard.WriteAll(launcherDashboardTokenForClipboard); err != nil {
logger.Errorf("Failed to copy dashboard token: %v", err)
} else {
logger.InfoC("web", "Dashboard token copied to clipboard")
}
case <-mVersion.ClickedCh: case <-mVersion.ClickedCh:
// Version info - do nothing, just shows current version // Version info - do nothing, just shows current version

View file

@ -1,5 +0,0 @@
//go:build (!darwin && !freebsd) || cgo
package main
func trayOffersDashboardTokenCopy() bool { return true }

View file

@ -1,5 +0,0 @@
//go:build (darwin || freebsd) && !cgo
package main
func trayOffersDashboardTokenCopy() bool { return false }