summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/terminal.go5
-rw-r--r--test/test_go.rb9
2 files changed, 12 insertions, 2 deletions
diff --git a/src/terminal.go b/src/terminal.go
index fa758e93..2a02ff88 100644
--- a/src/terminal.go
+++ b/src/terminal.go
@@ -1079,8 +1079,9 @@ func (t *Terminal) Loop() {
for key, ret := range t.expect {
if keyMatch(key, event) {
t.pressed = ret
- req(reqClose)
- break
+ t.reqBox.Set(reqClose, nil)
+ t.mutex.Unlock()
+ return
}
}
diff --git a/test/test_go.rb b/test/test_go.rb
index 2c018181..ff4b173b 100644
--- a/test/test_go.rb
+++ b/test/test_go.rb
@@ -452,6 +452,15 @@ class TestGoFZF < TestBase
assert_equal ['55', 'alt-z', '55'], readonce.split($/)
end
+ def test_expect_printable_character_print_query
+ tmux.send_keys "seq 1 100 | #{fzf '--expect=z --print-query'}", :Enter
+ tmux.until { |lines| lines[-2].include? '100/100' }
+ tmux.send_keys '55'
+ tmux.until { |lines| lines[-2].include? '1/100' }
+ tmux.send_keys 'z'
+ assert_equal ['55', 'z', '55'], readonce.split($/)
+ end
+
def test_expect_print_query_select_1
tmux.send_keys "seq 1 100 | #{fzf '-q55 -1 --expect=alt-z --print-query'}", :Enter
assert_equal ['55', '', '55'], readonce.split($/)