derekf pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=7faa20f3c84c8ed7911d2e2b47fba24ddbc22410
commit 7faa20f3c84c8ed7911d2e2b47fba24ddbc22410 Author: Derek Foreman <[email protected]> Date: Mon Sep 11 15:48:56 2017 -0500 wayland_shm: Handle dirty bit outside of the backends We don't have to query that deeply to know whether we need to redraw the buffer or not, we can make that decision in more generic code. --- src/modules/evas/engines/wayland_shm/evas_engine.c | 2 ++ src/modules/evas/engines/wayland_shm/evas_outbuf.c | 3 +-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/modules/evas/engines/wayland_shm/evas_engine.c b/src/modules/evas/engines/wayland_shm/evas_engine.c index 21ed483be7..786ddb46ee 100644 --- a/src/modules/evas/engines/wayland_shm/evas_engine.c +++ b/src/modules/evas/engines/wayland_shm/evas_engine.c @@ -136,6 +136,8 @@ eng_output_update(void *engine, void *data, void *info, unsigned int w, unsigned ob = re->generic.ob; if (ob->ewd != einfo->info.wl2_display) { + if (einfo->info.wl2_display) + ob->dirty = EINA_TRUE; re->generic.ob->ewd = einfo->info.wl2_display; } _evas_outbuf_surface_set(ob, diff --git a/src/modules/evas/engines/wayland_shm/evas_outbuf.c b/src/modules/evas/engines/wayland_shm/evas_outbuf.c index 99486b7516..9caa52974d 100644 --- a/src/modules/evas/engines/wayland_shm/evas_outbuf.c +++ b/src/modules/evas/engines/wayland_shm/evas_outbuf.c @@ -653,6 +653,5 @@ _evas_outbuf_redraws_clear(Outbuf *ob) void _evas_outbuf_surface_set(Outbuf *ob, struct wl_shm *wl_shm, struct zwp_linux_dmabuf_v1 *wl_dmabuf) { - if (ob->surface->funcs.surface_set(ob->surface, wl_shm, wl_dmabuf)) - ob->dirty = EINA_TRUE; + ob->surface->funcs.surface_set(ob->surface, wl_shm, wl_dmabuf); } --
