X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fshell.c;h=9e7693eb847d09ddebfccc001ba5010f5cc8f67e;hb=refs%2Ftags%2Flamprey_12.0.0;hp=941257acfaec958ed4b6ba3402ac828e41a9f6cd;hpb=308078596396326017e18a8ae81cba89770c3f7a;p=src%2Fagl-compositor.git diff --git a/src/shell.c b/src/shell.c index 941257a..9e7693e 100644 --- a/src/shell.c +++ b/src/shell.c @@ -54,6 +54,7 @@ agl_shell_desktop_advertise_application_id(struct ivi_compositor *ivi, struct ivi_surface *surface) { struct desktop_client *dclient; + static bool display_adv = false; if (surface->advertised_on_launch) return; @@ -63,7 +64,10 @@ agl_shell_desktop_advertise_application_id(struct ivi_compositor *ivi, const char *app_id = weston_desktop_surface_get_app_id(surface->dsurface); if (app_id == NULL) { - weston_log("WARNING app_is is null, unable to advertise\n"); + if (!display_adv) { + weston_log("WARNING app_is is null, unable to advertise\n"); + display_adv = true; + } return; } agl_shell_desktop_send_application(dclient->resource, app_id); @@ -107,6 +111,7 @@ ivi_set_desktop_surface_fullscreen(struct ivi_surface *surface) agl_shell_desktop_advertise_application_id(ivi, surface); } +#ifdef HAVE_WALTHAM void ivi_destroy_waltham_destroy(struct ivi_surface *surface) { @@ -177,6 +182,17 @@ ivi_output_notify_waltham_plugin(struct ivi_surface *surface) api->surface_push_to_remote(weston_surface, app_id, trans_remote, NULL); } +#else +void +ivi_destroy_waltham_destroy(struct ivi_surface *surface) +{ +} +static void +ivi_output_notify_waltham_plugin(struct ivi_surface *surface) +{ +} +#endif + static void ivi_set_desktop_surface_remote(struct ivi_surface *surface) { @@ -695,7 +711,7 @@ remove_black_surface(struct ivi_output *output) weston_layer_entry_remove(&view->layer_link); weston_view_update_transform(view); - weston_output_damage(output->output); + weston_view_damage_below(view); } void @@ -722,7 +738,7 @@ insert_black_surface(struct ivi_output *output) view->surface->is_mapped = true; weston_view_update_transform(view); - weston_output_damage(output->output); + weston_view_damage_below(view); } static void @@ -746,6 +762,7 @@ shell_ready(struct wl_client *client, struct wl_resource *shell_res) wl_list_for_each_safe(surface, tmp, &ivi->pending_surfaces, link) { wl_list_remove(&surface->link); + wl_list_init(&surface->link); ivi_check_pending_desktop_surface(surface); surface->checked_pending = true; }