diff options
Diffstat (limited to 'src/compositor/extensions/qwaylandxdgshellv5.cpp')
-rw-r--r-- | src/compositor/extensions/qwaylandxdgshellv5.cpp | 236 |
1 files changed, 228 insertions, 8 deletions
diff --git a/src/compositor/extensions/qwaylandxdgshellv5.cpp b/src/compositor/extensions/qwaylandxdgshellv5.cpp index 8f116426..c0cb4f8e 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 |