summaryrefslogtreecommitdiffstats
path: root/src/widgets/widgets/qcombobox.cpp
diff options
context:
space:
mode:
authorSebastian Beckmann <beckmann.sebastian@outlook.de>2023-03-29 04:20:38 +0200
committerSebastian Beckmann <beckmann.sebastian@outlook.de>2023-03-31 18:35:40 +0200
commit9f44553b3d297f7a423c51451c4e18c0e5a25d19 (patch)
treeded12394cdc80401427b01ad544d1464bae1f974 /src/widgets/widgets/qcombobox.cpp
parenta1ff7f518df7ed08c3b7a08539268b3535b28969 (diff)
QComboBox: Disable items marked as disabled in native popups
Fixes: QTBUG-56064 Pick-to: 6.5 6.2 5.15 Change-Id: I00a17a19b4c14c874e16ec863e794218f0570346 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Diffstat (limited to 'src/widgets/widgets/qcombobox.cpp')
-rw-r--r--src/widgets/widgets/qcombobox.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/widgets/widgets/qcombobox.cpp b/src/widgets/widgets/qcombobox.cpp
index 80206b24ac..7c99e8983c 100644
--- a/src/widgets/widgets/qcombobox.cpp
+++ b/src/widgets/widgets/qcombobox.cpp
@@ -2501,10 +2501,12 @@ bool QComboBoxPrivate::showNativePopup()
QVariant textVariant = model->data(rowIndex, Qt::EditRole);
item->setText(textVariant.toString());
QVariant iconVariant = model->data(rowIndex, Qt::DecorationRole);
+ const Qt::ItemFlags itemFlags = model->flags(rowIndex);
if (iconVariant.canConvert<QIcon>())
item->setIcon(iconVariant.value<QIcon>());
item->setCheckable(true);
item->setChecked(i == currentIndex);
+ item->setEnabled(itemFlags & Qt::ItemIsEnabled);
if (!currentItem || i == currentIndex)
currentItem = item;