summaryrefslogtreecommitdiffstats
path: root/src/compositor/extensions/qwaylandxdgshellv5.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/compositor/extensions/qwaylandxdgshellv5.cpp')
-rw-r--r--src/compositor/extensions/qwaylandxdgshellv5.cpp236
1 files changed, 228 insertions, 8 deletions
diff --git a/src/compositor/extensions/qwaylandxdgshellv5.cpp b/src/compositor/extensions/qwaylandxdgshellv5.cpp
index 8f1164260..c0cb4f8e4 100644
--- a/src/compositor/extensions/qwaylandxdgshellv5.cpp
+++ b/src/compositor/extensions/qwaylandxdgshellv5.cpp
@@ -646,6 +646,98 @@ void QWaylandXdgShellV5::closeAllPopups()
}
}
+/*!
+ * \qmlsignal void QtWaylandCompositor::XdgShellV5::xdgSurfaceRequested(WaylandSurface surface, WaylandResource resource)
+ *
+ * This signal is emitted when the client has requested an \c xdg_surface to be associated
+ * with \a surface. The handler for this signal may create the shell surface for \a resource
+ * and initialize it within the scope of the signal emission. Otherwise an XdgSurfaceV5 will
+ * be created automatically.
+ */
+
+/*!
+ * \fn void QWaylandXdgShellV5::xdgSurfaceRequested(QWaylandSurface *surface, const QWaylandResource &resource)
+ *
+ * This signal is emitted when the client has requested an \c xdg_surface to be associated
+ * with \a surface. The handler for this signal may create the shell surface for \a resource
+ * and initialize it within the scope of the signal emission. Otherwise a QWaylandXdgSurfaceV5
+ * will be created automatically.
+ */
+
+/*!
+ * \qmlsignal void QtWaylandCompositor::XdgShellV5::xdgSurfaceCreated(XdgSurfaceV5 xdgSurface)
+ *
+ * This signal is emitted when the client has created an \c xdg_surface.
+ * A common use case is to let the handler of this signal instantiate a ShellSurfaceItem or
+ * WaylandQuickItem for displaying \a xdgSurface in a QtQuick scene.
+ */
+
+/*!
+ * \fn void QWaylandXdgShellV5::xdgSurfaceCreated(QWaylandXdgSurfaceV5 *xdgSurface)
+ *
+ * This signal is emitted when the client has created an \c xdg_surface.
+ * A common use case is to let the handler of this signal instantiate a QWaylandShellSurfaceItem or
+ * QWaylandQuickItem for displaying \a xdgSurface in a QtQuick scene.
+ */
+
+/*!
+ * \qmlsignal void QtWaylandCompositor::XdgShellV5::xdgPopupRequested(WaylandSurface surface, WaylandSurface parent, WaylandSeat seat, point position, WaylandResource resource)
+ *
+ * This signal is emitted when the client has requested an \c xdg_popup to be associated
+ * with \a surface. The handler for this signal may create the xdg popup for \a resource and
+ * initialize it within the scope of the signal emission. Otherwise an XdgPopupV5 will be
+ * created automatically.
+ *
+ * The \a seat is the \c wl_seat that caused the popup to be opened.
+ *
+ * \a position is the desired position of the popup, relative to the \a parent.
+ */
+
+/*!
+ * \fn void QWaylandXdgShellV5::xdgPopupRequested(QWaylandSurface *surface, QWaylandSurface *parent, QWaylandSeat *seat, const QPoint &position, const QWaylandResource &resource)
+ *
+ * This signal is emitted when the client has requested an \c xdg_surface to be associated
+ * with \a surface. The handler for this signal may create the xdg poup for \a resource and
+ * initialize it within the scope of the signal emission. Otherwise a QWaylandXdgPopupV5 will be
+ * created automatically.
+ *
+ * The \a seat is the \c wl_seat that caused the popup to be opened.
+ *
+ * \a position is the desired position of the popup, relative to the \a parent.
+ */
+
+/*!
+ * \qmlsignal void QtWaylandCompositor::XdgShellV5::xdgPopupCreated(XdgPopupV5 xdgPopup)
+ *
+ * This signal is emitted when the client has created an \c xdg_popup.
+ * A common use case is to let the handler of this signal instantiate a ShellSurfaceItem or
+ * WaylandQuickItem for displaying \a xdgPopup in a QtQuick scene.
+ */
+
+/*!
+ * \fn void QWaylandXdgShellV5::xdgPopupCreated(QWaylandXdgPopupV5 *xdgPopup)
+ *
+ * This signal is emitted when the client has created an \c xdg_popup.
+ * A common use case is to let the handler of this signal instantiate a QWaylandShellSurfaceItem or
+ * QWaylandQuickItem for displaying \a xdgPopup in a QtQuick scene.
+ */
+
+/*!
+ * \qmlsignal void QtWaylandCompositor::XdgShellV5::pong(int serial)
+ *
+ * This signal is emitted when the client has responded to a ping event with serial \a serial.
+ *
+ * \sa QtWaylandCompositor::XdgShellV5::ping()
+ */
+
+/*!
+ * \fn void QWaylandXdgShellV5::pong(uint serial)
+ *
+ * This signal is emitted when the client has responded to a ping event with serial \a serial.
+ *
+ * \sa QWaylandXdgShellV5::ping()
+ */
+
void QWaylandXdgShellV5::handleSeatChanged(QWaylandSeat *newSeat, QWaylandSeat *oldSeat)
{
if (oldSeat != nullptr) {
@@ -760,6 +852,134 @@ void QWaylandXdgSurfaceV5::initialize(QWaylandXdgShellV5 *xdgShell, QWaylandSurf
}
/*!
+ * \qmlsignal void QtWaylandCompositor::XdgSurfaceV5::showWindowMenu(WaylandSeat seat, point localSurfacePosition)
+ *
+ * This signal is emitted when the client wants to show a context menu at \a localSurfacePosition,
+ * using the Wayland seat \a seat. It's typically emitted in response to the user right-clicking
+ * the window decorations.
+ */
+
+/*!
+ * \fn void QWaylandXdgSurfaceV5::showWindowMenu(QWaylandSeat *seat, const QPoint &localSurfacePosition)
+ *
+ * This signal is emitted when the client wants to show a context menu at \a localSurfacePosition,
+ * using the Wayland seat \a seat. It's typically emitted in response to the user right-clicking
+ * the window decorations.
+ */
+
+/*!
+ * \qmlsignal void QtWaylandCompositor::XdgSurfaceV5::startMove(WaylandSeat seat)
+ *
+ * This signal is emitted when the client wants to start an interactive move of the XdgSurfaceV5,
+ * typically in response to the window decorations being dragged by \a seat.
+ */
+
+/*!
+ * \fn void QWaylandXdgSurfaceV5::startMove(QWaylandSeat *seat)
+ *
+ * This signal is emitted when the client wants to start an interactive move of the
+ * QWaylandXdgSurfaceV5, typically in response to the window decorations being dragged by \a seat.
+ */
+
+/*!
+ * \qmlsignal void QtWaylandCompositor::XdgSurfaceV5::startResize(WaylandSeat seat, enumeration edges)
+ *
+ * This signal is emitted when the client wants to start an interactive resize of the XdgSurfaceV5,
+ * typically in response to the window decorations being dragged by \a seat on the window borders
+ * given by \a edges.
+ *
+ * \sa QWaylandXdgSurfaceV5::ResizeEdges
+ */
+
+/*!
+ * \fn void QWaylandXdgSurfaceV5::startResize(QWaylandSeat *seat, ResizeEdges edges)
+ *
+ * This signal is emitted when the client wants to start an interactive resize of the
+ * QWaylandXdgSurfaceV5, typically in response to the window decorations being dragged by
+ * \a seat on the window borders given by \a edges.
+ */
+
+/*!
+ * \qmlsignal void QtWaylandCompositor::XdgSurfaceV5::setMaximized()
+ *
+ * This signal is emitted when the client wants the \c xdg_surface to be maximized.
+ */
+
+/*!
+ * \fn void QWaylandXdgSurfaceV5::setMaximized()
+ *
+ * This signal is emitted when the client wants the \c xdg_surface to be maximized.
+ */
+
+/*!
+ * \qmlsignal void QtWaylandCompositor::XdgSurfaceV5::unsetMaximized()
+ *
+ * This signal is emitted when the client doesn't want the \c xdg_surface to be maximized anymore.
+ */
+
+/*!
+ * \fn void QWaylandXdgSurfaceV5::unsetMaximized()
+ *
+ * This signal is emitted when the client doesn't want the \c xdg_surface to be maximized anymore.
+ */
+
+/*!
+ * \qmlsignal void QtWaylandCompositor::XdgSurfaceV5::setFullscreen(WaylandOutput output)
+ *
+ * This signal is emitted when the client wants the \c xdg_surface to be in full screen mode.
+ * The client may specify an \a output it wishes the \c xdg_surface to be shown on.
+ */
+
+/*!
+ * \fn void QWaylandXdgSurfaceV5::setFullscreen(QWaylandOutput *output)
+ *
+ * This signal is emitted when the client wants the \c xdg_surface to be in full screen mode.
+ * The client may specify an \a output it wishes the \c xdg_surface to be shown on.
+ */
+
+/*!
+ * \qmlsignal void QtWaylandCompositor::XdgSurfaceV5::unsetFullscreen()
+ *
+ * This signal is emitted when the client doesn't want the \c xdg_surface to be in full screen mode
+ * anymore.
+ */
+
+/*!
+ * \fn void QWaylandXdgSurfaceV5::unsetFullscreen()
+ *
+ * This signal is emitted when the client doesn't want the \c xdg_surface to be in full screen mode
+ * anymore.
+ */
+
+/*!
+ * \qmlsignal void QtWaylandCompositor::XdgSurfaceV5::setMinimized()
+ *
+ * This signal is emitted when the client wants the \c xdg_surface to be minimized.
+ */
+
+/*!
+ * \fn void QWaylandXdgSurfaceV5::setMinimized()
+ *
+ * This signal is emitted when the client wants the \c xdg_surface to be minimized.
+ */
+
+/*!
+ * \qmlsignal void QtWaylandCompositor::XdgSurfaceV5::ackConfigure(int serial)
+ *
+ * This signal is emitted when the client has received configure events up to and including the
+ * configure event with serial \a serial and will draw its surface accordingly in the next committed
+ * buffer.
+ */
+
+/*!
+ * \fn void QWaylandXdgSurfaceV5::ackConfigure(uint serial)
+ *
+ * This signal is emitted when the client has received configure events up to and including the
+ * configure event with serial \a serial and will draw its surface accordingly in the next committed
+ * buffer.
+ */
+
+/*!
* \internal
*/
void QWaylandXdgSurfaceV5::initialize()
@@ -789,7 +1009,7 @@ void QWaylandXdgSurfaceV5::handleBufferScaleChanged()
}
/*!
- * \qmlproperty object QtWaylandCompositor::XdgSurfaceV5::shell
+ * \qmlproperty XdgShellV5 QtWaylandCompositor::XdgSurfaceV5::shell
*
* This property holds the shell associated with this XdgSurfaceV5.
*/
@@ -806,7 +1026,7 @@ QWaylandXdgShellV5 *QWaylandXdgSurfaceV5::shell() const
}
/*!
- * \qmlproperty object QtWaylandCompositor::XdgSurfaceV5::surface
+ * \qmlproperty WaylandSurface QtWaylandCompositor::XdgSurfaceV5::surface
*
* This property holds the surface associated with this XdgSurfaceV5.
*/
@@ -823,7 +1043,7 @@ QWaylandSurface *QWaylandXdgSurfaceV5::surface() const
}
/*!
- * \qmlproperty enum QtWaylandCompositor::XdgSurfaceV5::windowType
+ * \qmlproperty enumeration QtWaylandCompositor::XdgSurfaceV5::windowType
*
* This property holds the window type of the XdgSurfaceV5.
*/
@@ -840,7 +1060,7 @@ Qt::WindowType QWaylandXdgSurfaceV5::windowType() const
}
/*!
- * \qmlproperty object QtWaylandCompositor::XdgSurfaceV5::parentSurface
+ * \qmlproperty XdgSurfaceV5 QtWaylandCompositor::XdgSurfaceV5::parentSurface
*
* This property holds the XdgSurfaceV5 parent of this XdgSurfaceV5.
* When a parent surface is set, the parentSurfaceChanged() signal
@@ -1175,7 +1395,7 @@ void QWaylandXdgPopupV5::initialize(QWaylandXdgShellV5 *shell, QWaylandSurface *
}
/*!
- * \qmlproperty object QtWaylandCompositor::XdgPopupV5::shell
+ * \qmlproperty XdgShellV5 QtWaylandCompositor::XdgPopupV5::shell
*
* This property holds the shell associated with this XdgPopupV5.
*/
@@ -1192,7 +1412,7 @@ QWaylandXdgShellV5 *QWaylandXdgPopupV5::shell() const
}
/*!
- * \qmlproperty object QtWaylandCompositor::XdgPopupV5::surface
+ * \qmlproperty WaylandSurface QtWaylandCompositor::XdgPopupV5::surface
*
* This property holds the surface associated with this XdgPopupV5.
*/
@@ -1209,7 +1429,7 @@ QWaylandSurface *QWaylandXdgPopupV5::surface() const
}
/*!
- * \qmlproperty object QtWaylandCompositor::XdgPopupV5::parentSurface
+ * \qmlproperty WaylandSurface QtWaylandCompositor::XdgPopupV5::parentSurface
*
* This property holds the surface associated with the parent of this XdgPopupV5.
*/
@@ -1228,7 +1448,7 @@ QWaylandSurface *QWaylandXdgPopupV5::parentSurface() const
/*!
- * \qmlproperty object QtWaylandCompositor::XdgPopupV5::position
+ * \qmlproperty point QtWaylandCompositor::XdgPopupV5::position
*
* This property holds the location of the upper left corner of the surface
* relative to the upper left corner of the parent surface, in surface local