fix: actual proper fix for 471a3b1

This commit is contained in:
Gary Wang 2024-10-22 21:35:50 +08:00
parent 95f85374cf
commit 29355c7fc1
No known key found for this signature in database
GPG Key ID: 5D30A4F15EA78760
2 changed files with 13 additions and 16 deletions

View File

@ -20,12 +20,8 @@
int main(int argc, char *argv[])
{
QGuiApplication::setHighDpiScaleFactorRoundingPolicy(Settings::instance()->hiDpiScaleFactorBehavior());
QApplication a(argc, argv);
#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
a.setAttribute(Qt::ApplicationAttribute::AA_UseHighDpiPixmaps);
#endif
QCoreApplication::setApplicationName("Pineapple Pictures");
QCoreApplication::setApplicationVersion(PPIC_VERSION_STRING);
QTranslator translator;
QString qmDir;
@ -35,11 +31,16 @@ int main(int argc, char *argv[])
qmDir = QT_STRINGIFY(QM_FILE_INSTALL_DIR);
#endif
if (translator.load(QLocale(), QLatin1String("PineapplePictures"), QLatin1String("_"), qmDir)) {
a.installTranslator(&translator);
QCoreApplication::installTranslator(&translator);
}
a.setApplicationName("Pineapple Pictures");
a.setApplicationDisplayName(QCoreApplication::translate("main", "Pineapple Pictures"));
a.setApplicationVersion(PPIC_VERSION_STRING);
QGuiApplication::setApplicationDisplayName(QCoreApplication::translate("main", "Pineapple Pictures"));
QGuiApplication::setHighDpiScaleFactorRoundingPolicy(Settings::instance()->hiDpiScaleFactorBehavior());
QApplication a(argc, argv);
#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
a.setAttribute(Qt::ApplicationAttribute::AA_UseHighDpiPixmaps);
#endif
// commandline options
QCommandLineOption supportedImageFormats(QStringLiteral("supported-image-formats"), QCoreApplication::translate("main", "List supported image format suffixes, and quit program."));
@ -67,5 +68,5 @@ int main(int argc, char *argv[])
w.initWindowSize();
return a.exec();
return QApplication::exec();
}

View File

@ -6,7 +6,6 @@
#include <QApplication>
#include <QStandardPaths>
#include <QStringBuilder>
#include <QDebug>
#include <QDir>
#include <QMetaEnum>
@ -151,10 +150,7 @@ Settings::Settings()
if (configPath.isEmpty()) {
// Should be %LOCALAPPDATA%\<APPNAME> under Windows, ~/.config/<APPNAME> under Linux.
// Sadly <APPNAME> is unknown when Settings object is created (it's before the creation
// of QApplication), so we'll need to append the app name manually.
configPath = QStandardPaths::writableLocation(QStandardPaths::AppConfigLocation) %
QDir::separator() % QLatin1String("Pineapple Pictures");
configPath = QStandardPaths::writableLocation(QStandardPaths::AppConfigLocation);
}
m_qsettings = new QSettings(QDir(configPath).absoluteFilePath("config.ini"), QSettings::IniFormat, this);