diff options
author | Simon Hausmann <simon.hausmann@nokia.com> | 2009-05-06 22:04:41 (GMT) |
---|---|---|
committer | Simon Hausmann <simon.hausmann@nokia.com> | 2009-05-06 22:04:41 (GMT) |
commit | 014b5d404b19ad3d81686ba490eb7dd93efee573 (patch) | |
tree | 8fce9f8b172d4982270c5a91da0aa66fcb589f05 /src/gui/graphicsview/qgraphicsview.cpp | |
parent | 2eb0312c96ab828809158802d4cb7e0980227389 (diff) | |
parent | 311978919f63c2c23dd09b4743ff12cf2a8a47bb (diff) | |
download | Qt-014b5d404b19ad3d81686ba490eb7dd93efee573.zip Qt-014b5d404b19ad3d81686ba490eb7dd93efee573.tar.gz Qt-014b5d404b19ad3d81686ba490eb7dd93efee573.tar.bz2 |
Merge branch '4.5' of git@scm.dev.troll.no:qt/qt
Conflicts:
src/gui/kernel/qcocoaview_mac_p.h
src/gui/widgets/qmainwindow.cpp
Diffstat (limited to 'src/gui/graphicsview/qgraphicsview.cpp')
-rw-r--r-- | src/gui/graphicsview/qgraphicsview.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/gui/graphicsview/qgraphicsview.cpp b/src/gui/graphicsview/qgraphicsview.cpp index 644e843..2876016 100644 --- a/src/gui/graphicsview/qgraphicsview.cpp +++ b/src/gui/graphicsview/qgraphicsview.cpp @@ -1081,8 +1081,12 @@ QList<QGraphicsItem *> QGraphicsViewPrivate::findItems(const QRegion &exposedReg QList<QGraphicsItem *> itemList(scene->items()); int i = 0; while (i < itemList.size()) { + const QGraphicsItem *item = itemList.at(i); // But we only want to include items that are visible - if (!itemList.at(i)->isVisible()) + // The following check is basically the same as item->d_ptr->isInvisible(), except + // that we don't check whether the item clips children to shape or propagates its + // opacity (we loop through all items, so those checks are wrong in this context). + if (!item->isVisible() || item->d_ptr->isClippedAway() || item->d_ptr->isFullyTransparent()) itemList.removeAt(i); else ++i; |