diff options
| author | Junegunn Choi <junegunn.c@gmail.com> | 2023-01-31 17:33:53 +0900 |
|---|---|---|
| committer | Junegunn Choi <junegunn.c@gmail.com> | 2023-01-31 17:34:11 +0900 |
| commit | aa2b9ec47652e84f320dad512c179feb46c8364c (patch) | |
| tree | 0179c14c43d4d1bb20c5306bef5f98a70f44eaa3 /src | |
| parent | 3ee00f8bc281e98e06689c127ebd09c0ed123929 (diff) | |
| download | fzf-aa2b9ec47652e84f320dad512c179feb46c8364c.tar.gz | |
Add 'show-preview' and 'hide-preview'
For cases where 'toggle-preview' is not enough
Diffstat (limited to 'src')
| -rw-r--r-- | src/options.go | 4 | ||||
| -rw-r--r-- | src/terminal.go | 15 |
2 files changed, 17 insertions, 2 deletions
diff --git a/src/options.go b/src/options.go index 86a168c0..e30ba2c5 100644 --- a/src/options.go +++ b/src/options.go @@ -1111,6 +1111,10 @@ func parseActionList(masked string, original string, prevActions []*action, putA appendAction(actPrevSelected) case "next-selected": appendAction(actNextSelected) + case "show-preview": + appendAction(actShowPreview) + case "hide-preview": + appendAction(actHidePreview) case "toggle-preview": appendAction(actTogglePreview) case "toggle-preview-wrap": diff --git a/src/terminal.go b/src/terminal.go index 8308f63d..b95686ca 100644 --- a/src/terminal.go +++ b/src/terminal.go @@ -350,6 +350,8 @@ const ( actRefreshPreview actReplaceQuery actToggleSort + actShowPreview + actHidePreview actTogglePreview actTogglePreviewWrap actTransformBorderLabel @@ -2866,8 +2868,17 @@ func (t *Terminal) Loop() { case actInvalid: t.mutex.Unlock() return false - case actTogglePreview: - if t.hasPreviewWindow() || len(t.previewOpts.command) > 0 { + case actTogglePreview, actShowPreview, actHidePreview: + var act bool + switch a.t { + case actShowPreview: + act = !t.hasPreviewWindow() && len(t.previewOpts.command) > 0 + case actHidePreview: + act = t.hasPreviewWindow() + case actTogglePreview: + act = t.hasPreviewWindow() || len(t.previewOpts.command) > 0 + } + if act { t.activePreviewOpts.Toggle() updatePreviewWindow(false) if t.isPreviewEnabled() { |
