diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2021-01-13 10:34:37 +0100 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2021-01-15 12:26:40 +0100 |
commit | f3251bcb878d655e5f897335ec6bc6dbf69323e7 (patch) | |
tree | 1ff86790a4c1d78f584bc4b37c439b80f0ef033a /src/widgets | |
parent | dafd26acbe7b08f5ddfe60432fe0e49422ac085c (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')
-rw-r--r-- | src/widgets/CMakeLists.txt | 3 | ||||
-rw-r--r-- | src/widgets/styles/images/standardbutton-closetab-32.png | bin | 0 -> 305 bytes | |||
-rw-r--r-- | src/widgets/styles/images/standardbutton-closetab-down-32.png | bin | 0 -> 278 bytes | |||
-rw-r--r-- | src/widgets/styles/images/standardbutton-closetab-hover-32.png | bin | 0 -> 305 bytes | |||
-rw-r--r-- | src/widgets/styles/qcommonstyle.cpp | 37 | ||||
-rw-r--r-- | src/widgets/styles/qstyle.qrc | 3 |
6 files changed, 32 insertions, 11 deletions
diff --git a/src/widgets/CMakeLists.txt b/src/widgets/CMakeLists.txt index 8181979ae8..34c8d2bc1e 100644 --- a/src/widgets/CMakeLists.txt +++ b/src/widgets/CMakeLists.txt @@ -172,8 +172,11 @@ set(qstyle_resource_files "images/standardbutton-close-128.png" "images/standardbutton-close-16.png" "images/standardbutton-close-32.png" + "images/standardbutton-closetab-32.png" "images/standardbutton-closetab-16.png" + "images/standardbutton-closetab-down-32.png" "images/standardbutton-closetab-down-16.png" + "images/standardbutton-closetab-hover-32.png" "images/standardbutton-closetab-hover-16.png" "images/standardbutton-delete-128.png" "images/standardbutton-delete-16.png" diff --git a/src/widgets/styles/images/standardbutton-closetab-32.png b/src/widgets/styles/images/standardbutton-closetab-32.png Binary files differnew file mode 100644 index 0000000000..93e1246b47 --- /dev/null +++ b/src/widgets/styles/images/standardbutton-closetab-32.png diff --git a/src/widgets/styles/images/standardbutton-closetab-down-32.png b/src/widgets/styles/images/standardbutton-closetab-down-32.png Binary files differnew file mode 100644 index 0000000000..343b72586e --- /dev/null +++ b/src/widgets/styles/images/standardbutton-closetab-down-32.png diff --git a/src/widgets/styles/images/standardbutton-closetab-hover-32.png b/src/widgets/styles/images/standardbutton-closetab-hover-32.png Binary files differnew file mode 100644 index 0000000000..41ce0265c7 --- /dev/null +++ b/src/widgets/styles/images/standardbutton-closetab-hover-32.png 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> |