summaryrefslogtreecommitdiffstats
path: root/src/compositor/extensions/qwaylandwlshell.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/compositor/extensions/qwaylandwlshell.h')
-rw-r--r--src/compositor/extensions/qwaylandwlshell.h21
1 files changed, 15 insertions, 6 deletions
diff --git a/src/compositor/extensions/qwaylandwlshell.h b/src/compositor/extensions/qwaylandwlshell.h
index 5bddd4f7b..c2d40a87c 100644
--- a/src/compositor/extensions/qwaylandwlshell.h
+++ b/src/compositor/extensions/qwaylandwlshell.h
@@ -49,7 +49,7 @@ class QWaylandWlShellPrivate;
class QWaylandWlShellSurfacePrivate;
class QWaylandSurface;
class QWaylandClient;
-class QWaylandInputDevice;
+class QWaylandSeat;
class QWaylandOutput;
class QWaylandSurfaceRole;
class QWaylandWlShellSurface;
@@ -63,13 +63,15 @@ public:
QWaylandWlShell(QWaylandCompositor *compositor);
void initialize() Q_DECL_OVERRIDE;
+ QList<QWaylandWlShellSurface *> shellSurfaces() const;
+ QList<QWaylandWlShellSurface *> shellSurfacesForClient(QWaylandClient* client) const;
static const struct wl_interface *interface();
static QByteArray interfaceName();
Q_SIGNALS:
- void createShellSurface(QWaylandSurface *surface, const QWaylandResource &resource);
- void shellSurfaceCreated(QWaylandWlShellSurface *shellSurface);
+ void wlShellSurfaceRequested(QWaylandSurface *surface, const QWaylandResource &resource);
+ void wlShellSurfaceCreated(QWaylandWlShellSurface *shellSurface);
};
class Q_WAYLAND_COMPOSITOR_EXPORT QWaylandWlShellSurface : public QWaylandShellSurfaceTemplate<QWaylandWlShellSurface>
@@ -77,6 +79,7 @@ class Q_WAYLAND_COMPOSITOR_EXPORT QWaylandWlShellSurface : public QWaylandShellS
Q_OBJECT
Q_DECLARE_PRIVATE(QWaylandWlShellSurface)
Q_PROPERTY(QWaylandSurface *surface READ surface NOTIFY surfaceChanged)
+ Q_PROPERTY(QWaylandWlShell *shell READ shell NOTIFY shellChanged)
Q_PROPERTY(QString title READ title NOTIFY titleChanged)
Q_PROPERTY(QString className READ className NOTIFY classNameChanged)
Q_PROPERTY(FocusPolicy focusPolicy READ focusPolicy NOTIFY focusPolicyChanged)
@@ -111,6 +114,7 @@ public:
QWaylandWlShellSurface();
QWaylandWlShellSurface(QWaylandWlShell *shell, QWaylandSurface *surface, const QWaylandResource &resource);
+ virtual ~QWaylandWlShellSurface();
Q_INVOKABLE void initialize(QWaylandWlShell *shell, QWaylandSurface *surface, const QWaylandResource &resource);
@@ -118,8 +122,10 @@ public:
QString className() const;
QWaylandSurface *surface() const;
+ QWaylandWlShell *shell() const;
FocusPolicy focusPolicy() const;
+ Qt::WindowType windowType() const override;
static const struct wl_interface *interface();
static QByteArray interfaceName();
@@ -131,24 +137,27 @@ public:
Q_INVOKABLE void sendConfigure(const QSize &size, ResizeEdge edges);
Q_INVOKABLE void sendPopupDone();
+#ifdef QT_WAYLAND_COMPOSITOR_QUICK
QWaylandQuickShellIntegration *createIntegration(QWaylandQuickShellSurfaceItem *item) Q_DECL_OVERRIDE;
+#endif
public Q_SLOTS:
void ping();
Q_SIGNALS:
void surfaceChanged();
+ void shellChanged();
void titleChanged();
void classNameChanged();
void focusPolicyChanged();
void pong();
- void startMove(QWaylandInputDevice *inputDevice);
- void startResize(QWaylandInputDevice *inputDevice, ResizeEdge edges);
+ void startMove(QWaylandSeat *seat);
+ void startResize(QWaylandSeat *seat, ResizeEdge edges);
void setDefaultToplevel();
void setTransient(QWaylandSurface *parentSurface, const QPoint &relativeToParent, FocusPolicy focusPolicy);
void setFullScreen(FullScreenMethod method, uint framerate, QWaylandOutput *output);
- void setPopup(QWaylandInputDevice *inputDevice, QWaylandSurface *parentSurface, const QPoint &relativeToParent);
+ void setPopup(QWaylandSeat *seat, QWaylandSurface *parentSurface, const QPoint &relativeToParent);
void setMaximized(QWaylandOutput *output);
private: