From: Shane Synan Date: Mon, 16 Jul 2018 21:47:29 +0000 (-0500) Subject: client: Fix lost unsaved highlights on Import X-Git-Tag: 0.13-rc1~10 X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=commitdiff_plain;h=cefad53d40b08c4271a2150533b747c3ca64b735 client: Fix lost unsaved highlights on Import Save highlights before importing if changes exist to avoid losing any unsaved rules when loading the highlight rule list from the client. Test case: 1. Have at least 1 local highlight rule 2. Add remote highlight rule, don't save 3. Import local highlights 4. Unsaved highlight rule gets deleted --- diff --git a/src/qtui/settingspages/corehighlightsettingspage.cpp b/src/qtui/settingspages/corehighlightsettingspage.cpp index cafe98f7..9d2f155b 100644 --- a/src/qtui/settingspages/corehighlightsettingspage.cpp +++ b/src/qtui/settingspages/corehighlightsettingspage.cpp @@ -738,6 +738,11 @@ void CoreHighlightSettingsPage::importRules() return; } + if (hasChanged()) { + // Save existing changes first to avoid overwriting them + save(); + } + auto clonedManager = HighlightRuleManager(); clonedManager.fromVariantMap(Client::highlightRuleManager()->toVariantMap());