From: lsj119 Date: Tue, 7 May 2019 01:29:36 +0000 (+0900) Subject: headless_server::ouput update the empty screen X-Git-Tag: submit/tizen/20190530.092249~25 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F83%2F207183%2F1;p=platform%2Fcore%2Fuifw%2Fpepper.git headless_server::ouput update the empty screen Change-Id: Ibe75da060ac3010ab888406a20b8b2f89d0a22c2 --- diff --git a/src/bin/headless/output/output_led.c b/src/bin/headless/output/output_led.c index 50116e1..aac60a3 100644 --- a/src/bin/headless/output/output_led.c +++ b/src/bin/headless/output/output_led.c @@ -248,10 +248,10 @@ led_output_cb_frame_done(void *data) { led_output_t *output = (led_output_t *)data; - PEPPER_TRACE("[OUTPUT] frame_done\n"); + PEPPER_TRACE("[OUTPUT] frame_done %p\n", output); + output->frame_done = NULL; pepper_output_finish_frame(output->output, NULL); - output->frame_done = NULL; } static void @@ -259,16 +259,18 @@ led_output_add_frame_done(led_output_t *output) { struct wl_event_loop *loop; - PEPPER_TRACE("[OUTPUT] Add idle for frame(output:%p, frame:%p\n", output, output->frame_done); + PEPPER_TRACE("[OUTPUT] Add idle for frame(output:%p, frame_done:%p)\n", output, output->frame_done); - if (!output || output->frame_done) + if (!output || output->frame_done) { + PEPPER_TRACE("[OUTPUT] skip add frame_done\n"); return; + } loop = wl_display_get_event_loop(pepper_compositor_get_display(output->compositor)); PEPPER_CHECK(loop, return, "[OUTPUT] fail to get event loop\n"); output->frame_done = wl_event_loop_add_idle(loop, led_output_cb_frame_done, output); - PEPPER_CHECK(output->frame_done, return, "fail to add idle\n"); + PEPPER_CHECK(output->frame_done, return, "[OUTPUT] fail to add idle\n"); } static void @@ -355,6 +357,10 @@ headless_output_deinit(pepper_compositor_t *compositor) if (output) { pepper_object_set_user_data((pepper_object_t *)compositor, &KEY_OUTPUT, NULL, NULL); + if (output->boot_ani) { + boot_ani_stop(output); + } + pepper_output_destroy(output->output); led_output_destroy(output); diff --git a/src/bin/headless/shell/shell.c b/src/bin/headless/shell/shell.c index b6284b6..fe7c0d7 100644 --- a/src/bin/headless/shell/shell.c +++ b/src/bin/headless/shell/shell.c @@ -26,6 +26,7 @@ #include #include +#include #include #include @@ -1031,9 +1032,18 @@ headless_shell_cb_idle(void *data) } if (top != hs_shell->top_mapped) { + const pepper_list_t *l; + pepper_list_t *ll; + PEPPER_TRACE("[SHELL] IDLE : top-view change: %p to %p\n", hs_shell->top_mapped , top); hs_shell->top_mapped = top; headless_input_set_top_view(hs_shell->compositor, hs_shell->top_mapped); + + /*Force update the output*/ + l = pepper_compositor_get_output_list(hs_shell->compositor); + pepper_list_for_each_list(ll, l) { + pepper_output_add_damage_region((pepper_output_t *)ll->item, NULL); + } } if (focus != hs_shell->focus) {