summaryrefslogtreecommitdiff
path: root/src/imports
diff options
context:
space:
mode:
Diffstat (limited to 'src/imports')
-rw-r--r--src/imports/CMakeLists.txt1
-rw-r--r--src/imports/compositor-extensions/CMakeLists.txt3
-rw-r--r--src/imports/compositor-extensions/compositor-extensions.pro2
-rw-r--r--src/imports/compositor-extensions/xdgshell/CMakeLists.txt23
-rw-r--r--src/imports/compositor-extensions/xdgshell/plugins.qmltypes260
-rw-r--r--src/imports/compositor-extensions/xdgshell/qmldir3
-rw-r--r--src/imports/compositor-extensions/xdgshell/qwaylandcompositorxdgshellplugin.cpp72
-rw-r--r--src/imports/compositor-extensions/xdgshell/xdgshell.pro11
-rw-r--r--src/imports/compositor/plugins.qmltypes232
-rw-r--r--src/imports/compositor/qwaylandquickcompositorplugin.cpp16
-rw-r--r--src/imports/imports.pro3
11 files changed, 378 insertions, 248 deletions
diff --git a/src/imports/CMakeLists.txt b/src/imports/CMakeLists.txt
index 96fd5616..bb767b60 100644
--- a/src/imports/CMakeLists.txt
+++ b/src/imports/CMakeLists.txt
@@ -2,6 +2,7 @@
if(TARGET Qt::Quick AND TARGET Qt::WaylandCompositor)
add_subdirectory(compositor)
+ add_subdirectory(compositor-extensions)
endif()
if(QT_FEATURE_opengl AND TARGET Qt::Quick AND TARGET Qt::WaylandClient AND TARGET Qt::WaylandCompositor)
add_subdirectory(texture-sharing)
diff --git a/src/imports/compositor-extensions/CMakeLists.txt b/src/imports/compositor-extensions/CMakeLists.txt
new file mode 100644
index 00000000..cc822ffe
--- /dev/null
+++ b/src/imports/compositor-extensions/CMakeLists.txt
@@ -0,0 +1,3 @@
+# Generated from compositor-extensions.pro.
+
+add_subdirectory(xdgshell)
diff --git a/src/imports/compositor-extensions/compositor-extensions.pro b/src/imports/compositor-extensions/compositor-extensions.pro
new file mode 100644
index 00000000..cc3eaa41
--- /dev/null
+++ b/src/imports/compositor-extensions/compositor-extensions.pro
@@ -0,0 +1,2 @@
+TEMPLATE = subdirs
+SUBDIRS = xdgshell
diff --git a/src/imports/compositor-extensions/xdgshell/CMakeLists.txt b/src/imports/compositor-extensions/xdgshell/CMakeLists.txt
new file mode 100644
index 00000000..6928b837
--- /dev/null
+++ b/src/imports/compositor-extensions/xdgshell/CMakeLists.txt
@@ -0,0 +1,23 @@
+# Generated from xdgshell.pro.
+
+#####################################################################
+## qwaylandcompositorxdgshellplugin Plugin:
+#####################################################################
+
+qt_add_qml_module(qwaylandcompositorxdgshellplugin
+ URI "QtWayland.Compositor.XdgShell"
+ VERSION "${CMAKE_PROJECT_VERSION}"
+ CLASSNAME QWaylandCompositorXdgShellPlugin
+ SKIP_TYPE_REGISTRATION
+ SOURCES
+ qwaylandcompositorxdgshellplugin.cpp
+ PUBLIC_LIBRARIES
+ Qt::Core
+ Qt::Gui
+ Qt::WaylandCompositor
+)
+
+#### Keys ignored in scope 1:.:.:xdgshell.pro:<TRUE>:
+# CXX_MODULE = "qml"
+# QML_IMPORT_VERSION = "$$QT_VERSION"
+# TARGETPATH = "QtWayland/Compositor/XdgShell"
diff --git a/src/imports/compositor-extensions/xdgshell/plugins.qmltypes b/src/imports/compositor-extensions/xdgshell/plugins.qmltypes
new file mode 100644
index 00000000..b5bf435a
--- /dev/null
+++ b/src/imports/compositor-extensions/xdgshell/plugins.qmltypes
@@ -0,0 +1,260 @@
+import QtQuick.tooling 1.2
+
+// This file describes the plugin-supplied types contained in the library.
+// It is used for QML tooling purposes only.
+//
+// This file was auto-generated by:
+// 'qmlplugindump -nonrelocatable QtWayland.Compositor.XdgShell 6.0'
+
+Module {
+ dependencies: ["QtQuick 2.0"]
+ Component { name: "QWaylandCompositorExtension"; prototype: "QWaylandObject" }
+ Component { name: "QWaylandObject"; prototype: "QObject" }
+ Component {
+ name: "QWaylandQuickXdgOutputV1"
+ defaultProperty: "data"
+ prototype: "QWaylandXdgOutputV1"
+ exports: ["QtWayland.Compositor.XdgShell/XdgOutputV1 1.14"]
+ exportMetaObjectRevisions: [0]
+ }
+ Component {
+ name: "QWaylandShell"
+ prototype: "QWaylandCompositorExtension"
+ Enum {
+ name: "FocusPolicy"
+ values: {
+ "AutomaticFocus": 0,
+ "ManualFocus": 1
+ }
+ }
+ Property { name: "focusPolicy"; type: "FocusPolicy" }
+ }
+ Component {
+ name: "QWaylandShellSurface"
+ prototype: "QWaylandCompositorExtension"
+ Property { name: "windowType"; type: "Qt::WindowType"; isReadonly: true }
+ }
+ Component {
+ name: "QWaylandXdgDecorationManagerV1"
+ prototype: "QWaylandCompositorExtension"
+ Property { name: "preferredMode"; type: "QWaylandXdgToplevel::DecorationMode" }
+ }
+ Component {
+ name: "QWaylandXdgDecorationManagerV1QuickExtension"
+ defaultProperty: "data"
+ prototype: "QWaylandXdgDecorationManagerV1"
+ exports: ["QtWayland.Compositor.XdgShell/XdgDecorationManagerV1 1.3"]
+ exportMetaObjectRevisions: [0]
+ Property { name: "data"; type: "QObject"; isList: true; isReadonly: true }
+ }
+ Component { name: "QWaylandXdgOutputManagerV1"; prototype: "QWaylandCompositorExtension" }
+ Component {
+ name: "QWaylandXdgOutputManagerV1QuickExtension"
+ defaultProperty: "data"
+ prototype: "QWaylandXdgOutputManagerV1"
+ exports: ["QtWayland.Compositor.XdgShell/XdgOutputManagerV1 1.14"]
+ exportMetaObjectRevisions: [0]
+ Property { name: "data"; type: "QObject"; isList: true; isReadonly: true }
+ }
+ Component {
+ name: "QWaylandXdgOutputV1"
+ defaultProperty: "data"
+ prototype: "QObject"
+ Property { name: "data"; type: "QObject"; isList: true; isReadonly: true }
+ Property {
+ name: "manager"
+ type: "QWaylandXdgOutputManagerV1"
+ isReadonly: true
+ isPointer: true
+ }
+ Property { name: "output"; type: "QWaylandOutput"; isReadonly: true; isPointer: true }
+ Property { name: "name"; type: "string" }
+ Property { name: "description"; type: "string" }
+ Property { name: "logicalPosition"; type: "QPoint" }
+ Property { name: "logicalSize"; type: "QSize" }
+ Property { name: "logicalGeometry"; type: "QRect"; isReadonly: true }
+ }
+ Component {
+ name: "QWaylandXdgPopup"
+ prototype: "QObject"
+ exports: ["QtWayland.Compositor.XdgShell/XdgPopup 1.3"]
+ isCreatable: false
+ exportMetaObjectRevisions: [0]
+ Property { name: "xdgSurface"; type: "QWaylandXdgSurface"; isReadonly: true; isPointer: true }
+ Property {
+ name: "parentXdgSurface"
+ type: "QWaylandXdgSurface"
+ isReadonly: true
+ isPointer: true
+ }
+ Property { name: "configuredGeometry"; type: "QRect"; isReadonly: true }
+ Property { name: "anchorRect"; type: "QRect"; isReadonly: true }
+ Property { name: "anchorEdges"; type: "Qt::Edges"; isReadonly: true }
+ Property { name: "gravityEdges"; type: "Qt::Edges"; isReadonly: true }
+ Property { name: "slideConstraints"; type: "Qt::Orientations"; isReadonly: true }
+ Property { name: "flipConstraints"; type: "Qt::Orientations"; isReadonly: true }
+ Property { name: "resizeConstraints"; type: "Qt::Orientations"; isReadonly: true }
+ Property { name: "offset"; type: "QPoint"; isReadonly: true }
+ Property { name: "positionerSize"; type: "QSize"; isReadonly: true }
+ Property { name: "unconstrainedPosition"; type: "QPoint"; isReadonly: true }
+ Method {
+ name: "sendConfigure"
+ type: "uint"
+ Parameter { name: "geometry"; type: "QRect" }
+ }
+ Method { name: "sendPopupDone"; revision: 270 }
+ }
+ Component {
+ name: "QWaylandXdgShell"
+ prototype: "QWaylandShell"
+ Signal {
+ name: "xdgSurfaceCreated"
+ Parameter { name: "xdgSurface"; type: "QWaylandXdgSurface"; isPointer: true }
+ }
+ Signal {
+ name: "toplevelCreated"
+ Parameter { name: "toplevel"; type: "QWaylandXdgToplevel"; isPointer: true }
+ Parameter { name: "xdgSurface"; type: "QWaylandXdgSurface"; isPointer: true }
+ }
+ Signal {
+ name: "popupCreated"
+ Parameter { name: "popup"; type: "QWaylandXdgPopup"; isPointer: true }
+ Parameter { name: "xdgSurface"; type: "QWaylandXdgSurface"; isPointer: true }
+ }
+ Signal {
+ name: "pong"
+ Parameter { name: "serial"; type: "uint" }
+ }
+ Method {
+ name: "ping"
+ type: "uint"
+ Parameter { name: "client"; type: "QWaylandClient"; isPointer: true }
+ }
+ }
+ Component {
+ name: "QWaylandXdgShellQuickExtension"
+ defaultProperty: "data"
+ prototype: "QWaylandXdgShell"
+ exports: ["QtWayland.Compositor.XdgShell/XdgShell 1.3"]
+ exportMetaObjectRevisions: [0]
+ Property { name: "data"; type: "QObject"; isList: true; isReadonly: true }
+ }
+ Component {
+ name: "QWaylandXdgSurface"
+ defaultProperty: "data"
+ prototype: "QWaylandShellSurface"
+ exports: ["QtWayland.Compositor.XdgShell/XdgSurface 1.3"]
+ exportMetaObjectRevisions: [0]
+ Property { name: "data"; type: "QObject"; isList: true; isReadonly: true }
+ Property { name: "shell"; type: "QWaylandXdgShell"; isReadonly: true; isPointer: true }
+ Property { name: "surface"; type: "QWaylandSurface"; isReadonly: true; isPointer: true }
+ Property { name: "toplevel"; type: "QWaylandXdgToplevel"; isReadonly: true; isPointer: true }
+ Property { name: "popup"; type: "QWaylandXdgPopup"; isReadonly: true; isPointer: true }
+ Property { name: "windowGeometry"; type: "QRect"; isReadonly: true }
+ Signal { name: "toplevelCreated" }
+ Signal { name: "popupCreated" }
+ Method {
+ name: "initialize"
+ Parameter { name: "xdgShell"; type: "QWaylandXdgShell"; isPointer: true }
+ Parameter { name: "surface"; type: "QWaylandSurface"; isPointer: true }
+ Parameter { name: "resource"; type: "QWaylandResource" }
+ }
+ }
+ Component {
+ name: "QWaylandXdgToplevel"
+ prototype: "QObject"
+ exports: ["QtWayland.Compositor.XdgShell/XdgToplevel 1.3"]
+ isCreatable: false
+ exportMetaObjectRevisions: [0]
+ Enum {
+ name: "State"
+ values: {
+ "MaximizedState": 1,
+ "FullscreenState": 2,
+ "ResizingState": 3,
+ "ActivatedState": 4
+ }
+ }
+ Enum {
+ name: "DecorationMode"
+ values: {
+ "ClientSideDecoration": 1,
+ "ServerSideDecoration": 2
+ }
+ }
+ Property { name: "xdgSurface"; type: "QWaylandXdgSurface"; isReadonly: true; isPointer: true }
+ Property {
+ name: "parentToplevel"
+ type: "QWaylandXdgToplevel"
+ isReadonly: true
+ isPointer: true
+ }
+ Property { name: "title"; type: "string"; isReadonly: true }
+ Property { name: "appId"; type: "string"; isReadonly: true }
+ Property { name: "maxSize"; type: "QSize"; isReadonly: true }
+ Property { name: "minSize"; type: "QSize"; isReadonly: true }
+ Property { name: "states"; type: "QList<int>"; isReadonly: true }
+ Property { name: "maximized"; type: "bool"; isReadonly: true }
+ Property { name: "fullscreen"; type: "bool"; isReadonly: true }
+ Property { name: "resizing"; type: "bool"; isReadonly: true }
+ Property { name: "activated"; type: "bool"; isReadonly: true }
+ Property { name: "decorationMode"; type: "DecorationMode"; isReadonly: true }
+ Signal {
+ name: "startMove"
+ Parameter { name: "seat"; type: "QWaylandSeat"; isPointer: true }
+ }
+ Signal {
+ name: "startResize"
+ Parameter { name: "seat"; type: "QWaylandSeat"; isPointer: true }
+ Parameter { name: "edges"; type: "Qt::Edges" }
+ }
+ Signal {
+ name: "showWindowMenu"
+ Parameter { name: "seat"; type: "QWaylandSeat"; isPointer: true }
+ Parameter { name: "localSurfacePosition"; type: "QPoint" }
+ }
+ Signal { name: "setMaximized" }
+ Signal { name: "unsetMaximized" }
+ Signal {
+ name: "setFullscreen"
+ Parameter { name: "output"; type: "QWaylandOutput"; isPointer: true }
+ }
+ Signal { name: "unsetFullscreen" }
+ Signal { name: "setMinimized" }
+ Method {
+ name: "sizeForResize"
+ type: "QSize"
+ Parameter { name: "size"; type: "QSizeF" }
+ Parameter { name: "delta"; type: "QPointF" }
+ Parameter { name: "edges"; type: "Qt::Edges" }
+ }
+ Method {
+ name: "sendConfigure"
+ type: "uint"
+ Parameter { name: "size"; type: "QSize" }
+ Parameter { name: "states"; type: "QList<int>" }
+ }
+ Method { name: "sendClose" }
+ Method {
+ name: "sendMaximized"
+ type: "uint"
+ Parameter { name: "size"; type: "QSize" }
+ }
+ Method {
+ name: "sendUnmaximized"
+ type: "uint"
+ Parameter { name: "size"; type: "QSize" }
+ }
+ Method { name: "sendUnmaximized"; type: "uint" }
+ Method {
+ name: "sendFullscreen"
+ type: "uint"
+ Parameter { name: "size"; type: "QSize" }
+ }
+ Method {
+ name: "sendResizing"
+ type: "uint"
+ Parameter { name: "maxSize"; type: "QSize" }
+ }
+ }
+}
diff --git a/src/imports/compositor-extensions/xdgshell/qmldir b/src/imports/compositor-extensions/xdgshell/qmldir
new file mode 100644
index 00000000..9880a20a
--- /dev/null
+++ b/src/imports/compositor-extensions/xdgshell/qmldir
@@ -0,0 +1,3 @@
+module QtWayland.Compositor.XdgShell
+plugin qwaylandcompositorxdgshellplugin
+classname QWaylandCompositorXdgShellPlugin
diff --git a/src/imports/compositor-extensions/xdgshell/qwaylandcompositorxdgshellplugin.cpp b/src/imports/compositor-extensions/xdgshell/qwaylandcompositorxdgshellplugin.cpp
new file mode 100644
index 00000000..9ea8a115
--- /dev/null
+++ b/src/imports/compositor-extensions/xdgshell/qwaylandcompositorxdgshellplugin.cpp
@@ -0,0 +1,72 @@
+/****************************************************************************
+**
+** Copyright (C) 2020 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the QtWaylandCompositor module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:GPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 or (at your option) any later version
+** approved by the KDE Free Qt Foundation. The licenses are as published by
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtQml/qqmlextensionplugin.h>
+#include <QtQml/qqml.h>
+
+#include <QtWaylandCompositor/QWaylandQuickExtension>
+#include <QtWaylandCompositor/QWaylandXdgShell>
+#include <QtWaylandCompositor/QWaylandXdgDecorationManagerV1>
+#include <QtWaylandCompositor/QWaylandQuickXdgOutputV1>
+
+QT_BEGIN_NAMESPACE
+
+Q_COMPOSITOR_DECLARE_QUICK_EXTENSION_CLASS(QWaylandXdgShell)
+Q_COMPOSITOR_DECLARE_QUICK_EXTENSION_CLASS(QWaylandXdgDecorationManagerV1)
+Q_COMPOSITOR_DECLARE_QUICK_EXTENSION_CLASS(QWaylandXdgOutputManagerV1)
+
+class QWaylandCompositorXdgShellPlugin : public QQmlExtensionPlugin
+{
+ Q_OBJECT
+ Q_PLUGIN_METADATA(IID QQmlExtensionInterface_iid)
+public:
+ void registerTypes(const char *uri) override
+ {
+ Q_ASSERT(QLatin1String(uri) == QLatin1String("QtWayland.Compositor.XdgShell"));
+ defineModule(uri);
+ }
+
+ static void defineModule(const char *uri)
+ {
+ qmlRegisterModule(uri, QT_VERSION_MAJOR, QT_VERSION_MINOR);
+
+ qmlRegisterType<QWaylandXdgShellQuickExtension>(uri, 1, 3, "XdgShell");
+ qmlRegisterType<QWaylandXdgSurface>(uri, 1, 3, "XdgSurface");
+ qmlRegisterUncreatableType<QWaylandXdgToplevel>(uri, 1, 3, "XdgToplevel", QObject::tr("Cannot create instance of XdgShellToplevel"));
+ qmlRegisterUncreatableType<QWaylandXdgPopup>(uri, 1, 3, "XdgPopup", QObject::tr("Cannot create instance of XdgShellPopup"));
+
+ qmlRegisterType<QWaylandXdgDecorationManagerV1QuickExtension>(uri, 1, 3, "XdgDecorationManagerV1");
+ qmlRegisterType<QWaylandXdgOutputManagerV1QuickExtension>(uri, 1, 14, "XdgOutputManagerV1");
+ qmlRegisterType<QWaylandQuickXdgOutputV1>(uri, 1, 14, "XdgOutputV1");
+ }
+};
+
+QT_END_NAMESPACE
+
+#include "qwaylandcompositorxdgshellplugin.moc"
diff --git a/src/imports/compositor-extensions/xdgshell/xdgshell.pro b/src/imports/compositor-extensions/xdgshell/xdgshell.pro
new file mode 100644
index 00000000..0afcb76c
--- /dev/null
+++ b/src/imports/compositor-extensions/xdgshell/xdgshell.pro
@@ -0,0 +1,11 @@
+CXX_MODULE = qml
+TARGET = qwaylandcompositorxdgshellplugin
+TARGETPATH = QtWayland/Compositor/XdgShell
+QML_IMPORT_VERSION = $$QT_VERSION
+
+SOURCES += \
+ qwaylandcompositorxdgshellplugin.cpp
+
+QT += waylandcompositor
+
+load(qml_plugin)
diff --git a/src/imports/compositor/plugins.qmltypes b/src/imports/compositor/plugins.qmltypes
index 90f5457a..be201d51 100644
--- a/src/imports/compositor/plugins.qmltypes
+++ b/src/imports/compositor/plugins.qmltypes
@@ -4,7 +4,7 @@ import QtQuick.tooling 1.2
// It is used for QML tooling purposes only.
//
// This file was auto-generated by:
-// 'qmlplugindump -nonrelocatable QtWayland.Compositor 1.14'
+// 'qmlplugindump -nonrelocatable QtWayland.Compositor 6.0'
Module {
dependencies: [
@@ -386,13 +386,6 @@ Module {
Property { name: "useTextureAlpha"; type: "bool" }
}
Component {
- name: "QWaylandQuickXdgOutputV1"
- defaultProperty: "data"
- prototype: "QWaylandXdgOutputV1"
- exports: ["QtWayland.Compositor/XdgOutputV1 1.14"]
- exportMetaObjectRevisions: [0]
- }
- Component {
name: "QWaylandResource"
exports: ["QtWayland.Compositor/WaylandResource 1.0"]
isCreatable: false
@@ -688,229 +681,6 @@ Module {
Method { name: "sendPopupDone" }
}
Component {
- name: "QWaylandXdgDecorationManagerV1"
- prototype: "QWaylandCompositorExtension"
- Property { name: "preferredMode"; type: "QWaylandXdgToplevel::DecorationMode" }
- }
- Component {
- name: "QWaylandXdgDecorationManagerV1QuickExtension"
- defaultProperty: "data"
- prototype: "QWaylandXdgDecorationManagerV1"
- exports: ["QtWayland.Compositor/XdgDecorationManagerV1 1.3"]
- exportMetaObjectRevisions: [0]
- Property { name: "data"; type: "QObject"; isList: true; isReadonly: true }
- }
- Component { name: "QWaylandXdgOutputManagerV1"; prototype: "QWaylandCompositorExtension" }
- Component {
- name: "QWaylandXdgOutputManagerV1QuickExtension"
- defaultProperty: "data"
- prototype: "QWaylandXdgOutputManagerV1"
- exports: ["QtWayland.Compositor/XdgOutputManagerV1 1.14"]
- exportMetaObjectRevisions: [0]
- Property { name: "data"; type: "QObject"; isList: true; isReadonly: true }
- }
- Component {
- name: "QWaylandXdgOutputV1"
- defaultProperty: "data"
- prototype: "QObject"
- Property { name: "data"; type: "QObject"; isList: true; isReadonly: true }
- Property {
- name: "manager"
- type: "QWaylandXdgOutputManagerV1"
- isReadonly: true
- isPointer: true
- }
- Property { name: "output"; type: "QWaylandOutput"; isReadonly: true; isPointer: true }
- Property { name: "name"; type: "string" }
- Property { name: "description"; type: "string" }
- Property { name: "logicalPosition"; type: "QPoint" }
- Property { name: "logicalSize"; type: "QSize" }
- Property { name: "logicalGeometry"; type: "QRect"; isReadonly: true }
- }
- Component {
- name: "QWaylandXdgPopup"
- prototype: "QObject"
- exports: ["QtWayland.Compositor/XdgPopup 1.3"]
- isCreatable: false
- exportMetaObjectRevisions: [0]
- Property { name: "xdgSurface"; type: "QWaylandXdgSurface"; isReadonly: true; isPointer: true }
- Property {
- name: "parentXdgSurface"
- type: "QWaylandXdgSurface"
- isReadonly: true
- isPointer: true
- }
- Property { name: "configuredGeometry"; type: "QRect"; isReadonly: true }
- Property { name: "anchorRect"; type: "QRect"; isReadonly: true }
- Property { name: "anchorEdges"; type: "Qt::Edges"; isReadonly: true }
- Property { name: "gravityEdges"; type: "Qt::Edges"; isReadonly: true }
- Property { name: "slideConstraints"; type: "Qt::Orientations"; isReadonly: true }
- Property { name: "flipConstraints"; type: "Qt::Orientations"; isReadonly: true }
- Property { name: "resizeConstraints"; type: "Qt::Orientations"; isReadonly: true }
- Property { name: "offset"; type: "QPoint"; isReadonly: true }
- Property { name: "positionerSize"; type: "QSize"; isReadonly: true }
- Property { name: "unconstrainedPosition"; type: "QPoint"; isReadonly: true }
- Method {
- name: "sendConfigure"
- type: "uint"
- Parameter { name: "geometry"; type: "QRect" }
- }
- Method { name: "sendPopupDone"; revision: 270 }
- }
- Component {
- name: "QWaylandXdgShell"
- prototype: "QWaylandShell"
- Signal {
- name: "xdgSurfaceCreated"
- Parameter { name: "xdgSurface"; type: "QWaylandXdgSurface"; isPointer: true }
- }
- Signal {
- name: "toplevelCreated"
- Parameter { name: "toplevel"; type: "QWaylandXdgToplevel"; isPointer: true }
- Parameter { name: "xdgSurface"; type: "QWaylandXdgSurface"; isPointer: true }
- }
- Signal {
- name: "popupCreated"
- Parameter { name: "popup"; type: "QWaylandXdgPopup"; isPointer: true }
- Parameter { name: "xdgSurface"; type: "QWaylandXdgSurface"; isPointer: true }
- }
- Signal {
- name: "pong"
- Parameter { name: "serial"; type: "uint" }
- }
- Method {
- name: "ping"
- type: "uint"
- Parameter { name: "client"; type: "QWaylandClient"; isPointer: true }
- }
- }
- Component {
- name: "QWaylandXdgShellQuickExtension"
- defaultProperty: "data"
- prototype: "QWaylandXdgShell"
- exports: ["QtWayland.Compositor/XdgShell 1.3"]
- exportMetaObjectRevisions: [0]
- Property { name: "data"; type: "QObject"; isList: true; isReadonly: true }
- }
- Component {
- name: "QWaylandXdgSurface"
- defaultProperty: "data"
- prototype: "QWaylandShellSurface"
- exports: ["QtWayland.Compositor/XdgSurface 1.3"]
- exportMetaObjectRevisions: [0]
- Property { name: "data"; type: "QObject"; isList: true; isReadonly: true }
- Property { name: "shell"; type: "QWaylandXdgShell"; isReadonly: true; isPointer: true }
- Property { name: "surface"; type: "QWaylandSurface"; isReadonly: true; isPointer: true }
- Property { name: "toplevel"; type: "QWaylandXdgToplevel"; isReadonly: true; isPointer: true }
- Property { name: "popup"; type: "QWaylandXdgPopup"; isReadonly: true; isPointer: true }
- Property { name: "windowGeometry"; type: "QRect"; isReadonly: true }
- Signal { name: "toplevelCreated" }
- Signal { name: "popupCreated" }
- Method {
- name: "initialize"
- Parameter { name: "xdgShell"; type: "QWaylandXdgShell"; isPointer: true }
- Parameter { name: "surface"; type: "QWaylandSurface"; isPointer: true }
- Parameter { name: "resource"; type: "QWaylandResource" }
- }
- }
- Component {
- name: "QWaylandXdgToplevel"
- prototype: "QObject"
- exports: ["QtWayland.Compositor/XdgToplevel 1.3"]
- isCreatable: false
- exportMetaObjectRevisions: [0]
- Enum {
- name: "State"
- values: {
- "MaximizedState": 1,
- "FullscreenState": 2,
- "ResizingState": 3,
- "ActivatedState": 4
- }
- }
- Enum {
- name: "DecorationMode"
- values: {
- "ClientSideDecoration": 1,
- "ServerSideDecoration": 2
- }
- }
- Property { name: "xdgSurface"; type: "QWaylandXdgSurface"; isReadonly: true; isPointer: true }
- Property {
- name: "parentToplevel"
- type: "QWaylandXdgToplevel"
- isReadonly: true
- isPointer: true
- }
- Property { name: "title"; type: "string"; isReadonly: true }
- Property { name: "appId"; type: "string"; isReadonly: true }
- Property { name: "maxSize"; type: "QSize"; isReadonly: true }
- Property { name: "minSize"; type: "QSize"; isReadonly: true }
- Property { name: "states"; type: "QList<int>"; isReadonly: true }
- Property { name: "maximized"; type: "bool"; isReadonly: true }
- Property { name: "fullscreen"; type: "bool"; isReadonly: true }
- Property { name: "resizing"; type: "bool"; isReadonly: true }
- Property { name: "activated"; type: "bool"; isReadonly: true }
- Property { name: "decorationMode"; type: "DecorationMode"; isReadonly: true }
- Signal {
- name: "startMove"
- Parameter { name: "seat"; type: "QWaylandSeat"; isPointer: true }
- }
- Signal {
- name: "startResize"
- Parameter { name: "seat"; type: "QWaylandSeat"; isPointer: true }
- Parameter { name: "edges"; type: "Qt::Edges" }
- }
- Signal {
- name: "showWindowMenu"
- Parameter { name: "seat"; type: "QWaylandSeat"; isPointer: true }
- Parameter { name: "localSurfacePosition"; type: "QPoint" }
- }
- Signal { name: "setMaximized" }
- Signal { name: "unsetMaximized" }
- Signal {
- name: "setFullscreen"
- Parameter { name: "output"; type: "QWaylandOutput"; isPointer: true }
- }
- Signal { name: "unsetFullscreen" }
- Signal { name: "setMinimized" }
- Method {
- name: "sizeForResize"
- type: "QSize"
- Parameter { name: "size"; type: "QSizeF" }
- Parameter { name: "delta"; type: "QPointF" }
- Parameter { name: "edges"; type: "Qt::Edges" }
- }
- Method {
- name: "sendConfigure"
- type: "uint"
- Parameter { name: "size"; type: "QSize" }
- Parameter { name: "states"; type: "QList<int>" }
- }
- Method { name: "sendClose" }
- Method {
- name: "sendMaximized"
- type: "uint"
- Parameter { name: "size"; type: "QSize" }
- }
- Method {
- name: "sendUnmaximized"
- type: "uint"
- Parameter { name: "size"; type: "QSize" }
- }
- Method { name: "sendUnmaximized"; type: "uint" }
- Method {
- name: "sendFullscreen"
- type: "uint"
- Parameter { name: "size"; type: "QSize" }
- }
- Method {
- name: "sendResizing"
- type: "uint"
- Parameter { name: "maxSize"; type: "QSize" }
- }
- }
- Component {
prototype: "QWaylandQuickItem"
name: "QtWayland.Compositor/WaylandCursorItem 1.0"
exports: ["QtWayland.Compositor/WaylandCursorItem 1.0"]
diff --git a/src/imports/compositor/qwaylandquickcompositorplugin.cpp b/src/imports/compositor/qwaylandquickcompositorplugin.cpp
index 2977af8c..7451ea19 100644
--- a/src/imports/compositor/qwaylandquickcompositorplugin.cpp
+++ b/src/imports/compositor/qwaylandquickcompositorplugin.cpp
@@ -51,10 +51,7 @@
#include <QtWaylandCompositor/QWaylandQtWindowManager>
#include <QtWaylandCompositor/QWaylandWlShell>
#include <QtWaylandCompositor/QWaylandTextInputManager>
-#include <QtWaylandCompositor/QWaylandXdgShell>
-#include <QtWaylandCompositor/QWaylandXdgDecorationManagerV1>
#include <QtWaylandCompositor/QWaylandIdleInhibitManagerV1>
-#include <QtWaylandCompositor/QWaylandQuickXdgOutputV1>
#include <QtWaylandCompositor/QWaylandIviApplication>
#include <QtWaylandCompositor/QWaylandIviSurface>
@@ -68,9 +65,6 @@ Q_COMPOSITOR_DECLARE_QUICK_EXTENSION_CLASS(QWaylandQtWindowManager)
Q_COMPOSITOR_DECLARE_QUICK_EXTENSION_CLASS(QWaylandIdleInhibitManagerV1)
Q_COMPOSITOR_DECLARE_QUICK_EXTENSION_CLASS(QWaylandIviApplication)
Q_COMPOSITOR_DECLARE_QUICK_EXTENSION_CLASS(QWaylandWlShell)
-Q_COMPOSITOR_DECLARE_QUICK_EXTENSION_CLASS(QWaylandXdgShell)
-Q_COMPOSITOR_DECLARE_QUICK_EXTENSION_CLASS(QWaylandXdgDecorationManagerV1)
-Q_COMPOSITOR_DECLARE_QUICK_EXTENSION_CLASS(QWaylandXdgOutputManagerV1)
Q_COMPOSITOR_DECLARE_QUICK_EXTENSION_CLASS(QWaylandTextInputManager)
class QmlUrlResolver
@@ -155,17 +149,7 @@ public:
qmlRegisterType<QWaylandQuickShellSurfaceItem>(uri, 1, 0, "ShellSurfaceItem");
qmlRegisterType<QWaylandTextInputManagerQuickExtension>(uri, 1, 0, "TextInputManager");
- qmlRegisterType<QWaylandXdgShellQuickExtension>(uri, 1, 3, "XdgShell");
- qmlRegisterType<QWaylandXdgSurface>(uri, 1, 3, "XdgSurface");
- qmlRegisterUncreatableType<QWaylandXdgToplevel>(uri, 1, 3, "XdgToplevel", QObject::tr("Cannot create instance of XdgShellToplevel"));
- qmlRegisterUncreatableType<QWaylandXdgPopup>(uri, 1, 3, "XdgPopup", QObject::tr("Cannot create instance of XdgShellPopup"));
-
- qmlRegisterType<QWaylandXdgDecorationManagerV1QuickExtension>(uri, 1, 3, "XdgDecorationManagerV1");
-
qmlRegisterType<QWaylandIdleInhibitManagerV1QuickExtension>(uri, 1, 14, "IdleInhibitManagerV1");
-
- qmlRegisterType<QWaylandXdgOutputManagerV1QuickExtension>(uri, 1, 14, "XdgOutputManagerV1");
- qmlRegisterType<QWaylandQuickXdgOutputV1>(uri, 1, 14, "XdgOutputV1");
}
};
//![class decl]
diff --git a/src/imports/imports.pro b/src/imports/imports.pro
index 7452a928..4fd2fe77 100644
--- a/src/imports/imports.pro
+++ b/src/imports/imports.pro
@@ -2,7 +2,8 @@ TEMPLATE = subdirs
qtHaveModule(quick):qtHaveModule(waylandcompositor) {
SUBDIRS += \
- compositor
+ compositor \
+ compositor-extensions
qtConfig(opengl):qtHaveModule(waylandclient) {
SUBDIRS += \