diff --git a/src/widgets/dialogs/qsidebar.cpp b/src/widgets/dialogs/qsidebar.cpp index 9dcc6e35ff5..17670ab6e3c 100644 --- a/src/widgets/dialogs/qsidebar.cpp +++ b/src/widgets/dialogs/qsidebar.cpp @@ -197,8 +197,11 @@ void QUrlModel::setUrl(const QModelIndex &index, const QUrl &url, const QModelIn // Make sure that we have at least 32x32 images const QSize size = newIcon.actualSize(QSize(32,32)); if (size.width() < 32) { - QPixmap smallPixmap = newIcon.pixmap(QSize(32, 32)); - newIcon.addPixmap(smallPixmap.scaledToWidth(32, Qt::SmoothTransformation)); + const auto widget = qobject_cast(parent()); + const auto dpr = widget ? widget->devicePixelRatio() : qApp->devicePixelRatio(); + const auto smallPixmap = newIcon.pixmap(QSize(32, 32), dpr); + const auto newPixmap = smallPixmap.scaledToWidth(32 * dpr, Qt::SmoothTransformation); + newIcon.addPixmap(newPixmap); } } diff --git a/src/widgets/dialogs/qwizard_win.cpp b/src/widgets/dialogs/qwizard_win.cpp index 2c4f049e888..64447f9728f 100644 --- a/src/widgets/dialogs/qwizard_win.cpp +++ b/src/widgets/dialogs/qwizard_win.cpp @@ -251,7 +251,7 @@ void QVistaHelper::drawTitleBar(QPainter *painter) const QPoint pos(origin.x() + iconLeft, origin.y() + verticalCenter - size / 2); const QPoint posDp = pos * QVistaHelper::m_devicePixelRatio; - const HICON hIcon = qt_pixmapToWinHICON(windowIcon.pixmap(size * QVistaHelper::m_devicePixelRatio)); + const HICON hIcon = qt_pixmapToWinHICON(windowIcon.pixmap(QSize(size, size), QVistaHelper::m_devicePixelRatio)); DrawIconEx(hdc, posDp.x(), posDp.y(), hIcon, 0, 0, 0, NULL, DI_NORMAL | DI_COMPAT); DestroyIcon(hIcon); } diff --git a/src/widgets/widgets/qmdisubwindow.cpp b/src/widgets/widgets/qmdisubwindow.cpp index 87c9b1702e9..bb5cf18ecd2 100644 --- a/src/widgets/widgets/qmdisubwindow.cpp +++ b/src/widgets/widgets/qmdisubwindow.cpp @@ -479,7 +479,7 @@ void ControlLabel::updateWindowIcon() if (menuIcon.isNull()) menuIcon = style()->standardIcon(QStyle::SP_TitleBarMenuButton, nullptr, parentWidget()); const int iconSize = style()->pixelMetric(QStyle::PM_TitleBarButtonIconSize, nullptr, parentWidget()); - label = menuIcon.pixmap(iconSize); + label = menuIcon.pixmap(QSize(iconSize, iconSize), devicePixelRatio()); update(); }