diff options
author | Wladimir Leuschner <wladimir.leuschner@qt.io> | 2024-03-19 16:46:43 +0100 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2024-03-22 08:06:27 +0000 |
commit | 98602c26fc97eb41e3dd7548194ca637420a31b9 (patch) | |
tree | 10a725f3c7bece20d8b5a231bd2dff48a9d0452a | |
parent | 169a2f212dd674288c87830f42a4d6ffc1a05668 (diff) |
Change-Id: Ib9043e1b3041c88d757ddd5ada6c0edcf2bb6129
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
(cherry picked from commit 587003c3ccf6f8abab9aa6e8131f5ff6ce368d8a)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 382505e22f9037a13f793786c2b12c3f68bc2724)
-rw-r--r-- | src/plugins/styles/modernwindows/qwindows11style.cpp | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/plugins/styles/modernwindows/qwindows11style.cpp b/src/plugins/styles/modernwindows/qwindows11style.cpp index 1016316f28..08886eaa93 100644 --- a/src/plugins/styles/modernwindows/qwindows11style.cpp +++ b/src/plugins/styles/modernwindows/qwindows11style.cpp @@ -1703,11 +1703,17 @@ QRect QWindows11Style::subElementRect(QStyle::SubElement element, const QStyleOp ret = option->rect.adjusted(8,0,-8,0); break; case QStyle::SE_ItemViewItemText: - if (widget && widget->parentWidget() && - widget->parentWidget()->inherits("QComboBoxPrivateContainer")) - ret = option->rect.adjusted(5,0,-5,0); - else + if (const auto *item = qstyleoption_cast<const QStyleOptionViewItem *>(option)) { + const int decorationOffset = item->features.testFlag(QStyleOptionViewItem::HasDecoration) ? item->decorationSize.width() : 0; + if (widget && widget->parentWidget() && + widget->parentWidget()->inherits("QComboBoxPrivateContainer")) { + ret = option->rect.adjusted(decorationOffset + 5, 0, -5, 0); + } else { + ret = QWindowsVistaStyle::subElementRect(element, option, widget); + } + } else { ret = QWindowsVistaStyle::subElementRect(element, option, widget); + } break; default: ret = QWindowsVistaStyle::subElementRect(element, option, widget); |