diff --git a/modules/datadog/keyboard.go b/modules/datadog/keyboard.go index 3dd8e6f3..ac6921d5 100644 --- a/modules/datadog/keyboard.go +++ b/modules/datadog/keyboard.go @@ -5,7 +5,8 @@ import ( ) func (widget *Widget) initializeKeyboardControls() { - widget.SetKeyboardChar("/", widget.ShowHelp, "Show/hide this help prompt") + widget.InitializeCommonControls() + widget.SetKeyboardChar("r", widget.Refresh, "Refresh widget") widget.SetKeyboardChar("j", widget.Next, "Select next item") widget.SetKeyboardChar("k", widget.Prev, "Select previous item") diff --git a/modules/feedreader/keyboard.go b/modules/feedreader/keyboard.go index bc8bd14c..2759e8bc 100644 --- a/modules/feedreader/keyboard.go +++ b/modules/feedreader/keyboard.go @@ -3,7 +3,8 @@ package feedreader import "github.com/gdamore/tcell" func (widget *Widget) initializeKeyboardControls() { - widget.SetKeyboardChar("/", widget.ShowHelp, "Show/hide this help widget") + widget.InitializeCommonControls() + widget.SetKeyboardChar("r", widget.Refresh, "Refresh widget") widget.SetKeyboardChar("j", widget.Next, "Select next item") widget.SetKeyboardChar("k", widget.Prev, "Select previous item") diff --git a/modules/gerrit/keyboard.go b/modules/gerrit/keyboard.go index d2c0be3e..6f2677c8 100644 --- a/modules/gerrit/keyboard.go +++ b/modules/gerrit/keyboard.go @@ -5,7 +5,8 @@ import ( ) func (widget *Widget) initializeKeyboardControls() { - widget.SetKeyboardChar("/", widget.ShowHelp, "Show/hide this help window") + widget.InitializeCommonControls() + widget.SetKeyboardChar("r", widget.Refresh, "Refresh widget") widget.SetKeyboardChar("h", widget.prevProject, "Select previous project") widget.SetKeyboardChar("l", widget.nextProject, "Select next project") diff --git a/modules/git/keyboard.go b/modules/git/keyboard.go index d4478200..63116c3f 100644 --- a/modules/git/keyboard.go +++ b/modules/git/keyboard.go @@ -3,7 +3,8 @@ package git import "github.com/gdamore/tcell" func (widget *Widget) initializeKeyboardControls() { - widget.SetKeyboardChar("/", widget.ShowHelp, "Show/hide this help window") + widget.InitializeCommonControls() + widget.SetKeyboardChar("r", widget.Refresh, "Refresh widget") widget.SetKeyboardChar("l", widget.NextSource, "Select next source") widget.SetKeyboardChar("h", widget.PrevSource, "Select previous source") diff --git a/modules/github/keyboard.go b/modules/github/keyboard.go index 07432905..a32a52e9 100644 --- a/modules/github/keyboard.go +++ b/modules/github/keyboard.go @@ -5,7 +5,8 @@ import ( ) func (widget *Widget) initializeKeyboardControls() { - widget.SetKeyboardChar("/", widget.ShowHelp, "Show/hide this help prompt") + widget.InitializeCommonControls() + widget.SetKeyboardChar("r", widget.Refresh, "Refresh widget") widget.SetKeyboardChar("l", widget.NextSource, "Select next source") widget.SetKeyboardChar("h", widget.PrevSource, "Select previous source") diff --git a/modules/gitlab/keyboard.go b/modules/gitlab/keyboard.go index 5d3791d7..b8c8fe69 100644 --- a/modules/gitlab/keyboard.go +++ b/modules/gitlab/keyboard.go @@ -3,7 +3,8 @@ package gitlab import "github.com/gdamore/tcell" func (widget *Widget) initializeKeyboardControls() { - widget.SetKeyboardChar("/", widget.ShowHelp, "Show/hide this help prompt") + widget.InitializeCommonControls() + widget.SetKeyboardChar("r", widget.Refresh, "Refresh widget") widget.SetKeyboardChar("h", widget.PrevSource, "Select previous project") widget.SetKeyboardChar("l", widget.NextSource, "Select next project") diff --git a/modules/gitter/keyboard.go b/modules/gitter/keyboard.go index 9ff820c2..73a8c2d4 100644 --- a/modules/gitter/keyboard.go +++ b/modules/gitter/keyboard.go @@ -3,7 +3,8 @@ package gitter import "github.com/gdamore/tcell" func (widget *Widget) initializeKeyboardControls() { - widget.SetKeyboardChar("/", widget.ShowHelp, "Show/hide this help prompt") + widget.InitializeCommonControls() + widget.SetKeyboardChar("r", widget.Refresh, "Refresh widget") widget.SetKeyboardChar("j", widget.Next, "Select next item") widget.SetKeyboardChar("k", widget.Prev, "Select previous item") diff --git a/modules/hackernews/keyboard.go b/modules/hackernews/keyboard.go index f9917746..fc896e46 100644 --- a/modules/hackernews/keyboard.go +++ b/modules/hackernews/keyboard.go @@ -3,7 +3,8 @@ package hackernews import "github.com/gdamore/tcell" func (widget *Widget) initializeKeyboardControls() { - widget.SetKeyboardChar("/", widget.ShowHelp, "Show/hide this help widget") + widget.InitializeCommonControls() + widget.SetKeyboardChar("r", widget.Refresh, "Refresh widget") widget.SetKeyboardChar("j", widget.Next, "Select next item") widget.SetKeyboardChar("k", widget.Prev, "Select previous item") diff --git a/modules/jenkins/keyboard.go b/modules/jenkins/keyboard.go index 9ffefdb1..ee0ce9ac 100644 --- a/modules/jenkins/keyboard.go +++ b/modules/jenkins/keyboard.go @@ -3,7 +3,8 @@ package jenkins import "github.com/gdamore/tcell" func (widget *Widget) initializeKeyboardControls() { - widget.SetKeyboardChar("/", widget.ShowHelp, "Show/hide this help prompt") + widget.InitializeCommonControls() + widget.SetKeyboardChar("r", widget.Refresh, "Refresh widget") widget.SetKeyboardChar("j", widget.Next, "Select next item") widget.SetKeyboardChar("k", widget.Prev, "Select previous item") diff --git a/modules/jira/keyboard.go b/modules/jira/keyboard.go index fad3f783..50e5bc2d 100644 --- a/modules/jira/keyboard.go +++ b/modules/jira/keyboard.go @@ -5,7 +5,8 @@ import ( ) func (widget *Widget) initializeKeyboardControls() { - widget.SetKeyboardChar("/", widget.ShowHelp, "Show/hide this help prompt") + widget.InitializeCommonControls() + widget.SetKeyboardChar("r", widget.openItem, "Refresh widget") widget.SetKeyboardChar("j", widget.Next, "Select next item") widget.SetKeyboardChar("k", widget.Prev, "Select previous item") diff --git a/modules/mercurial/keyboard.go b/modules/mercurial/keyboard.go index 41fd62b9..bdbd0afc 100644 --- a/modules/mercurial/keyboard.go +++ b/modules/mercurial/keyboard.go @@ -3,7 +3,8 @@ package mercurial import "github.com/gdamore/tcell" func (widget *Widget) initializeKeyboardControls() { - widget.SetKeyboardChar("/", widget.ShowHelp, "Show/hide this help prompt") + widget.InitializeCommonControls() + widget.SetKeyboardChar("r", widget.Refresh, "Refresh widget") widget.SetKeyboardChar("l", widget.NextSource, "Select next source") widget.SetKeyboardChar("h", widget.PrevSource, "Select previous source") diff --git a/modules/nbascore/keyboard.go b/modules/nbascore/keyboard.go index ca20c120..c77c58f6 100644 --- a/modules/nbascore/keyboard.go +++ b/modules/nbascore/keyboard.go @@ -3,7 +3,8 @@ package nbascore import "github.com/gdamore/tcell" func (widget *Widget) initializeKeyboardControls() { - widget.SetKeyboardChar("/", widget.ShowHelp, "Show/hide this help prompt") + widget.InitializeCommonControls() + widget.SetKeyboardChar("r", widget.Refresh, "Refresh widget") widget.SetKeyboardChar("l", widget.next, "Select next item") widget.SetKeyboardChar("h", widget.prev, "Select previous item") diff --git a/modules/rollbar/keyboard.go b/modules/rollbar/keyboard.go index f6f760a9..33a8fa9a 100644 --- a/modules/rollbar/keyboard.go +++ b/modules/rollbar/keyboard.go @@ -3,7 +3,8 @@ package rollbar import "github.com/gdamore/tcell" func (widget *Widget) initializeKeyboardControls() { - widget.SetKeyboardChar("/", widget.ShowHelp, "Show/hide this help prompt") + widget.InitializeCommonControls() + widget.SetKeyboardChar("r", widget.Refresh, "Refresh widget") widget.SetKeyboardChar("j", widget.Next, "Select next item") widget.SetKeyboardChar("k", widget.Prev, "Select previous item") diff --git a/modules/spotify/keyboard.go b/modules/spotify/keyboard.go index 6c650834..e439c1c9 100644 --- a/modules/spotify/keyboard.go +++ b/modules/spotify/keyboard.go @@ -7,7 +7,8 @@ import ( ) func (widget *Widget) initializeKeyboardControls() { - widget.SetKeyboardChar("/", widget.ShowHelp, "Show/hide this help prompt") + widget.InitializeCommonControls() + widget.SetKeyboardChar("r", widget.Refresh, "Refresh widgett") widget.SetKeyboardChar("l", widget.next, "Select next item") widget.SetKeyboardChar("h", widget.previous, "Select previous item") diff --git a/modules/spotifyweb/keyboard.go b/modules/spotifyweb/keyboard.go index 50d0dbdb..ccc23a62 100644 --- a/modules/spotifyweb/keyboard.go +++ b/modules/spotifyweb/keyboard.go @@ -7,7 +7,8 @@ import ( ) func (widget *Widget) initializeKeyboardControls() { - widget.SetKeyboardChar("/", widget.ShowHelp, "Show/hide this help prompt") + widget.InitializeCommonControls() + widget.SetKeyboardChar("/", widget.Refresh, "Refresh widget") widget.SetKeyboardChar("h", widget.selectPrevious, "Select previous item") widget.SetKeyboardChar("l", widget.selectNext, "Select next item") diff --git a/modules/textfile/keyboard.go b/modules/textfile/keyboard.go index e5dba8d5..4eb90bde 100644 --- a/modules/textfile/keyboard.go +++ b/modules/textfile/keyboard.go @@ -6,7 +6,8 @@ import ( ) func (widget *Widget) initializeKeyboardControls() { - widget.SetKeyboardChar("/", widget.ShowHelp, "Show/hide this help prompt") + widget.InitializeCommonControls() + widget.SetKeyboardChar("l", widget.NextSource, "Select next file") widget.SetKeyboardChar("h", widget.PrevSource, "Select previous file") widget.SetKeyboardChar("o", widget.openFile, "Open file") diff --git a/modules/todo/keyboard.go b/modules/todo/keyboard.go index faa7b437..793a5e85 100644 --- a/modules/todo/keyboard.go +++ b/modules/todo/keyboard.go @@ -9,7 +9,8 @@ import ( ) func (widget *Widget) initializeKeyboardControls() { - widget.SetKeyboardChar("/", widget.ShowHelp, "Show/hide this help prompt") + widget.InitializeCommonControls() + widget.SetKeyboardChar("r", widget.Refresh, "Refresh widget") widget.SetKeyboardChar("j", widget.displayNext, "Select next item") widget.SetKeyboardChar("k", widget.displayPrev, "Select previous item") @@ -24,6 +25,7 @@ func (widget *Widget) initializeKeyboardControls() { widget.SetKeyboardKey(tcell.KeyCtrlJ, widget.demoteSelected, "Demote item") widget.SetKeyboardKey(tcell.KeyCtrlK, widget.promoteSelected, "Promote item") widget.SetKeyboardKey(tcell.KeyEnter, widget.editSelected, "Edit item") + } func (widget *Widget) deleteSelected() { diff --git a/modules/todoist/keyboard.go b/modules/todoist/keyboard.go index 43381f11..7ce284e9 100644 --- a/modules/todoist/keyboard.go +++ b/modules/todoist/keyboard.go @@ -3,7 +3,8 @@ package todoist import "github.com/gdamore/tcell" func (widget *Widget) initializeKeyboardControls() { - widget.SetKeyboardChar("/", widget.ShowHelp, "Show/hide this help prompt") + widget.InitializeCommonControls() + widget.SetKeyboardChar("r", widget.Refresh, "Refresh widget") widget.SetKeyboardChar("d", widget.Delete, "Delete item") widget.SetKeyboardChar("j", widget.Prev, "Select previous item") diff --git a/modules/transmission/keyboard.go b/modules/transmission/keyboard.go index a52ccd04..644aecb3 100644 --- a/modules/transmission/keyboard.go +++ b/modules/transmission/keyboard.go @@ -3,7 +3,8 @@ package transmission import "github.com/gdamore/tcell" func (widget *Widget) initializeKeyboardControls() { - widget.SetKeyboardChar("/", widget.ShowHelp, "Show/hide this help prompt") + widget.InitializeCommonControls() + widget.SetKeyboardChar("j", widget.Prev, "Select previous item") widget.SetKeyboardChar("k", widget.Next, "Select next item") widget.SetKeyboardChar("u", widget.Unselect, "Clear selection") diff --git a/modules/travisci/keyboard.go b/modules/travisci/keyboard.go index 06f6b4f4..b65c8b16 100644 --- a/modules/travisci/keyboard.go +++ b/modules/travisci/keyboard.go @@ -3,7 +3,8 @@ package travisci import "github.com/gdamore/tcell" func (widget *Widget) initializeKeyboardControls() { - widget.SetKeyboardChar("/", widget.ShowHelp, "Show/hide this help prompt") + widget.InitializeCommonControls() + widget.SetKeyboardChar("r", widget.Refresh, "Refresh widget") widget.SetKeyboardChar("j", widget.Next, "Select next item") widget.SetKeyboardChar("k", widget.Prev, "Select previous item") diff --git a/modules/twitter/keyboard.go b/modules/twitter/keyboard.go index 93d40439..c1263b3d 100644 --- a/modules/twitter/keyboard.go +++ b/modules/twitter/keyboard.go @@ -6,7 +6,8 @@ import ( ) func (widget *Widget) initializeKeyboardControls() { - widget.SetKeyboardChar("/", widget.ShowHelp, "Show/hide this help prompt") + widget.InitializeCommonControls() + widget.SetKeyboardChar("r", widget.Refresh, "Refresh widget") widget.SetKeyboardChar("l", widget.NextSource, "Select next source") widget.SetKeyboardChar("h", widget.PrevSource, "Select previous source") diff --git a/modules/weatherservices/weather/keyboard.go b/modules/weatherservices/weather/keyboard.go index 197e36be..81a4ca9a 100644 --- a/modules/weatherservices/weather/keyboard.go +++ b/modules/weatherservices/weather/keyboard.go @@ -3,7 +3,8 @@ package weather import "github.com/gdamore/tcell" func (widget *Widget) initializeKeyboardControls() { - widget.SetKeyboardChar("/", widget.ShowHelp, "Show/hide this help prompt") + widget.InitializeCommonControls() + widget.SetKeyboardChar("r", widget.Refresh, "Refresh Widget") widget.SetKeyboardChar("h", widget.PrevSource, "Select previous city") widget.SetKeyboardChar("l", widget.NextSource, "Select next city") diff --git a/modules/zendesk/keyboard.go b/modules/zendesk/keyboard.go index 3640d414..f0191a9c 100644 --- a/modules/zendesk/keyboard.go +++ b/modules/zendesk/keyboard.go @@ -3,8 +3,9 @@ package zendesk import "github.com/gdamore/tcell" func (widget *Widget) initializeKeyboardControls() { - widget.SetKeyboardChar("/", widget.ShowHelp, "Show/hide this help prompt") - widget.SetKeyboardChar("r", widget.ShowHelp, "Refresh widget") + widget.InitializeCommonControls() + + widget.SetKeyboardChar("r", widget.Refresh, "Refresh widget") widget.SetKeyboardChar("j", widget.Next, "Select next item") widget.SetKeyboardChar("k", widget.Prev, "Select previous item") widget.SetKeyboardChar("o", widget.openTicket, "Open item") diff --git a/view/keyboard_widget.go b/view/keyboard_widget.go index d48c69fd..e68e1393 100644 --- a/view/keyboard_widget.go +++ b/view/keyboard_widget.go @@ -31,7 +31,7 @@ type KeyboardWidget struct { // NewKeyboardWidget creates and returns a new instance of KeyboardWidget func NewKeyboardWidget(app *tview.Application, pages *tview.Pages, settings *cfg.Common) KeyboardWidget { - return KeyboardWidget{ + keyWidget := KeyboardWidget{ app: app, pages: pages, settings: settings, @@ -40,6 +40,8 @@ func NewKeyboardWidget(app *tview.Application, pages *tview.Pages, settings *cfg charHelp: []helpItem{}, keyHelp: []helpItem{}, } + + return keyWidget } // SetKeyboardChar sets a character/function combination that responds to key presses @@ -70,6 +72,12 @@ func (widget *KeyboardWidget) SetKeyboardKey(key tcell.Key, fn func(), helpText } } +// InitializeCommonControls sets up the keyboard controls that are common to +// all widgets that accept keyboard input +func (widget *KeyboardWidget) InitializeCommonControls() { + widget.SetKeyboardChar("/", widget.ShowHelp, "Show/hide this help prompt") +} + // InputCapture is the function passed to tview's SetInputCapture() function // This is done during the main widget's creation process using the following code: //