Compare commits

...

2 Commits

Author SHA1 Message Date
Junegunn Choi
6444cc7905
Render preview label if possible when --preview-border=line 2025-01-06 10:09:59 +09:00
Junegunn Choi
328af1f397
Remove header indentation when unnecessary
# Indent the header to align with the entries in the list
  fzf --header 'Hello' --header-border --list-border

  # No extra indentation required
  fzf --header 'Hello' --header-border
2025-01-06 09:57:58 +09:00
2 changed files with 15 additions and 9 deletions

View File

@ -2014,7 +2014,9 @@ func (t *Terminal) resizeWindows(forcePreview bool, redrawBorder bool) {
// Print border label
t.printLabel(t.wborder, t.listLabel, t.listLabelOpts, t.listLabelLen, t.listBorderShape, false)
t.printLabel(t.border, t.borderLabel, t.borderLabelOpts, t.borderLabelLen, t.borderShape, false)
t.printLabel(t.pborder, t.previewLabel, t.previewLabelOpts, t.previewLabelLen, t.activePreviewOpts.border, false)
if t.pborder != nil && t.pwindow.Height() != t.pborder.Height() { // To address --preview-border=line with different positions
t.printLabel(t.pborder, t.previewLabel, t.previewLabelOpts, t.previewLabelLen, t.activePreviewOpts.border, false)
}
t.printLabel(t.inputBorder, t.inputLabel, t.inputLabelOpts, t.inputLabelLen, t.inputBorderShape, false)
t.printLabel(t.headerBorder, t.headerLabel, t.headerLabelOpts, t.headerLabelLen, t.headerBorderShape, false)
}
@ -2029,7 +2031,7 @@ func (t *Terminal) printLabel(window tui.Window, render labelPrinter, opts label
}
switch borderShape {
case tui.BorderHorizontal, tui.BorderTop, tui.BorderBottom, tui.BorderRounded, tui.BorderSharp, tui.BorderBold, tui.BorderBlock, tui.BorderThinBlock, tui.BorderDouble:
case tui.BorderHorizontal, tui.BorderTop, tui.BorderBottom, tui.BorderRounded, tui.BorderSharp, tui.BorderBold, tui.BorderBlock, tui.BorderThinBlock, tui.BorderDouble, tui.BorderLine:
if redrawBorder {
window.DrawHBorder()
}
@ -2386,7 +2388,11 @@ func (t *Terminal) printHeaderImpl() {
}
// Wrapping is not supported for header
wrap := t.wrap
indent := strings.Repeat(" ", t.pointerLen+t.markerLen)
indentSize := t.pointerLen + t.markerLen
if t.headerBorderShape.HasLeft() && !t.listBorderShape.HasLeft() {
indentSize = util.Max(0, indentSize-(1+t.borderWidth))
}
indent := strings.Repeat(" ", indentSize)
t.wrap = false
for idx, lineStr := range append(append([]string{}, t.header0...), t.header...) {
line := idx

View File

@ -3588,9 +3588,9 @@ class TestGoFZF < TestBase
11
> 10
3
2
1
3
2
1
header
19/97
> 1
@ -3609,9 +3609,9 @@ class TestGoFZF < TestBase
19/97
> 1
3
2
1
3
2
1
header