Avoid redundant redraws on resize
Use a global flag to record whether the terminal was resized instead of redrawing everything each time a KEY_RESIZE is read. Add some additional checks to help_write_pad() as invalid actions may be passed now due to using signals instead of virtual key presses. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
This commit is contained in:
@@ -179,9 +179,7 @@ main (int argc, char **argv)
|
||||
break;
|
||||
|
||||
case KEY_GENERIC_REDRAW:
|
||||
case KEY_RESIZE:
|
||||
do_update = 0;
|
||||
wins_reset ();
|
||||
resize = 1;
|
||||
break;
|
||||
|
||||
case KEY_GENERIC_CHANGE_VIEW:
|
||||
@@ -567,6 +565,14 @@ main (int argc, char **argv)
|
||||
apoint_hilt_set (1);
|
||||
}
|
||||
}
|
||||
|
||||
if (resize)
|
||||
{
|
||||
resize = 0;
|
||||
do_update = 0;
|
||||
wins_reset ();
|
||||
}
|
||||
|
||||
if (do_update)
|
||||
wins_update ();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user