Transfer focus to panelContainer on some Menu callbacks

This commit is contained in:
Luke I. Wilson 2021-04-07 19:55:11 -05:00
parent e7e459b16f
commit eb17dfec2e

View File

@ -297,8 +297,10 @@ func main() {
panelMenu.AddItems([]ui.Item{&ui.ItemEntry{Name: "Focus Next", Shortcut: "Alt+.", Callback: func() { panelMenu.AddItems([]ui.Item{&ui.ItemEntry{Name: "Focus Next", Shortcut: "Alt+.", Callback: func() {
panelContainer.SelectNext() panelContainer.SelectNext()
changeFocus(panelContainer)
}}, &ui.ItemEntry{Name: "Focus Prev", Shortcut: "Alt+,", Callback: func() { }}, &ui.ItemEntry{Name: "Focus Prev", Shortcut: "Alt+,", Callback: func() {
panelContainer.SelectPrev() panelContainer.SelectPrev()
changeFocus(panelContainer)
}}, &ui.ItemEntry{Name: "Focus Up", QuickChar: -1, Shortcut: "Alt+Up", Callback: func() { }}, &ui.ItemEntry{Name: "Focus Up", QuickChar: -1, Shortcut: "Alt+Up", Callback: func() {
}}, &ui.ItemEntry{Name: "Focus Down", QuickChar: -1, Shortcut: "Alt+Down", Callback: func() { }}, &ui.ItemEntry{Name: "Focus Down", QuickChar: -1, Shortcut: "Alt+Down", Callback: func() {
@ -310,13 +312,17 @@ func main() {
}}, &ui.ItemSeparator{}, &ui.ItemEntry{Name: "Split Top", QuickChar: 6, Callback: func() { }}, &ui.ItemSeparator{}, &ui.ItemEntry{Name: "Split Top", QuickChar: 6, Callback: func() {
panelContainer.SplitSelected(ui.SplitVertical, ui.NewTabContainer(&theme)) panelContainer.SplitSelected(ui.SplitVertical, ui.NewTabContainer(&theme))
panelContainer.SwapNeighborsSelected() panelContainer.SwapNeighborsSelected()
changeFocus(panelContainer)
}}, &ui.ItemEntry{Name: "Split Bottom", QuickChar: 6, Callback: func() { }}, &ui.ItemEntry{Name: "Split Bottom", QuickChar: 6, Callback: func() {
panelContainer.SplitSelected(ui.SplitVertical, ui.NewTabContainer(&theme)) panelContainer.SplitSelected(ui.SplitVertical, ui.NewTabContainer(&theme))
changeFocus(panelContainer)
}}, &ui.ItemEntry{Name: "Split Left", QuickChar: 6, Callback: func() { }}, &ui.ItemEntry{Name: "Split Left", QuickChar: 6, Callback: func() {
panelContainer.SplitSelected(ui.SplitHorizontal, ui.NewTabContainer(&theme)) panelContainer.SplitSelected(ui.SplitHorizontal, ui.NewTabContainer(&theme))
panelContainer.SwapNeighborsSelected() panelContainer.SwapNeighborsSelected()
changeFocus(panelContainer)
}}, &ui.ItemEntry{Name: "Split Right", QuickChar: 6, Callback: func() { }}, &ui.ItemEntry{Name: "Split Right", QuickChar: 6, Callback: func() {
panelContainer.SplitSelected(ui.SplitHorizontal, ui.NewTabContainer(&theme)) panelContainer.SplitSelected(ui.SplitHorizontal, ui.NewTabContainer(&theme))
changeFocus(panelContainer)
}}, &ui.ItemSeparator{}, &ui.ItemEntry{Name: "Move", Shortcut: "Ctrl+M", Callback: func() { }}, &ui.ItemSeparator{}, &ui.ItemEntry{Name: "Move", Shortcut: "Ctrl+M", Callback: func() {
}}, &ui.ItemEntry{Name: "Resize", Shortcut: "Ctrl+R", Callback: func() { }}, &ui.ItemEntry{Name: "Resize", Shortcut: "Ctrl+R", Callback: func() {
@ -326,6 +332,7 @@ func main() {
if !panelContainer.GetFloatingFocused() { if !panelContainer.GetFloatingFocused() {
panelContainer.SetFloatingFocused(true) panelContainer.SetFloatingFocused(true)
} }
changeFocus(panelContainer)
}}}) }}})
editMenu := ui.NewMenu("Edit", 0, &theme) editMenu := ui.NewMenu("Edit", 0, &theme)