Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Leap:15.0:Staging:A:DVD
sddm
0001-Fix-platform-detection-for-EnableHiDPI.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 0001-Fix-platform-detection-for-EnableHiDPI.patch of Package sddm
From 70b1059cebd0bc98d1545a7a702c1c1779286c42 Mon Sep 17 00:00:00 2001 From: Fabian Vogt <fabian@ritter-vogt.de> Date: Thu, 8 Mar 2018 10:47:03 +0100 Subject: [PATCH] Fix platform detection for EnableHiDPI We can't use QGuiApplication before it's constructed, so find out which platform is requested ourselves. Fixes #894 --- src/greeter/GreeterApp.cpp | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/src/greeter/GreeterApp.cpp b/src/greeter/GreeterApp.cpp index 1230efa..5181e4e 100644 --- a/src/greeter/GreeterApp.cpp +++ b/src/greeter/GreeterApp.cpp @@ -278,11 +278,27 @@ int main(int argc, char **argv) // Install message handler qInstallMessageHandler(SDDM::GreeterMessageHandler); + // We set an attribute based on the platform we run on. + // We only know the platform after we constructed QGuiApplication + // though, so we need to find it out ourselves. + QLatin1String platform; + for (int i = 1; i < argc - 1; ++i) { + if(qstrcmp(argv[i], "-platform") == 0) { + platform = QLatin1String(argv[i + 1]); + } + } + if (platform.isEmpty()) { + platform = QLatin1String(qgetenv("QT_QPA_PLATFORM")); + } + if (platform.isEmpty()) { + platform = QLatin1String("xcb"); + } + // HiDPI bool hiDpiEnabled = false; - if (QGuiApplication::platformName() == QLatin1String("xcb")) + if (platform == QLatin1String("xcb")) hiDpiEnabled = SDDM::mainConfig.X11.EnableHiDPI.get(); - else if (QGuiApplication::platformName().startsWith(QLatin1String("wayland"))) + else if (platform.startsWith(QLatin1String("wayland"))) hiDpiEnabled = SDDM::mainConfig.Wayland.EnableHiDPI.get(); if (hiDpiEnabled) { qDebug() << "High-DPI autoscaling Enabled"; -- 2.16.1
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor