Delay redrawals on palette changes

Build on auto-sync and only mark window dirty on palette changes and let
the event handler do the actual draw.
This commit is contained in:
Santtu Lakkala 2022-02-17 16:00:47 +02:00 committed by Hiltjo Posthuma
parent 2c5edf28ec
commit e823e2308f

8
st.c
View file

@ -1927,7 +1927,7 @@ strhandle(void)
else if (xsetcolorname(defaultfg, p))
fprintf(stderr, "erresc: invalid foreground color: %s\n", p);
else
redraw();
tfulldirt();
return;
case 11:
if (narg < 2)
@ -1940,7 +1940,7 @@ strhandle(void)
else if (xsetcolorname(defaultbg, p))
fprintf(stderr, "erresc: invalid background color: %s\n", p);
else
redraw();
tfulldirt();
return;
case 12:
if (narg < 2)
@ -1953,7 +1953,7 @@ strhandle(void)
else if (xsetcolorname(defaultcs, p))
fprintf(stderr, "erresc: invalid cursor color: %s\n", p);
else
redraw();
tfulldirt();
return;
case 4: /* color set */
if (narg < 3)
@ -1975,7 +1975,7 @@ strhandle(void)
* TODO if defaultbg color is changed, borders
* are dirty
*/
redraw();
tfulldirt();
}
return;
}