diff options
author | Jørgen Lind <jorgen.lind@theqtcompany.com> | 2015-09-03 12:40:19 +0200 |
---|---|---|
committer | Jørgen Lind <jorgen.lind@theqtcompany.com> | 2015-09-04 16:12:47 +0200 |
commit | 4c5a796e96a66c18afbde0577d8b912a618fe710 (patch) | |
tree | e9b3aa53541f67d58dbf1599ae3181ac2cdae2ae /src/compositor/compositor_api/qwaylandquickcompositor.cpp | |
parent | a814616ff34bf5901fc299c6ba91c80cad39922d (diff) |
Make it possible to construct QWaylandOutput
This requires QWaylandOutput to be initialized. This will happend when
the QWaylandCompositor of the QWaylandOutputSpace that is set on the
QWaylandOutput is created. QWaylandCompositor will send or post a Polish
event to the QWaylandOutput which again will call
QWaylandOutput::initialize. This function will create the global that
will be put on the wl_displays registry
This makes it possible to Create WaylandOutputs in QML (see the pure-qml
example) and also gives a
better programming model in C++
Change-Id: Iaf907ae18a283678eda6d04390dc9790ae0bced8
Diffstat (limited to 'src/compositor/compositor_api/qwaylandquickcompositor.cpp')
-rw-r--r-- | src/compositor/compositor_api/qwaylandquickcompositor.cpp | 14 |
1 files changed, 0 insertions, 14 deletions
diff --git a/src/compositor/compositor_api/qwaylandquickcompositor.cpp b/src/compositor/compositor_api/qwaylandquickcompositor.cpp index 7d9893a15..860e59fcb 100644 --- a/src/compositor/compositor_api/qwaylandquickcompositor.cpp +++ b/src/compositor/compositor_api/qwaylandquickcompositor.cpp @@ -84,20 +84,6 @@ void QWaylandQuickCompositor::setInitializeLegazyQmlNames(bool init) m_initializeLegazyQmlNames = init; } -QWaylandOutput *QWaylandQuickCompositor::createOutput(QWaylandOutputSpace *outputSpace, - QWindow *window) -{ - QQmlEngine::setObjectOwnership(window, QQmlEngine::CppOwnership); - - QQuickWindow *quickWindow = qobject_cast<QQuickWindow *>(window); - if (!quickWindow) - qFatal("%s: couldn't cast QWindow to QQuickWindow. All output windows must " - "be QQuickWindow derivates when using QWaylandQuickCompositor", Q_FUNC_INFO); - QWaylandQuickOutput *output = new QWaylandQuickOutput(outputSpace, quickWindow); - QQmlEngine::setObjectOwnership(output, QQmlEngine::CppOwnership); - return output; -} - QWaylandSurface *QWaylandQuickCompositor::createSurface(QWaylandClient *client, quint32 id, int version) { return new QWaylandQuickSurface(client, id, version, this); |