diff options
| author | Olivier Dony <odo@openerp.com> | 2017-06-01 01:46:13 +0200 |
|---|---|---|
| committer | Olivier Dony <odo@openerp.com> | 2017-06-01 01:46:13 +0200 |
| commit | 5d2869cbc812f716e3115b5efb9bd1c3082f47b7 (patch) | |
| tree | 364844fc326f0d095997120d10d83e67fdf341e9 /addons/web/static/src/js/views/basic/basic_renderer.js | |
| parent | 04111cae39e36015d3c8494f52b110ab5ab6ad80 (diff) | |
| parent | ba15df47cb25625cb0921cba554aa0879048c90a (diff) | |
[MERGE] Forward-port saas-16 up to ba15df47cb25625cb0921cba554aa0879048c90a
Diffstat (limited to 'addons/web/static/src/js/views/basic/basic_renderer.js')
| -rw-r--r-- | addons/web/static/src/js/views/basic/basic_renderer.js | 24 |
1 files changed, 3 insertions, 21 deletions
diff --git a/addons/web/static/src/js/views/basic/basic_renderer.js b/addons/web/static/src/js/views/basic/basic_renderer.js index 907ea7ddc07..8bbf9ae45a4 100644 --- a/addons/web/static/src/js/views/basic/basic_renderer.js +++ b/addons/web/static/src/js/views/basic/basic_renderer.js @@ -91,7 +91,7 @@ var BasicRenderer = AbstractRenderer.extend({ var record = state.id === id ? state : _.findWhere(state.data, {id: id}); if (!record) { - return this._render(); + return this._render().then(_.constant([])); } var defs = []; @@ -269,22 +269,6 @@ var BasicRenderer = AbstractRenderer.extend({ return widget.isValid() && (widget.isSet() || !modifiers.required); }, /** - * Updates the modifiers evaluation associated to a given modifiers data and - * a given record. This only updates the modifiers values. To see associated - * DOM updates: @see _updateAllModifiers @see _applyModifiers. - * - * @private - * @param {Object} modifiersData - * @param {Object} record - */ - _computeModifiers: function (modifiersData, record) { - var evalContext = record.evalContext; - modifiersData.evaluatedModifiers[record.id] - = _.mapObject(modifiersData.modifiers, function (modifier) { - return new Domain(modifier, evalContext).compute(evalContext); - }); - }, - /** * Destroys a given widget associated to the given record and removes it * from internal referencing. * @@ -342,7 +326,6 @@ var BasicRenderer = AbstractRenderer.extend({ * record. This allows nodes that will produce an AbstractField instance * to have their modifiers registered before this field creation as we * need the readonly modifier to be able to instantiate the AbstractField. - * (@see _computeModifiers). * * - On additional registrations, if the node was already registered but the * record is different, we evaluate the modifiers for this record and @@ -399,7 +382,7 @@ var BasicRenderer = AbstractRenderer.extend({ // Evaluate if necessary if (!modifiersData.evaluatedModifiers[record.id]) { - this._computeModifiers(modifiersData, record); + modifiersData.evaluatedModifiers[record.id] = record.evalModifiers(modifiersData.modifiers); } // Element might not be given yet (a second call to the function can @@ -569,7 +552,6 @@ var BasicRenderer = AbstractRenderer.extend({ * 2) Updates the rendering of the view elements associated to the given * record to match the new modifiers. * - * @see _computeModifiers * @see _applyModifiers * * @private @@ -582,7 +564,7 @@ var BasicRenderer = AbstractRenderer.extend({ var defs = []; this.defs = defs; // Potentially filled by widget rerendering _.each(this.allModifiersData, function (modifiersData) { - self._computeModifiers(modifiersData, record); + modifiersData.evaluatedModifiers[record.id] = record.evalModifiers(modifiersData.modifiers); self._applyModifiers(modifiersData, record); }); delete this.defs; |
