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();
} else {
m_mainWindow = new MainWindow();
m_mainWindow->restoreState(QByteArray::fromBase64(APPLICATION->settings()->get("MainWindowState").toByteArray()));
m_mainWindow->restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get("MainWindowGeometry").toByteArray()));
m_mainWindow->restoreState(QByteArray::fromBase64(APPLICATION->settings()->get("MainWindowState").toString().toUtf8()));
m_mainWindow->restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get("MainWindowGeometry").toString().toUtf8()));
if (minimized) {
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 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
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 setting = m_instance->settings()->getOrRegisterSetting(settingName, QByteArray{});
tree->header()->restoreState(QByteArray::fromBase64(setting->get().toByteArray()));
auto setting = m_instance->settings()->getOrRegisterSetting(settingName, "");
tree->header()->restoreState(QByteArray::fromBase64(setting->get().toString().toUtf8()));
auto setVisible = [this, tree](QVariant value) {
auto visibility = value.toMap();

View file

@ -152,7 +152,14 @@ bool parseOldFileFormat(QIODevice& device, QSettings::SettingsMap& map)
QVariant migrateQByteArrayToBase64(QString key, QVariant value)
{
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;
}

View file

@ -116,9 +116,9 @@ InstanceWindow::InstanceWindow(InstancePtr instance, QWidget* parent) : QMainWin
// restore window state
{
auto base64State = APPLICATION->settings()->get("ConsoleWindowState").toByteArray();
auto base64State = APPLICATION->settings()->get("ConsoleWindowState").toString().toUtf8();
restoreState(QByteArray::fromBase64(base64State));
auto base64Geometry = APPLICATION->settings()->get("ConsoleWindowGeometry").toByteArray();
auto base64Geometry = APPLICATION->settings()->get("ConsoleWindowGeometry").toString().toUtf8();
restoreGeometry(QByteArray::fromBase64(base64Geometry));
}
@ -190,8 +190,8 @@ void InstanceWindow::closeEvent(QCloseEvent* event)
return;
}
APPLICATION->settings()->set("ConsoleWindowState", saveState().toBase64());
APPLICATION->settings()->set("ConsoleWindowGeometry", saveGeometry().toBase64());
APPLICATION->settings()->set("ConsoleWindowState", QString::fromUtf8(saveState().toBase64()));
APPLICATION->settings()->set("ConsoleWindowGeometry", QString::fromUtf8(saveGeometry().toBase64()));
emit isClosing();
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());
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->instanceToolBar->toggleViewAction());
@ -1296,7 +1296,7 @@ void MainWindow::globalSettingsClosed()
updateStatusCenter();
// 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:
APPLICATION->settings()->set("MainWindowState", saveState().toBase64());
APPLICATION->settings()->set("MainWindowState", QString::fromUtf8(saveState().toBase64()));
update();
}
@ -1491,9 +1491,9 @@ void MainWindow::on_actionViewSelectedInstFolder_triggered()
void MainWindow::closeEvent(QCloseEvent* event)
{
// Save the window state and geometry.
APPLICATION->settings()->set("MainWindowState", saveState().toBase64());
APPLICATION->settings()->set("MainWindowGeometry", saveGeometry().toBase64());
instanceToolbarSetting->set(ui->instanceToolBar->getVisibilityState().toBase64());
APPLICATION->settings()->set("MainWindowState", QString::fromUtf8(saveState().toBase64()));
APPLICATION->settings()->set("MainWindowGeometry", QString::fromUtf8(saveGeometry().toBase64()));
instanceToolbarSetting->set(QString::fromUtf8(ui->instanceToolBar->getVisibilityState().toBase64()));
event->accept();
emit isClosing();
}

View file

@ -134,7 +134,7 @@ NewInstanceDialog::NewInstanceDialog(const QString& initialGroup,
updateDialogState();
if (APPLICATION->settings()->get("NewInstanceGeometry").isValid()) {
restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get("NewInstanceGeometry").toByteArray()));
restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get("NewInstanceGeometry").toString().toUtf8()));
} else {
auto screen = parent->screen();
auto geometry = screen->availableSize();
@ -146,7 +146,7 @@ NewInstanceDialog::NewInstanceDialog(const QString& initialGroup,
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.
m_container->prepareToClose();
@ -156,7 +156,7 @@ void NewInstanceDialog::reject()
void NewInstanceDialog::accept()
{
APPLICATION->settings()->set("NewInstanceGeometry", saveGeometry().toBase64());
APPLICATION->settings()->set("NewInstanceGeometry", QString::fromUtf8(saveGeometry().toBase64()));
importIconNow();
// 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('.'));
importIcon = false;
}
APPLICATION->settings()->set("NewInstanceGeometry", saveGeometry().toBase64());
APPLICATION->settings()->set("NewInstanceGeometry", QString::fromUtf8(saveGeometry().toBase64()));
}
void NewInstanceDialog::selectedPageChanged(BasePage* previous, BasePage* selected)

View file

@ -84,7 +84,7 @@ ResourceDownloadDialog::ResourceDownloadDialog(QWidget* parent, const std::share
void ResourceDownloadDialog::accept()
{
if (!geometrySaveKey().isEmpty())
APPLICATION->settings()->set(geometrySaveKey(), saveGeometry().toBase64());
APPLICATION->settings()->set(geometrySaveKey(), QString::fromUtf8(saveGeometry().toBase64()));
QDialog::accept();
}
@ -105,7 +105,7 @@ void ResourceDownloadDialog::reject()
}
if (!geometrySaveKey().isEmpty())
APPLICATION->settings()->set(geometrySaveKey(), saveGeometry().toBase64());
APPLICATION->settings()->set(geometrySaveKey(), QString::fromUtf8(saveGeometry().toBase64()));
QDialog::reject();
}
@ -275,7 +275,7 @@ ModDownloadDialog::ModDownloadDialog(QWidget* parent, const std::shared_ptr<ModF
connectButtons();
if (!geometrySaveKey().isEmpty())
restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get(geometrySaveKey()).toByteArray()));
restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get(geometrySaveKey()).toString().toUtf8()));
}
QList<BasePage*> ModDownloadDialog::getPages()
@ -318,7 +318,7 @@ ResourcePackDownloadDialog::ResourcePackDownloadDialog(QWidget* parent,
connectButtons();
if (!geometrySaveKey().isEmpty())
restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get(geometrySaveKey()).toByteArray()));
restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get(geometrySaveKey()).toString().toUtf8()));
}
QList<BasePage*> ResourcePackDownloadDialog::getPages()
@ -343,7 +343,7 @@ TexturePackDownloadDialog::TexturePackDownloadDialog(QWidget* parent,
connectButtons();
if (!geometrySaveKey().isEmpty())
restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get(geometrySaveKey()).toByteArray()));
restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get(geometrySaveKey()).toString().toUtf8()));
}
QList<BasePage*> TexturePackDownloadDialog::getPages()
@ -368,7 +368,7 @@ ShaderPackDownloadDialog::ShaderPackDownloadDialog(QWidget* parent,
connectButtons();
if (!geometrySaveKey().isEmpty())
restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get(geometrySaveKey()).toByteArray()));
restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get(geometrySaveKey()).toString().toUtf8()));
}
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::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()
@ -75,7 +75,7 @@ bool PageDialog::handleClose()
return false;
qDebug() << "Paged dialog close approved";
APPLICATION->settings()->set("PagedGeometry", saveGeometry().toBase64());
APPLICATION->settings()->set("PagedGeometry", QString::fromUtf8(saveGeometry().toBase64()));
qDebug() << "Paged dialog geometry saved";
emit applied();

View file

@ -148,14 +148,14 @@ void ExternalResourcesPage::openedImpl()
auto const setting_name = QString("WideBarVisibility_%1").arg(id());
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()
{
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()

View file

@ -562,12 +562,12 @@ void ScreenshotsPage::openedImpl()
auto const setting_name = QString("WideBarVisibility_%1").arg(id());
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()
{
m_wide_bar_setting->set(ui->toolBar->getVisibilityState().toBase64());
m_wide_bar_setting->set(QString::fromUtf8(ui->toolBar->getVisibilityState().toBase64()));
}
#include "ScreenshotsPage.moc"

View file

@ -705,7 +705,7 @@ void ServersPage::openedImpl()
auto const setting_name = QString("WideBarVisibility_%1").arg(id());
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
m_model->queryServersStatus();
@ -715,7 +715,7 @@ void ServersPage::closedImpl()
{
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()

View file

@ -126,11 +126,11 @@ void VersionPage::openedImpl()
auto const setting_name = QString("WideBarVisibility_%1").arg(id());
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()
{
m_wide_bar_setting->set(ui->toolBar->getVisibilityState().toBase64());
m_wide_bar_setting->set(QString::fromUtf8(ui->toolBar->getVisibilityState().toBase64()));
}
QMenu* VersionPage::createPopupMenu()

View file

@ -121,14 +121,14 @@ void WorldListPage::openedImpl()
auto const setting_name = QString("WideBarVisibility_%1").arg(id());
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()
{
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()