diff --git a/pkg/gui/keybindings.go b/pkg/gui/keybindings.go index df706024..30483f79 100644 --- a/pkg/gui/keybindings.go +++ b/pkg/gui/keybindings.go @@ -32,6 +32,8 @@ func (b *Binding) GetKey() string { switch key { case 27: return "esc" + case 12: + return "Ctrl+L" case 13: return "enter" case 32: @@ -185,6 +187,13 @@ func (gui *Gui) GetInitialKeybindings() []*Binding { Modifier: gocui.ModNone, Handler: gui.handleDonate, }, + { + ViewName: "containers", + Key: gocui.KeyCtrlL, + Modifier: gocui.ModNone, + Handler: wrappedHandler(gui.handleClearMain), + Description: gui.Tr.ClearMain, + }, { ViewName: "containers", Key: 'd', @@ -262,6 +271,13 @@ func (gui *Gui) GetInitialKeybindings() []*Binding { Handler: gui.handleContainersOpenInBrowserCommand, Description: gui.Tr.OpenInBrowser, }, + { + ViewName: "services", + Key: gocui.KeyCtrlL, + Modifier: gocui.ModNone, + Handler: wrappedHandler(gui.handleClearMain), + Description: gui.Tr.ClearMain, + }, { ViewName: "services", Key: 'u', @@ -449,6 +465,13 @@ func (gui *Gui) GetInitialKeybindings() []*Binding { Modifier: gocui.ModNone, Handler: gui.scrollRightMain, }, + { + ViewName: "main", + Key: gocui.KeyCtrlL, + Modifier: gocui.ModNone, + Handler: wrappedHandler(gui.handleClearMain), + Description: gui.Tr.ClearMain, + }, { ViewName: "main", Key: 'h', diff --git a/pkg/gui/main_panel.go b/pkg/gui/main_panel.go index 004147be..f94b3540 100644 --- a/pkg/gui/main_panel.go +++ b/pkg/gui/main_panel.go @@ -111,3 +111,12 @@ func (gui *Gui) handleMainClick() error { return gui.switchFocus(gui.Views.Main) } + +func (gui *Gui) handleClearMain() error { + if gui.popupPanelFocused() { + return nil + } + + gui.clearMainView() + return nil +} diff --git a/pkg/i18n/english.go b/pkg/i18n/english.go index d86b0c84..1ff36aa0 100644 --- a/pkg/i18n/english.go +++ b/pkg/i18n/english.go @@ -128,6 +128,7 @@ type TranslationSet struct { LcNextScreenMode string LcPrevScreenMode string + ClearMain string FilterPrompt string FocusProjects string @@ -271,6 +272,7 @@ func englishSet() TranslationSet { LcNextScreenMode: "next screen mode (normal/half/fullscreen)", LcPrevScreenMode: "prev screen mode", + ClearMain: "clear main panel", FilterPrompt: "filter", FocusProjects: "focus projects panel",