chore: add miggrate qbytearray settings to qstring

Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
This commit is contained in:
Trial97 2025-05-21 00:31:41 +03:00
parent 7e174f53af
commit 89be378ef6
No known key found for this signature in database
GPG key ID: 55EF5DA53DB36318
13 changed files with 44 additions and 37 deletions

View file

@ -1662,8 +1662,8 @@ MainWindow* Application::showMainWindow(bool minimized)
m_mainWindow->activateWindow(); m_mainWindow->activateWindow();
} else { } else {
m_mainWindow = new MainWindow(); m_mainWindow = new MainWindow();
m_mainWindow->restoreState(QByteArray::fromBase64(APPLICATION->settings()->get("MainWindowState").toByteArray())); m_mainWindow->restoreState(QByteArray::fromBase64(APPLICATION->settings()->get("MainWindowState").toString().toUtf8()));
m_mainWindow->restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get("MainWindowGeometry").toByteArray())); m_mainWindow->restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get("MainWindowGeometry").toString().toUtf8()));
if (minimized) { if (minimized) {
m_mainWindow->showMinimized(); m_mainWindow->showMinimized();

View file

@ -590,7 +590,7 @@ void ResourceFolderModel::saveColumns(QTreeView* tree)
auto const settingName = QString("UI/%1_Page/Columns").arg(id()); auto const settingName = QString("UI/%1_Page/Columns").arg(id());
auto setting = m_instance->settings()->getSetting(settingName); auto setting = m_instance->settings()->getSetting(settingName);
setting->set(tree->header()->saveState().toBase64()); setting->set(QString::fromUtf8(tree->header()->saveState().toBase64()));
// neither passthrough nor override settings works for this usecase as I need to only set the global when the gate is false // neither passthrough nor override settings works for this usecase as I need to only set the global when the gate is false
auto settings = m_instance->settings(); auto settings = m_instance->settings();
@ -611,8 +611,8 @@ void ResourceFolderModel::loadColumns(QTreeView* tree)
{ {
auto const settingName = QString("UI/%1_Page/Columns").arg(id()); auto const settingName = QString("UI/%1_Page/Columns").arg(id());
auto setting = m_instance->settings()->getOrRegisterSetting(settingName, QByteArray{}); auto setting = m_instance->settings()->getOrRegisterSetting(settingName, "");
tree->header()->restoreState(QByteArray::fromBase64(setting->get().toByteArray())); tree->header()->restoreState(QByteArray::fromBase64(setting->get().toString().toUtf8()));
auto setVisible = [this, tree](QVariant value) { auto setVisible = [this, tree](QVariant value) {
auto visibility = value.toMap(); auto visibility = value.toMap();

View file

@ -152,7 +152,14 @@ bool parseOldFileFormat(QIODevice& device, QSettings::SettingsMap& map)
QVariant migrateQByteArrayToBase64(QString key, QVariant value) QVariant migrateQByteArrayToBase64(QString key, QVariant value)
{ {
if (key.startsWith("WideBarVisibility_") || (key.startsWith("UI/") && key.endsWith("_Page/Columns"))) { if (key.startsWith("WideBarVisibility_") || (key.startsWith("UI/") && key.endsWith("_Page/Columns"))) {
return value.toByteArray().toBase64(); return QString::fromUtf8(value.toByteArray().toBase64());
}
static const QStringList otherByteArrays = { "MainWindowState", "MainWindowGeometry", "ConsoleWindowState",
"ConsoleWindowGeometry", "PagedGeometry", "NewInstanceGeometry",
"ModDownloadGeometry", "RPDownloadGeometry", "TPDownloadGeometry",
"ShaderDownloadGeometry" };
if (otherByteArrays.contains(key)) {
return QString::fromUtf8(value.toByteArray());
} }
return value; return value;
} }

View file

@ -116,9 +116,9 @@ InstanceWindow::InstanceWindow(InstancePtr instance, QWidget* parent) : QMainWin
// restore window state // restore window state
{ {
auto base64State = APPLICATION->settings()->get("ConsoleWindowState").toByteArray(); auto base64State = APPLICATION->settings()->get("ConsoleWindowState").toString().toUtf8();
restoreState(QByteArray::fromBase64(base64State)); restoreState(QByteArray::fromBase64(base64State));
auto base64Geometry = APPLICATION->settings()->get("ConsoleWindowGeometry").toByteArray(); auto base64Geometry = APPLICATION->settings()->get("ConsoleWindowGeometry").toString().toUtf8();
restoreGeometry(QByteArray::fromBase64(base64Geometry)); restoreGeometry(QByteArray::fromBase64(base64Geometry));
} }
@ -190,8 +190,8 @@ void InstanceWindow::closeEvent(QCloseEvent* event)
return; return;
} }
APPLICATION->settings()->set("ConsoleWindowState", saveState().toBase64()); APPLICATION->settings()->set("ConsoleWindowState", QString::fromUtf8(saveState().toBase64()));
APPLICATION->settings()->set("ConsoleWindowGeometry", saveGeometry().toBase64()); APPLICATION->settings()->set("ConsoleWindowGeometry", QString::fromUtf8(saveGeometry().toBase64()));
emit isClosing(); emit isClosing();
event->accept(); event->accept();
} }

View file

@ -181,7 +181,7 @@ MainWindow::MainWindow(QWidget* parent) : QMainWindow(parent), ui(new Ui::MainWi
auto const setting_name = QString("WideBarVisibility_%1").arg(ui->instanceToolBar->objectName()); auto const setting_name = QString("WideBarVisibility_%1").arg(ui->instanceToolBar->objectName());
instanceToolbarSetting = APPLICATION->settings()->getOrRegisterSetting(setting_name); instanceToolbarSetting = APPLICATION->settings()->getOrRegisterSetting(setting_name);
ui->instanceToolBar->setVisibilityState(QByteArray::fromBase64(instanceToolbarSetting->get().toByteArray())); ui->instanceToolBar->setVisibilityState(QByteArray::fromBase64(instanceToolbarSetting->get().toString().toUtf8()));
ui->instanceToolBar->addContextMenuAction(ui->newsToolBar->toggleViewAction()); ui->instanceToolBar->addContextMenuAction(ui->newsToolBar->toggleViewAction());
ui->instanceToolBar->addContextMenuAction(ui->instanceToolBar->toggleViewAction()); ui->instanceToolBar->addContextMenuAction(ui->instanceToolBar->toggleViewAction());
@ -1296,7 +1296,7 @@ void MainWindow::globalSettingsClosed()
updateStatusCenter(); updateStatusCenter();
// This needs to be done to prevent UI elements disappearing in the event the config is changed // This needs to be done to prevent UI elements disappearing in the event the config is changed
// but Prism Launcher exits abnormally, causing the window state to never be saved: // but Prism Launcher exits abnormally, causing the window state to never be saved:
APPLICATION->settings()->set("MainWindowState", saveState().toBase64()); APPLICATION->settings()->set("MainWindowState", QString::fromUtf8(saveState().toBase64()));
update(); update();
} }
@ -1491,9 +1491,9 @@ void MainWindow::on_actionViewSelectedInstFolder_triggered()
void MainWindow::closeEvent(QCloseEvent* event) void MainWindow::closeEvent(QCloseEvent* event)
{ {
// Save the window state and geometry. // Save the window state and geometry.
APPLICATION->settings()->set("MainWindowState", saveState().toBase64()); APPLICATION->settings()->set("MainWindowState", QString::fromUtf8(saveState().toBase64()));
APPLICATION->settings()->set("MainWindowGeometry", saveGeometry().toBase64()); APPLICATION->settings()->set("MainWindowGeometry", QString::fromUtf8(saveGeometry().toBase64()));
instanceToolbarSetting->set(ui->instanceToolBar->getVisibilityState().toBase64()); instanceToolbarSetting->set(QString::fromUtf8(ui->instanceToolBar->getVisibilityState().toBase64()));
event->accept(); event->accept();
emit isClosing(); emit isClosing();
} }

View file

@ -134,7 +134,7 @@ NewInstanceDialog::NewInstanceDialog(const QString& initialGroup,
updateDialogState(); updateDialogState();
if (APPLICATION->settings()->get("NewInstanceGeometry").isValid()) { if (APPLICATION->settings()->get("NewInstanceGeometry").isValid()) {
restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get("NewInstanceGeometry").toByteArray())); restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get("NewInstanceGeometry").toString().toUtf8()));
} else { } else {
auto screen = parent->screen(); auto screen = parent->screen();
auto geometry = screen->availableSize(); auto geometry = screen->availableSize();
@ -146,7 +146,7 @@ NewInstanceDialog::NewInstanceDialog(const QString& initialGroup,
void NewInstanceDialog::reject() void NewInstanceDialog::reject()
{ {
APPLICATION->settings()->set("NewInstanceGeometry", saveGeometry().toBase64()); APPLICATION->settings()->set("NewInstanceGeometry", QString::fromUtf8(saveGeometry().toBase64()));
// This is just so that the pages get the close() call and can react to it, if needed. // This is just so that the pages get the close() call and can react to it, if needed.
m_container->prepareToClose(); m_container->prepareToClose();
@ -156,7 +156,7 @@ void NewInstanceDialog::reject()
void NewInstanceDialog::accept() void NewInstanceDialog::accept()
{ {
APPLICATION->settings()->set("NewInstanceGeometry", saveGeometry().toBase64()); APPLICATION->settings()->set("NewInstanceGeometry", QString::fromUtf8(saveGeometry().toBase64()));
importIconNow(); importIconNow();
// This is just so that the pages get the close() call and can react to it, if needed. // This is just so that the pages get the close() call and can react to it, if needed.
@ -316,7 +316,7 @@ void NewInstanceDialog::importIconNow()
InstIconKey = importIconName.mid(0, importIconName.lastIndexOf('.')); InstIconKey = importIconName.mid(0, importIconName.lastIndexOf('.'));
importIcon = false; importIcon = false;
} }
APPLICATION->settings()->set("NewInstanceGeometry", saveGeometry().toBase64()); APPLICATION->settings()->set("NewInstanceGeometry", QString::fromUtf8(saveGeometry().toBase64()));
} }
void NewInstanceDialog::selectedPageChanged(BasePage* previous, BasePage* selected) void NewInstanceDialog::selectedPageChanged(BasePage* previous, BasePage* selected)

View file

@ -84,7 +84,7 @@ ResourceDownloadDialog::ResourceDownloadDialog(QWidget* parent, const std::share
void ResourceDownloadDialog::accept() void ResourceDownloadDialog::accept()
{ {
if (!geometrySaveKey().isEmpty()) if (!geometrySaveKey().isEmpty())
APPLICATION->settings()->set(geometrySaveKey(), saveGeometry().toBase64()); APPLICATION->settings()->set(geometrySaveKey(), QString::fromUtf8(saveGeometry().toBase64()));
QDialog::accept(); QDialog::accept();
} }
@ -105,7 +105,7 @@ void ResourceDownloadDialog::reject()
} }
if (!geometrySaveKey().isEmpty()) if (!geometrySaveKey().isEmpty())
APPLICATION->settings()->set(geometrySaveKey(), saveGeometry().toBase64()); APPLICATION->settings()->set(geometrySaveKey(), QString::fromUtf8(saveGeometry().toBase64()));
QDialog::reject(); QDialog::reject();
} }
@ -275,7 +275,7 @@ ModDownloadDialog::ModDownloadDialog(QWidget* parent, const std::shared_ptr<ModF
connectButtons(); connectButtons();
if (!geometrySaveKey().isEmpty()) if (!geometrySaveKey().isEmpty())
restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get(geometrySaveKey()).toByteArray())); restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get(geometrySaveKey()).toString().toUtf8()));
} }
QList<BasePage*> ModDownloadDialog::getPages() QList<BasePage*> ModDownloadDialog::getPages()
@ -318,7 +318,7 @@ ResourcePackDownloadDialog::ResourcePackDownloadDialog(QWidget* parent,
connectButtons(); connectButtons();
if (!geometrySaveKey().isEmpty()) if (!geometrySaveKey().isEmpty())
restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get(geometrySaveKey()).toByteArray())); restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get(geometrySaveKey()).toString().toUtf8()));
} }
QList<BasePage*> ResourcePackDownloadDialog::getPages() QList<BasePage*> ResourcePackDownloadDialog::getPages()
@ -343,7 +343,7 @@ TexturePackDownloadDialog::TexturePackDownloadDialog(QWidget* parent,
connectButtons(); connectButtons();
if (!geometrySaveKey().isEmpty()) if (!geometrySaveKey().isEmpty())
restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get(geometrySaveKey()).toByteArray())); restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get(geometrySaveKey()).toString().toUtf8()));
} }
QList<BasePage*> TexturePackDownloadDialog::getPages() QList<BasePage*> TexturePackDownloadDialog::getPages()
@ -368,7 +368,7 @@ ShaderPackDownloadDialog::ShaderPackDownloadDialog(QWidget* parent,
connectButtons(); connectButtons();
if (!geometrySaveKey().isEmpty()) if (!geometrySaveKey().isEmpty())
restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get(geometrySaveKey()).toByteArray())); restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get(geometrySaveKey()).toString().toUtf8()));
} }
QList<BasePage*> ShaderPackDownloadDialog::getPages() QList<BasePage*> ShaderPackDownloadDialog::getPages()

View file

@ -53,7 +53,7 @@ PageDialog::PageDialog(BasePageProvider* pageProvider, QString defaultId, QWidge
connect(buttons->button(QDialogButtonBox::Cancel), &QPushButton::clicked, this, &PageDialog::reject); connect(buttons->button(QDialogButtonBox::Cancel), &QPushButton::clicked, this, &PageDialog::reject);
connect(buttons->button(QDialogButtonBox::Help), &QPushButton::clicked, m_container, &PageContainer::help); connect(buttons->button(QDialogButtonBox::Help), &QPushButton::clicked, m_container, &PageContainer::help);
restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get("PagedGeometry").toByteArray())); restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get("PagedGeometry").toString().toUtf8()));
} }
void PageDialog::accept() void PageDialog::accept()
@ -75,7 +75,7 @@ bool PageDialog::handleClose()
return false; return false;
qDebug() << "Paged dialog close approved"; qDebug() << "Paged dialog close approved";
APPLICATION->settings()->set("PagedGeometry", saveGeometry().toBase64()); APPLICATION->settings()->set("PagedGeometry", QString::fromUtf8(saveGeometry().toBase64()));
qDebug() << "Paged dialog geometry saved"; qDebug() << "Paged dialog geometry saved";
emit applied(); emit applied();

View file

@ -148,14 +148,14 @@ void ExternalResourcesPage::openedImpl()
auto const setting_name = QString("WideBarVisibility_%1").arg(id()); auto const setting_name = QString("WideBarVisibility_%1").arg(id());
m_wide_bar_setting = APPLICATION->settings()->getOrRegisterSetting(setting_name); m_wide_bar_setting = APPLICATION->settings()->getOrRegisterSetting(setting_name);
ui->actionsToolbar->setVisibilityState(QByteArray::fromBase64(m_wide_bar_setting->get().toByteArray())); ui->actionsToolbar->setVisibilityState(QByteArray::fromBase64(m_wide_bar_setting->get().toString().toUtf8()));
} }
void ExternalResourcesPage::closedImpl() void ExternalResourcesPage::closedImpl()
{ {
m_model->stopWatching(); m_model->stopWatching();
m_wide_bar_setting->set(ui->actionsToolbar->getVisibilityState().toBase64()); m_wide_bar_setting->set(QString::fromUtf8(ui->actionsToolbar->getVisibilityState().toBase64()));
} }
void ExternalResourcesPage::retranslate() void ExternalResourcesPage::retranslate()

View file

@ -562,12 +562,12 @@ void ScreenshotsPage::openedImpl()
auto const setting_name = QString("WideBarVisibility_%1").arg(id()); auto const setting_name = QString("WideBarVisibility_%1").arg(id());
m_wide_bar_setting = APPLICATION->settings()->getOrRegisterSetting(setting_name); m_wide_bar_setting = APPLICATION->settings()->getOrRegisterSetting(setting_name);
ui->toolBar->setVisibilityState(QByteArray::fromBase64(m_wide_bar_setting->get().toByteArray())); ui->toolBar->setVisibilityState(QByteArray::fromBase64(m_wide_bar_setting->get().toString().toUtf8()));
} }
void ScreenshotsPage::closedImpl() void ScreenshotsPage::closedImpl()
{ {
m_wide_bar_setting->set(ui->toolBar->getVisibilityState().toBase64()); m_wide_bar_setting->set(QString::fromUtf8(ui->toolBar->getVisibilityState().toBase64()));
} }
#include "ScreenshotsPage.moc" #include "ScreenshotsPage.moc"

View file

@ -705,7 +705,7 @@ void ServersPage::openedImpl()
auto const setting_name = QString("WideBarVisibility_%1").arg(id()); auto const setting_name = QString("WideBarVisibility_%1").arg(id());
m_wide_bar_setting = APPLICATION->settings()->getOrRegisterSetting(setting_name); m_wide_bar_setting = APPLICATION->settings()->getOrRegisterSetting(setting_name);
ui->toolBar->setVisibilityState(QByteArray::fromBase64(m_wide_bar_setting->get().toByteArray())); ui->toolBar->setVisibilityState(QByteArray::fromBase64(m_wide_bar_setting->get().toString().toUtf8()));
// ping servers // ping servers
m_model->queryServersStatus(); m_model->queryServersStatus();
@ -715,7 +715,7 @@ void ServersPage::closedImpl()
{ {
m_model->unobserve(); m_model->unobserve();
m_wide_bar_setting->set(ui->toolBar->getVisibilityState().toBase64()); m_wide_bar_setting->set(QString::fromUtf8(ui->toolBar->getVisibilityState().toBase64()));
} }
void ServersPage::on_actionAdd_triggered() void ServersPage::on_actionAdd_triggered()

View file

@ -126,11 +126,11 @@ void VersionPage::openedImpl()
auto const setting_name = QString("WideBarVisibility_%1").arg(id()); auto const setting_name = QString("WideBarVisibility_%1").arg(id());
m_wide_bar_setting = APPLICATION->settings()->getOrRegisterSetting(setting_name); m_wide_bar_setting = APPLICATION->settings()->getOrRegisterSetting(setting_name);
ui->toolBar->setVisibilityState(QByteArray::fromBase64(m_wide_bar_setting->get().toByteArray())); ui->toolBar->setVisibilityState(QByteArray::fromBase64(m_wide_bar_setting->get().toString().toUtf8()));
} }
void VersionPage::closedImpl() void VersionPage::closedImpl()
{ {
m_wide_bar_setting->set(ui->toolBar->getVisibilityState().toBase64()); m_wide_bar_setting->set(QString::fromUtf8(ui->toolBar->getVisibilityState().toBase64()));
} }
QMenu* VersionPage::createPopupMenu() QMenu* VersionPage::createPopupMenu()

View file

@ -121,14 +121,14 @@ void WorldListPage::openedImpl()
auto const setting_name = QString("WideBarVisibility_%1").arg(id()); auto const setting_name = QString("WideBarVisibility_%1").arg(id());
m_wide_bar_setting = APPLICATION->settings()->getOrRegisterSetting(setting_name); m_wide_bar_setting = APPLICATION->settings()->getOrRegisterSetting(setting_name);
ui->toolBar->setVisibilityState(QByteArray::fromBase64(m_wide_bar_setting->get().toByteArray())); ui->toolBar->setVisibilityState(QByteArray::fromBase64(m_wide_bar_setting->get().toString().toUtf8()));
} }
void WorldListPage::closedImpl() void WorldListPage::closedImpl()
{ {
m_worlds->stopWatching(); m_worlds->stopWatching();
m_wide_bar_setting->set(ui->toolBar->getVisibilityState().toBase64()); m_wide_bar_setting->set(QString::fromUtf8(ui->toolBar->getVisibilityState().toBase64()));
} }
WorldListPage::~WorldListPage() WorldListPage::~WorldListPage()