[Backport release-10.x] NewsDialog: Save and restore geometry (#5080)

This commit is contained in:
Alexandru Ionut Tripon 2026-02-21 22:42:42 +02:00 committed by GitHub
commit c2bfe0dae8
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 12 additions and 0 deletions

View file

@ -815,6 +815,8 @@ Application::Application(int& argc, char** argv) : QApplication(argc, argv)
m_settings->registerSetting("UpdateDialogGeometry", "");
m_settings->registerSetting("NewsGeometry", "");
m_settings->registerSetting("ModDownloadGeometry", "");
m_settings->registerSetting("RPDownloadGeometry", "");
m_settings->registerSetting("TPDownloadGeometry", "");

View file

@ -1,4 +1,8 @@
#include "NewsDialog.h"
#include "Application.h"
#include "settings/SettingsObject.h"
#include "ui_NewsDialog.h"
NewsDialog::NewsDialog(QList<NewsEntryPtr> entries, QWidget* parent) : QDialog(parent), ui(new Ui::NewsDialog())
@ -23,6 +27,12 @@ NewsDialog::NewsDialog(QList<NewsEntryPtr> entries, QWidget* parent) : QDialog(p
ui->currentArticleContentBrowser->setText(article_entry->content);
ui->currentArticleContentBrowser->flush();
connect(this, &QDialog::finished, this, [this] {
APPLICATION->settings()->set("NewsGeometry", QString::fromUtf8(saveGeometry().toBase64()));
});
const QByteArray base64Geometry = APPLICATION->settings()->get("NewsGeometry").toString().toUtf8();
restoreGeometry(QByteArray::fromBase64(base64Geometry));
}
NewsDialog::~NewsDialog()