aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/items/context2d/qquickcanvasitem.cpp
diff options
context:
space:
mode:
authorJ-P Nurmi <jpnurmi@digia.com>2014-02-27 15:13:33 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-02-28 00:02:44 +0100
commit4693102d94e1942c4d72ac2b148cb04edb4b2af5 (patch)
tree19d76dcdef25e4e677cfa3ba2ad0de8ff990d469 /src/quick/items/context2d/qquickcanvasitem.cpp
parent24d5fe8113ed149b98c0718aa3b27d3b013577cc (diff)
Canvas: do not emit paint signal when invisible
Task-number: QTBUG-31830 Change-Id: I23c6fc822547120f14c2d9a09f01a8f985745e2a Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com> Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Diffstat (limited to 'src/quick/items/context2d/qquickcanvasitem.cpp')
-rw-r--r--src/quick/items/context2d/qquickcanvasitem.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/quick/items/context2d/qquickcanvasitem.cpp b/src/quick/items/context2d/qquickcanvasitem.cpp
index ed5c8d7bcb..17adf1b66b 100644
--- a/src/quick/items/context2d/qquickcanvasitem.cpp
+++ b/src/quick/items/context2d/qquickcanvasitem.cpp
@@ -640,6 +640,8 @@ void QQuickCanvasItem::updatePolish()
QQuickItem::updatePolish();
Q_D(QQuickCanvasItem);
+ if (!isVisible() && !(d->extra.isAllocated() && d->extra->effectRefCount>0))
+ return;
if (d->context && d->renderStrategy != QQuickCanvasItem::Cooperative)
d->context->prepare(d->canvasSize.toSize(), d->tileSize, d->canvasWindow.toRect(), d->dirtyRect.toRect(), d->smooth, antialiasing());