More fixing for fade-outs.

When a window is destroyed, always override the fade out so that the finish_destroy_win function can be called.
When a ConfigureNotify event is processed on an unmapped window, don't set the clipChanged = True.  Fixes unmap->configure causing flashing during the fade-out.
This commit is contained in:
Dana Jansens 2008-02-20 01:20:40 -05:00
parent f717d14a38
commit c69769f0ae
1 changed files with 4 additions and 2 deletions

View File

@ -1669,10 +1669,12 @@ configure_win (Display *dpy, XConfigureEvent *ce)
XFixesDestroyRegion (dpy, extents); XFixesDestroyRegion (dpy, extents);
add_damage (dpy, damage); add_damage (dpy, damage);
} }
clipChanged = True;
} }
w->a.override_redirect = ce->override_redirect; w->a.override_redirect = ce->override_redirect;
restack_win (dpy, w, ce->above); restack_win (dpy, w, ce->above);
clipChanged = True;
} }
static void static void
@ -1743,7 +1745,7 @@ destroy_win (Display *dpy, Window id, Bool fade)
#if HAS_NAME_WINDOW_PIXMAP #if HAS_NAME_WINDOW_PIXMAP
if (w && w->pixmap && fade && winTypeFade[w->windowType]) if (w && w->pixmap && fade && winTypeFade[w->windowType])
set_fade (dpy, w, w->opacity*1.0/OPAQUE, 0.0, fade_out_step, set_fade (dpy, w, w->opacity*1.0/OPAQUE, 0.0, fade_out_step,
destroy_callback, False, (w->a.map_state != IsUnmapped)); destroy_callback, False, True);
else else
#endif #endif
{ {