8#include <QtWaylandCompositor/qwaylandquickshellsurfaceitem.h>
47 float minX = maxWidth >= 0.0f
50 float minY = maxHeight >= 0.0f
53 float maxX = maxWidth >= 0
56 float maxY = maxHeight >= 0.0f
89 QRect(
int(newLeft),
int(newTop),
90 int(newRight - newLeft),
int(newBottom - newTop)));
133 if (
d->shell !=
nullptr)
134 d->shell->unregisterChrome(
this);
137void QWaylandQtShellChrome::init()
146 this, &QWaylandQtShellChrome::updateDecorations);
149 this, &QWaylandQtShellChrome::updateDecorations);
152 this, &QWaylandQtShellChrome::updateDecorations);
155 this, &QWaylandQtShellChrome::updateDecorations);
158 this, &QWaylandQtShellChrome::updateDecorations);
161 this, &QWaylandQtShellChrome::updateDecorations);
164 this, &QWaylandQtShellChrome::updateDecorations);
167 this, &QWaylandQtShellChrome::updateDecorations);
170 this, &QWaylandQtShellChrome::updateDecorations);
182 if (
d->shellSurface ==
nullptr)
206 if (
d->shellSurface ==
nullptr)
230 if (
d->shellSurface ==
nullptr)
270 if (
d->shellSurfaceItem !=
nullptr)
271 d->shellSurfaceItem->disconnect(
this);
275 if (
d->shellSurfaceItem !=
nullptr) {
277 this, &QWaylandQtShellChrome::updateShellSurface);
282 updateShellSurface();
289 return d->shellSurfaceItem;
292void QWaylandQtShellChrome::stopGrab()
298void QWaylandQtShellChrome::leftResize()
301 if (!
d->leftResizeHandleHandler->active())
305 d->leftResizeHandleHandler->centroid());
308void QWaylandQtShellChrome::rightResize()
311 if (!
d->rightResizeHandleHandler->active())
315 d->rightResizeHandleHandler->centroid());
318void QWaylandQtShellChrome::topResize()
321 if (!
d->topResizeHandleHandler->active())
325 d->topResizeHandleHandler->centroid());
328void QWaylandQtShellChrome::bottomResize()
331 if (!
d->bottomResizeHandleHandler->active())
335 d->bottomResizeHandleHandler->centroid());
338void QWaylandQtShellChrome::topLeftResize()
341 if (!
d->topLeftResizeHandleHandler->active())
346 d->topLeftResizeHandleHandler->centroid());
349void QWaylandQtShellChrome::topRightResize()
352 if (!
d->topRightResizeHandleHandler->active())
357 d->topRightResizeHandleHandler->centroid());
360void QWaylandQtShellChrome::bottomLeftResize()
363 if (!
d->bottomLeftResizeHandleHandler->active())
368 d->bottomLeftResizeHandleHandler->centroid());
371void QWaylandQtShellChrome::bottomRightResize()
374 if (!
d->bottomRightResizeHandleHandler->active())
379 d->bottomRightResizeHandleHandler->centroid());
382void QWaylandQtShellChrome::titleBarMove()
385 if (!
d->titleBarHandler->active())
391 d->decorationInteraction =
flags;
392 d->decorationInteractionPosition =
d->shellSurface->windowPosition() - centroid.
scenePressPosition();
397 if (
d->decorationInteraction !=
flags)
401 d->shellSurface->setWindowPosition((
position +
d->decorationInteractionPosition).toPoint());
447 if (
d->titleBar ==
item)
450 if (
d->titleBar !=
nullptr) {
451 d->titleBar->disconnect(
this);
453 delete d->titleBarHandler;
454 d->titleBarHandler =
nullptr;
459 if (
d->titleBar !=
nullptr) {
461 this, &QWaylandQtShellChrome::updateDecorations);
464 d->titleBarHandler->setTarget(
nullptr);
467 this, &QWaylandQtShellChrome::stopGrab);
469 this, &QWaylandQtShellChrome::activateOnGrab);
471 this, &QWaylandQtShellChrome::titleBarMove);
506 return d->leftResizeHandle;
512 if (
d->leftResizeHandle ==
item)
515 if (
d->leftResizeHandle !=
nullptr) {
516 d->leftResizeHandle->disconnect(
this);
518 delete d->leftResizeHandleHandler;
519 d->leftResizeHandleHandler =
nullptr;
522 d->leftResizeHandle =
item;
524 if (
d->leftResizeHandle !=
nullptr) {
526 this, &QWaylandQtShellChrome::updateDecorations);
530 d->leftResizeHandleHandler->setTarget(
nullptr);
533 this, &QWaylandQtShellChrome::stopGrab);
535 this, &QWaylandQtShellChrome::leftResize);
570 return d->rightResizeHandle;
576 if (
d->rightResizeHandle ==
item)
579 if (
d->rightResizeHandle !=
nullptr) {
580 d->rightResizeHandle->disconnect(
this);
582 delete d->rightResizeHandleHandler;
583 d->rightResizeHandleHandler =
nullptr;
586 d->rightResizeHandle =
item;
588 if (
d->rightResizeHandle !=
nullptr) {
590 this, &QWaylandQtShellChrome::updateDecorations);
594 d->rightResizeHandleHandler->setTarget(
nullptr);
597 this, &QWaylandQtShellChrome::stopGrab);
599 this, &QWaylandQtShellChrome::rightResize);
634 return d->topResizeHandle;
640 if (
d->topResizeHandle ==
item)
643 if (
d->topResizeHandle !=
nullptr) {
644 d->topResizeHandle->disconnect(
this);
646 delete d->topResizeHandleHandler;
647 d->topResizeHandleHandler =
nullptr;
650 d->topResizeHandle =
item;
652 if (
d->topResizeHandle !=
nullptr) {
654 this, &QWaylandQtShellChrome::updateDecorations);
658 d->topResizeHandleHandler->setTarget(
nullptr);
661 this, &QWaylandQtShellChrome::stopGrab);
663 this, &QWaylandQtShellChrome::topResize);
698 return d->bottomResizeHandle;
704 if (
d->bottomResizeHandle ==
item)
707 if (
d->bottomResizeHandle !=
nullptr) {
708 d->bottomResizeHandle->disconnect(
this);
710 delete d->bottomResizeHandleHandler;
711 d->bottomResizeHandleHandler =
nullptr;
714 d->bottomResizeHandle =
item;
716 if (
d->bottomResizeHandle !=
nullptr) {
718 this, &QWaylandQtShellChrome::updateDecorations);
722 d->bottomResizeHandleHandler->setTarget(
nullptr);
725 this, &QWaylandQtShellChrome::stopGrab);
727 this, &QWaylandQtShellChrome::bottomResize);
761 return d->topLeftResizeHandle;
767 if (
d->topLeftResizeHandle ==
item)
770 if (
d->topLeftResizeHandle !=
nullptr) {
771 delete d->topLeftResizeHandleHandler;
772 d->topLeftResizeHandleHandler =
nullptr;
775 d->topLeftResizeHandle =
item;
777 if (
d->topLeftResizeHandle !=
nullptr) {
780 d->topLeftResizeHandleHandler->setTarget(
nullptr);
783 this, &QWaylandQtShellChrome::stopGrab);
785 this, &QWaylandQtShellChrome::topLeftResize);
818 return d->bottomLeftResizeHandle;
824 if (
d->bottomLeftResizeHandle ==
item)
827 if (
d->bottomLeftResizeHandle !=
nullptr) {
828 delete d->bottomLeftResizeHandleHandler;
829 d->bottomLeftResizeHandleHandler =
nullptr;
832 d->bottomLeftResizeHandle =
item;
834 if (
d->bottomLeftResizeHandle !=
nullptr) {
837 d->bottomLeftResizeHandleHandler->setTarget(
nullptr);
840 this, &QWaylandQtShellChrome::stopGrab);
842 this, &QWaylandQtShellChrome::bottomLeftResize);
875 return d->topRightResizeHandle;
881 if (
d->topRightResizeHandle ==
item)
884 if (
d->topRightResizeHandle !=
nullptr) {
885 delete d->topRightResizeHandleHandler;
886 d->topRightResizeHandleHandler =
nullptr;
889 d->topRightResizeHandle =
item;
891 if (
d->topRightResizeHandle !=
nullptr) {
894 d->topRightResizeHandleHandler->setTarget(
nullptr);
897 this, &QWaylandQtShellChrome::stopGrab);
899 this, &QWaylandQtShellChrome::topRightResize);
932 return d->bottomRightResizeHandle;
938 if (
d->bottomRightResizeHandle ==
item)
941 if (
d->bottomRightResizeHandle !=
nullptr) {
942 delete d->bottomRightResizeHandleHandler;
943 d->bottomRightResizeHandleHandler =
nullptr;
946 d->bottomRightResizeHandle =
item;
948 if (
d->bottomRightResizeHandle !=
nullptr) {
951 d->bottomRightResizeHandleHandler->setTarget(
nullptr);
954 this, &QWaylandQtShellChrome::stopGrab);
956 this, &QWaylandQtShellChrome::bottomRightResize);
974 if (
d->maximizedRect ==
rect)
977 d->maximizedRect =
rect;
984 if (
d->maximizedRect.isValid())
985 return d->maximizedRect;
986 else if (
d->shellSurfaceItem !=
nullptr &&
d->shellSurfaceItem->output() !=
nullptr)
987 return d->shellSurfaceItem->output()->geometry();
992void QWaylandQtShellChrome::updateDecorations()
995 if (
d->shellSurface ==
nullptr)
1002 if (
d->automaticFrameMargins) {
1003 if (
d->leftResizeHandle !=
nullptr && decorations)
1004 margins.
setLeft(
d->leftResizeHandle->width());
1005 if (
d->rightResizeHandle !=
nullptr && decorations)
1006 margins.
setRight(
d->rightResizeHandle->width());
1007 if (
d->bottomResizeHandle !=
nullptr && decorations)
1008 margins.
setBottom(
d->bottomResizeHandle->height());
1010 margins.
setTop((decorations &&
d->topResizeHandle !=
nullptr ?
d->topResizeHandle->height() : 0)
1013 margins =
d->explicitFrameMargins;
1015 d->shellSurface->setFrameMargins(margins);
1017 if (
d->titleBar !=
nullptr)
1018 d->titleBar->setVisible(titleBarShowing);
1019 if (
d->leftResizeHandle !=
nullptr)
1020 d->leftResizeHandle->setVisible(decorations);
1021 if (
d->rightResizeHandle !=
nullptr)
1022 d->rightResizeHandle->setVisible(decorations);
1023 if (
d->topResizeHandle !=
nullptr)
1024 d->topResizeHandle->setVisible(decorations);
1025 if (
d->bottomResizeHandle !=
nullptr)
1026 d->bottomResizeHandle->setVisible(decorations);
1027 if (
d->bottomLeftResizeHandle !=
nullptr)
1028 d->bottomLeftResizeHandle->setVisible(decorations);
1029 if (
d->topLeftResizeHandle !=
nullptr)
1030 d->topLeftResizeHandle->setVisible(decorations);
1031 if (
d->bottomRightResizeHandle !=
nullptr)
1032 d->bottomRightResizeHandle->setVisible(decorations);
1033 if (
d->topRightResizeHandle !=
nullptr)
1034 d->topRightResizeHandle->setVisible(decorations);
1037 if (
d->leftResizeHandleHandler !=
nullptr)
1038 d->leftResizeHandleHandler->setEnabled(decorations && !minimizedOrMaximized);
1039 if (
d->rightResizeHandleHandler !=
nullptr)
1040 d->rightResizeHandleHandler->setEnabled(decorations && !minimizedOrMaximized);
1041 if (
d->bottomResizeHandleHandler !=
nullptr)
1042 d->bottomResizeHandleHandler->setEnabled(decorations && !minimizedOrMaximized);
1043 if (
d->topResizeHandleHandler !=
nullptr)
1044 d->topResizeHandleHandler->setEnabled(decorations && !minimizedOrMaximized);
1045 if (
d->bottomLeftResizeHandleHandler !=
nullptr)
1046 d->bottomLeftResizeHandleHandler->setEnabled(decorations && !minimizedOrMaximized);
1047 if (
d->bottomRightResizeHandleHandler !=
nullptr)
1048 d->bottomRightResizeHandleHandler->setEnabled(decorations && !minimizedOrMaximized);
1049 if (
d->topLeftResizeHandleHandler !=
nullptr)
1050 d->topLeftResizeHandleHandler->setEnabled(decorations && !minimizedOrMaximized);
1051 if (
d->topRightResizeHandleHandler !=
nullptr)
1052 d->topRightResizeHandleHandler->setEnabled(decorations && !minimizedOrMaximized);
1053 if (
d->titleBarHandler !=
nullptr)
1054 d->titleBarHandler->setEnabled(titleBarShowing && !minimizedOrMaximized);
1057void QWaylandQtShellChrome::updateGeometry()
1060 if (
d->shellSurface ==
nullptr)
1063 QRect windowGeometry =
d->shellSurface->windowGeometry();
1066 position.
rx() -=
d->shellSurface->frameMarginLeft();
1067 position.
ry() -=
d->shellSurface->frameMarginTop();
1070 size.
rwidth() +=
d->shellSurface->frameMarginLeft() +
d->shellSurface->frameMarginRight();
1071 size.rheight() +=
d->shellSurface->frameMarginTop() +
d->shellSurface->frameMarginBottom();
1077void QWaylandQtShellChrome::updateSurface()
1080 QWaylandSurface *surface =
d->shellSurface !=
nullptr ?
d->shellSurface->surface() :
nullptr;
1081 if (
d->surface == surface)
1084 if (
d->surface !=
nullptr)
1085 d->surface->disconnect(
this);
1087 d->surface = surface;
1089 if (
d->surface !=
nullptr) {
1091 this, &QWaylandQtShellChrome::updateAutomaticPosition);
1095void QWaylandQtShellChrome::updateShellSurface()
1099 ? qobject_cast<QWaylandQtShellSurface *>(
d->shellSurfaceItem->shellSurface())
1101 if (
d->shellSurface == sf)
1104 if (
d->shellSurface !=
nullptr) {
1105 d->shellSurface->disconnect(
this);
1106 if (
d->shell !=
nullptr)
1107 d->shell->unregisterChrome(
this);
1111 d->shellSurface = sf;
1112 if (
d->shellSurface !=
nullptr) {
1113 d->shell =
d->shellSurface->shell();
1114 if (
d->shell !=
nullptr)
1115 d->shell->registerChrome(
this);
1117 updateWindowFlags();
1119 this, &QWaylandQtShellChrome::updateWindowFlags);
1121 this, &QWaylandQtShellChrome::updateWindowState);
1123 this, &QWaylandQtShellChrome::updateGeometry);
1125 this, &QWaylandQtShellChrome::updateGeometry);
1131 this, &QWaylandQtShellChrome::updateActiveState);
1133 this, &QWaylandQtShellChrome::updateSurface);
1136 updateDecorations();
1140void QWaylandQtShellChrome::updateWindowState()
1143 if (
d->shellSurface ==
nullptr)
1146 setWindowState(
d->shellSurface->windowState());
1149void QWaylandQtShellChrome::updateWindowFlags()
1153 uint nextFlags =
d->shellSurface ==
nullptr ||
d->shellSurface->windowFlags() ==
Qt::Window
1155 :
d->shellSurface->windowFlags();
1157 if (
d->currentFlags != nextFlags) {
1158 d->currentFlags = nextFlags;
1174 return d->currentFlags;
1188 return d->currentState;
1215QRect QWaylandQtShellChrome::maxContentRect()
const
1218 if (
d->shellSurface ==
nullptr)
1221 int x0 =
d->maximizedRect.x() +
d->shellSurface->frameMarginLeft();
1222 int x1 =
d->maximizedRect.x() +
d->maximizedRect.width() -
d->shellSurface->frameMarginRight();
1223 int y0 =
d->maximizedRect.y() +
d->shellSurface->frameMarginTop();
1224 int y1 =
d->maximizedRect.y() +
d->maximizedRect.height() -
d->shellSurface->frameMarginBottom();
1231 return (windowSize >= screenSize) ? 0 : rand() % (screenSize - windowSize);
1234void QWaylandQtShellChrome::setWindowState(
uint nextState)
1238 if (
d->currentState == nextState)
1241 if (
d->shellSurface ==
nullptr ||
d->shellSurfaceItem ==
nullptr)
1249 d->restoreGeometry =
d->shellSurface->windowGeometry();
1252 d->currentState = nextState;
1256 d->shellSurface->requestWindowGeometry(nextState,
QRect(0, 0, 1, 1));
1257 d->shellSurfaceItem->setVisible(
false);
1260 d->shellSurfaceItem->setVisible(
true);
1261 d->shellSurface->requestWindowGeometry(nextState,
QRect(
QPoint(0, 0),
output->window()->size()));
1264 d->shellSurfaceItem->setVisible(
true);
1265 d->shellSurface->requestWindowGeometry(nextState, maxContentRect());
1268 d->shellSurfaceItem->setVisible(
true);
1269 d->shellSurface->requestWindowGeometry(nextState,
d->restoreGeometry);
1274void QWaylandQtShellChrome::updateAutomaticPosition()
1277 if (!
d->positionSet &&
d->shellSurface !=
nullptr) {
1278 bool randomize =
d->shellSurface->positionAutomatic();
1279 QRect rect =
d->shellSurface->windowGeometry();
1280 QRect space = maxContentRect();
1287 d->shellSurface->setWindowPosition(
QPoint(xpos, ypos));
1288 d->positionSet =
true;
1301 if (
d->shellSurface !=
nullptr)
1302 d->shellSurface->setActive(
false);
1308 if (
d->titleBarHandler !=
nullptr) {
1309 switch (transition) {
1331 if (
d->shellSurface !=
nullptr)
1332 d->shellSurface->setActive(
true);
1345 if (
d->shellSurfaceItem !=
nullptr)
1346 d->shellSurfaceItem->raise();
1358 if (
d->shellSurfaceItem !=
nullptr)
1359 d->shellSurfaceItem->lower();
1362void QWaylandQtShellChrome::updateActiveState()
1365 if (
d->shellSurface ==
nullptr)
1368 if (
d->shellSurface->active()) {
1389 if (
d->explicitFrameMargins.left() ==
left)
1392 d->explicitFrameMargins.setLeft(
left);
1393 d->automaticFrameMargins =
false;
1394 updateDecorations();
1402 if (
d->shellSurface ==
nullptr)
1404 return d->shellSurface->frameMarginLeft();
1420 if (
d->explicitFrameMargins.right() ==
right)
1423 d->explicitFrameMargins.setRight(
right);
1424 d->automaticFrameMargins =
false;
1425 updateDecorations();
1433 if (
d->shellSurface ==
nullptr)
1435 return d->shellSurface->frameMarginRight();
1451 if (
d->explicitFrameMargins.top() ==
top)
1453 d->explicitFrameMargins.setTop(
top);
1454 d->automaticFrameMargins =
false;
1455 updateDecorations();
1463 if (
d->shellSurface ==
nullptr)
1465 return d->shellSurface->frameMarginTop();
1481 if (
d->explicitFrameMargins.bottom() ==
bottom)
1483 d->explicitFrameMargins.setBottom(
bottom);
1484 d->automaticFrameMargins =
false;
1485 updateDecorations();
1493 if (
d->shellSurface ==
nullptr)
1495 return d->shellSurface->frameMarginBottom();
1500#include "moc_qwaylandqtshellchrome.cpp"
constexpr void setTop(int top) noexcept
Sets the Top margin to Top.
constexpr void setBottom(int bottom) noexcept
Sets the bottom margin to bottom.
constexpr void setLeft(int left) noexcept
Sets the left margin to left.
constexpr void setRight(int right) noexcept
Sets the right margin to right.
static QMetaObject::Connection connect(const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection)
\threadsafe
\inmodule QtCore\reentrant
constexpr qreal & ry() noexcept
Returns a reference to the y coordinate of this point.
constexpr qreal x() const noexcept
Returns the x coordinate of this point.
constexpr qreal y() const noexcept
Returns the y coordinate of this point.
constexpr qreal & rx() noexcept
Returns a reference to the x coordinate of this point.
\inmodule QtCore\reentrant
GrabTransition
This enum represents a transition of exclusive or passive grab from one object (possibly nullptr) to ...
QPointF scenePressPosition
The QQuickItem class provides the most basic of all visual items in \l {Qt Quick}.
Flags flags() const
Returns the item flags for this item.
void setSize(const QSizeF &size)
void grabChanged(QPointingDevice::GrabTransition transition, QEventPoint point)
\inmodule QtCore\reentrant
constexpr int height() const noexcept
Returns the height of the rectangle.
constexpr int bottom() const noexcept
Returns the y-coordinate of the rectangle's bottom edge.
constexpr QPoint topLeft() const noexcept
Returns the position of the rectangle's top-left corner.
constexpr int top() const noexcept
Returns the y-coordinate of the rectangle's top edge.
constexpr int left() const noexcept
Returns the x-coordinate of the rectangle's left edge.
constexpr int x() const noexcept
Returns the x-coordinate of the rectangle's left edge.
constexpr QSize size() const noexcept
Returns the size of the rectangle.
constexpr int width() const noexcept
Returns the width of the rectangle.
constexpr int y() const noexcept
Returns the y-coordinate of the rectangle's top edge.
constexpr int right() const noexcept
Returns the x-coordinate of the rectangle's right edge.
constexpr int height() const noexcept
Returns the height.
constexpr int width() const noexcept
Returns the width.
constexpr int & rwidth() noexcept
Returns a reference to the width.
\qmltype WaylandOutput \instantiates QWaylandOutput \inqmlmodule QtWayland.Compositor
void updateDecorationInteraction(quint8 flags, const QQuickHandlerPoint ¢roid)
QPointF constrainPoint(const QPointF &point) const
QRect decorationInteractionGeometry
QPointF decorationInteractionPosition
QPointer< QWaylandQtShellSurface > shellSurface
quint8 decorationInteraction
void currentWindowFlagsChanged()
void windowMetaInfoChanged()
QQuickItem * leftResizeHandle
void bottomResizeHandleChanged()
QQuickItem * rightResizeHandle
QQuickItem * bottomResizeHandle
void setFrameMarginBottom(int bottom)
\qmlproperty int QtShellChrome::frameMarginBottom
void setMaximizedRect(const QRect &rect)
\qmlproperty rect QtShellChrome::maximizedRect
void bottomLeftResizeHandleChanged()
void bottomRightResizeHandleChanged()
uint currentWindowFlags() const
\qmlproperty int QtShellChrome::windowFlags
void currentWindowStateChanged()
void lower()
\qmlmethod void QtShellChrome::lower()
void toggleMinimized()
\qmlmethod void QtShellChrome::toggleMinimized()
void raise()
\qmlmethod void QtShellChrome::raise()
void setFrameMarginRight(int right)
\qmlproperty int QtShellChrome::frameMarginRight
void setTopRightResizeHandle(QQuickItem *item)
void shellSurfaceItemChanged()
void setBottomLeftResizeHandle(QQuickItem *item)
void setFrameMarginLeft(int left)
\qmlproperty int QtShellChrome::frameMarginLeft
void toggleFullScreen()
\qmlmethod void QtShellChrome::toggleFullScreen()
void setFrameMarginTop(int top)
\qmlproperty int QtShellChrome::frameMarginTop
~QWaylandQtShellChrome() override
void setBottomRightResizeHandle(QQuickItem *item)
QQuickItem * topLeftResizeHandle
void deactivate()
\qmlmethod void QtShellChrome::deactivate()
QWaylandQtShellChrome(QQuickItem *parent=nullptr)
\qmltype QtShellChrome \instantiates QWaylandQtShellChrome \inqmlmodule QtWayland....
QWaylandQuickShellSurfaceItem * shellSurfaceItem
void topRightResizeHandleChanged()
void setTopLeftResizeHandle(QQuickItem *item)
void rightResizeHandleChanged()
void frameMarginChanged()
void topResizeHandleChanged()
QQuickItem * bottomLeftResizeHandle
void toggleMaximized()
\qmlmethod void QtShellChrome::toggleMaximized()
QQuickItem * topResizeHandle
void setShellSurfaceItem(QWaylandQuickShellSurfaceItem *shellSurfaceItem)
\qmlproperty ShellSurfaceItem QtShellChrome::shellSurfaceItem
void setTitleBar(QQuickItem *item)
QQuickItem * bottomRightResizeHandle
void setTopResizeHandle(QQuickItem *item)
uint currentWindowState() const
\qmlproperty int QtShellChrome::windowState
QQuickItem * topRightResizeHandle
void topLeftResizeHandleChanged()
void setLeftResizeHandle(QQuickItem *item)
void maximizedRectChanged()
void setRightResizeHandle(QQuickItem *item)
void leftResizeHandleChanged()
void setBottomResizeHandle(QQuickItem *item)
void activate()
\qmlmethod void QtShellChrome::activate()
Q_INVOKABLE void requestWindowGeometry(uint windowState, const QRect &windowGeometry)
\qmlmethod void QtShellSurface::requestWindowGeometry(int windowState, rect windowGeometry)
void windowGeometryChanged()
void frameMarginChanged()
void windowStateChanged()
void windowFlagsChanged()
void surfaceDestroyed()
\qmlsignal void QtWayland.Compositor::WaylandQuickItem::surfaceDestroyed()
\qmltype ShellSurfaceItem \instantiates QWaylandQuickShellSurfaceItem \inherits WaylandQuickItem \inq...
void shellSurfaceChanged()
\qmltype WaylandSurface \instantiates QWaylandSurface \inqmlmodule QtWayland.Compositor
void newState(QList< State > &states, const char *token, const char *lexem, bool pre)
Combined button and popup list for selecting options.
constexpr const T & qBound(const T &min, const T &val, const T &max)
constexpr const T & qMax(const T &a, const T &b)
n void setPosition(void) \n\
GLint GLsizei GLsizei height
GLfloat GLfloat GLfloat GLfloat GLfloat maxY
GLuint GLfloat GLfloat GLfloat GLfloat y1
GLenum GLuint GLintptr GLsizeiptr size
[1]
GLuint GLfloat GLfloat GLfloat x1
GLdouble GLdouble GLdouble GLdouble top
GLuint GLfloat GLfloat y0
GLfloat GLfloat GLfloat GLfloat maxX
static qreal position(const QQuickItem *item, QQuickAnchors::Anchor anchorLine)
QT_BEGIN_NAMESPACE typedef uchar * output
static int randomPos(int windowSize, int screenSize)
IUIAutomationTreeWalker __RPC__deref_out_opt IUIAutomationElement ** parent