Bug fix: --no-fading-openclose doesn't work when fading out

- Fix the bug that --no-fading-openclose doesn not work when fading out
   by writing w->fade_last as well in win_determine_fade().

 - Write w->fade_last for applying w->fade_force, as well.
This commit is contained in:
Richard Grenville 2014-11-30 15:39:07 +08:00
parent 6d8fde457a
commit 65e655e3bc
1 changed files with 5 additions and 5 deletions

View File

@ -2414,15 +2414,15 @@ calc_dim(session_t *ps, win *w) {
*/ */
static void static void
win_determine_fade(session_t *ps, win *w) { win_determine_fade(session_t *ps, win *w) {
// To prevent it from being overwritten by last-paint value if the window is
// unmapped on next frame, write w->fade_last as well
if (UNSET != w->fade_force) if (UNSET != w->fade_force)
w->fade = w->fade_force; w->fade_last = w->fade = w->fade_force;
else if (ps->o.no_fading_openclose && w->in_openclose) else if (ps->o.no_fading_openclose && w->in_openclose)
w->fade = false; w->fade_last = w->fade = false;
else if (ps->o.no_fading_destroyed_argb && w->destroyed else if (ps->o.no_fading_destroyed_argb && w->destroyed
&& WMODE_ARGB == w->mode && w->client_win && w->client_win != w->id) { && WMODE_ARGB == w->mode && w->client_win && w->client_win != w->id) {
w->fade = false; w->fade_last = w->fade = false;
// Prevent it from being overwritten by last-paint value
w->fade_last = false;
} }
// Ignore other possible causes of fading state changes after window // Ignore other possible causes of fading state changes after window
// gets unmapped // gets unmapped