libweston/drm-virtual: Add prepare_repaint to perform a repaint

With commit a1f8c49d5b, 'compositor: repaint backends
separately' a prepare repaint was introduced. Use it for DRM virtual API
to allow repainting the remoting/pipewire output.

Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
This commit is contained in:
Marius Vlad 2024-08-26 12:41:49 +03:00
parent aa3fe6a27a
commit b4726ef024
1 changed files with 8 additions and 0 deletions

View File

@ -343,6 +343,13 @@ drm_virtual_output_disable(struct weston_output *base)
return 0;
}
static void
drm_virtual_prepare_repaint(struct weston_output *base)
{
struct drm_output *output = to_drm_output(base);
output->device->will_repaint = true;
}
static struct weston_output *
drm_virtual_output_create(struct weston_compositor *c, char *name,
void (*destroy_func)(struct weston_output *))
@ -372,6 +379,7 @@ drm_virtual_output_create(struct weston_compositor *c, char *name,
output->base.enable = drm_virtual_output_enable;
output->base.destroy = drm_virtual_output_destroy;
output->base.disable = drm_virtual_output_disable;
output->base.prepare_repaint = drm_virtual_prepare_repaint;
output->base.attach_head = NULL;
output->backend = b;