QWindows11Style: Remove frame from ToolButton in QToolBar

Remove the frame of ToolButtons in QToolBar area when not hovered or
selected

Pick-to: 6.7
Change-Id: I11bd7b513871d6d1e0d9bfba761acf061f50e524
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
(cherry picked from commit 85c4084331a1049d3e2377f5516cd0d93819ac04)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
Wladimir Leuschner 2024-07-03 14:00:36 +02:00 committed by Qt Cherry-pick Bot
parent d554f36017
commit b64031a6d1

View File

@ -890,7 +890,12 @@ void QWindows11Style::drawPrimitive(PrimitiveElement element, const QStyleOption
QRectF rect = option->rect.marginsRemoved(QMargins(2,2,2,2));
rect.adjust(-0.5,-0.5,0.5,0.5);
painter->setBrush(Qt::NoBrush);
painter->setPen(QPen(WINUI3Colors[colorSchemeIndex][controlStrokePrimary]));
if (element == PE_PanelButtonTool
&& ((!(state & QStyle::State_MouseOver) && !(state & QStyle::State_Raised))
|| !(state & QStyle::State_Enabled)))
painter->setPen(Qt::NoPen);
else
painter->setPen(QPen(WINUI3Colors[colorSchemeIndex][controlStrokePrimary]));
painter->drawRoundedRect(rect, secondLevelRoundingRadius, secondLevelRoundingRadius);
rect = option->rect.marginsRemoved(QMargins(2,2,2,2));