summaryrefslogtreecommitdiffstats
path: root/src/widgets/itemviews
diff options
context:
space:
mode:
authorDavid Faure <david.faure@kdab.com>2019-04-15 21:07:40 +0200
committerDavid Faure <david.faure@kdab.com>2019-04-23 16:17:20 +0000
commited66c932b1460ce5dcb3f7f1cb4c37f726683175 (patch)
tree3b3b238cfebc3329f1a2e0022659299cc567089d /src/widgets/itemviews
parent20e286107344f2cb188f5292d31dc62bf7708365 (diff)
QListWidgetItem constructors: don't emit dataChanged(invalid, invalid)
This is a regression introduced by 63967313f57add which blocked signals on the view, but not on the model. Change-Id: Ib2f93fe6ef842264aaba200c98ee4a19065ca220 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Konstantin Shegunov <kshegunov@gmail.com> Reviewed-by: Laurent Montel <laurent.montel@kdab.com> Reviewed-by: Christian Ehrlicher <ch.ehrlicher@gmx.de>
Diffstat (limited to 'src/widgets/itemviews')
-rw-r--r--src/widgets/itemviews/qlistwidget.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/widgets/itemviews/qlistwidget.cpp b/src/widgets/itemviews/qlistwidget.cpp
index a9899983c2..e46d25bef1 100644
--- a/src/widgets/itemviews/qlistwidget.cpp
+++ b/src/widgets/itemviews/qlistwidget.cpp
@@ -650,11 +650,13 @@ QListWidgetItem::QListWidgetItem(const QString &text, QListWidget *listview, int
|Qt::ItemIsEnabled
|Qt::ItemIsDragEnabled)
{
+ QListModel *model = listModel();
{
QSignalBlocker b(view);
+ QSignalBlocker bm(model);
setData(Qt::DisplayRole, text);
}
- if (QListModel *model = listModel())
+ if (model)
model->insert(model->rowCount(), this);
}
@@ -683,12 +685,14 @@ QListWidgetItem::QListWidgetItem(const QIcon &icon,const QString &text,
|Qt::ItemIsEnabled
|Qt::ItemIsDragEnabled)
{
+ QListModel *model = listModel();
{
QSignalBlocker b(view);
+ QSignalBlocker bm(model);
setData(Qt::DisplayRole, text);
setData(Qt::DecorationRole, icon);
}
- if (QListModel *model = listModel())
+ if (model)
model->insert(model->rowCount(), this);
}