Revert "video: Use values of evas_map_point_image_uv for source region." 77/221177/1 submit/tizen_5.5/20191230.044854
authorSeunghun Lee <shiin.lee@samsung.com>
Mon, 30 Dec 2019 02:37:16 +0000 (11:37 +0900)
committerSeunghun Lee <shiin.lee@samsung.com>
Mon, 30 Dec 2019 02:44:41 +0000 (11:44 +0900)
This reverts commit 3a5814c90a4e9acf4fc9433f93ed684bae6b7ee4.

Change-Id: Ice7b2a921e181f096a50e670c025d5f58ee13262

src/bin/video/iface/e_video_hwc.c

index 64e2f34fb5391269b6d65dc67c23b79c538ee313..90fa4ad2ee40ee3e424481d0a42c0ed23243fad8 100644 (file)
@@ -1035,10 +1035,8 @@ _e_video_hwc_geometry_map_apply(E_Client *ec, E_Video_Hwc_Geometry *out)
 {
    const Evas_Map *m;
    Evas_Point p[4];
-   Eina_Rectangle input_r, output_r;
-   Eina_Bool res = EINA_FALSE;
+   Eina_Rectangle output_r;
    uint transform;
-   double u1, v1, u2, v2;
    int i;
 
    EINA_SAFETY_ON_NULL_RETURN_VAL(ec, EINA_FALSE);
@@ -1055,65 +1053,37 @@ _e_video_hwc_geometry_map_apply(E_Client *ec, E_Video_Hwc_Geometry *out)
    for (i = 0; i < 4; i++)
      evas_map_point_coord_get(m, i, &p[i].x, &p[i].y, NULL);
 
-   if (_e_video_hwc_coords_to_rectangle_convert(p, &output_r, &transform))
-     {
-        if (memcmp(&out->output_r, &output_r, sizeof(Eina_Rectangle)) != 0)
-          {
-             VDB("Evas_Map Changed: dst region (%d,%d %dx%d) => (%d,%d %dx%d)",
-                 ec, EINA_RECTANGLE_ARGS(&out->output_r),
-                 EINA_RECTANGLE_ARGS(&output_r));
-             res = EINA_TRUE;
-             out->output_r = output_r;
-          }
-
-        /* NOTE Merge transform value from evas_map with E_Comp_Wl_Buffer_Viewport's one.
-         * Since buffer.transform isn't applied using evas_map,
-         * it has to be taken into account here to apply buffer.transform
-         * and rotation of e_client_transform together. */
-        transform =
-           _e_video_hwc_transform_merge_with_buffer_viewport(&ec->comp_data->scaler.buffer_viewport,
-                                                             transform);
-
-        if (out->transform != transform)
-          {
-             VDB("Evas_Map Changed: transform (%d) => (%d)",
-                 ec, out->transform, transform);
-             res = EINA_TRUE;
-             out->transform = transform;
-          }
-     }
-   else
+   if (!_e_video_hwc_coords_to_rectangle_convert(p, &output_r, &transform))
      {
         VIN("Cannot convert given coords to rectangle.\n"
             "p1(%d %d) p2(%d %d) p3(%d %d) p4(%d %d)",
             ec, p[0].x, p[0].y, p[1].x, p[1].y,
             p[2].x, p[2].y, p[3].x, p[3].y);
+        return EINA_FALSE;
      }
 
-   /* In order to get source region accordingly for video client requesting
-    * 'tizen_viewport(or wl_viewport).set_source' without attach new buffer,
-    * 'wl_surface.commit' has to be handled.
-    * Or another way, since 'tizen_viewport(or wl_viewport).set_source' must
-    * set values of evas_map_point_image_uv, therefore, considering values of
-    * evas_map_point_image_uv can get source region as well. */
-   evas_map_point_image_uv_get(m, 0, &u1, &v1);
-   evas_map_point_image_uv_get(m, 2, &u2, &v2);
+   /* NOTE Merge transform value from evas_map with E_Comp_Wl_Buffer_Viewport's one.
+    * Since buffer.transform isn't applied using evas_map,
+    * it has to be taken into account here to apply buffer.transform
+    * and rotation of e_client_transform together. */
+   transform =
+      _e_video_hwc_transform_merge_with_buffer_viewport(&ec->comp_data->scaler.buffer_viewport,
+                                                        transform);
 
-   _coord_to_rectangle((Evas_Point[2]){{u1, v1}, {u2, v2}}, &input_r);
+   if ((!memcmp(&out->output_r, &output_r, sizeof(Eina_Rectangle))) &&
+       (out->transform == transform))
+     return EINA_FALSE;
 
-   if (memcmp(&out->input_r, &input_r, sizeof(Eina_Rectangle)) != 0)
-     {
-        VDB("Evas_Map Changed: src region (%d,%d %dx%d) => (%d,%d %dx%d)", ec,
-            EINA_RECTANGLE_ARGS(&out->input_r),
-            EINA_RECTANGLE_ARGS(&input_r));
-        res = EINA_TRUE;
-        out->input_r = input_r;
-     }
+   VDB("frame(%p) m(%p) output(%d,%d %dx%d) trans(%d) => (%d,%d %dx%d) trans(%d)",
+       ec, ec->frame, m, EINA_RECTANGLE_ARGS(&out->output_r), out->transform,
+       EINA_RECTANGLE_ARGS(&output_r), transform);
+
+   out->output_r = output_r;
+   out->transform = transform;
 
-   if (res)
-     _e_video_hwc_geometry_tdm_config_update(ec, out);
+   _e_video_hwc_geometry_tdm_config_update(ec, out);
 
-   return res;
+   return EINA_TRUE;
 }
 
 static void