E_Client *ec = NULL;
tbm_surface_h tsurface = NULL;
tbm_surface_info_s surf_info = {0};
+ int transform;
int x, y, w, h;
ec = hwc_window->ec;
hwc_win_info->dst_pos.y = dst_y;
}
- hwc_win_info->dst_pos.w = w;
- hwc_win_info->dst_pos.h = h;
+ transform = e_comp_wl_output_buffer_transform_get(ec);
+ switch (transform)
+ {
+ case WL_OUTPUT_TRANSFORM_90:
+ case WL_OUTPUT_TRANSFORM_FLIPPED_90:
+ case WL_OUTPUT_TRANSFORM_270:
+ case WL_OUTPUT_TRANSFORM_FLIPPED_270:
+ hwc_win_info->dst_pos.w = h;
+ hwc_win_info->dst_pos.h = w;
+ break;
+ default:
+ hwc_win_info->dst_pos.w = w;
+ hwc_win_info->dst_pos.w = h;
+ break;
+ }
- // TODO: need to calculation with ec(window) rotation and output->config.rotation?
hwc_win_info->transform = TDM_TRANSFORM_NORMAL;
return EINA_TRUE;