wl_resource_destroy(&cb->resource);
}
- wl_list_for_each_safe(animation, next, &ec->animation_list, link)
+ wl_list_for_each_safe(animation, next, &output->animation_list, link)
animation->frame(animation, output, msecs);
}
WL_EXPORT void
weston_compositor_fade(struct weston_compositor *compositor, float tint)
{
+ struct weston_output *output;
struct weston_surface *surface;
int done;
+ output = container_of(compositor->output_list.next,
+ struct weston_output, link);
+
done = weston_spring_done(&compositor->fade.spring);
compositor->fade.spring.target = tint;
if (weston_spring_done(&compositor->fade.spring))
weston_surface_damage(compositor->fade.surface);
if (wl_list_empty(&compositor->fade.animation.link))
- wl_list_insert(compositor->animation_list.prev,
+ wl_list_insert(output->animation_list.prev,
&compositor->fade.animation.link);
}
wl_signal_init(&output->frame_signal);
wl_list_init(&output->frame_callback_list);
+ wl_list_init(&output->animation_list);
wl_list_init(&output->resource_list);
output->id = ffs(~output->compositor->output_id_pool) - 1;
wl_list_init(&ec->key_binding_list);
wl_list_init(&ec->button_binding_list);
wl_list_init(&ec->axis_binding_list);
- wl_list_init(&ec->animation_list);
weston_spring_init(&ec->fade.spring, 30.0, 1.0, 1.0);
ec->fade.animation.frame = fade_frame;
wl_list_init(&ec->fade.animation.link);
struct weston_compositor *compositor;
struct weston_matrix matrix;
struct wl_list frame_callback_list;
+ struct wl_list animation_list;
int32_t x, y, mm_width, mm_height;
struct weston_border border;
pixman_region32_t region;
struct wl_list key_binding_list;
struct wl_list button_binding_list;
struct wl_list axis_binding_list;
- struct wl_list animation_list;
struct {
struct weston_spring spring;
struct weston_animation animation;
wl_signal_add(&surface->surface.resource.destroy_signal,
&zoom->listener);
- wl_list_insert(&surface->compositor->animation_list,
+ wl_list_insert(&surface->output->animation_list,
&zoom->animation.link);
return zoom;
wl_signal_add(&surface->surface.resource.destroy_signal,
&fade->listener);
- wl_list_insert(&surface->compositor->animation_list,
+ wl_list_insert(&surface->output->animation_list,
&fade->animation.link);
return fade;