mirror of
https://github.com/jesseduffield/lazydocker.git
synced 2026-07-25 08:31:03 +00:00
Extract view switching functionality into separate function
This commit is contained in:
parent
4f096c3c2b
commit
d195bdf2df
1 changed files with 20 additions and 8 deletions
|
|
@ -36,13 +36,7 @@ func (gui *Gui) nextView(g *gocui.Gui, v *gocui.View) error {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
focusedView, err := g.View(focusedViewName)
|
return gui.switchView(focusedViewName, g, v)
|
||||||
if err != nil {
|
|
||||||
panic(err)
|
|
||||||
}
|
|
||||||
gui.resetMainView()
|
|
||||||
gui.popPreviousView()
|
|
||||||
return gui.switchFocus(g, v, focusedView, false)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (gui *Gui) previousView(g *gocui.Gui, v *gocui.View) error {
|
func (gui *Gui) previousView(g *gocui.Gui, v *gocui.View) error {
|
||||||
|
|
@ -62,7 +56,25 @@ func (gui *Gui) previousView(g *gocui.Gui, v *gocui.View) error {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
focusedView, err := g.View(focusedViewName)
|
return gui.switchView(focusedViewName, g, v)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (gui *Gui) isViewAvailable(viewName string) bool {
|
||||||
|
for _, view := range gui.CyclableViews {
|
||||||
|
if view == viewName {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
|
func (gui *Gui) switchView(viewName string, g *gocui.Gui, v *gocui.View) error {
|
||||||
|
// Check if already on the view needed to avoid ugly rerendering
|
||||||
|
if !gui.isViewAvailable(viewName) || gui.currentViewName() == viewName {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
focusedView, err := g.View(viewName)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
panic(err)
|
panic(err)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue