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" }
        }
    }
}
