These offsets can be calculated later during the resize operations.
};
/* local function prototypes */
-static void *_output_engine_setup(int x, int y, int w, int h, unsigned int rotation, unsigned int depth, Eina_Bool destination_alpha, struct wl_shm *wl_shm, struct wl_surface *wl_surface, int try_swap);
+static void *_output_engine_setup(int w, int h, unsigned int rotation, unsigned int depth, Eina_Bool destination_alpha, struct wl_shm *wl_shm, struct wl_surface *wl_surface, int try_swap);
static Tilebuf_Rect *_merge_rects(Tilebuf *tb, Tilebuf_Rect *r1, Tilebuf_Rect *r2, Tilebuf_Rect *r3);
/* engine function prototypes */
/* local functions */
static void *
-_output_engine_setup(int x, int y, int w, int h, unsigned int rotation, unsigned int depth, Eina_Bool destination_alpha, struct wl_shm *wl_shm, struct wl_surface *wl_surface, int try_swap)
+_output_engine_setup(int w, int h, unsigned int rotation, unsigned int depth, Eina_Bool destination_alpha, struct wl_shm *wl_shm, struct wl_surface *wl_surface, int try_swap)
{
Render_Engine *re = NULL;
if (try_swap)
{
- if ((re->ob = evas_swapbuf_setup(x, y, w, h, rotation, depth,
- destination_alpha, wl_shm,
+ if ((re->ob = evas_swapbuf_setup(w, h, rotation, depth,
+ destination_alpha, wl_shm,
wl_surface)))
{
- re->ob->x = x;
- re->ob->y = y;
-
re->outbuf_free = evas_swapbuf_free;
re->outbuf_reconfigure = evas_swapbuf_reconfigure;
re->outbuf_update_region_new = evas_swapbuf_update_region_new;
}
if (!(re =
- _output_engine_setup(0, 0,
- epd->output.w, epd->output.h,
+ _output_engine_setup(epd->output.w, epd->output.h,
info->info.rotation, info->info.depth,
info->info.destination_alpha,
info->info.wl_shm, info->info.wl_surface,
/* we have an existing render engine */
if (re->ob) re->outbuf_free(re->ob);
- if ((re->ob = evas_swapbuf_setup(0,
- 0,
- epd->output.w, epd->output.h,
+ if ((re->ob = evas_swapbuf_setup(epd->output.w, epd->output.h,
info->info.rotation,
info->info.depth,
info->info.destination_alpha,
struct _Outbuf
{
- int x, y, w, h;
+ int w, h;
unsigned int rotation;
Outbuf_Depth depth;
int onebuf;
/* local function prototypes */
Outbuf *
-evas_swapbuf_setup(int x, int y, int w, int h, unsigned int rotation, Outbuf_Depth depth, Eina_Bool alpha, struct wl_shm *wl_shm, struct wl_surface *wl_surface)
+evas_swapbuf_setup(int w, int h, unsigned int rotation, Outbuf_Depth depth, Eina_Bool alpha, struct wl_shm *wl_shm, struct wl_surface *wl_surface)
{
Outbuf *ob = NULL;
return NULL;
/* set some properties */
- ob->x = x;
- ob->y = y;
ob->w = w;
ob->h = h;
ob->rotation = rotation;
if ((ob->rotation == 0) || (ob->rotation == 180))
{
ob->priv.swapper =
- evas_swapper_setup(x, y, w, h, depth, alpha, ob->priv.wl.shm,
+ evas_swapper_setup(0, 0, w, h, depth, alpha, ob->priv.wl.shm,
ob->priv.wl.surface);
}
else if ((ob->rotation == 90) || (ob->rotation == 270))
{
ob->priv.swapper =
- evas_swapper_setup(x, y, h, w, depth, alpha, ob->priv.wl.shm,
+ evas_swapper_setup(0, 0, h, w, depth, alpha, ob->priv.wl.shm,
ob->priv.wl.surface);
}
return;
/* set some properties */
- ob->x = x;
- ob->y = y;
ob->w = w;
ob->h = h;
ob->rotation = rotation;
# include "evas_engine.h"
-Outbuf *evas_swapbuf_setup(int x, int y, int w, int h, unsigned int rotation, Outbuf_Depth depth, Eina_Bool alpha, struct wl_shm *wl_shm, struct wl_surface *wl_surface);
+Outbuf *evas_swapbuf_setup(int w, int h, unsigned int rotation, Outbuf_Depth depth, Eina_Bool alpha, struct wl_shm *wl_shm, struct wl_surface *wl_surface);
void evas_swapbuf_free(Outbuf *ob);
void evas_swapbuf_reconfigure(Outbuf *ob, int x, int y, int w, int h, unsigned int rotation, Outbuf_Depth depth, Eina_Bool alpha);
RGBA_Image *evas_swapbuf_update_region_new(Outbuf *ob, int x, int y, int w, int h, int *cx, int *cy, int *cw, int *ch);
struct _Wl_Swapper
{
Wl_Buffer buff[3];
- int x, y, w, h, depth;
+ int dx, dy, w, h, depth;
int buff_cur, buff_num;
struct wl_shm *shm;
struct wl_surface *surface;
/* local variables */
Wl_Swapper *
-evas_swapper_setup(int x, int y, int w, int h, Outbuf_Depth depth, Eina_Bool alpha, struct wl_shm *shm, struct wl_surface *surface)
+evas_swapper_setup(int dx, int dy, int w, int h, Outbuf_Depth depth, Eina_Bool alpha, struct wl_shm *shm, struct wl_surface *surface)
{
Wl_Swapper *ws;
int i = 0;
return NULL;
/* set some properties */
- ws->x = x;
- ws->y = y;
+ ws->dx = dx;
+ ws->dy = dy;
ws->w = w;
ws->h = h;
ws->depth = depth;
/* surface attach */
if (sent != wb->buffer)
{
- wl_surface_attach(ws->surface, wb->buffer, ws->x, ws->y);
- ws->x = 0;
- ws->y = 0;
+ wl_surface_attach(ws->surface, wb->buffer, ws->dx, ws->dy);
+ ws->dx = 0;
+ ws->dy = 0;
sent = wb->buffer;
}
typedef struct _Wl_Swapper Wl_Swapper;
-Wl_Swapper *evas_swapper_setup(int x, int y, int w, int h, Outbuf_Depth depth, Eina_Bool alpha, struct wl_shm *shm, struct wl_surface *surface);
+Wl_Swapper *evas_swapper_setup(int dx, int dy, int w, int h, Outbuf_Depth depth, Eina_Bool alpha, struct wl_shm *shm, struct wl_surface *surface);
void evas_swapper_swap(Wl_Swapper *ws, Eina_Rectangle *rects, unsigned int count);
void evas_swapper_free(Wl_Swapper *ws);
void *evas_swapper_buffer_map(Wl_Swapper *ws);