From b949a19808a84b02f91d93d736fe5b7f374d1cf3 Mon Sep 17 00:00:00 2001 From: Jon Beniston Date: Thu, 1 Jul 2021 16:07:25 +0100 Subject: [PATCH] Save settings in base64 for linux compatibility --- sdrgui/mainwindow.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/sdrgui/mainwindow.cpp b/sdrgui/mainwindow.cpp index 60f57d1cc..61b8b59ed 100644 --- a/sdrgui/mainwindow.cpp +++ b/sdrgui/mainwindow.cpp @@ -271,8 +271,8 @@ MainWindow::MainWindow(qtwebapp::LoggerWithFile *logger, const MainParser& parse // Restore window size and position QSettings s; - restoreGeometry(s.value("mainWindowGeometry").toByteArray()); - restoreState(s.value("mainWindowState").toByteArray()); + restoreGeometry(qUncompress(QByteArray::fromBase64(s.value("mainWindowGeometry").toByteArray()))); + restoreState(qUncompress(QByteArray::fromBase64(s.value("mainWindowState").toByteArray()))); qDebug() << "MainWindow::MainWindow: end"; } @@ -856,9 +856,10 @@ void MainWindow::closeEvent(QCloseEvent *closeEvent) qDebug("MainWindow::closeEvent"); // Save window size and position + // Need to use base64, as it seems binary values aren't saved on Linux QSettings s; - s.setValue("mainWindowGeometry", saveGeometry()); - s.setValue("mainWindowState", saveState()); + s.setValue("mainWindowGeometry", qCompress(saveGeometry()).toBase64()); + s.setValue("mainWindowState", qCompress(saveState()).toBase64()); savePresetSettings(m_mainCore->m_settings.getWorkingPreset(), 0); saveFeatureSetPresetSettings(m_mainCore->m_settings.getWorkingFeatureSetPreset(), 0);