diff options
author | Bjørn Erik Nilsen <bjorn.nilsen@nokia.com> | 2009-07-10 08:37:29 (GMT) |
---|---|---|
committer | Bjørn Erik Nilsen <bjorn.nilsen@nokia.com> | 2009-07-10 08:54:32 (GMT) |
commit | 28f31572b95a28e14f7ed4cebb907cfe1e257177 (patch) | |
tree | fcb9aeda2e5ee0abc81b1983e3f31d19a0c6d17e /src/gui/graphicsview/qgraphicsitem.cpp | |
parent | bdb6d461f4889e38296c859446283c0f9397dbdd (diff) | |
download | Qt-28f31572b95a28e14f7ed4cebb907cfe1e257177.zip Qt-28f31572b95a28e14f7ed4cebb907cfe1e257177.tar.gz Qt-28f31572b95a28e14f7ed4cebb907cfe1e257177.tar.bz2 |
Painting artifacts when moving an item with partial updates.
Found during manual testing (dndrobotinproxy). The problem was that the
paintedViewBoundingRect was set to an empty rect because the partial
update area didn't intersect with the viewport. The item itself was
partially inside the viewport. Then, when the item was moved, its old
area was not repainted due to this empty paintedViewBoundingRect.
Auto-test included.
Diffstat (limited to 'src/gui/graphicsview/qgraphicsitem.cpp')
-rw-r--r-- | src/gui/graphicsview/qgraphicsitem.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/gui/graphicsview/qgraphicsitem.cpp b/src/gui/graphicsview/qgraphicsitem.cpp index 85d76d4..2f646f7 100644 --- a/src/gui/graphicsview/qgraphicsitem.cpp +++ b/src/gui/graphicsview/qgraphicsitem.cpp @@ -1821,6 +1821,7 @@ void QGraphicsItemPrivate::setVisibleHelper(bool newVisible, bool explicitly, bo if (q_ptr->isSelected()) q_ptr->setSelected(false); } else { + geometryChanged = 1; if (isWidget && scene) { QGraphicsWidget *widget = static_cast<QGraphicsWidget *>(q_ptr); if (widget->windowType() == Qt::Popup) |