Open leg100 opened 1 month ago
Noted, thank you! This is a regression which we're tracking in https://github.com/charmbracelet/bubbletea/issues/573.
Whoops, that's actually not the correct issue so let's track it here.
We'll look into this, however we're also working on a new renderer, which should obviate (and deprecate) the need for the current high performance rendering API, implicitly fixing this issue.
Anyway, we'll keep this issue updated.
Thank you @meowgorithm for the fast response.
To be honest I've been hitting this issue in my app. I've attempted for the last few days to incorporate high performance rendering, after seeing some very noticeable lag when rendering not-that-complicated nor very many ansi sequences. Because the app is multi-model, i.e. switching from one viewport to another one occupying the same lines on the terminal, it took some work to re-sync the viewport each time, but I got that working quite nicely. However every now and then the rendering would produce strange artefacts, with this issue being the one that was consistently replicable in the pager example.
With that in mind, I look forward keenly to the new renderer!
Describe the bug I'm running the pager example, albeit with high performance rendering turned on. It works fine until the window is resized, at which point the first line of the viewport is 'lost', i.e. it is re-rendered as an empty line.
Setup
To Reproduce Steps to reproduce the behavior:
./examples/pager
main.go
to enable high performance renderer:go run main.go
Screenshots Before resize:
Further info
The line does reappear if you scroll down and then back up again.
It also re-appears if you full screen the terminal and then un-fullscreen the terminal.
If you scroll down before a window resize, and then resize the window, then the first visible line is missing and stays missing until you scroll it out of view and back into view.