summaryrefslogtreecommitdiffstats
path: root/src/widgets/styles
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2021-01-13 10:34:37 +0100
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2021-01-15 12:26:40 +0100
commitf3251bcb878d655e5f897335ec6bc6dbf69323e7 (patch)
tree1ff86790a4c1d78f584bc4b37c439b80f0ef033a /src/widgets/styles
parentdafd26acbe7b08f5ddfe60432fe0e49422ac085c (diff)
QTabBar/Windows: Fix close button icons being too small on high-res screens
Add 32x32 versions. Move the icon creation to a helper function. Fixes: QTBUG-88230 Pick-to: 6.0 Pick-to: 5.15 Change-Id: I6dda2084e0122234eacea17ac191a19f6855f466 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
Diffstat (limited to 'src/widgets/styles')
-rw-r--r--src/widgets/styles/images/standardbutton-closetab-32.pngbin0 -> 305 bytes
-rw-r--r--src/widgets/styles/images/standardbutton-closetab-down-32.pngbin0 -> 278 bytes
-rw-r--r--src/widgets/styles/images/standardbutton-closetab-hover-32.pngbin0 -> 305 bytes
-rw-r--r--src/widgets/styles/qcommonstyle.cpp37
-rw-r--r--src/widgets/styles/qstyle.qrc3
5 files changed, 29 insertions, 11 deletions
diff --git a/src/widgets/styles/images/standardbutton-closetab-32.png b/src/widgets/styles/images/standardbutton-closetab-32.png
new file mode 100644
index 0000000000..93e1246b47
--- /dev/null
+++ b/src/widgets/styles/images/standardbutton-closetab-32.png
Binary files differ
diff --git a/src/widgets/styles/images/standardbutton-closetab-down-32.png b/src/widgets/styles/images/standardbutton-closetab-down-32.png
new file mode 100644
index 0000000000..343b72586e
--- /dev/null
+++ b/src/widgets/styles/images/standardbutton-closetab-down-32.png
Binary files differ
diff --git a/src/widgets/styles/images/standardbutton-closetab-hover-32.png b/src/widgets/styles/images/standardbutton-closetab-hover-32.png
new file mode 100644
index 0000000000..41ce0265c7
--- /dev/null
+++ b/src/widgets/styles/images/standardbutton-closetab-hover-32.png
Binary files differ
diff --git a/src/widgets/styles/qcommonstyle.cpp b/src/widgets/styles/qcommonstyle.cpp
index 54489c6379..5c5b25cc94 100644
--- a/src/widgets/styles/qcommonstyle.cpp
+++ b/src/widgets/styles/qcommonstyle.cpp
@@ -126,6 +126,30 @@ static qreal qt_getDevicePixelRatio(const QWidget *widget)
return widget ? widget->devicePixelRatio() : qApp->devicePixelRatio();
}
+static QIcon tabBarCloseButtonIcon()
+{
+ QIcon result;
+ result.addPixmap(QPixmap(
+ QLatin1String(":/qt-project.org/styles/commonstyle/images/standardbutton-closetab-16.png")),
+ QIcon::Normal, QIcon::Off);
+ result.addPixmap(QPixmap(
+ QLatin1String(":/qt-project.org/styles/commonstyle/images/standardbutton-closetab-32.png")),
+ QIcon::Normal, QIcon::Off);
+ result.addPixmap(QPixmap(
+ QLatin1String(":/qt-project.org/styles/commonstyle/images/standardbutton-closetab-down-16.png")),
+ QIcon::Normal, QIcon::On);
+ result.addPixmap(QPixmap(
+ QLatin1String(":/qt-project.org/styles/commonstyle/images/standardbutton-closetab-down-32.png")),
+ QIcon::Normal, QIcon::On);
+ result.addPixmap(QPixmap(
+ QLatin1String(":/qt-project.org/styles/commonstyle/images/standardbutton-closetab-hover-16.png")),
+ QIcon::Active, QIcon::Off);
+ result.addPixmap(QPixmap(
+ QLatin1String(":/qt-project.org/styles/commonstyle/images/standardbutton-closetab-hover-32.png")),
+ QIcon::Active, QIcon::Off);
+ return result;
+}
+
/*!
\class QCommonStyle
\brief The QCommonStyle class encapsulates the common Look and Feel of a GUI.
@@ -416,17 +440,8 @@ void QCommonStyle::drawPrimitive(PrimitiveElement pe, const QStyleOption *opt, Q
}
break;
case PE_IndicatorTabClose: {
- if (d->tabBarcloseButtonIcon.isNull()) {
- d->tabBarcloseButtonIcon.addPixmap(QPixmap(
- QLatin1String(":/qt-project.org/styles/commonstyle/images/standardbutton-closetab-16.png")),
- QIcon::Normal, QIcon::Off);
- d->tabBarcloseButtonIcon.addPixmap(QPixmap(
- QLatin1String(":/qt-project.org/styles/commonstyle/images/standardbutton-closetab-down-16.png")),
- QIcon::Normal, QIcon::On);
- d->tabBarcloseButtonIcon.addPixmap(QPixmap(
- QLatin1String(":/qt-project.org/styles/commonstyle/images/standardbutton-closetab-hover-16.png")),
- QIcon::Active, QIcon::Off);
- }
+ if (d->tabBarcloseButtonIcon.isNull())
+ d->tabBarcloseButtonIcon = tabBarCloseButtonIcon();
const int size = proxy()->pixelMetric(QStyle::PM_SmallIconSize, opt);
QIcon::Mode mode = opt->state & State_Enabled ?
diff --git a/src/widgets/styles/qstyle.qrc b/src/widgets/styles/qstyle.qrc
index d3511ee754..44090a54f0 100644
--- a/src/widgets/styles/qstyle.qrc
+++ b/src/widgets/styles/qstyle.qrc
@@ -104,8 +104,11 @@
<file>images/standardbutton-yes-128.png</file>
<file>images/standardbutton-yes-16.png</file>
<file>images/standardbutton-yes-32.png</file>
+ <file>images/standardbutton-closetab-32.png</file>
<file>images/standardbutton-closetab-16.png</file>
+ <file>images/standardbutton-closetab-down-32.png</file>
<file>images/standardbutton-closetab-down-16.png</file>
+ <file>images/standardbutton-closetab-hover-32.png</file>
<file>images/standardbutton-closetab-hover-16.png</file>
<file>images/refresh-24.png</file>
<file>images/refresh-32.png</file>