diff options
author | David Boddie <david.boddie@nokia.com> | 2011-01-26 16:22:13 (GMT) |
---|---|---|
committer | David Boddie <david.boddie@nokia.com> | 2011-01-26 16:22:13 (GMT) |
commit | 8533384ded9323a0b38490ed65793abd9a62d46f (patch) | |
tree | 6faac6d1c32bebb1df0294332033bc44dc0d8ae5 /src/gui/graphicsview | |
parent | 834c8617dc130126c0ce5213bda36b9f62717b1e (diff) | |
parent | 5498dcd7b10e147734a3414cab824b8b435aa3d9 (diff) | |
download | Qt-8533384ded9323a0b38490ed65793abd9a62d46f.zip Qt-8533384ded9323a0b38490ed65793abd9a62d46f.tar.gz Qt-8533384ded9323a0b38490ed65793abd9a62d46f.tar.bz2 |
Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt into 4.7
Diffstat (limited to 'src/gui/graphicsview')
-rw-r--r-- | src/gui/graphicsview/qgraphicsitem.cpp | 5 | ||||
-rw-r--r-- | src/gui/graphicsview/qgridlayoutengine.cpp | 5 |
2 files changed, 5 insertions, 5 deletions
diff --git a/src/gui/graphicsview/qgraphicsitem.cpp b/src/gui/graphicsview/qgraphicsitem.cpp index a892094..52e4d79 100644 --- a/src/gui/graphicsview/qgraphicsitem.cpp +++ b/src/gui/graphicsview/qgraphicsitem.cpp @@ -5592,9 +5592,8 @@ void QGraphicsItemPrivate::clearSubFocus(QGraphicsItem *rootItem, QGraphicsItem if (parent->d_ptr->subFocusItem != q_ptr) break; parent->d_ptr->subFocusItem = 0; - if (parent == stopItem) - break; - parent->d_ptr->subFocusItemChange(); + if (parent != stopItem && !parent->isAncestorOf(stopItem)) + parent->d_ptr->subFocusItemChange(); } while (!parent->isPanel() && (parent = parent->d_ptr->parent)); } diff --git a/src/gui/graphicsview/qgridlayoutengine.cpp b/src/gui/graphicsview/qgridlayoutengine.cpp index 8f833f8..cd30dfb 100644 --- a/src/gui/graphicsview/qgridlayoutengine.cpp +++ b/src/gui/graphicsview/qgridlayoutengine.cpp @@ -194,7 +194,8 @@ void QGridLayoutRowData::distributeMultiCells(const QGridLayoutRowInfo &rowInfo) for (int k = 0; k < span; ++k) { boxes[start + k].combine(extras[k]); - stretches[start + k] = qMax(stretches[start + k], stretch); + if (stretch != 0) + stretches[start + k] = qMax(stretches[start + k], stretch); } } multiCellMap.clear(); @@ -1472,7 +1473,7 @@ void QGridLayoutEngine::fillRowData(QGridLayoutRowData *rowData, const QLayoutSt QGridLayoutBox *box; if (effectiveRowSpan == 1) { box = &rowBox; - if (!userRowStretch) + if (!userRowStretch && itemStretch != 0) rowStretch = qMax(rowStretch, itemStretch); } else { QGridLayoutMultiCellData &multiCell = |