From 6d70b7fa6a9cdf8ea59c7aa98f92249c5a4e0060 Mon Sep 17 00:00:00 2001 From: SulfurNitride Date: Wed, 18 Feb 2026 12:55:32 -0600 Subject: Fix fomod-plus image loading and settings file location on Linux Normalize Windows backslashes in fomod image paths so images like "fomod\MCM.png" resolve correctly on Linux. Move fomod-plus-settings.ini from QDir::currentPath() (home directory) to QStandardPaths::AppConfigLocation (Flatpak sandbox config dir). Co-Authored-By: Claude Opus 4.6 --- libs/installer_fomod_plus/installer/FomodInstallerWindow.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'libs/installer_fomod_plus/installer/FomodInstallerWindow.cpp') diff --git a/libs/installer_fomod_plus/installer/FomodInstallerWindow.cpp b/libs/installer_fomod_plus/installer/FomodInstallerWindow.cpp index e5f2e18..bd1c0bc 100644 --- a/libs/installer_fomod_plus/installer/FomodInstallerWindow.cpp +++ b/libs/installer_fomod_plus/installer/FomodInstallerWindow.cpp @@ -17,6 +17,7 @@ #include #include #include +#include #include #include #include @@ -93,8 +94,9 @@ void FomodInstallerWindow::closeEvent(QCloseEvent* event) void FomodInstallerWindow::saveGeometryAndState() const { - const auto cwd = QDir::currentPath(); - QSettings settings(cwd + "/fomod-plus-settings.ini", QSettings::IniFormat); + const auto configDir = QStandardPaths::writableLocation(QStandardPaths::AppConfigLocation); + QDir().mkpath(configDir); + QSettings settings(configDir + "/fomod-plus-settings.ini", QSettings::IniFormat); settings.setValue("windowGeometry", saveGeometry()); settings.setValue("centerSplitState", mCenterRow->saveState()); settings.setValue("leftSplitState", mLeftPane->saveState()); @@ -102,8 +104,8 @@ void FomodInstallerWindow::saveGeometryAndState() const void FomodInstallerWindow::restoreGeometryAndState() { - const auto cwd = QDir::currentPath(); - const QSettings settings(cwd + "/fomod-plus-settings.ini", QSettings::IniFormat); + const auto configDir = QStandardPaths::writableLocation(QStandardPaths::AppConfigLocation); + const QSettings settings(configDir + "/fomod-plus-settings.ini", QSettings::IniFormat); restoreGeometry(settings.value("windowGeometry").toByteArray()); mCenterRow->restoreState(settings.value("centerSplitState").toByteArray()); mLeftPane->restoreState(settings.value("leftSplitState").toByteArray()); -- cgit v1.3.1