From f262a01b1f555031958063b99988195e69ade4d9 Mon Sep 17 00:00:00 2001 From: Luke Adams Date: Tue, 2 Oct 2018 14:14:06 -0600 Subject: [PATCH 1/2] add open/close in bug view --- termui/show_bug.go | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/termui/show_bug.go b/termui/show_bug.go index 32bea95a899e15a1bf24b8ac52525ab7c00be78a..6a7504561c24a6c34edb223923dc898fff1ce58b 100644 --- a/termui/show_bug.go +++ b/termui/show_bug.go @@ -94,7 +94,7 @@ func (sb *showBug) layout(g *gocui.Gui) error { } v.Clear() - fmt.Fprintf(v, "[q] Save and return [←↓↑→,hjkl] Navigation ") + fmt.Fprintf(v, "[q] Save and return [←↓↑→,hjkl] Navigation [o] Toggle open/close ") if sb.isOnSide { fmt.Fprint(v, "[a] Add label [r] Remove label") @@ -171,6 +171,12 @@ func (sb *showBug) keybindings(g *gocui.Gui) error { return err } + // Open/close + if err := g.SetKeybinding(showBugView, 'o', gocui.ModNone, + sb.toggleOpenClose); err != nil { + return err + } + // Title if err := g.SetKeybinding(showBugView, 't', gocui.ModNone, sb.setTitle); err != nil { @@ -603,6 +609,14 @@ func (sb *showBug) setTitle(g *gocui.Gui, v *gocui.View) error { return setTitleWithEditor(sb.bug) } +func (sb *showBug) toggleOpenClose(g *gocui.Gui, v *gocui.View) error { + if sb.bug.Snapshot().Status.String() == "open" { + return sb.bug.Close() + } else { + return sb.bug.Open() + } +} + func (sb *showBug) addLabel(g *gocui.Gui, v *gocui.View) error { c := ui.inputPopup.Activate("Add labels") From 6698acd8cecd81ae7f6cfbd9bc26153d4e7f8b88 Mon Sep 17 00:00:00 2001 From: Luke Adams Date: Tue, 2 Oct 2018 16:18:39 -0600 Subject: [PATCH 2/2] make changes --- termui/show_bug.go | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/termui/show_bug.go b/termui/show_bug.go index 6a7504561c24a6c34edb223923dc898fff1ce58b..4ca987bd9d5c8ddfb471d6f8c45179936df3b93f 100644 --- a/termui/show_bug.go +++ b/termui/show_bug.go @@ -94,12 +94,12 @@ func (sb *showBug) layout(g *gocui.Gui) error { } v.Clear() - fmt.Fprintf(v, "[q] Save and return [←↓↑→,hjkl] Navigation [o] Toggle open/close ") + fmt.Fprintf(v, "[q] Save and return [←↓↑→,hjkl] Navigation ") if sb.isOnSide { fmt.Fprint(v, "[a] Add label [r] Remove label") } else { - fmt.Fprint(v, "[c] Comment [t] Change title") + fmt.Fprint(v, "[o] Toggle open/close [c] Comment [t] Change title") } _, err = g.SetViewOnTop(showBugInstructionView) @@ -610,10 +610,13 @@ func (sb *showBug) setTitle(g *gocui.Gui, v *gocui.View) error { } func (sb *showBug) toggleOpenClose(g *gocui.Gui, v *gocui.View) error { - if sb.bug.Snapshot().Status.String() == "open" { + switch sb.bug.Snapshot().Status { + case bug.OpenStatus: return sb.bug.Close() - } else { - return sb.bug.Open() + case bug.ClosedStatus: + return sb.bug.Open() + default: + return nil } }