summaryrefslogtreecommitdiff
path: root/kde-plasma/plasma-workspace/files/plasma-workspace-5.17.5-disable-autoscaling-on-qt-5.14.patch
blob: 114e653df8e1108531bae59d481fb10a925da619 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
From ea66bff2af8466f2bb5acafcc43ac8f79b1f447f Mon Sep 17 00:00:00 2001
From: Fabian Vogt <fabian@ritter-vogt.de>
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