diff options
author | Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> | 2015-06-03 10:18:38 +0200 |
---|---|---|
committer | Jani Heikkinen <jani.heikkinen@theqtcompany.com> | 2015-06-04 04:49:45 +0000 |
commit | 769cc4d878c18ca3228fce846deccb5290901887 (patch) | |
tree | 533783d8ea65c97d9cadb2b160e08997a627fa9b /src/plugins | |
parent | cf452e20f9f755898cbd05bfd387f29e39613c4a (diff) |
Make logicalDpi consistent in relation to device pixel ratio
In GNOME/Unity XCB, logical DPI is scaled by device pixel ratio, and on
Macs logical DPI is constant but pixel ratio is based on physical DPI,
making logical DPI effectively physical DPI divided by pixel ratio.
This patch ensure the same logic is used for other XCB desktops.
Change-Id: I60f24618cd49f6b34a6ff1eff317883d191d3491
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
Diffstat (limited to 'src/plugins')
-rw-r--r-- | src/plugins/platforms/xcb/qxcbscreen.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/plugins/platforms/xcb/qxcbscreen.cpp b/src/plugins/platforms/xcb/qxcbscreen.cpp index c14ec0bb3f..63e4d9e75b 100644 --- a/src/plugins/platforms/xcb/qxcbscreen.cpp +++ b/src/plugins/platforms/xcb/qxcbscreen.cpp @@ -361,11 +361,11 @@ QDpi QXcbScreen::logicalDpi() const if (overrideDpi) return QDpi(overrideDpi, overrideDpi); - if (m_forcedDpi > 0) { - int primaryDpr = int(connection()->screens().at(0)->devicePixelRatio()); + int primaryDpr = int(connection()->screens().at(0)->devicePixelRatio()); + if (m_forcedDpi > 0) return QDpi(m_forcedDpi/primaryDpr, m_forcedDpi/primaryDpr); - } - return virtualDpi(); + QDpi vDpi = virtualDpi(); + return QDpi(vDpi.first/primaryDpr, vDpi.second/primaryDpr); } |