From d7ef2f816cd97fce263e3f42a84a1155a41eedc0 Mon Sep 17 00:00:00 2001 From: Marcus Tillmanns Date: Tue, 26 Sep 2023 07:25:25 +0200 Subject: [PATCH] CompilerExplorer: Fix saving Change-Id: I7f6770170c76d636fa2d3631d9ff462da9e227bd Reviewed-by: Reviewed-by: David Schulz --- .../compilerexplorer/compilerexplorereditor.cpp | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/plugins/compilerexplorer/compilerexplorereditor.cpp b/src/plugins/compilerexplorer/compilerexplorereditor.cpp index 719b61299fc..b02b3585ace 100644 --- a/src/plugins/compilerexplorer/compilerexplorereditor.cpp +++ b/src/plugins/compilerexplorer/compilerexplorereditor.cpp @@ -107,8 +107,11 @@ JsonSettingsDocument::JsonSettingsDocument(QUndoStack *undoStack) { setId(Constants::CE_EDITOR_ID); setMimeType("application/compiler-explorer"); - connect(&m_ceSettings, &CompilerExplorerSettings::changed, this, [this] { emit changed(); }); - m_ceSettings.setAutoApply(true); + connect(&m_ceSettings, &CompilerExplorerSettings::changed, this, [this] { + emit changed(); + emit contentsChanged(); + }); + m_ceSettings.setAutoApply(false); m_ceSettings.setUndoStack(undoStack); } @@ -157,8 +160,10 @@ bool JsonSettingsDocument::saveImpl(QString *errorString, const FilePath &newFil Utils::FilePath path = newFilePath.isEmpty() ? filePath() : newFilePath; - if (!newFilePath.isEmpty() && !autoSave) + if (!newFilePath.isEmpty() && !autoSave) { + setPreferredDisplayName({}); setFilePath(newFilePath); + } auto result = path.writeFileContents(jsonFromStore(store)); if (!result && errorString) { @@ -182,6 +187,8 @@ bool JsonSettingsDocument::setContents(const QByteArray &contents) m_ceSettings.fromMap(*result); emit settingsChanged(); + emit changed(); + emit contentsChanged(); return true; }