summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/gui/graphicsview/qgridlayoutengine.cpp2
-rw-r--r--tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp17
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