diff --git a/sway/desktop/render.c b/sway/desktop/render.c index c0c9294b..ed3b66bf 100644 --- a/sway/desktop/render.c +++ b/sway/desktop/render.c @@ -1685,6 +1685,7 @@ static void render_containers(struct sway_output *output, void render_container(struct sway_output *output, pixman_region32_t *damage, struct sway_container *con, bool focused) { if (con->is_fading_out) { + printf("rendering snapshot\n"); fx_render_container_snapshot(output->renderer, con); return; } diff --git a/sway/tree/view.c b/sway/tree/view.c index d326a660..783c4c11 100644 --- a/sway/tree/view.c +++ b/sway/tree/view.c @@ -428,8 +428,9 @@ void view_set_tiled(struct sway_view *view, bool tiled) { } void view_close(struct sway_view *view) { - view->container->target_alpha = 0; - wl_event_source_timer_update(view->container->animation_present_timer, 1); + if (view->impl->close) { + view->impl->close(view); + } } void view_close_popups(struct sway_view *view) { @@ -956,7 +957,7 @@ void view_unmap(struct sway_view *view) { wl_signal_emit_mutable(&view->events.unmap, view); struct sway_workspace *ws = view->container->pending.workspace; if (ws && config->animation_duration > 0) { - printf("starting fade out animation"); + printf("starting fade out animation\n"); view->container->is_fading_out = true; fx_render_container_snapshot(ws->output->renderer, view->container); view->container->target_alpha = 0;