aboutsummaryrefslogtreecommitdiff
path: root/application
diff options
context:
space:
mode:
Diffstat (limited to 'application')
-rw-r--r--application/main.cpp18
-rw-r--r--application/pages/modplatform/flame/FlameModel.cpp5
2 files changed, 20 insertions, 3 deletions
diff --git a/application/main.cpp b/application/main.cpp
index b0360c7e..e29f3453 100644
--- a/application/main.cpp
+++ b/application/main.cpp
@@ -4,6 +4,10 @@
#include <InstanceList.h>
#include <QDebug>
+#ifdef Q_OS_WIN
+ #include<windows.h>
+#endif
+
// #define BREAK_INFINITE_LOOP
// #define BREAK_EXCEPTION
// #define BREAK_RETURN
@@ -29,7 +33,19 @@ int main(int argc, char *argv[])
#endif
#if (QT_VERSION >= QT_VERSION_CHECK(5, 6, 0))
- QApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
+ #ifdef Q_OS_WIN
+ BOOL (__stdcall *pFn)(void);
+ HINSTANCE hInstance=LoadLibrary("user32.dll");
+ if(hInstance) {
+ pFn = (BOOL (__stdcall*)(void))GetProcAddress(hInstance, "SetProcessDPIAware");
+ if(pFn)
+ pFn();
+ FreeLibrary(hInstance);
+ }
+ QApplication::setAttribute(Qt::AA_DisableHighDpiScaling);
+ #else
+ QApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
+ #endif
QGuiApplication::setAttribute(Qt::AA_UseHighDpiPixmaps);
#endif
diff --git a/application/pages/modplatform/flame/FlameModel.cpp b/application/pages/modplatform/flame/FlameModel.cpp
index cd3109e0..6d9dbda7 100644
--- a/application/pages/modplatform/flame/FlameModel.cpp
+++ b/application/pages/modplatform/flame/FlameModel.cpp
@@ -263,11 +263,12 @@ void Flame::ListModel::searchRequestFinished()
}
pack.latestFile.addonId = pack.addonId;
pack.latestFile.fileId = id;
- // FIXME: what to do when there's more than one, or there's no version?
auto versionArray = file.value("gameVersion").toArray();
- if(versionArray.size() != 1) {
+ if(versionArray.size() < 1) {
continue;
}
+
+ // pick the latest version supported
pack.latestFile.mcVersion = versionArray[0].toString();
pack.latestFile.version = file.value("displayName").toString();
pack.latestFile.downloadUrl = file.value("downloadUrl").toString();