From: Seunghun Lee Date: Mon, 11 Nov 2019 10:14:31 +0000 (+0900) Subject: video: fix clipping destination region of tdm info. X-Git-Tag: submit/tizen/20191112.105927~9 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=e59e03134cd2933f7b5ba4d65212d5fc5cb58631;p=platform%2Fupstream%2Fenlightenment.git video: fix clipping destination region of tdm info. A region of clipper should be determined according to output transform. Change-Id: I7ef2d014ede203a2ee8ce41a39f575b55f2ef1b8 --- diff --git a/src/bin/video/iface/e_video_hwc.c b/src/bin/video/iface/e_video_hwc.c index 5aa94183bd..90fa4ad2ee 100644 --- a/src/bin/video/iface/e_video_hwc.c +++ b/src/bin/video/iface/e_video_hwc.c @@ -814,13 +814,23 @@ _e_video_hwc_coord_transform(Eina_Rectangle *src_rect, Eina_Rectangle *dst_rect, * clipped accordingly. */ static void -_e_video_hwc_tdm_viewport_clip(E_Video_Hwc_Geometry *in_out, E_Zone *zone) +_e_video_hwc_tdm_viewport_clip(E_Video_Hwc_Geometry *in_out, E_Zone *zone, int transform) { Eina_Rectangle *dst_rect, *src_rect; Eina_Rectangle new_dst_rect, clip_rect; Evas_Point p[2]; - EINA_RECTANGLE_SET(&clip_rect, zone->x, zone->y, zone->w, zone->h); + switch (transform & 0x3) + { + case WL_OUTPUT_TRANSFORM_90: + case WL_OUTPUT_TRANSFORM_270: + EINA_RECTANGLE_SET(&clip_rect, zone->x, zone->y, zone->h, zone->w); + break; + default: + EINA_RECTANGLE_SET(&clip_rect, zone->x, zone->y, zone->w, zone->h); + break; + } + src_rect = &in_out->input_r; dst_rect = &in_out->tdm.output_r; @@ -945,7 +955,7 @@ _e_video_hwc_geometry_tdm_config_update(E_Client *ec, E_Video_Hwc_Geometry *out) ec, EINA_RECTANGLE_ARGS(&out->output_r), out->transform, transform, EINA_RECTANGLE_ARGS(&out->tdm.output_r), out->tdm.transform); - _e_video_hwc_tdm_viewport_clip(out, zone); + _e_video_hwc_tdm_viewport_clip(out, zone, output->transform); return; normal: