summaryrefslogtreecommitdiffstats
path: root/src/shell.c
diff options
context:
space:
mode:
authorMarius Vlad <marius.vlad@collabora.com>2020-10-22 00:07:53 +0300
committerMarius Vlad <marius.vlad@collabora.com>2020-11-05 10:41:32 +0200
commit681f5df234921e989606eefc6e293f37883bb22e (patch)
tree0fb98bf910eed581d52fd3125dfad05155f86731 /src/shell.c
parent27e99ddcad08fd3568133cf3b72a1ae8670a185f (diff)
shell: Destroy weston_transmitter_surface as well
Instruct waltham-transmitter-plugin that it can destroy its own surface representation when the weston_surface is also destroyed. Bug-AGL: SPEC-3601, SPEC-3611 Signed-off-by: Marius Vlad <marius.vlad@collabora.com> Change-Id: Ie0e5409b21c043b8c98bebb4d77808227ee38aca
Diffstat (limited to 'src/shell.c')
-rw-r--r--src/shell.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/shell.c b/src/shell.c
index 0422583..fb15dfc 100644
--- a/src/shell.c
+++ b/src/shell.c
@@ -107,6 +107,20 @@ ivi_set_desktop_surface_fullscreen(struct ivi_surface *surface)
agl_shell_desktop_advertise_application_id(ivi, surface);
}
+void
+ivi_destroy_waltham_destroy(struct ivi_surface *surface)
+{
+ struct ivi_compositor *ivi = surface->ivi;
+ const struct weston_transmitter_api *api =
+ ivi->waltham_transmitter_api;
+
+ if (!api)
+ return;
+
+ if (surface->waltham_surface.transmitter_surface)
+ api->surface_destroy(surface->waltham_surface.transmitter_surface);
+}
+
static void
ivi_output_notify_waltham_plugin(struct ivi_surface *surface)
{