diff options
| author | Jeff Carr <[email protected]> | 2025-02-12 17:00:32 -0600 |
|---|---|---|
| committer | Jeff Carr <[email protected]> | 2025-02-12 17:00:32 -0600 |
| commit | fa9ec36dbb05877a802ac6b5e2d358a2372f9a68 (patch) | |
| tree | f4e218ca3de7acca53ba5044be77696bbdef4554 | |
| parent | 8c459da9f7a406b01bfd187e09ed9d4113d3ef36 (diff) | |
initOnce()
| -rw-r--r-- | eventBindings.go | 5 | ||||
| -rw-r--r-- | init.go | 2 | ||||
| -rw-r--r-- | structs.go | 2 | ||||
| -rw-r--r-- | treeInit.go | 1 |
4 files changed, 9 insertions, 1 deletions
diff --git a/eventBindings.go b/eventBindings.go index c9a4a08..f78737c 100644 --- a/eventBindings.go +++ b/eventBindings.go @@ -5,6 +5,7 @@ package main import ( "syscall" + "time" "github.com/awesome-gocui/gocui" "go.wit.com/log" @@ -53,6 +54,10 @@ func registerHandlers(g *gocui.Gui) { g.SetKeybinding("", 'f', gocui.ModNone, theFind) // 'f' shows what is under your mouse g.SetKeybinding("", 'd', gocui.ModNone, theLetterD) // 'd' toggles on and off debugging buttons g.SetKeybinding("", 'q', gocui.ModNone, quit) // 'q' only exits gocui. plugin stays alive (?) + + time.Sleep(100 * time.Millisecond) + // tell 'tree' that we are okay to start talking to + me.myTree.InitOK() } // flips on 'super mouse' mode // this was awesome for debugging gocui. never remove this code. @@ -30,7 +30,7 @@ func toolkitClose() { // sets defaults and establishes communication // to this toolkit from the wit/gui golang package -func init() { +func initPlugin() { log.Log(INFO, "Init() of awesome-gocui") // init the config struct default values @@ -22,6 +22,8 @@ import ( "go.wit.com/toolkits/tree" ) +var initOnce sync.Once + // It's probably a terrible idea to call this 'me' // 2025 note: doesn't seem terrible to call this 'me' anymore. notsure. var me config diff --git a/treeInit.go b/treeInit.go index 40b5157..57db353 100644 --- a/treeInit.go +++ b/treeInit.go @@ -48,6 +48,7 @@ func Callback(guiCallback chan widget.Action) { } func PluginChannel() chan widget.Action { + initOnce.Do(initPlugin) return me.myTree.PluginChannel() } |
