From fa3238403cefc1dea12039ce509d069439d45270 Mon Sep 17 00:00:00 2001 From: Carlos Alexandro Becker Date: Tue, 7 Jan 2025 11:59:08 -0300 Subject: [PATCH] perf: do not cut anything if not needed --- viewport/viewport.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/viewport/viewport.go b/viewport/viewport.go index b2f49f3..9cc979f 100644 --- a/viewport/viewport.go +++ b/viewport/viewport.go @@ -139,6 +139,10 @@ func (m Model) visibleLines() (lines []string) { lines = m.lines[top:bottom] } + if m.xOffset == 0 && m.longestLineWidth <= m.Width { + return lines + } + cutLines := make([]string, len(lines)) for i := range lines { cutLines[i] = ansi.Cut(lines[i], m.xOffset, m.xOffset+m.Width)