diff options
author | Pier Luigi Fiorini <pierluigi.fiorini@liri.io> | 2019-01-16 08:34:11 +0100 |
---|---|---|
committer | Pier Luigi Fiorini <pierluigi.fiorini@liri.io> | 2019-08-26 09:31:32 +0200 |
commit | 8b3a2124c97358d1e57089fc86818965e9a28497 (patch) | |
tree | abac6c8a96a9821ec57af04601553a45b130624f /examples/wayland | |
parent | 622b55e918bfc877c10f8885754b30b593d334a5 (diff) |
Compositor: Add xdg-output unstable v1 support
We already have a client-side implementation in the QPA plugin,
and now we add the server-side implementation.
In order to have a nice declarative API, we let users create a
XdgOutputV1 instance and then associate it with the zxdg_output_v1
object when it is requested by the client.
If the user forgets to create XdgOutputV1 beforehand we post an error to
the client.
To anticipate protocol version 3, we send zxdg_output_v1.done when we
send wl_output.done.
The multi-output example is extended using this protocol.
[ChangeLog][Compositor] Added support for xdg-output unstable v1
Wayland extension.
Change-Id: I1ec5913d8330cc01d7d634d05a289f4dc8b4fd22
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
Diffstat (limited to 'examples/wayland')
-rw-r--r-- | examples/wayland/multi-output/qml/GridScreen.qml | 10 | ||||
-rw-r--r-- | examples/wayland/multi-output/qml/ShellScreen.qml | 10 | ||||
-rw-r--r-- | examples/wayland/multi-output/qml/main.qml | 4 |
3 files changed, 21 insertions, 3 deletions
diff --git a/examples/wayland/multi-output/qml/GridScreen.qml b/examples/wayland/multi-output/qml/GridScreen.qml index 340291afd..a59cb8fb4 100644 --- a/examples/wayland/multi-output/qml/GridScreen.qml +++ b/examples/wayland/multi-output/qml/GridScreen.qml @@ -50,7 +50,7 @@ import QtQuick 2.0 import QtQuick.Window 2.2 -import QtWayland.Compositor 1.0 +import QtWayland.Compositor 1.14 WaylandOutput { id: output @@ -93,4 +93,12 @@ WaylandOutput { } } } + + XdgOutputV1 { + name: "WL-2" + description: "Overview screen" + logicalPosition: output.position + logicalSize: Qt.size(output.geometry.width / output.scaleFactor, + output.geometry.height / output.scaleFactor) + } } diff --git a/examples/wayland/multi-output/qml/ShellScreen.qml b/examples/wayland/multi-output/qml/ShellScreen.qml index 4482e6e85..aa9b4b29b 100644 --- a/examples/wayland/multi-output/qml/ShellScreen.qml +++ b/examples/wayland/multi-output/qml/ShellScreen.qml @@ -50,7 +50,7 @@ import QtQuick 2.0 import QtQuick.Window 2.2 -import QtWayland.Compositor 1.0 +import QtWayland.Compositor 1.14 WaylandOutput { id: output @@ -84,4 +84,12 @@ WaylandOutput { } } } + + XdgOutputV1 { + name: "WL-1" + description: "Screen with window management" + logicalPosition: output.position + logicalSize: Qt.size(output.geometry.width / output.scaleFactor, + output.geometry.height / output.scaleFactor) + } } diff --git a/examples/wayland/multi-output/qml/main.qml b/examples/wayland/multi-output/qml/main.qml index d01def55e..45f91fd66 100644 --- a/examples/wayland/multi-output/qml/main.qml +++ b/examples/wayland/multi-output/qml/main.qml @@ -49,7 +49,7 @@ ****************************************************************************/ import QtQuick 2.0 -import QtWayland.Compositor 1.0 +import QtWayland.Compositor 1.14 WaylandCompositor { id: comp @@ -91,6 +91,8 @@ WaylandCompositor { } } + XdgOutputManagerV1 {} + WlShell { id: defaultShell |