agl-shell: Add bound_ok and bound_fail events and a default destructor 59/27859/3
authorMarius Vlad <marius.vlad@collabora.com>
Wed, 3 Aug 2022 13:14:17 +0000 (16:14 +0300)
committerMarius Vlad <marius.vlad@collabora.com>
Sat, 6 Aug 2022 15:00:48 +0000 (18:00 +0300)
commit7b2e820991ba434e5a1ccb2b0d355756474d23df
treee6cf7ed93cd83d57ed8f0c53f4b773a57c1ea5c8
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