summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunegunn Choi <junegunn.c@gmail.com>2025-03-28 23:22:09 +0900
committerJunegunn Choi <junegunn.c@gmail.com>2025-03-28 23:23:43 +0900
commit0dce561ec9894781bb356e12f4adef0686421bb7 (patch)
tree8e9c78d02ce18f095dea61f4b457c822851fa097
parent376142eb0d5a0572221c6cada2a6e361c13ac2b4 (diff)
downloadfzf-0dce561ec9894781bb356e12f4adef0686421bb7.tar.gz
Fix header window not updated on change-header
-rw-r--r--src/terminal.go7
-rw-r--r--test/test_core.rb7
2 files changed, 13 insertions, 1 deletions
diff --git a/src/terminal.go b/src/terminal.go
index ec6e5d9b..ad5ad628 100644
--- a/src/terminal.go
+++ b/src/terminal.go
@@ -5133,7 +5133,12 @@ func (t *Terminal) Loop() error {
header = t.captureLines(a.a)
}
if t.changeHeader(header) {
- req(reqHeader, reqList, reqPrompt, reqInfo)
+ if t.headerWindow != nil {
+ // Need to resize header window
+ req(reqFullRedraw)
+ } else {
+ req(reqHeader, reqList, reqPrompt, reqInfo)
+ }
} else {
req(reqHeader)
}
diff --git a/test/test_core.rb b/test/test_core.rb
index ec0a1da8..c8b73f23 100644
--- a/test/test_core.rb
+++ b/test/test_core.rb
@@ -1920,4 +1920,11 @@ class TestCore < TestInteractive
tmux.send_keys :Up
tmux.until { |lines| assert_includes lines, ' 2' }
end
+
+ def test_change_header_on_header_window
+ tmux.send_keys %(seq 100 | #{FZF} --list-border --input-border --bind 'start:change-header(foo),space:change-header(bar)'), :Enter
+ tmux.until { |lines| assert lines.any_include?('foo') }
+ tmux.send_keys :Space
+ tmux.until { |lines| assert lines.any_include?('bar') }
+ end
end