}
WL_EXPORT void
+weston_surface_schedule_repaint(struct weston_surface *surface)
+{
+ struct weston_output *output;
+
+ wl_list_for_each(output, &surface->compositor->output_list, link)
+ if (surface->output_mask & (1 << output->id))
+ weston_output_schedule_repaint(output);
+}
+
+WL_EXPORT void
weston_surface_damage(struct weston_surface *surface)
{
pixman_region32_union_rect(&surface->damage, &surface->damage,
0, 0, surface->geometry.width,
surface->geometry.height);
- weston_compositor_schedule_repaint(surface->compositor);
+ weston_surface_schedule_repaint(surface);
}
WL_EXPORT void
wl_fixed_from_int(0));
}
- weston_compositor_schedule_repaint(surface->compositor);
+ weston_surface_schedule_repaint(surface);
}
struct weston_frame_callback {
pixman_region32_union_rect(&es->damage, &es->damage,
x, y, width, height);
-
- weston_compositor_schedule_repaint(es->compositor);
+ weston_surface_schedule_repaint(es);
}
static void
surface->geometry.height);
}
- weston_compositor_schedule_repaint(surface->compositor);
+ weston_surface_schedule_repaint(surface);
}
static const struct wl_surface_interface surface_interface = {
weston_surface_set_position(ws->sprite,
ix - ws->hotspot_x,
iy - ws->hotspot_y);
- weston_compositor_schedule_repaint(ec);
+ weston_surface_schedule_repaint(ws->sprite);
}
}