agl-shell: Add bound_ok and bound_fail events and a default destructor 59/27859/2
authorMarius Vlad <marius.vlad@collabora.com>
Wed, 3 Aug 2022 13:14:17 +0000 (16:14 +0300)
committerMarius Vlad <marius.vlad@collabora.com>
Thu, 4 Aug 2022 21:46:04 +0000 (00:46 +0300)
commit5c0b4f63dd58fc3a91c7b395c4feaa73717b184c
tree6eba35e68c84c6e2a353361cbd11906f4bf03ffe
parentf96fc9e91ab950c674a11a056be7d2d475e6b2d7
agl-shell: Add bound_ok and bound_fail events and a default destructor

As we're increasing the amount of combinations we could have in the AGL
platforms, in which we're mixing various platforms, we require a way
to tell clients that there's already a shell client which in charge.

We can't really have multiple shell clients managing the windows and
surfaces, but in the same time we don't want to sever the wayland
connection the way it happens currently. Racy alternatives might exist,
which  avoid advertising the interface altogether once a
client did bind to the interface but that's not really a
viable solution.

So instead of doing that, this patch introduces two new events which
tells the client that it was either successful, and it can continue
issue requests and receive events or a that it the bind failed. The
client can chose to wait and try later and abandon to bind to the
agl_shell intefface, and behave like a regular client.

While doing an update to protocol to add those two events this patch add
also a default destructor for the protocol.

Bug-AGL: SPEC-4502
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
Change-Id: Iacb86a668d1c4630724eecdb18e4b4c2d4e8e34a
protocol/agl-shell.xml
src/desktop.c
src/ivi-compositor.h
src/shell.c