diff options
| -rw-r--r-- | src/win.c | 21 |
1 files changed, 11 insertions, 10 deletions
@@ -304,13 +304,13 @@ static inline void win_release_pixmap(backend_t *base, struct managed_win *w) { w->flags |= WIN_FLAGS_PIXMAP_NONE; } } -static inline void win_release_oldpixmap(backend_t *base, struct managed_win *w) { - log_debug("Releasing old_pixmap of window %#010x (%s)", w->base.id, w->name); - if (w->old_win_image) { - base->ops->release_image(base, w->old_win_image); - w->old_win_image = NULL; - } -} +// static inline void win_release_oldpixmap(backend_t *base, struct managed_win *w) { +// log_debug("Releasing old_pixmap of window %#010x (%s)", w->base.id, w->name); +// if (w->old_win_image) { +// base->ops->release_image(base, w->old_win_image); +// w->old_win_image = NULL; +// } +// } static inline void win_release_shadow(backend_t *base, struct managed_win *w) { log_debug("Releasing shadow of window %#010x (%s)", w->base.id, w->name); assert(w->shadow_image); @@ -403,7 +403,7 @@ void win_release_images(struct backend_base *backend, struct managed_win *w) { if (!win_check_flags_all(w, WIN_FLAGS_PIXMAP_NONE)) { assert(!win_check_flags_all(w, WIN_FLAGS_PIXMAP_STALE)); win_release_pixmap(backend, w); - win_release_oldpixmap(backend, w); + // win_release_oldpixmap(backend, w); } if (!win_check_flags_all(w, WIN_FLAGS_SHADOW_NONE)) { @@ -2426,7 +2426,7 @@ static void unmap_win_finish(session_t *ps, struct managed_win *w) { // Shadow image can be preserved. if (!win_check_flags_all(w, WIN_FLAGS_PIXMAP_NONE)) { win_release_pixmap(ps->backend_data, w); - win_release_oldpixmap(ps->backend_data, w); + // win_release_oldpixmap(ps->backend_data, w); } } else { assert(!w->win_image); @@ -3231,5 +3231,6 @@ win_stack_find_next_managed(const session_t *ps, const struct list_node *i) { /// Return whether this window is mapped on the X server side bool win_is_mapped_in_x(const struct managed_win *w) { return w->state == WSTATE_MAPPING || w->state == WSTATE_FADING || - w->state == WSTATE_MAPPED || (w->flags & WIN_FLAGS_MAPPED); + w->state == WSTATE_MAPPED || w->state == WSTATE_UNMAPPING || + w->state == WSTATE_DESTROYING || (w->flags & WIN_FLAGS_MAPPED); } |