diff options
author | Derek Foreman <derekf@osg.samsung.com> | 2018-02-08 11:56:30 -0600 |
---|---|---|
committer | Derek Foreman <derekf@osg.samsung.com> | 2018-04-20 13:00:27 -0500 |
commit | 6da0933d60fba481c063703c21398dda8b79a90f (patch) | |
tree | d634c01b019382a2479256a02db50edadb6fa5b1 | |
parent | d85e96006050427dce2ea4bc9e1677652e9a7842 (diff) | |
download | efl-6da0933d60fba481c063703c21398dda8b79a90f.tar.gz |
ecore_wl2: Add alpha to reconfigure
Currently we only ever make wayland windows with alpha, this is a step
towards changing that.
-rw-r--r-- | src/lib/ecore_wl2/Ecore_Wl2.h | 4 | ||||
-rw-r--r-- | src/lib/ecore_wl2/ecore_wl2_surface.c | 5 | ||||
-rw-r--r-- | src/lib/ecore_wl2/ecore_wl2_surface_module_dmabuf.c | 2 | ||||
-rw-r--r-- | src/modules/evas/engines/wayland_shm/evas_outbuf.c | 4 |
4 files changed, 8 insertions, 7 deletions
diff --git a/src/lib/ecore_wl2/Ecore_Wl2.h b/src/lib/ecore_wl2/Ecore_Wl2.h index 5f65191ee1..b9f8e1d498 100644 --- a/src/lib/ecore_wl2/Ecore_Wl2.h +++ b/src/lib/ecore_wl2/Ecore_Wl2.h @@ -432,7 +432,7 @@ typedef struct _Ecore_Wl2_Surface_Interface void *(*setup)(Ecore_Wl2_Window *win); void (*destroy)(Ecore_Wl2_Surface *surface, void *priv_data); - void (*reconfigure)(Ecore_Wl2_Surface *surface, void *priv_data, int w, int h, uint32_t flags); + void (*reconfigure)(Ecore_Wl2_Surface *surface, void *priv_data, int w, int h, uint32_t flags, Eina_Bool alpha); void *(*data_get)(Ecore_Wl2_Surface *surface, void *priv_data, int *w, int *h); int (*assign)(Ecore_Wl2_Surface *surface, void *priv_data); void (*post)(Ecore_Wl2_Surface *surface, void *priv_data, Eina_Rectangle *rects, unsigned int count); @@ -2015,7 +2015,7 @@ EAPI Eina_Bool ecore_wl2_buffer_fit(Ecore_Wl2_Buffer *b, int w, int h); EAPI Ecore_Wl2_Surface *ecore_wl2_surface_create(Ecore_Wl2_Window *win, Eina_Bool alpha); EAPI void ecore_wl2_surface_destroy(Ecore_Wl2_Surface *surface); -EAPI void ecore_wl2_surface_reconfigure(Ecore_Wl2_Surface *surface, int w, int h, uint32_t flags); +EAPI void ecore_wl2_surface_reconfigure(Ecore_Wl2_Surface *surface, int w, int h, uint32_t flags, Eina_Bool alpha); EAPI void *ecore_wl2_surface_data_get(Ecore_Wl2_Surface *surface, int *w, int *h); EAPI int ecore_wl2_surface_assign(Ecore_Wl2_Surface *surface); EAPI void ecore_wl2_surface_post(Ecore_Wl2_Surface *surface, Eina_Rectangle *rects, unsigned int count); diff --git a/src/lib/ecore_wl2/ecore_wl2_surface.c b/src/lib/ecore_wl2/ecore_wl2_surface.c index 9e7512d090..8720af0b76 100644 --- a/src/lib/ecore_wl2/ecore_wl2_surface.c +++ b/src/lib/ecore_wl2/ecore_wl2_surface.c @@ -27,13 +27,14 @@ ecore_wl2_surface_destroy(Ecore_Wl2_Surface *surface) } EAPI void -ecore_wl2_surface_reconfigure(Ecore_Wl2_Surface *surface, int w, int h, uint32_t flags) +ecore_wl2_surface_reconfigure(Ecore_Wl2_Surface *surface, int w, int h, uint32_t flags, Eina_Bool alpha) { EINA_SAFETY_ON_NULL_RETURN(surface); - surface->funcs->reconfigure(surface, surface->private_data, w, h, flags); + surface->funcs->reconfigure(surface, surface->private_data, w, h, flags, alpha); surface->w = w; surface->h = h; + surface->alpha = alpha; } EAPI void * diff --git a/src/lib/ecore_wl2/ecore_wl2_surface_module_dmabuf.c b/src/lib/ecore_wl2/ecore_wl2_surface_module_dmabuf.c index d9baeff90d..34a1edde48 100644 --- a/src/lib/ecore_wl2/ecore_wl2_surface_module_dmabuf.c +++ b/src/lib/ecore_wl2/ecore_wl2_surface_module_dmabuf.c @@ -47,7 +47,7 @@ _evas_dmabuf_surface_setup(Ecore_Wl2_Window *win) } static void -_evas_dmabuf_surface_reconfigure(Ecore_Wl2_Surface *s EINA_UNUSED, void *priv_data, int w, int h, uint32_t flags EINA_UNUSED) +_evas_dmabuf_surface_reconfigure(Ecore_Wl2_Surface *s EINA_UNUSED, void *priv_data, int w, int h, uint32_t flags EINA_UNUSED, Eina_Bool alpha EINA_UNUSED) { Ecore_Wl2_Dmabuf_Private *p; Ecore_Wl2_Buffer *b; diff --git a/src/modules/evas/engines/wayland_shm/evas_outbuf.c b/src/modules/evas/engines/wayland_shm/evas_outbuf.c index be077107ec..a435fdca3c 100644 --- a/src/modules/evas/engines/wayland_shm/evas_outbuf.c +++ b/src/modules/evas/engines/wayland_shm/evas_outbuf.c @@ -285,11 +285,11 @@ _evas_outbuf_reconfigure(Outbuf *ob, int w, int h, int rot, Outbuf_Depth depth, if ((ob->rotation == 0) || (ob->rotation == 180)) { - ecore_wl2_surface_reconfigure(ob->surface, w, h, resize); + ecore_wl2_surface_reconfigure(ob->surface, w, h, resize, alpha); } else if ((ob->rotation == 90) || (ob->rotation == 270)) { - ecore_wl2_surface_reconfigure(ob->surface, h, w, resize); + ecore_wl2_surface_reconfigure(ob->surface, h, w, resize, alpha); } _evas_outbuf_idle_flush(ob); |