bool
TaskLayerSW::run(RunParams & /* params */) const
{
	synfig::Surface &target =
		SurfaceSW::Handle::cast_dynamic( target_surface )->get_surface();

	// TODO: target_rect

	RendDesc desc;
	desc.set_tl(get_source_rect_lt());
	desc.set_br(get_source_rect_rb());
	desc.set_wh(target.get_w(), target.get_h());
	desc.set_antialias(1);

	Canvas::Handle canvas = Canvas::create();
	return layer->accelerated_render(canvas->get_context(ContextParams()), &target, 4, desc, NULL);
}