Prevent flickering when redrawing the TUI python window

tui_win_info::refresh_window first redraws the background window, then
tui_wrefresh draws the python text on top of it, which flickers.

By using wnoutrefresh for the background window, the actual drawing on
the screen is only done once, without flickering.

gdb/ChangeLog:

2021-05-24  Hannes Domani  <ssbssa@yahoo.de>

	* python/py-tui.c (tui_py_window::refresh_window):
	Avoid flickering.
This commit is contained in:
Hannes Domani 2020-12-22 15:02:47 +01:00
parent c45d37a9bd
commit a56889ae38
2 changed files with 8 additions and 1 deletions

View file

@ -1,3 +1,8 @@
2021-05-24 Hannes Domani <ssbssa@yahoo.de>
* python/py-tui.c (tui_py_window::refresh_window):
Avoid flickering.
2021-05-23 Tom de Vries <tdevries@suse.de>
PR tdep/27822

View file

@ -91,12 +91,14 @@ public:
void refresh_window () override
{
tui_win_info::refresh_window ();
if (m_inner_window != nullptr)
{
wnoutrefresh (handle.get ());
touchwin (m_inner_window.get ());
tui_wrefresh (m_inner_window.get ());
}
else
tui_win_info::refresh_window ();
}
/* Erase and re-box the window. */