diff options
-rw-r--r-- | src/gui/graphicsview/qgridlayoutengine.cpp | 2 | ||||
-rw-r--r-- | tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp | 17 |
2 files changed, 18 insertions, 1 deletions
diff --git a/src/gui/graphicsview/qgridlayoutengine.cpp b/src/gui/graphicsview/qgridlayoutengine.cpp index 74a074faa7..7f246e5660 100644 --- a/src/gui/graphicsview/qgridlayoutengine.cpp +++ b/src/gui/graphicsview/qgridlayoutengine.cpp @@ -1497,7 +1497,7 @@ void QGridLayoutEngine::fillRowData(QGridLayoutRowData *rowData, const QLayoutSt rowStretch = qMax(rowStretch, itemStretch); } else { QGridLayoutMultiCellData &multiCell = - rowData->multiCellMap[qMakePair(row, effectiveRowSpan)]; + rowData->multiCellMap[qMakePair(row, itemRowSpan)]; box = &multiCell.q_box; multiCell.q_stretch = itemStretch; } diff --git a/tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp b/tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp index 3bd9918f3b..d2a68b547c 100644 --- a/tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp +++ b/tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp @@ -1692,6 +1692,23 @@ void tst_QGraphicsGridLayout::sizeHint_data() << QSizeF(100, 100) << QSizeF(100, 100); + QTest::newRow("colSpan_with_ignored_column") << (ItemList() + << ItemDesc(0,0) + .minSize(QSizeF(40,20)) + .maxSize(QSizeF(60,20)) + .colSpan(2) + << ItemDesc(0,2) + .minSize(QSizeF(20, 20)) + .maxSize(QSizeF(30, 20)) + << ItemDesc(1,0) + .minSize(QSizeF(60, 20)) + .maxSize(QSizeF(90, 20)) + .colSpan(3) + ) + << QSizeF(60, 40) + << QSizeF(80, 40) + << QSizeF(90, 40); + } // public QSizeF sizeHint(Qt::SizeHint which, QSizeF const& constraint = QSizeF()) const |