{
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
{
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
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);
#include <unistd.h>
#include <pepper.h>
+#include <pepper-output-backend.h>
#include <xdg-shell-unstable-v6-server-protocol.h>
#include <tizen-extension-server-protocol.h>
}
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) {