screenshooter: skip oneshot capture compositing if layer has VIDEO capability 13/133913/1
authorJunkyeong Kim <jk0430.kim@samsung.com>
Wed, 14 Jun 2017 04:11:18 +0000 (13:11 +0900)
committerJunkyeong Kim <jk0430.kim@samsung.com>
Wed, 14 Jun 2017 04:11:35 +0000 (13:11 +0900)
Change-Id: Id993ee99706482f5032d200af71059a5613fa756
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
src/e_devicemgr_screenshooter.c

index 54eff45ec69d0412279d26ac62f054415cc7a69f..92bf6845ff9b58b41d3636b4bb6a9bdf8dfee54d 100644 (file)
@@ -678,6 +678,7 @@ _e_tz_screenmirror_dump_still(E_Mirror_Buffer *buffer)
    for (i = 0; i < count; i++)
      {
         tdm_layer *layer;
+        tdm_layer_capability capability;
         tbm_surface_h surface = NULL;
         E_Devmgr_Buf *tmp = NULL;
         Eina_Rectangle dst_pos = {0, };
@@ -690,6 +691,11 @@ _e_tz_screenmirror_dump_still(E_Mirror_Buffer *buffer)
 
         if (layer != mirror->tdm_primary_layer)
           {
+             err = tdm_layer_get_capabilities(layer, &capability);
+             EINA_SAFETY_ON_FALSE_RETURN(err == TDM_ERROR_NONE);
+             if (capability & TDM_LAYER_CAPABILITY_VIDEO)
+               continue;
+
              surface = tdm_layer_get_displaying_buffer(layer, &err);
              if (surface == NULL)
                continue;
@@ -1367,7 +1373,7 @@ _e_tz_screenmirror_create(struct wl_client *client, struct wl_resource *shooter_
         layer = tdm_output_get_layer(mirror->tdm_output, i, &err);
         EINA_SAFETY_ON_FALSE_GOTO(err == TDM_ERROR_NONE, fail_create);
 
-        err = tdm_layer_get_capabilities (layer, &capability);
+        err = tdm_layer_get_capabilities(layer, &capability);
         EINA_SAFETY_ON_FALSE_GOTO(err == TDM_ERROR_NONE, fail_create);
 
         if (capability & TDM_LAYER_CAPABILITY_PRIMARY)