mirror of
https://gitlab.freedesktop.org/wayland/weston
synced 2024-09-06 09:56:14 +00:00
desktop-shell: add close-animation config option for destroying surfaces
At the moment when surfaces are destroyed they are faded out but let's make it configurable! Tested-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
This commit is contained in:
parent
e67118c80a
commit
f322f8efea
|
@ -535,6 +535,9 @@ shell_configuration(struct desktop_shell *shell)
|
||||||
weston_config_section_get_string(section, "animation", &s, "none");
|
weston_config_section_get_string(section, "animation", &s, "none");
|
||||||
shell->win_animation_type = get_animation_type(s);
|
shell->win_animation_type = get_animation_type(s);
|
||||||
free(s);
|
free(s);
|
||||||
|
weston_config_section_get_string(section, "close-animation", &s, "fade");
|
||||||
|
shell->win_close_animation_type = get_animation_type(s);
|
||||||
|
free(s);
|
||||||
weston_config_section_get_string(section,
|
weston_config_section_get_string(section,
|
||||||
"startup-animation", &s, "fade");
|
"startup-animation", &s, "fade");
|
||||||
shell->startup_animation_type = get_animation_type(s);
|
shell->startup_animation_type = get_animation_type(s);
|
||||||
|
@ -3220,8 +3223,12 @@ handle_resource_destroy(struct wl_listener *listener, void *data)
|
||||||
pixman_region32_init(&shsurf->surface->pending.input);
|
pixman_region32_init(&shsurf->surface->pending.input);
|
||||||
pixman_region32_fini(&shsurf->surface->input);
|
pixman_region32_fini(&shsurf->surface->input);
|
||||||
pixman_region32_init(&shsurf->surface->input);
|
pixman_region32_init(&shsurf->surface->input);
|
||||||
weston_fade_run(shsurf->view, 1.0, 0.0, 300.0,
|
if (shsurf->shell->win_close_animation_type == ANIMATION_FADE) {
|
||||||
fade_out_done, shsurf);
|
weston_fade_run(shsurf->view, 1.0, 0.0, 300.0,
|
||||||
|
fade_out_done, shsurf);
|
||||||
|
} else {
|
||||||
|
weston_surface_destroy(shsurf->surface);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
|
@ -194,6 +194,7 @@ struct desktop_shell {
|
||||||
uint32_t binding_modifier;
|
uint32_t binding_modifier;
|
||||||
uint32_t exposay_modifier;
|
uint32_t exposay_modifier;
|
||||||
enum animation_type win_animation_type;
|
enum animation_type win_animation_type;
|
||||||
|
enum animation_type win_close_animation_type;
|
||||||
enum animation_type startup_animation_type;
|
enum animation_type startup_animation_type;
|
||||||
enum animation_type focus_animation_type;
|
enum animation_type focus_animation_type;
|
||||||
|
|
||||||
|
|
|
@ -201,6 +201,12 @@ sets the effect used for opening new windows (string). Can be
|
||||||
.B none.
|
.B none.
|
||||||
By default, no animation is used.
|
By default, no animation is used.
|
||||||
.TP 7
|
.TP 7
|
||||||
|
.BI "close-animation=" fade
|
||||||
|
sets the effect used when closing windows (string). Can be
|
||||||
|
.B fade,
|
||||||
|
.B none.
|
||||||
|
By default, the fade animation is used.
|
||||||
|
.TP 7
|
||||||
.BI "startup-animation=" fade
|
.BI "startup-animation=" fade
|
||||||
sets the effect used for opening new windows (string). Can be
|
sets the effect used for opening new windows (string). Can be
|
||||||
.B fade,
|
.B fade,
|
||||||
|
|
Loading…
Reference in a new issue