LanguageClient: Fix settings loading

Amends de247bff2b

Change-Id: Iab31da31058247a20451eeb2427152caab02c594
Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
David Schulz
2023-08-17 13:34:38 +02:00
parent 397cd1ba3d
commit 8761b7c20c

View File

@@ -120,16 +120,15 @@ public:
applyCurrentSettings(); applyCurrentSettings();
LanguageClientManager::applySettings(); LanguageClientManager::applySettings();
for (BaseSettings *setting : m_model.removed()) { for (BaseSettings *setting : m_settings.removed()) {
for (Client *client : LanguageClientManager::clientsForSetting(setting)) for (Client *client : LanguageClientManager::clientsForSetting(setting))
LanguageClientManager::shutdownClient(client); LanguageClientManager::shutdownClient(client);
} }
int row = currentRow(); int row = currentRow();
m_model.reset(LanguageClientManager::currentSettings()); m_settings.reset(LanguageClientManager::currentSettings());
resetCurrentSettings(row); resetCurrentSettings(row);
} }
void finish() void finish()
{ {
m_settings.reset(LanguageClientManager::currentSettings()); m_settings.reset(LanguageClientManager::currentSettings());
@@ -148,7 +147,6 @@ private:
LanguageClientSettingsModel &m_settings; LanguageClientSettingsModel &m_settings;
QSet<QString> &m_changedSettings; QSet<QString> &m_changedSettings;
LanguageClientSettingsModel m_model;
}; };
QMap<Utils::Id, ClientType> &clientTypes() QMap<Utils::Id, ClientType> &clientTypes()
@@ -302,8 +300,6 @@ LanguageClientSettingsPage::LanguageClientSettingsPage()
void LanguageClientSettingsPage::init() void LanguageClientSettingsPage::init()
{ {
m_model.reset(LanguageClientSettings::fromSettings(Core::ICore::settings())); m_model.reset(LanguageClientSettings::fromSettings(Core::ICore::settings()));
apply();
finish();
} }
QList<BaseSettings *> LanguageClientSettingsPage::settings() const QList<BaseSettings *> LanguageClientSettingsPage::settings() const
@@ -603,6 +599,7 @@ static LanguageClientSettingsPage &settingsPage()
void LanguageClientSettings::init() void LanguageClientSettings::init()
{ {
settingsPage().init(); settingsPage().init();
LanguageClientManager::applySettings();
} }
QList<BaseSettings *> LanguageClientSettings::fromSettings(QSettings *settingsIn) QList<BaseSettings *> LanguageClientSettings::fromSettings(QSettings *settingsIn)