Positioning and Multi display support for Weston Wayland

Pekka Paalanen ppaalanen at gmail.com
Thu May 17 12:18:11 UTC 2018

On Wed, 16 May 2018 06:41:08 +0000
Sandeep Chandak <ba.sandeep at tataelxsi.co.in> wrote:

> Hi,
> We are using Weston Wayland based compositing for our solution,
> though we are able to render image, video text etc.
> We are using x11 backend along with desktop shell to build the
> solution which requires rendering of multiple media contents (image,
> videos etc) together. We are using following versions of packages


I presume the x11-backend is only for development purposes and the
final product will run on DRM-backend instead.

> a)       Weston - version 5.0
> b)      Wayland - version 1.15.0
> c)       Ubuntu 16.04
> d)      Hardware - Intel i5 processors
> e)      Cairo - 1.14 with EGL/OpenGL ES enabled
> We have below queries for which we need some inputs
> a)       Positioning of windows - We would like to position windows
> to a specific x,y location. However, we see that Weston positions it
> at a random location. We would like to confirm if positioning of
> windows to specific location is supported by Weston.

No, you cannot position windows from the application into specific x,y
coordinates chosen by the application. There are a couple of design
approaches to achieve the positioning you want:

What I would personally recommend is to modify the window manager to
position your windows appropriately. You may need to write a new
protocol extension so that the application can tell the special role of
the window to the compositor, so that the compositor can place it
correctly in the space it happens to have available.

You could also write a protocol extension to allow explicit positioning
of windows from applications, but that will have the problem that any
single application will be completely unaware of any other
applications' windows or desktop elements. Explicit positioning in
applications may seem like an easy solution at first, but it really
only works in extremely narrow use cases. I consider it as a
workaround, not a solution.

However, depending on your use case, there might be much more
straightforward solutions.

> b)      Multi display Support - We need to support following use
> cases and would like to confirm if this is currently supported by
> Weston?
> *       Cloned display (same content on multiple screens)

Shared-CRTC clone mode is available in Weston upstream master branch,
but the final patch to allow it to be configured is not yet reviewed:

Note, that shared-CRTC clone mode requires hardware support that recent
Intel display controllers do not have as far as I know.

Independent-CRTC clone mode is currently not supported due to design
problems with damage tracking in libweston. Even if you could configure
two weston_outputs to show the same area of the desktop, there would
likely be problems with outdated contents on screen. This would be good
to fix, but so far has not been a priority for anyone.

> *       Extended display/Tiled (Multiple displays are combined to
> form a single display)

Weston supports extended display, but the output layout configuration is
essentially missing. Currently you can only realize a single row of
outputs in an implicit order. This too would be nice to fix.

There is no synchronization implemented as that would require kernel
interfaces and hardware support, either gen-lock or variable refresh

> *       Different (Different displays rendering different content)

How does this differ from Extended display?

> *       Portrait/Landscape orientation (this we believe is supported
> via configuring Weston.ini)


-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/wayland-devel/attachments/20180517/7530561e/attachment.sig>

More information about the wayland-devel mailing list