summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/xcb/qxcbscreen.cpp
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@theqtcompany.com>2015-07-01 09:59:28 +0000
committerThe Qt Project <gerrit-noreply@qt-project.org>2015-07-01 09:59:28 +0000
commit0698f876ca02b85c1e584b72cac3444796f6a355 (patch)
tree022748fb34278fb455d8e029d912dfb0b545f443 /src/plugins/platforms/xcb/qxcbscreen.cpp
parentcd297f99a2ce9c53c3ac4633bdf2425af364a1bc (diff)
parent0aa2d318b1524cdab42ab9988270779ddcc1922a (diff)
Merge "Merge remote-tracking branch 'origin/5.5' into dev" into refs/staging/dev
Diffstat (limited to 'src/plugins/platforms/xcb/qxcbscreen.cpp')
-rw-r--r--src/plugins/platforms/xcb/qxcbscreen.cpp20
1 files changed, 16 insertions, 4 deletions
diff --git a/src/plugins/platforms/xcb/qxcbscreen.cpp b/src/plugins/platforms/xcb/qxcbscreen.cpp
index c14ec0bb3f..040cea1cb2 100644
--- a/src/plugins/platforms/xcb/qxcbscreen.cpp
+++ b/src/plugins/platforms/xcb/qxcbscreen.cpp
@@ -282,6 +282,18 @@ QPoint QXcbScreen::mapFromNative(const QPoint &pos) const
return (pos - m_nativeGeometry.topLeft()) / dpr + m_geometry.topLeft();
}
+QPointF QXcbScreen::mapToNative(const QPointF &pos) const
+{
+ const int dpr = int(devicePixelRatio());
+ return (pos - m_geometry.topLeft()) * dpr + m_nativeGeometry.topLeft();
+}
+
+QPointF QXcbScreen::mapFromNative(const QPointF &pos) const
+{
+ const int dpr = int(devicePixelRatio());
+ return (pos - m_nativeGeometry.topLeft()) / dpr + m_geometry.topLeft();
+}
+
QRect QXcbScreen::mapToNative(const QRect &rect) const
{
const int dpr = int(devicePixelRatio());
@@ -361,11 +373,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);
}