diff --git a/src/style_manager/view/PropertyStackView.js b/src/style_manager/view/PropertyStackView.js index e642c5474..7258d7fb2 100644 --- a/src/style_manager/view/PropertyStackView.js +++ b/src/style_manager/view/PropertyStackView.js @@ -124,7 +124,10 @@ export default PropertyCompositeView.extend({ const style = target ? target.getStyle() : {}; layersObj = layers.getLayersFromStyle(style); } else { - let value = this.getTargetValue(); + let value = this.getTargetValue({ ignoreDefault: 1 }); + + if (!value) value = this.getComputedValue(); + value = value == model.getDefaultValue() ? '' : value; layersObj = layers.getLayersFromValue(value); } @@ -153,7 +156,11 @@ export default PropertyCompositeView.extend({ const values = self.getLayers().getPropertyValues(subProp); view.updateTargetStyle(values, null, opt); } else { - model.set('value', model.getFullValue(), opt); + // Update only if there is an actual update (to avoid changes for computed styles) + // ps: status is calculated in `targetUpdated` method + if (model.get('status') == 'updated') { + model.set('value', model.getFullValue(), opt); + } } } }; diff --git a/src/style_manager/view/PropertyView.js b/src/style_manager/view/PropertyView.js index d818dd0c4..d2eed39da 100644 --- a/src/style_manager/view/PropertyView.js +++ b/src/style_manager/view/PropertyView.js @@ -249,6 +249,16 @@ export default Backbone.View.extend({ status = ''; } + if (property == 'box-shadow' || property == 'transition') { + console.log({ + property, + status, + targetValue, + computedValue, + defaultValue + }); + } + model.setValue(value, 0, { fromTarget: 1 }); this.setStatus(status); @@ -328,7 +338,7 @@ export default Backbone.View.extend({ const notToSkip = avoid.indexOf(property) < 0; const value = computed[property]; const valueDef = computedDef[camelCase(property)]; - return computed && notToSkip && valueDef !== value && value; + return (computed && notToSkip && valueDef !== value && value) || ''; }, /**