Commit ea66bff2 authored by Fabian Vogt's avatar Fabian Vogt
Browse files

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
parent 34ccaa4f
......@@ -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");
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment