client: Clamp fractional scaling to be >= 1.0
Whilst the fractional scaling protocol supports values less than 100%, Qt does not. In this case we should continue using 100% and let the compositor take care of making it smaller. Change-Id: Iaec32adc80aa37f441be37b39e3e0afcbf29136b Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
This commit is contained in:
parent
7238199c84
commit
5043973b14
@ -105,16 +105,18 @@ void QWaylandWindow::initWindow()
|
||||
if (mDisplay->fractionalScaleManager() && qApp->highDpiScaleFactorRoundingPolicy() == Qt::HighDpiScaleFactorRoundingPolicy::PassThrough) {
|
||||
mFractionalScale.reset(new QWaylandFractionalScale(mDisplay->fractionalScaleManager()->get_fractional_scale(mSurface->object())));
|
||||
|
||||
if (mScale != mFractionalScale->preferredScale()) {
|
||||
mScale = mFractionalScale->preferredScale();
|
||||
qreal preferredScale = std::max(1.0, mFractionalScale->preferredScale());
|
||||
if (mScale != preferredScale) {
|
||||
mScale = preferredScale;
|
||||
QWindowSystemInterface::handleWindowDevicePixelRatioChanged(window());
|
||||
}
|
||||
|
||||
connect(mFractionalScale.data(), &QWaylandFractionalScale::preferredScaleChanged, this, [this]() {
|
||||
if (mScale == mFractionalScale->preferredScale()) {
|
||||
qreal preferredScale = std::max(1.0, mFractionalScale->preferredScale());
|
||||
if (mScale == preferredScale) {
|
||||
return;
|
||||
}
|
||||
mScale = mFractionalScale->preferredScale();
|
||||
mScale = preferredScale;
|
||||
QWindowSystemInterface::handleWindowDevicePixelRatioChanged(window());
|
||||
ensureSize();
|
||||
if (mViewport)
|
||||
|
Loading…
x
Reference in New Issue
Block a user