From ea66bff2af8466f2bb5acafcc43ac8f79b1f447f Mon Sep 17 00:00:00 2001 From: Fabian Vogt Date: Tue, 21 Jan 2020 11:55:49 +0100 Subject: Also disable automatic scaling on Qt >= 5.14 Summary: Applications which set `Qt::AA_EnableHighDpiScaling` use the DPI of the monitor the window is on to calculate an additional scaling factor. Plasma sets `QT_SCREEN_SCALE_FACTORS` in the environment for manual specification of per-monitor scale, which combined with the automatic scaling may result in double scaling. To disable the automatic scaling, `QT_AUTO_SCREEN_SCALE_FACTOR=0` has to be set, even on Qt 5.14. As a side effect, this works around QTBUG-80967 as well. BUG: 415421 Test Plan: On X11, with a >144dpi monitor and a scaling factor of 2 set manually, scaling was doubled previously. Now it works as expected. Reviewers: #plasma, apol, davidedmundson, fvogt Reviewed By: #plasma, davidedmundson, fvogt Subscribers: acooligan, fvogt, asturmlechner, dfaure, davidedmundson, anthonyfieroni, plasma-devel Tags: #plasma Differential Revision: https://phabricator.kde.org/D26185 --- startkde/startplasma.cpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/startkde/startplasma.cpp b/startkde/startplasma.cpp index 8d88587..4a89878 100644 --- a/startkde/startplasma.cpp +++ b/startkde/startplasma.cpp @@ -222,11 +222,9 @@ void runEnvironmentScripts() void setupPlasmaEnvironment() { -#if QT_VERSION < QT_VERSION_CHECK(5, 14, 0) //Manually disable auto scaling because we are scaling above //otherwise apps that manually opt in for high DPI get auto scaled by the developer AND manually scaled by us qputenv("QT_AUTO_SCREEN_SCALE_FACTOR", "0"); -#endif qputenv("KDE_FULL_SESSION", "true"); qputenv("KDE_SESSION_VERSION", "5"); -- cgit v1.1