const char *app_id =
weston_desktop_surface_get_app_id(surface->dsurface);
- if (!app_id) {
- *role = IVI_SURFACE_ROLE_NONE;
- return;
- }
-
role_pending_list = &ivi->popup_pending_apps;
wl_list_for_each(p_popup, role_pending_list, link) {
if (!strcmp(app_id, p_popup->app_id)) {
void
ivi_shell_finalize(struct ivi_compositor *ivi)
{
+ struct ivi_output *output;
+
ivi_shell_destroy_views_on_layer(&ivi->hidden);
weston_layer_fini(&ivi->hidden);
ivi_shell_destroy_views_on_layer(&ivi->popup);
weston_layer_fini(&ivi->popup);
+
+ wl_list_for_each(output, &ivi->outputs, link) {
+ if (output->fullscreen_view.fs->view) {
+ weston_surface_destroy(output->fullscreen_view.fs->view->surface);
+ output->fullscreen_view.fs->view = NULL;
+ }
+ }
+ weston_layer_fini(&ivi->fullscreen);
}
static void