if ((einfo = (Evas_Engine_Info_Wayland *)evas_engine_info_get(ee->evas)))
{
einfo->info.wl2_display = wdata->display;
- einfo->info.wl_dmabuf = ecore_wl2_display_dmabuf_get(wdata->display);
- einfo->info.wl_shm = ecore_wl2_display_shm_get(wdata->display);
einfo->info.compositor_version =
ecore_wl2_display_compositor_version_get(wdata->display);
einfo->info.destination_alpha = EINA_TRUE;
einfo->info.rotation = ee->rotation;
einfo->info.depth = 32;
einfo->info.wl2_win = wdata->win;
- einfo->info.wl_dmabuf = ecore_wl2_display_dmabuf_get(ewd);
- einfo->info.wl_shm = ecore_wl2_display_shm_get(ewd);
einfo->info.compositor_version =
ecore_wl2_display_compositor_version_get(ewd);
einfo->info.hidden = EINA_TRUE;
/* engine specific data & parameters it needs to set up */
struct
{
- /* the wayland shm object used to create new shm pool */
- struct wl_shm *wl_shm;
- struct zwp_linux_dmabuf_v1 *wl_dmabuf;
Ecore_Wl2_Display *wl2_display;
Ecore_Wl2_Window *wl2_win;
int depth, rotation, edges;
{
Surface *surface;
struct wl_display *wl_display;
- struct zwp_linux_dmabuf_v1 *dmabuf;
int compositor_version;
Dmabuf_Buffer *current;
int i = 0;
if (dmabuf_totally_hosed) return EINA_FALSE;
-
- if (!s->info->info.wl_dmabuf) return EINA_FALSE;
+ if (!ecore_wl2_display_dmabuf_get(s->info->info.wl2_display)) return EINA_FALSE;
if (!(s->surf.dmabuf = calloc(1, sizeof(Dmabuf_Surface)))) return EINA_FALSE;
surf = s->surf.dmabuf;
surf->surface = s;
surf->wl_display = ecore_wl2_display_get(s->info->info.wl2_display);
- surf->dmabuf = s->info->info.wl_dmabuf;
surf->alpha = s->info->info.destination_alpha;
surf->compositor_version = s->info->info.compositor_version;
typedef struct _Shm_Surface Shm_Surface;
struct _Shm_Surface
{
- struct wl_shm *shm;
int w, h;
int num_buff;
int compositor_version;
surf->w = w;
surf->h = h;
- surf->shm = s->info->info.wl_shm;
surf->num_buff = num_buff;
surf->alpha = s->info->info.destination_alpha;
surf->compositor_version = s->info->info.compositor_version;