From 31a8866ac0aa3966cd77e87e14974f0a6a66f940 Mon Sep 17 00:00:00 2001 From: Nicolas Fella Date: Sat, 8 Jul 2023 22:34:08 +0200 Subject: Fix usage of Qt::CheckStateRole in preview model Qt::CheckStateRole expects an enum, not a bool Also set the flag that the item it user checkable, otherwise it can't be changed BUG: 471999 --- src/settings/contextmenu/contextmenusettingspage.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/settings/contextmenu/contextmenusettingspage.cpp') diff --git a/src/settings/contextmenu/contextmenusettingspage.cpp b/src/settings/contextmenu/contextmenusettingspage.cpp index 0f43d0b7a..07deb778a 100644 --- a/src/settings/contextmenu/contextmenusettingspage.cpp +++ b/src/settings/contextmenu/contextmenusettingspage.cpp @@ -175,7 +175,7 @@ void ContextMenuSettingsPage::applySettings() for (int i = 0; i < model->rowCount(); ++i) { const QModelIndex index = model->index(i, 0); const QString service = model->data(index, ServiceModel::DesktopEntryNameRole).toString(); - const bool checked = model->data(index, Qt::CheckStateRole).toBool(); + const bool checked = model->data(index, Qt::CheckStateRole).value() == Qt::Checked; if (service.startsWith(VersionControlServicePrefix)) { if (checked) { @@ -240,7 +240,7 @@ void ContextMenuSettingsPage::restoreDefaults() const bool checked = !service.startsWith(VersionControlServicePrefix) && service != QLatin1String(DeleteService) && service != QLatin1String(CopyToMoveToService); - model->setData(index, checked, Qt::CheckStateRole); + model->setData(index, checked ? Qt::Checked : Qt::Unchecked, Qt::CheckStateRole); } } @@ -357,7 +357,7 @@ void ContextMenuSettingsPage::addRow(const QString &icon, const QString &text, c m_serviceModel->setData(index, icon, Qt::DecorationRole); m_serviceModel->setData(index, text, Qt::DisplayRole); m_serviceModel->setData(index, value, ServiceModel::DesktopEntryNameRole); - m_serviceModel->setData(index, checked, Qt::CheckStateRole); + m_serviceModel->setData(index, checked ? Qt::Checked : Qt::Unchecked, Qt::CheckStateRole); } #include "moc_contextmenusettingspage.cpp" -- cgit v1.3