20void QWaylandQuickOutput::initialize()
22 QWaylandOutput::initialize();
24 QQuickWindow *quickWindow = qobject_cast<QQuickWindow *>(window());
26 qWarning(
"Initialization error: Could not locate QQuickWindow on initializing QWaylandQuickOutput %p.\n",
this);
29 connect(quickWindow, &QQuickWindow::beforeSynchronizing,
30 this, &QWaylandQuickOutput::updateStarted,
31 Qt::DirectConnection);
33 connect(quickWindow, &QQuickWindow::afterRendering,
34 this, &QWaylandQuickOutput::doFrameCallbacks);
98 if (!rootItem->isEnabled() || !rootItem->isVisible())
101 QList<QQuickItem *> paintOrderItems = QQuickItemPrivate::get(rootItem)->paintOrderChildItems();
102 auto negativeZStart = paintOrderItems.crend();
103 for (
auto it = paintOrderItems.crbegin(); it != paintOrderItems.crend(); ++it) {
104 if ((*it)->z() < 0) {
108 QQuickItem *item = clickableItemAtPosition(*it, rootItem->mapToItem(*it, position));
113 if (rootItem->contains(position) && rootItem->acceptedMouseButtons() != Qt::NoButton)
116 for (
auto it = negativeZStart; it != paintOrderItems.crend(); ++it) {
117 QQuickItem *item = clickableItemAtPosition(*it, rootItem->mapToItem(*it, position));