diff --git a/sys/src/cmd/rio/dat.h b/sys/src/cmd/rio/dat.h index 690bd4168..1f12eef48 100644 --- a/sys/src/cmd/rio/dat.h +++ b/sys/src/cmd/rio/dat.h @@ -222,7 +222,7 @@ void wsetselect(Window*, uint, uint); void wshow(Window*, uint); void wsnarf(Window*); void wscrsleep(Window*, uint); -void wsetcols(Window*); +void wsetcols(Window*, int); struct Dirtab { diff --git a/sys/src/cmd/rio/wind.c b/sys/src/cmd/rio/wind.c index fab34f95a..e1db64d44 100644 --- a/sys/src/cmd/rio/wind.c +++ b/sys/src/cmd/rio/wind.c @@ -105,7 +105,7 @@ wresize(Window *w, Image *i, int move) else{ frclear(w, FALSE); frinit(w, r, w->font, w->i, cols); - wsetcols(w); + wsetcols(w, 1); w->maxtab = maxtab*stringwidth(w->font, "0"); r = insetrect(w->i->r, Selborder); draw(w->i, r, cols[BACK], nil, w->entire.min); @@ -710,15 +710,15 @@ wkeyctl(Window *w, Rune r) } void -wsetcols(Window *w) +wsetcols(Window *w, int topped) { if(w->holding) - if(w == input) + if(topped) w->cols[TEXT] = w->cols[HTEXT] = holdcol; else w->cols[TEXT] = w->cols[HTEXT] = lightholdcol; else - if(w == input) + if(topped) w->cols[TEXT] = w->cols[HTEXT] = cols[TEXT]; else w->cols[TEXT] = w->cols[HTEXT] = paletextcol; @@ -727,7 +727,7 @@ wsetcols(Window *w) void wrepaint(Window *w) { - wsetcols(w); + wsetcols(w, w == input); if(!w->mouseopen) frredraw(w); if(w == input)