diff --git a/src/wirecloud/platform/static/js/wirecloud/Preferences.js b/src/wirecloud/platform/static/js/wirecloud/Preferences.js index 8e3236ef3..8a3a2e910 100644 --- a/src/wirecloud/platform/static/js/wirecloud/Preferences.js +++ b/src/wirecloud/platform/static/js/wirecloud/Preferences.js @@ -92,8 +92,11 @@ const changes = utils.clone(newValues[name]); let changed = false; + let isInheriting = preference.inherit; + if ('inherit' in changes) { if (preference.inherit !== changes.inherit) { + isInheriting = changes.inherit; changed = persist = true; } else { delete changes.inherit; @@ -101,7 +104,7 @@ } if ('value' in changes) { - if (preference.value !== changes.value) { + if (preference.value !== changes.value || (!isInheriting && changed)) { changed = persist = true; changes.value = Wirecloud.ui.InputInterfaceFactory.stringify(preference.meta.options.type, changes.value); } else {