From 433d67e767478ce946cd04d8ad4ff73051c14773 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Morten=20S=C3=B8rvig?= Date: Thu, 2 Mar 2023 13:23:28 +0100 Subject: [PATCH] Make QOpenGLWidget work with QT_WIDGETS_HIGHDPI_DOWNSCALE Get the DPR from QWidget::metric(), which has a code path for handling the QT_WIDGETS_HIGHDPI_DOWNSCALE case. Fixes: QTBUG-111105 Pick-to: 6.5 Change-Id: I821cbdf00423de211719173ae5c0af7b76594f60 Reviewed-by: Eirik Aavitsland --- src/openglwidgets/qopenglwidget.cpp | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/src/openglwidgets/qopenglwidget.cpp b/src/openglwidgets/qopenglwidget.cpp index dc231acf6be..5fae60ee172 100644 --- a/src/openglwidgets/qopenglwidget.cpp +++ b/src/openglwidgets/qopenglwidget.cpp @@ -1608,15 +1608,9 @@ int QOpenGLWidget::metric(QPaintDevice::PaintDeviceMetric metric) const else return qRound(dpmy * 0.0254); case PdmDevicePixelRatio: - if (window) - return int(window->devicePixelRatio()); - else - return 1.0; + return QWidget::metric(metric); case PdmDevicePixelRatioScaled: - if (window) - return int(window->devicePixelRatio() * devicePixelRatioFScale()); - else - return int(devicePixelRatioFScale()); + return QWidget::metric(metric); default: qWarning("QOpenGLWidget::metric(): unknown metric %d", metric); return 0;