commit e823e2308f2a99023032a3966ebb7036a31d305f from: Santtu Lakkala via: Hiltjo Posthuma date: Fri Feb 18 12:03:37 2022 UTC 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. commit - 2c5edf28ec851907305d73c6218ce75d39f1767f commit + e823e2308f2a99023032a3966ebb7036a31d305f blob - 51049ba22b86cb7f13d99b1c880504c0362ba320 blob + c71fa0677ee40d7ba71b5b67fbb70b4386500be8 --- st.c +++ st.c @@ -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; }