summaryrefslogtreecommitdiffstats
path: root/src/client/qwaylandwindow.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/qwaylandwindow.cpp')
-rw-r--r--src/client/qwaylandwindow.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp
index a70a4f54b..18470913b 100644
--- a/src/client/qwaylandwindow.cpp
+++ b/src/client/qwaylandwindow.cpp
@@ -92,6 +92,7 @@ QWaylandWindow::QWaylandWindow(QWindow *window)
, mResizeDirty(false)
, mResizeAfterSwap(qEnvironmentVariableIsSet("QT_WAYLAND_RESIZE_AFTER_SWAP"))
, mSentInitialResize(false)
+ , mScale(1)
, mState(Qt::WindowNoState)
, mMask()
, mBackingStore(Q_NULLPTR)
@@ -189,9 +190,12 @@ void QWaylandWindow::initWindow()
}
}
+ mScale = screen()->scale();
+
// Enable high-dpi rendering. Scale() returns the screen scale factor and will
// typically be integer 1 (normal-dpi) or 2 (high-dpi). Call set_buffer_scale()
// to inform the compositor that high-resolution buffers will be provided.
+ //FIXME this needs to be changed when the screen changes along with a resized backing store
if (mDisplay->compositorVersion() >= 3)
set_buffer_scale(scale());
@@ -847,12 +851,12 @@ bool QWaylandWindow::isExposed() const
int QWaylandWindow::scale() const
{
- return screen()->scale();
+ return mScale;
}
qreal QWaylandWindow::devicePixelRatio() const
{
- return screen()->devicePixelRatio();
+ return mScale;
}
bool QWaylandWindow::setMouseGrabEnabled(bool grab)