Age | Commit message (Collapse) | Author | Files | Lines |
|
While libweston does have tiled orientation support, we can't really
control from the client itself, just the shell can do that. This patchs
adds a new request which can tell how to position different clients.
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
|
|
Another follow-up from the migration of agl_shell_desktop to the
agl_shell is the floating (previously called pop-up) and remoting
application roles. The fullscreen role is already been taken
care of from libweston.
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
|
|
This introduces two enums (previously in agl_shell_desktop) protocol
app_state and app_role.
With it, it also adds an event which the client will receive when
the applications changed its state. The applications states are:
started/activated/deactivated/destroyed, while the roles are floating
and remoting.
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
|
|
As a part of making agl_shell_desktop obsolete, we'll might need to
hide the currently active window and this adds that request from the
agl_shell_desktop protocol.
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
|
|
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 is 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 waylad
connection the way it happens in the first version of this protocol
interface. Racy alternatives might exist, which basically avoids
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 either client that it was either successful, and it can continue
issue requests and receive events and a fail event.
While doing an update to protocol, to add those two events add also
a default destructor for the protocol.
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
|
|
There are several spell issues in the protocol xml files.
Modify to correct them.
Bug-AGL: SPEC-4174
Signed-off-by: ZhouMingying <zhoumy@cn.fujitsu.com>
Change-Id: I052a1cb4b1a0054305899a1d83e4be0fd9d03c2b
|
|
Bug-AGL: SPEC-4133
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
Change-Id: Iffc770e079788bb553077665169365dc7b2d901e
|
|
Currently agl-compositor notifies about application ids which can be
activated/deactivated, as well as the application state. However, when
an application is destroyed this information is not communicated to desktop
making it out of sync with the actual list of available applications.
To overcome this limitation extend the protocol and the logic to notify
about application destruction on surface remove.
Signed-off-by: Walter Lozano <walter.lozano@collabora.com>
Change-Id: Ib766cf3f3fbd10f55b85212480dc4717ab1bec22
|
|
Just like weston, we add a private protocol. Underneath we make use of
the weston renderer to get a hold of the pixels and transfer them to a
user-supplied buffer. This only brings up the server side implementation
of the protocol.
Bug-AGL: SPEC-3580
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
Change-Id: I02a07ad5eb492ef2ecad74efb34d1453ebcbedc0
|
|
Replaces the agl-shell-desktop mention that all clients can bind to the
interface with a mention that that happens only if the policy engine
allows.
Bug-AGL: SPEC-3413
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
Change-Id: Ieb6b9df1181cb7a0ad6da09519655ebd8f73a1a5
|
|
area of the bounding box
The width and height will represent a rectangle which can be used to
define the maxium area to have the surface in. Any part of the surface
area that exceeds the area delimited by this bounding box will be
clipped away. The initial position of the bounding box is specified
using the bx and by values.
Bug-AGL: SPEC-3419
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
Change-Id: Ie24f469662dd686c49f658c415ccd2664d9a9b5b
|
|
This patch adds the 'remote' surface role, which clients can make use of
to hint the compositor that it should place the surface on other
output.
While both private extension protocols (agl-shell and agl-shell-desktop)
explicitly require a wl_output when activating or when setting surface
roles, we still need the inform the compositor that the surface should be
placed on another output.
This is due to the activate_by_default functionality that requires
having an output being present, with the default regular XDG desktop
role deriving its output by using the output of the backgound surface
(which is being normally set by the client shell).
Just like pop-up dialog role and split surface role this patch adds
another temporary hold up place before the surface is actually created.
Bug-AGL: SPEC-3280
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
Change-Id: Ic67246ecc183826ae59b2c99a671885d61040249
|
|
With it, this also adds two pending lists, for each role type and
aggregates the checks used to compare against the roles type when the
surface is being created. There's no functional at this stage.
Bug-AGL: SPEC-3334
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
Change-Id: I1900399fe35d9dbc26a93c374ac2f86efa860ba6
|
|
The events are sent straight after the activation took place. The state
changes are the surface role (for instance, pop-up) and the
activate/de-activate type of event. With that information there's also a
string type of data which can be used as easy way to forward data.
Note that this isn't the proper way for applications to
communicate with each other, but merely as a convenient way to pass data
from one application to another. In order to hang-off the data, the
'activate_app' request also got an additional argument which is relayed
back with the event.
Bug-AGL: SPEC-3269
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
Change-Id: I0c9be86f6ff227b59271cac1c060563b5aac9b6c
|
|
This would be particularly useful to pop-up kind of window(s).
It implements the 'deactivate_app' request. For the pop-up role we
just remove the view from the layer while for the desktop we store
the previous surface and re-use it if that's set. Otherwise we just
display the background surface.
As we now allow to hide client windows, we need to able to activate/show
them back so this also adds a slight modification to take care to handle
the pop-up role separately when calling the 'activate_app' request.
Bug-AGL: SPEC-3269
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
Change-Id: Iec5ccbe2815f4b0e32086fd49856f5f338147f79
|
|
This extends the agl-shell-desktop protocol with a new request that
allows to set further properties on the window/client.
Bug-AGL: SPEC-3269
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
Change-Id: Ia88e23c8c1cbc55c5423de480bba7f86c79897d0
|
|
The application ids will be advertised when binding the protocol
interface but also when the regular clients will create their surface.
Client are responsible for filtering their own name.
Bug-AGL: SPEC-3252
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
Change-Id: Ia196e7d3b34694d7cb169228429a0e940eae8b3b
|
|
Protocol intented for use by regular XDG application which want to
tell the compositor to activate another application. This mimics
the activate_app request from agl-shell, and assumes the application is
already started.
Bug-AGL: SPEC-3252
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
Change-Id: I1f7bd1d8d2f7d8f1eedf710aef1bf1046846f9be
|
|
- adds a new request for agl-shell, 'activate_app', which allows to
specify which application should switch to. With it, client shell
commands which application to switch to.
- ties the layout (panel and background initizatlon) bits into its own
specific file
Bug-AGL: SPEC-3117
Change-Id: I1b3d89ff77c0e0e439666227ef3319b2107406c0
Signed-off-by: Daniel Stone <daniels@collabora.com>
|
|
Signed-off-by: Daniel Stone <daniels@collabora.com>
Change-Id: I7705fa82dab29a27e4913cd548a2f5c3247dc5ad
|