ecore_wl2: Synchronize state with surface commits
authorDerek Foreman <derekf@osg.samsung.com>
Wed, 11 Oct 2017 20:45:11 +0000 (15:45 -0500)
committerDerek Foreman <derekf@osg.samsung.com>
Thu, 12 Oct 2017 17:24:03 +0000 (12:24 -0500)
commit10b63836403ca8879f8f371b1ff60892e5ae3405
tree10adc8d367b9ef18795c1857812ab725dea2af0b
parent9918a2c920dfe2e45ae6cfc776797a1806be49b9
ecore_wl2: Synchronize state with surface commits

This is really several inseparable commits mashed together, as doing this
a piece at a time would introduce broken intermediate revisions.

Double buffer incoming "configure" state from the compositor so it's held
back during asynchronous render and processed at frame completion.

Hold off on certain requests if their API has been invoked during async
render.

This should fix a lot of races, cosmetic issues, issues where weston can
kill our clients for acking configure (or not) at bad times, etc.
src/lib/ecore_wl2/ecore_wl2_private.h
src/lib/ecore_wl2/ecore_wl2_window.c
src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c