summaryrefslogtreecommitdiffstats
path: root/src/imports
diff options
context:
space:
mode:
authorPier Luigi Fiorini <pierluigi.fiorini@gmail.com>2016-04-07 20:20:25 +0200
committerPier Luigi Fiorini <pierluigi.fiorini@gmail.com>2016-04-25 10:51:32 +0000
commit1aa4f823d2ffb532b1c7b7c7070693bd585de017 (patch)
tree4bce7d504aab561a4b9019771a48b8d337bb413f /src/imports
parentbfa66ccb29f747e2cb07a4f2e561b165be9f211d (diff)
Make window manager extension QML friendly
Change-Id: Ie6564144e72a9e5e30222a8d2b30f2ff6c8c961c Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com>
Diffstat (limited to 'src/imports')
-rw-r--r--src/imports/compositor/plugins.qmltypes18
-rw-r--r--src/imports/compositor/qwaylandquickcompositorplugin.cpp3
2 files changed, 21 insertions, 0 deletions
diff --git a/src/imports/compositor/plugins.qmltypes b/src/imports/compositor/plugins.qmltypes
index 2c83eb2f8..d284aaf19 100644
--- a/src/imports/compositor/plugins.qmltypes
+++ b/src/imports/compositor/plugins.qmltypes
@@ -328,6 +328,24 @@ Module {
Signal { name: "surfaceDestroyed" }
}
Component {
+ name: "QWaylandWindowManagerExtension"
+ prototype: "QWaylandExtension"
+ Property { name: "showIsFullScreen"; type: "bool" }
+ Signal {
+ name: "openUrl"
+ Parameter { name: "client"; type: "QWaylandClient"; isPointer: true }
+ Parameter { name: "url"; type: "QUrl" }
+ }
+ }
+ Component {
+ name: "QWaylandWindowManagerExtensionQuickData"
+ defaultProperty: "data"
+ prototype: "QWaylandWindowManagerExtension"
+ exports: ["QtWayland.Compositor/WindowManager 1.0"]
+ exportMetaObjectRevisions: [0]
+ Property { name: "data"; type: "QObject"; isList: true; isReadonly: true }
+ }
+ Component {
name: "QWaylandWlShell"
prototype: "QWaylandExtension"
Signal {
diff --git a/src/imports/compositor/qwaylandquickcompositorplugin.cpp b/src/imports/compositor/qwaylandquickcompositorplugin.cpp
index 1fa28123d..6b42a2e0a 100644
--- a/src/imports/compositor/qwaylandquickcompositorplugin.cpp
+++ b/src/imports/compositor/qwaylandquickcompositorplugin.cpp
@@ -50,6 +50,7 @@
#include <QtWaylandCompositor/QWaylandQuickWlShellSurfaceItem>
#include <QtWaylandCompositor/QWaylandResource>
+#include <QtWaylandCompositor/QWaylandWindowManagerExtension>
#include <QtWaylandCompositor/QWaylandWlShell>
#include <QtWaylandCompositor/QWaylandTextInputManager>
@@ -59,6 +60,7 @@
QT_BEGIN_NAMESPACE
Q_COMPOSITOR_DECLARE_QUICK_EXTENSION_CLASS(QWaylandQuickCompositor)
+Q_COMPOSITOR_DECLARE_QUICK_DATA_CLASS(QWaylandWindowManagerExtension)
Q_COMPOSITOR_DECLARE_QUICK_DATA_CLASS(QWaylandWlShell)
Q_COMPOSITOR_DECLARE_QUICK_DATA_CLASS(QWaylandWlShellSurface)
@@ -131,6 +133,7 @@ public:
qmlRegisterType<QWaylandMouseTracker>(uri, 1, 0, "WaylandMouseTracker");
qmlRegisterType<QWaylandQuickOutput>(uri, 1, 0, "WaylandOutput");
qmlRegisterType<QWaylandQuickSurface>(uri, 1, 0, "WaylandSurface");
+ qmlRegisterType<QWaylandWindowManagerExtensionQuickData>(uri, 1, 0, "WindowManager");
qmlRegisterUncreatableType<QWaylandExtension>(uri, 1, 0, "WaylandExtension", QObject::tr("Cannot create instance of WaylandExtension"));
qmlRegisterUncreatableType<QWaylandClient>(uri, 1, 0, "WaylandClient", QObject::tr("Cannot create instance of WaylandClient"));