diff --git a/gui/xfyne/patch.go b/gui/xfyne/patch.go index 5e11c48..798a83d 100644 --- a/gui/xfyne/patch.go +++ b/gui/xfyne/patch.go @@ -1,14 +1,14 @@ package xfyne import ( - "fyne.io/fyne/v2" "fyne.io/fyne/v2/widget" - "reflect" ) func EntryDisableUndoRedo(entry *widget.Entry) *widget.Entry { - val := reflect.ValueOf(entry).Elem().FieldByName("shortcut").Addr().UnsafePointer() - (*fyne.ShortcutHandler)(val).RemoveShortcut(&fyne.ShortcutRedo{}) - (*fyne.ShortcutHandler)(val).RemoveShortcut(&fyne.ShortcutUndo{}) + // do nothing because the bug has been fixed in fyne@v2.5.1 return entry + //val := reflect.ValueOf(entry).Elem().FieldByName("shortcut").Addr().UnsafePointer() + //(*fyne.ShortcutHandler)(val).RemoveShortcut(&fyne.ShortcutRedo{}) + //(*fyne.ShortcutHandler)(val).RemoveShortcut(&fyne.ShortcutUndo{}) + //return entry } diff --git a/plugin/wshub/server.go b/plugin/wshub/server.go index 3697acd..9ec3f08 100644 --- a/plugin/wshub/server.go +++ b/plugin/wshub/server.go @@ -48,7 +48,9 @@ func (c *wsClient) start() { global.Logger.Warn("unmarshal event data failed", err) return } - global.EventManager.CallA(data.EventID, actualEventData) + if globalEnableWsHubControl { + global.EventManager.CallA(data.EventID, actualEventData) + } } } diff --git a/plugin/wshub/wshub.go b/plugin/wshub/wshub.go index 889ff9f..453a3ec 100644 --- a/plugin/wshub/wshub.go +++ b/plugin/wshub/wshub.go @@ -20,25 +20,31 @@ import ( type WsHub struct { config.BaseConfig - Enabled bool - Port int - LocalHostOnly bool - panel fyne.CanvasObject - server *wsServer - log logger.ILogger + Enabled bool + Port int + LocalHostOnly bool + EnableWsHubControl bool + panel fyne.CanvasObject + server *wsServer + log logger.ILogger } func NewWsHub() *WsHub { return &WsHub{ - Enabled: false, - Port: 29629, - LocalHostOnly: true, - log: global.Logger.WithPrefix("plugin.wshub"), + Enabled: false, + Port: 29629, + LocalHostOnly: true, + EnableWsHubControl: false, + log: global.Logger.WithPrefix("plugin.wshub"), } } +var globalEnableWsHubControl = false + func (w *WsHub) Enable() error { config.LoadConfig(w) + // todo: should pass EnableWsHubControl to client instead of using global variable + globalEnableWsHubControl = w.EnableWsHubControl w.server = newWsServer(&w.Port, &w.LocalHostOnly) gui.AddConfigLayout(w) w.registerEvents() diff --git a/todo.txt b/todo.txt index ab816d6..584d571 100644 --- a/todo.txt +++ b/todo.txt @@ -18,7 +18,7 @@ ---- Finished -- 2024.08.25 : 添加是否播放闲置歌单选项,修复退出时panic的问题 +- 2024.08.25 : 添加是否播放闲置歌单选项,修复退出时panic的导致配置无法正确保存的问题 - 2024.08.14 : 网页输出模版上线 - 2024.08.06 : 修复使用身份码连接的时候房管无法切歌的问题 - 2024.07.25 : 或许修复配置无法正确保存的问题