From 44d03687476565bced5cd428b52cc795530412d5 Mon Sep 17 00:00:00 2001 From: cutelisp Date: Sun, 11 May 2025 14:32:35 +0100 Subject: [PATCH] FIX: ruler drawn on top of the tab bar (#3744) Wrap function lacked a condition to avoid drawing below 0. --- internal/display/bufwindow.go | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/internal/display/bufwindow.go b/internal/display/bufwindow.go index 1e83b48d..2d1740c7 100644 --- a/internal/display/bufwindow.go +++ b/internal/display/bufwindow.go @@ -619,16 +619,21 @@ func (w *BufWindow) displayBuffer() { wrap := func() { vloc.X = 0 - if w.hasMessage { - w.drawGutter(&vloc, &bloc) - } - if b.Settings["diffgutter"].(bool) { - w.drawDiffGutter(lineNumStyle, true, &vloc, &bloc) - } - // This will draw an empty line number because the current line is wrapped - if b.Settings["ruler"].(bool) { - w.drawLineNum(lineNumStyle, true, &vloc, &bloc) + if vloc.Y >= 0 { + if w.hasMessage { + w.drawGutter(&vloc, &bloc) + } + if b.Settings["diffgutter"].(bool) { + w.drawDiffGutter(lineNumStyle, true, &vloc, &bloc) + } + + // This will draw an empty line number because the current line is wrapped + if b.Settings["ruler"].(bool) { + w.drawLineNum(lineNumStyle, true, &vloc, &bloc) + } + } else { + vloc.X = w.gutterOffset } }