From 0e72a01d4c9f794ee43d2d70372d8df3c7da7615 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Thu, 21 Nov 2024 19:05:45 +0100 Subject: [PATCH] Style: pass widget to styleHint() where appropriate QStyle::styleHint() take the QWidget as optional third parameter. Add this to calls to styleHint() where appropriate. Task-number: QTBUG-2501 Change-Id: I62aa251f7dd9d78178ea8aefc1e2882d3ac040be Reviewed-by: Volker Hilsheimer (cherry picked from commit 5b320c146b2d67bb9bec92d647ec7fb5ae6b601d) Reviewed-by: Qt Cherry-pick Bot (cherry picked from commit bea6b0e944472c125becc54358c164c896a3e9d0) --- src/widgets/accessible/qaccessiblemenu.cpp | 2 +- src/widgets/itemviews/qlistview.cpp | 2 +- src/widgets/kernel/qwidget_p.h | 2 +- src/widgets/styles/qwindowsstyle.cpp | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/widgets/accessible/qaccessiblemenu.cpp b/src/widgets/accessible/qaccessiblemenu.cpp index 1d72a82456..a79970a525 100644 --- a/src/widgets/accessible/qaccessiblemenu.cpp +++ b/src/widgets/accessible/qaccessiblemenu.cpp @@ -259,7 +259,7 @@ QAccessible::State QAccessibleMenuItem::state() const s.focused = true; #endif } - if (own && own->style()->styleHint(QStyle::SH_Menu_MouseTracking)) + if (own && own->style()->styleHint(QStyle::SH_Menu_MouseTracking, nullptr, own)) s.hotTracked = true; if (m_action->isSeparator() || !m_action->isEnabled()) s.disabled = true; diff --git a/src/widgets/itemviews/qlistview.cpp b/src/widgets/itemviews/qlistview.cpp index b07032a11c..f28fea13ed 100644 --- a/src/widgets/itemviews/qlistview.cpp +++ b/src/widgets/itemviews/qlistview.cpp @@ -1802,7 +1802,7 @@ void QListViewPrivate::prepareItemsLayout() layoutBounds = QRect(QPoint(), q->maximumViewportSize()); int frameAroundContents = 0; - if (q->style()->styleHint(QStyle::SH_ScrollView_FrameOnlyAroundContents)) { + if (q->style()->styleHint(QStyle::SH_ScrollView_FrameOnlyAroundContents, nullptr, q)) { QStyleOption option; option.initFrom(q); frameAroundContents = q->style()->pixelMetric(QStyle::PM_DefaultFrameWidth, &option, q) * 2; diff --git a/src/widgets/kernel/qwidget_p.h b/src/widgets/kernel/qwidget_p.h index 9ea134b16f..0aee4a7194 100644 --- a/src/widgets/kernel/qwidget_p.h +++ b/src/widgets/kernel/qwidget_p.h @@ -564,7 +564,7 @@ public: Q_Q(QWidget); if (qApp->autoSipEnabled()) { QStyle::RequestSoftwareInputPanel behavior = QStyle::RequestSoftwareInputPanel( - q->style()->styleHint(QStyle::SH_RequestSoftwareInputPanel)); + q->style()->styleHint(QStyle::SH_RequestSoftwareInputPanel, nullptr, q)); if (!clickCausedFocus || behavior == QStyle::RSIP_OnMouseClick) { QGuiApplication::inputMethod()->show(); } diff --git a/src/widgets/styles/qwindowsstyle.cpp b/src/widgets/styles/qwindowsstyle.cpp index bae182b467..a8407add01 100644 --- a/src/widgets/styles/qwindowsstyle.cpp +++ b/src/widgets/styles/qwindowsstyle.cpp @@ -775,7 +775,7 @@ void QWindowsStyle::drawPrimitive(PrimitiveElement pe, const QStyleOption *opt, case PE_FrameFocusRect: if (const QStyleOptionFocusRect *fropt = qstyleoption_cast(opt)) { //### check for d->alt_down - if (!(fropt->state & State_KeyboardFocusChange) && !proxy()->styleHint(SH_UnderlineShortcut, opt)) + if (!(fropt->state & State_KeyboardFocusChange) && !proxy()->styleHint(SH_UnderlineShortcut, opt, w)) return; QRect r = opt->rect; p->save();