From 24f74394e118fb5a781c4046ca71698d9aa26668 Mon Sep 17 00:00:00 2001 From: Martin Rotter Date: Wed, 22 May 2024 08:54:21 +0200 Subject: [PATCH] fix #1408 --- src/librssguard/gui/settings/settingsgui.cpp | 4 +++- src/librssguard/miscellaneous/skinfactory.cpp | 6 +++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/librssguard/gui/settings/settingsgui.cpp b/src/librssguard/gui/settings/settingsgui.cpp index b719cf2f9..dbc6b2a30 100644 --- a/src/librssguard/gui/settings/settingsgui.cpp +++ b/src/librssguard/gui/settings/settingsgui.cpp @@ -220,7 +220,9 @@ void SettingsGui::loadSettings() { m_ui->m_cmbStyles->addItem(style_name, style_name); } - int item_style = m_ui->m_cmbStyles->findData(qApp->skins()->currentStyle()); + int item_style = m_ui->m_cmbStyles->findData(qApp->skins()->currentStyle(), + Qt::ItemDataRole::UserRole, + Qt::MatchFlag::MatchFixedString); if (item_style >= 0) { m_ui->m_cmbStyles->setCurrentIndex(item_style); diff --git a/src/librssguard/miscellaneous/skinfactory.cpp b/src/librssguard/miscellaneous/skinfactory.cpp index 91b4f38e1..9348dec84 100644 --- a/src/librssguard/miscellaneous/skinfactory.cpp +++ b/src/librssguard/miscellaneous/skinfactory.cpp @@ -153,6 +153,7 @@ void SkinFactory::loadSkinFromData(const Skin& skin) { for (const QString& skin_forced_style : skin.m_forcedStyles) { if (qApp->setStyle(skin_forced_style) != nullptr) { + m_currentStyle = skin_forced_style; break; } } @@ -160,19 +161,18 @@ void SkinFactory::loadSkinFromData(const Skin& skin) { else { qDebugNN << LOGSEC_GUI << "Setting style:" << QUOTE_W_SPACE_DOT(style_name); qApp->setStyle(style_name); + m_currentStyle = style_name; } } else { m_styleIsFrozen = true; + m_currentStyle = qApp->style()->objectName(); qWarningNN << LOGSEC_GUI << "Respecting forced style(s):\n" << " QT_STYLE_OVERRIDE: " QUOTE_NO_SPACE(env_forced_style) << "\n" << " CLI (-style): " QUOTE_NO_SPACE(cli_forced_style); } - // NOTE: We can do this because in Qt source code - // they specifically set object name to style name. - m_currentStyle = qApp->style()->objectName(); m_useSkinColors = skin.m_forcedSkinColors || qApp->settings()->value(GROUP(GUI), SETTING(GUI::ForcedSkinColors)).toBool();