This commit is contained in:
Dmitry Nefedov 2024-11-14 09:28:24 +00:00 committed by GitHub
commit 3830655b5b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -858,6 +858,13 @@ void ScreenInteractive::Draw(Component component) {
ResetCursorPosition(); ResetCursorPosition();
std::cout << ResetPosition(/*clear=*/resized); std::cout << ResetPosition(/*clear=*/resized);
// If the terminal width decrease, the terminal emulator will start wrapping
// lines and make the display dirty. We should clear it completely.
if ((dimx < dimx_) && !use_alternative_screen_) {
std::cout << "\033[J"; // clear terminal output
std::cout << "\033[H"; // move cursor to home position
}
// Resize the screen if needed. // Resize the screen if needed.
if (resized) { if (resized) {
dimx_ = dimx; dimx_ = dimx;