From f39f2bfe0b216252980c082b1771540dd00e6bd6 Mon Sep 17 00:00:00 2001 From: Wladimir Leuschner Date: Thu, 28 Mar 2024 13:18:59 +0100 Subject: QStyleSheetStyle: Propagate CE_ItemViewItem drawing to baseStyle Currently the drawing of CE_ItemViewItem is propagated to QWindowsStyle, which leads to ignoring alternating rows in ItemViews. Propagating the drawing to baseStyle honors the set base style. Fixes: QTBUG-123632 Pick-to: 6.7 6.6 6.5 Change-Id: I656ee1c44029abf7233551303d469d38b6c848e3 Reviewed-by: Axel Spoerl --- src/widgets/styles/qstylesheetstyle.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/widgets') diff --git a/src/widgets/styles/qstylesheetstyle.cpp b/src/widgets/styles/qstylesheetstyle.cpp index 7602217f24..82a101f457 100644 --- a/src/widgets/styles/qstylesheetstyle.cpp +++ b/src/widgets/styles/qstylesheetstyle.cpp @@ -4368,7 +4368,7 @@ void QStyleSheetStyle::drawControl(ControlElement ce, const QStyleOption *opt, Q if (subRule.hasDrawable()) { subRule.configurePalette(&optCopy.palette, vopt->state & QStyle::State_Selected ? QPalette::HighlightedText : QPalette::Text, vopt->state & QStyle::State_Selected ? QPalette::Highlight : QPalette::Base); - QWindowsStyle::drawControl(ce, &optCopy, p, w); + baseStyle()->drawControl(ce, &optCopy, p, w); } else { p->save(); if (hasStyleRule(w, PseudoElement_Indicator)) { @@ -4387,7 +4387,7 @@ void QStyleSheetStyle::drawControl(ControlElement ce, const QStyleOption *opt, Q optIndicator.backgroundBrush = Qt::NoBrush; // no background optIndicator.text.clear(); optIndicator.icon = QIcon(); - QWindowsStyle::drawControl(ce, &optIndicator, p, w); + baseStyle()->drawControl(ce, &optIndicator, p, w); // Now draw text, background,icon, and highlight, but not the indicator with // the base style. Since we can't turn off HasCheckIndicator to prevent the base -- cgit v1.2.3