Ecore_Wl_Display *display;
struct wl_output *output;
Eina_Rectangle allocation;
+ int transform;
int mw, mh;
struct wl_list link;
if (!_ecore_wl_disp->output) return;
+ switch (_ecore_wl_disp->output->transform)
+ {
+ case WL_OUTPUT_TRANSFORM_90:
+ case WL_OUTPUT_TRANSFORM_270:
+ case WL_OUTPUT_TRANSFORM_FLIPPED_90:
+ case WL_OUTPUT_TRANSFORM_FLIPPED_270:
+ /* Swap width and height */
+ if (w) *w = _ecore_wl_disp->output->allocation.h;
+ if (h) *h = _ecore_wl_disp->output->allocation.w;
+ break;
+ default:
+ if (w) *w = _ecore_wl_disp->output->allocation.w;
+ if (h) *h = _ecore_wl_disp->output->allocation.h;
+ }
+
+
if (w) *w = _ecore_wl_disp->output->allocation.w;
if (h) *h = _ecore_wl_disp->output->allocation.h;
}
/* local functions */
static void
-_ecore_wl_output_cb_geometry(void *data, struct wl_output *wl_output __UNUSED__, int x, int y, int w, int h, int subpixel __UNUSED__, const char *make __UNUSED__, const char *model __UNUSED__, int transform __UNUSED__)
+_ecore_wl_output_cb_geometry(void *data, struct wl_output *wl_output __UNUSED__, int x, int y, int w, int h, int subpixel __UNUSED__, const char *make __UNUSED__, const char *model __UNUSED__, int transform)
{
Ecore_Wl_Output *output;
output->allocation.y = y;
output->mw = w;
output->mh = h;
+ output->transform = transform;
}
static void