summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJunegunn Choi <junegunn.c@gmail.com>2024-08-11 14:48:52 +0900
committerJunegunn Choi <junegunn.c@gmail.com>2024-08-11 14:48:52 +0900
commite28f5aa45baf20ffdba469e11a998d3016c8cb42 (patch)
treef6b94cbe65742f4564ad453b7edf019ac155d38b /src
parenta2d0e8f233fd7cda11390dd8b5675af04693631b (diff)
downloadfzf-e28f5aa45baf20ffdba469e11a998d3016c8cb42.tar.gz
Make sure preview command is not run before Terminal is ready
Diffstat (limited to 'src')
-rw-r--r--src/terminal.go8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/terminal.go b/src/terminal.go
index bbccf1c6..29df02b2 100644
--- a/src/terminal.go
+++ b/src/terminal.go
@@ -382,6 +382,7 @@ const (
reqRedrawPreviewLabel
reqClose
reqPrintQuery
+ reqPreviewReady
reqPreviewEnqueue
reqPreviewDisplay
reqPreviewRefresh
@@ -3469,6 +3470,7 @@ func (t *Terminal) Loop() error {
go func() {
var version int64
stop := false
+ t.previewBox.WaitFor(reqPreviewReady)
for {
var items []*Item
var commandTemplate string
@@ -3497,6 +3499,9 @@ func (t *Terminal) Loop() error {
if stop {
break
}
+ if items == nil {
+ continue
+ }
version++
// We don't display preview window if no match
if items[0] != nil {
@@ -3738,6 +3743,9 @@ func (t *Terminal) Loop() error {
t.printHeader()
case reqActivate:
t.suppress = false
+ if t.hasPreviewer() {
+ t.previewBox.Set(reqPreviewReady, nil)
+ }
case reqRedrawBorderLabel:
t.printLabel(t.border, t.borderLabel, t.borderLabelOpts, t.borderLabelLen, t.borderShape, true)
case reqRedrawPreviewLabel: