From fb3bf6c9841d849ec459fc6b251b4aa0f16d8038 Mon Sep 17 00:00:00 2001 From: Junegunn Choi Date: Fri, 3 Jan 2025 19:56:07 +0900 Subject: [PATCH] Fix cursor placement of tcell renderer --- src/terminal.go | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/src/terminal.go b/src/terminal.go index b05c38b..fd5efa2 100644 --- a/src/terminal.go +++ b/src/terminal.go @@ -3181,17 +3181,28 @@ func (t *Terminal) printAll() { func (t *Terminal) flush() { t.placeCursor() if !t.suppress { - windows := make([]tui.Window, 0, 4) - if t.borderShape.Visible() { + windows := make([]tui.Window, 0, 7) + if t.border != nil { windows = append(windows, t.border) } - if t.hasPreviewWindow() { - if t.pborder != nil { - windows = append(windows, t.pborder) - } + if t.pborder != nil { + windows = append(windows, t.pborder) + } + if t.pwindow != nil { windows = append(windows, t.pwindow) } - windows = append(windows, t.window) + if t.wborder != nil { + windows = append(windows, t.wborder) + } + if t.window != nil { + windows = append(windows, t.window) + } + if t.inputBorder != nil { + windows = append(windows, t.inputBorder) + } + if t.inputWindow != nil { + windows = append(windows, t.inputWindow) + } t.tui.RefreshWindows(windows) } }