When 'pushing' the surface store a reference of the
weston_transmitter_surface so we can later inform the plug-in when the
weston_surface is destroyed, so that it can also destroy the
transmittter_surface from its side.
Bug-AGL: SPEC-3601, SPEC-3611
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
Change-Id: I7fd1df2130e53e8c226c7a751c598765608ae6b3
IVI_SURFACE_PROP_POSITION = (1 << 1),
};
IVI_SURFACE_PROP_POSITION = (1 << 1),
};
+/* the waltham surface is a pointer type as well and
+ * in order to avoid adding ifdef for waltham use a
+ * generic pointer, which will be only be valid when the
+ * surface is a remote out on a waltham type of output */
+struct ivi_surface_waltham {
+ void *transmitter_surface;
+};
+
struct ivi_surface {
struct ivi_compositor *ivi;
struct weston_desktop_surface *dsurface;
struct ivi_surface {
struct ivi_compositor *ivi;
struct weston_desktop_surface *dsurface;
struct ivi_remote_surface remote;
};
struct ivi_remote_surface remote;
};
+ struct ivi_surface_waltham waltham_surface;
struct wl_listener listener_advertise_app;
struct wl_signal signal_advertise_app;
};
struct wl_listener listener_advertise_app;
struct wl_signal signal_advertise_app;
};
* wthp_ivi_app_id_surface_create() and is responsible for setting-up
* the gstreamer pipeline as well.
*/
* wthp_ivi_app_id_surface_create() and is responsible for setting-up
* the gstreamer pipeline as well.
*/
- api->surface_push_to_remote(weston_surface, app_id, trans_remote, NULL);
+ surface->waltham_surface.transmitter_surface =
+ api->surface_push_to_remote(weston_surface, app_id, trans_remote, NULL);