Don't try to insert items out of bounds
The q_items list is only used to hold a full list of all items in the layout. They are kept in order for a linear layout, so that users see them in the right order, but there's no real guarantee for that anyway if combined with spacers and other non-items. Continue to try keeping the order, but ensure indices that are out of bounds are treated as appends to the list. Change-Id: I22721c1fa8b329c5d16ad00c5cb780e099693cda Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
This commit is contained in:
parent
cd04181b2b
commit
bc4e7aecc0
@ -960,7 +960,7 @@ void QGridLayoutEngine::insertItem(QGridLayoutItem *item, int index)
|
||||
{
|
||||
maybeExpandGrid(item->lastRow(), item->lastColumn());
|
||||
|
||||
if (index == -1)
|
||||
if (index < 0 || index >= q_items.size())
|
||||
q_items.append(item);
|
||||
else
|
||||
q_items.insert(index, item);
|
||||
|
Loading…
x
Reference in New Issue
Block a user