summaryrefslogtreecommitdiffstats
path: root/src/terminal.go
diff options
context:
space:
mode:
Diffstat (limited to 'src/terminal.go')
-rw-r--r--src/terminal.go28
1 files changed, 21 insertions, 7 deletions
diff --git a/src/terminal.go b/src/terminal.go
index 2fa13984..b683c459 100644
--- a/src/terminal.go
+++ b/src/terminal.go
@@ -676,6 +676,8 @@ func (t *Terminal) resizeWindows() {
}
if t.pborder != nil {
t.pborder.Close()
+ }
+ if t.pwindow != nil {
t.pwindow.Close()
}
@@ -700,19 +702,28 @@ func (t *Terminal) resizeWindows() {
noBorder := tui.MakeBorderStyle(tui.BorderNone, t.unicode)
if previewVisible {
createPreviewWindow := func(y int, x int, w int, h int) {
- previewBorder := tui.MakeBorderStyle(tui.BorderRounded, t.unicode)
- if !t.preview.border {
- previewBorder = tui.MakeTransparentBorder()
+ pwidth := w
+ pheight := h
+ if t.preview.border != tui.BorderNone {
+ previewBorder := tui.MakeBorderStyle(t.preview.border, t.unicode)
+ t.pborder = t.tui.NewWindow(y, x, w, h, true, previewBorder)
+ pwidth -= 4
+ pheight -= 2
+ x += 2
+ y += 1
+ } else {
+ previewBorder := tui.MakeTransparentBorder()
+ t.pborder = t.tui.NewWindow(y, x, w, h, true, previewBorder)
+ pwidth -= 2
+ x += 1
}
- t.pborder = t.tui.NewWindow(y, x, w, h, true, previewBorder)
- pwidth := w - 4
// ncurses auto-wraps the line when the cursor reaches the right-end of
// the window. To prevent unintended line-wraps, we use the width one
// column larger than the desired value.
if !t.preview.wrap && t.tui.DoesAutoWrap() {
pwidth += 1
}
- t.pwindow = t.tui.NewWindow(y+1, x+2, pwidth, h-2, true, noBorder)
+ t.pwindow = t.tui.NewWindow(y, x, pwidth, pheight, true, noBorder)
}
switch t.preview.position {
case posUp:
@@ -1210,7 +1221,10 @@ func (t *Terminal) refresh() {
windows = append(windows, t.border)
}
if t.hasPreviewWindow() {
- windows = append(windows, t.pborder, t.pwindow)
+ if t.pborder != nil {
+ windows = append(windows, t.pborder)
+ }
+ windows = append(windows, t.pwindow)
}
windows = append(windows, t.window)
t.tui.RefreshWindows(windows)