not creating damage for ec that shows a underlay video accepted/tizen/mobile/20150908.004204 accepted/tizen/tv/20150908.004222 accepted/tizen/wearable/20150908.004213 submit/tizen/20150907.103405
authorBoram Park <boram1288.park@samsung.com>
Mon, 7 Sep 2015 01:50:10 +0000 (10:50 +0900)
committerBoram Park <boram1288.park@samsung.com>
Mon, 7 Sep 2015 10:33:04 +0000 (19:33 +0900)
Change-Id: I0a1aa92987088814319449a564137a753b540ad6

src/bin/e_comp_wl.c

index 3b503a261b65f88c2ae6794e5bbdb31aff2a011c..132da2caf6f280ec590205663a4c5e6e872c0507 100644 (file)
@@ -1824,7 +1824,11 @@ _e_comp_wl_surface_state_commit(E_Client *ec, E_Comp_Wl_Surface_State *state)
           {
              EINA_LIST_FREE(state->damages, dmg)
                {
-                  e_comp_object_damage(ec->frame, dmg->x, dmg->y, dmg->w, dmg->h);
+                  /* not creating damage for ec that shows a underlay video */
+                  if (ec->comp_data->buffer_ref.buffer->type != E_COMP_WL_BUFFER_TYPE_DRM ||
+                      !e_comp->wl_comp_data->available_hw_accel.underlay)
+                    e_comp_object_damage(ec->frame, dmg->x, dmg->y, dmg->w, dmg->h);
+
                   eina_rectangle_free(dmg);
                }
           }
@@ -1882,6 +1886,10 @@ _e_comp_wl_surface_state_commit(E_Client *ec, E_Comp_Wl_Surface_State *state)
    EINA_LIST_FOREACH(state->frames, l, cb)
      eina_list_move(&ec->comp_data->frames, &state->frames, cb);
 
+   if (ec->comp_data->buffer_ref.buffer->type == E_COMP_WL_BUFFER_TYPE_DRM &&
+       e_comp->wl_comp_data->available_hw_accel.underlay)
+     e_pixmap_image_clear(ec->pixmap, 1);
+
    return;
 
 unmapped: