I've been writing my TUI app and noticed that a certain cell (bottom row, fifth from right) gets skipped under certain very specific conditions that I've been trying to pin down, but failed (the bug is not present in one case in reproduction, and under the same circumstances it is present in my TUI app). After the skip, the cursor still keeps having its offset incremented by "1", even if it's move()d after the skip's beginning, and goes off-screen if the last character of the line is selected. It still functions as if it's correctly placed, though
Repro: https://github.com/megahomyak/cursesfuck/tree/54cbc6fde2f55883fa6102b8c8631b0daeadc50f/kitty_bug
The TUI app: https://github.com/megahomyak/megatui/tree/655f680549785e216745777b9df536adcc85e43f
The bug is NOT present in the repro or in the app in: Alacritty, Konsole, Terminator, Termux
Screenshots:
The TUI app:
The repro:

I've been writing my TUI app and noticed that a certain cell (bottom row, fifth from right) gets skipped under certain very specific conditions that I've been trying to pin down, but failed (the bug is not present in one case in reproduction, and under the same circumstances it is present in my TUI app). After the skip, the cursor still keeps having its offset incremented by "1", even if it's move()d after the skip's beginning, and goes off-screen if the last character of the line is selected. It still functions as if it's correctly placed, though
Repro: https://github.com/megahomyak/cursesfuck/tree/54cbc6fde2f55883fa6102b8c8631b0daeadc50f/kitty_bug
The TUI app: https://github.com/megahomyak/megatui/tree/655f680549785e216745777b9df536adcc85e43f
The bug is NOT present in the repro or in the app in: Alacritty, Konsole, Terminator, Termux
Screenshots:
The TUI app:
The repro: