diff options
author | Laszlo Agocs <laszlo.agocs@qt.io> | 2016-12-13 14:24:49 +0100 |
---|---|---|
committer | Laszlo Agocs <laszlo.agocs@qt.io> | 2017-01-12 11:55:31 +0000 |
commit | 1cead4f316184489ff81e689611b91d3760ee5cf (patch) | |
tree | 60790ec31ace7a29592ee5c30dd7fd06abf33130 /src/quick/scenegraph | |
parent | 770915841def879301e58496caf4b552a86a6103 (diff) |
Propagate root changes to rendernodes too
Otherwise weird things will happen once a node gets turned into a
batch root and the rendernodes in the child subtree still refers to
their old root.
Change-Id: I42b0ba514c2fbeed833f0f665e49b275c19b5686
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
Diffstat (limited to 'src/quick/scenegraph')
-rw-r--r-- | src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp b/src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp index 4893c175a3..8d4c313056 100644 --- a/src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp +++ b/src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp @@ -979,6 +979,10 @@ void Renderer::nodeChangedBatchRoot(Node *node, Node *root) e->root = root; e->boundsComputed = false; } + } else if (node->type() == QSGNode::RenderNodeType) { + RenderNodeElement *e = node->renderNodeElement(); + if (e) + e->root = root; } SHADOWNODE_TRAVERSE(node) |