summaryrefslogtreecommitdiffstats
path: root/src/core/nodes
diff options
context:
space:
mode:
authorPaul Lemire <paul.lemire@kdab.com>2019-08-30 11:41:18 +0200
committerMike Krus <mike.krus@kdab.com>2019-09-16 10:39:23 +0200
commit6a9609f8956ccc528da8b7acee2d7a3d195b2b2d (patch)
treed12aef2a869a8572fb48163bc7db0def2c52abc5 /src/core/nodes
parentc89997143cd6e51916924b71c8b0bf8705480a67 (diff)
Use direct access to remove backend nodes
- Stop using messages - Remove QSceneObserverInterface - Ensure backend node creation/destruction is done at the right time Change-Id: I470825af344ab65bf05e93fc149b61d1b9eefc96 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Diffstat (limited to 'src/core/nodes')
-rw-r--r--src/core/nodes/qnode.cpp7
1 files changed, 2 insertions, 5 deletions
diff --git a/src/core/nodes/qnode.cpp b/src/core/nodes/qnode.cpp
index 5f9468124..b41f5b3e2 100644
--- a/src/core/nodes/qnode.cpp
+++ b/src/core/nodes/qnode.cpp
@@ -149,11 +149,8 @@ void QNodePrivate::notifyDestructionChangesAndRemoveFromScene()
}
// Tell the backend we are about to be destroyed
- if (m_hasBackendNode) {
- const QDestructionIdAndTypeCollector collector(q);
- const auto destroyedChange = QNodeDestroyedChangePtr::create(q, collector.subtreeIdsAndTypes());
- notifyObservers(destroyedChange);
- }
+ if (m_hasBackendNode && m_scene && m_scene->engine())
+ QAspectEnginePrivate::get(m_scene->engine())->removeNode(q);
// We unset the scene from the node as its backend node was/is about to be destroyed
QNodeVisitor visitor;