{
tbm_surface_h tsurface = NULL;
E_Output *output = NULL;
+ E_Comp_Wl_Buffer *buffer = NULL;
EINA_SAFETY_ON_NULL_RETURN_VAL(plane, EINA_FALSE);
tsurface = _e_plane_surface_from_client_acquire_reserved(plane);
else
tsurface = _e_plane_surface_from_client_acquire(plane);
+
+ buffer = _get_comp_wl_buffer(plane->ec);
+ if (buffer)
+ plane->buffer_transform = buffer->transform;
}
else if (plane->role == E_PLANE_ROLE_CURSOR)
{
return EINA_FALSE;
plane->tsurface = NULL;
+ plane->buffer_transform = 0;
/* set plane info and set tsurface to the plane */
if (!_e_plane_surface_unset(plane))
buffer = _get_comp_wl_buffer(ec);
if (buffer)
backup_buffer->transform = buffer->transform;
+ else
+ {
+ if (renderer_client->renderer && renderer_client->renderer->plane)
+ backup_buffer->transform = renderer_client->renderer->plane->buffer_transform;
+ }
+
if (renderer_client->buffer)
wl_list_remove(&renderer_client->buffer_destroy_listener.link);