aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick
diff options
context:
space:
mode:
authorFabian Bumberger <fbumberger@rim.com>2013-12-12 14:12:25 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-01-08 17:38:12 +0100
commit439f31f128e70ecae16544ee7041695c60e0b2d6 (patch)
treea5b0cba98dbe0a76c18d5294d42b505756441bb9 /src/quick
parenta9bef84675f6b67bb88a2bb99e45aba889795251 (diff)
Dont call updatePolish if an item is not visible
[ChangeLog][QtQuick][QQuickItem] "updatePolish" is not called for invisible items any more. Task-number: QTBUG-31830 Change-Id: Idad6107afaf0c6e6c96d9404ac286695c21883c7 Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
Diffstat (limited to 'src/quick')
-rw-r--r--src/quick/items/qquickwindow.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/quick/items/qquickwindow.cpp b/src/quick/items/qquickwindow.cpp
index b8c180e2fd..c3f5169804 100644
--- a/src/quick/items/qquickwindow.cpp
+++ b/src/quick/items/qquickwindow.cpp
@@ -257,8 +257,10 @@ void QQuickWindowPrivate::polishItems()
for (QSet<QQuickItem *>::iterator it = itms.begin(); it != itms.end(); ++it) {
QQuickItem *item = *it;
- QQuickItemPrivate::get(item)->polishScheduled = false;
- item->updatePolish();
+ QQuickItemPrivate *itemPrivate = QQuickItemPrivate::get(item);
+ itemPrivate->polishScheduled = false;
+ if (item->isVisible() || (itemPrivate->extra.isAllocated() && itemPrivate->extra->effectRefCount>0))
+ item->updatePolish();
}
}