waylandsink/wldisplay: verify that all the required interfaces have been found on...
authorGeorge Kiagiadakis <george.kiagiadakis@collabora.com>
Mon, 16 Jun 2014 16:53:53 +0000 (18:53 +0200)
committerGeorge Kiagiadakis <george.kiagiadakis@collabora.com>
Tue, 17 Jun 2014 11:51:30 +0000 (13:51 +0200)
commit0badc1f5fb3d5669d3ef9bcc5a586f80572360f5
treebe8a160a2047fae626cc8f12cee557815485d51f
parentc4616a550a9c9a22eeb108e2e5b9753590951880
waylandsink/wldisplay: verify that all the required interfaces have been found on the compositor

This allows waylandsink to fail gracefully before going to READY
in case one of the required interfaces does not exist. Not all
interfaces are necessary for all modes of operation, but it is
better imho to fail before going to READY if at least one feature
is not supported, than to fail and/or crash at some later point.

In the future we may want to relax this restriction and allow certain
interfaces not to be present under certain circumstances, for example
if there is an alternative similar interface available (for instance,
xdg_shell instead of wl_shell), but for now let's require them all.
Weston supports them all, which is enough for us now. Other compositors
should really implement them if they don't already. I don't like the
idea of supporting many different compositors with different sets of
interfaces implemented. wl_subcompositor, wl_shm and wl_scaler are
really essential for having a nice video sink. Enough said.
ext/wayland/wldisplay.c