From 3c95de968337f79319cf7eb4f27c9e4891439798 Mon Sep 17 00:00:00 2001 From: Artur Arseniev Date: Mon, 10 Sep 2018 08:21:13 +0200 Subject: [PATCH] Clear cached stuff in property view --- src/style_manager/view/PropertyCompositeView.js | 7 +++++++ src/style_manager/view/PropertyFileView.js | 6 ++++++ src/style_manager/view/PropertySliderView.js | 5 +++++ src/style_manager/view/PropertyView.js | 7 +++++++ 4 files changed, 25 insertions(+) diff --git a/src/style_manager/view/PropertyCompositeView.js b/src/style_manager/view/PropertyCompositeView.js index c05b5a7d9..a1192a505 100644 --- a/src/style_manager/view/PropertyCompositeView.js +++ b/src/style_manager/view/PropertyCompositeView.js @@ -123,5 +123,12 @@ module.exports = PropertyView.extend({ } return value; + }, + + clearCached() { + PropertyView.prototype.clearCached.apply(this, arguments); + this.$input = null; + this.props = null; + this.$props = null; } }); diff --git a/src/style_manager/view/PropertyFileView.js b/src/style_manager/view/PropertyFileView.js index ee3379fdf..d645e2ed5 100644 --- a/src/style_manager/view/PropertyFileView.js +++ b/src/style_manager/view/PropertyFileView.js @@ -51,6 +51,12 @@ module.exports = PropertyView.extend({ this.setValue(this.componentValue, 0); }, + clearCached() { + PropertyView.prototype.clearCached.apply(this, arguments); + this.$preview = null; + this.$previewBox = null; + }, + setValue(value, f) { PropertyView.prototype.setValue.apply(this, arguments); this.setPreviewView(value && value != this.model.getDefaultValue()); diff --git a/src/style_manager/view/PropertySliderView.js b/src/style_manager/view/PropertySliderView.js index c3a58d499..e43bd3312 100644 --- a/src/style_manager/view/PropertySliderView.js +++ b/src/style_manager/view/PropertySliderView.js @@ -56,5 +56,10 @@ module.exports = Property.extend({ if (!this.model.get('showInput')) { this.inputInst.el.style.display = 'none'; } + }, + + clearCached() { + Property.prototype.clearCached.apply(this, arguments); + this.slider = null; } }); diff --git a/src/style_manager/view/PropertyView.js b/src/style_manager/view/PropertyView.js index ed2f4c34d..de0f97d63 100644 --- a/src/style_manager/view/PropertyView.js +++ b/src/style_manager/view/PropertyView.js @@ -473,7 +473,14 @@ module.exports = Backbone.View.extend({ this.setValue(''); }, + clearCached() { + this.clearEl = null; + this.input = null; + this.$input = null; + }, + render() { + this.clearCached(); const pfx = this.pfx; const model = this.model; const el = this.el;