diff options
-rw-r--r-- | src/compositor/global/qwaylandcompositorextension.cpp | 3 | ||||
-rw-r--r-- | src/compositor/global/qwaylandquickextension.h | 2 |
2 files changed, 3 insertions, 2 deletions
diff --git a/src/compositor/global/qwaylandcompositorextension.cpp b/src/compositor/global/qwaylandcompositorextension.cpp index ee117bba..e50df48b 100644 --- a/src/compositor/global/qwaylandcompositorextension.cpp +++ b/src/compositor/global/qwaylandcompositorextension.cpp @@ -124,7 +124,8 @@ bool QWaylandCompositorExtension::event(QEvent *event) { switch(event->type()) { case QEvent::Polish: - initialize(); + if (!isInitialized()) + initialize(); break; default: break; diff --git a/src/compositor/global/qwaylandquickextension.h b/src/compositor/global/qwaylandquickextension.h index b869dcec..c721bcb9 100644 --- a/src/compositor/global/qwaylandquickextension.h +++ b/src/compositor/global/qwaylandquickextension.h @@ -60,7 +60,7 @@ QT_BEGIN_NAMESPACE return QQmlListProperty<QObject>(this, m_objects); \ } \ void classBegin() override {} \ - void componentComplete() override { initialize(); } \ + void componentComplete() override { if (!isInitialized()) initialize(); } \ private: \ QList<QObject *> m_objects; \ }; |