summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunegunn Choi <junegunn.c@gmail.com>2024-12-10 20:59:52 +0900
committerJunegunn Choi <junegunn.c@gmail.com>2024-12-12 13:53:08 +0900
commitd004eb1f7cb5d62e0c5e4d33cce5d5ad4e02023e (patch)
tree9a6a0274b02bf98f6bdfea47e070122dd1357160
parent3148b0f3e88f8a116491135dc10a7ce6d96899bf (diff)
downloadfzf-d004eb1f7cb5d62e0c5e4d33cce5d5ad4e02023e.tar.gz
Redraw preview scrollbar when window width changes
-rw-r--r--src/terminal.go7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/terminal.go b/src/terminal.go
index adca67a3..138617e2 100644
--- a/src/terminal.go
+++ b/src/terminal.go
@@ -145,6 +145,7 @@ type previewer struct {
following resumableState
spinner string
bar []bool
+ xw [2]int
}
type previewed struct {
@@ -857,7 +858,7 @@ func NewTerminal(opts *Options, eventBox *util.EventBox, executor *util.Executor
initialPreviewOpts: opts.Preview,
previewOpts: opts.Preview,
activePreviewOpts: &opts.Preview,
- previewer: previewer{0, []string{}, 0, false, true, disabledState, "", []bool{}},
+ previewer: previewer{0, []string{}, 0, false, true, disabledState, "", []bool{}, [2]int{0, 0}},
previewed: previewed{0, 0, 0, false, false, false, false},
previewBox: previewBox,
eventBox: eventBox,
@@ -2842,10 +2843,12 @@ Loop:
func (t *Terminal) renderPreviewScrollbar(yoff int, barLength int, barStart int) {
height := t.pwindow.Height()
w := t.pborder.Width()
+ xw := [2]int{t.pwindow.Left(), t.pwindow.Width()}
redraw := false
- if len(t.previewer.bar) != height {
+ if len(t.previewer.bar) != height || t.previewer.xw != xw {
redraw = true
t.previewer.bar = make([]bool, height)
+ t.previewer.xw = xw
}
xshift := -1 - t.borderWidth
if !t.activePreviewOpts.border.HasRight() {