summaryrefslogtreecommitdiff
path: root/addons/web/static/src/js/views/form
diff options
context:
space:
mode:
authorMichael Mattiello (mcm) <mcm@odoo.com>2020-02-03 10:40:52 +0000
committeraab-odoo <aab@odoo.com>2020-02-03 11:08:04 +0000
commit3fd7b2009ec1f16c56c6d0ae87004011c90e204c (patch)
tree85f041055d81938c694263fe082f490d0f0e8446 /addons/web/static/src/js/views/form
parent6bdcf054fdeef1b02cbb20bdb00fcba648725f36 (diff)
[ADD] web: add owl AbstractField
This commit adds the new AbstractField class written in owl, meant to be extended by specific Field owl implementations. Note that its API is not complete yet, but it is enough for basic usecases. This commit also adapts the BasicRenderer to instantiate the future new fields that will be written in owl. closes odoo/odoo#43759 Related: odoo/enterprise#7872 Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Diffstat (limited to 'addons/web/static/src/js/views/form')
-rw-r--r--addons/web/static/src/js/views/form/form_renderer.js8
1 files changed, 6 insertions, 2 deletions
diff --git a/addons/web/static/src/js/views/form/form_renderer.js b/addons/web/static/src/js/views/form/form_renderer.js
index e393f22dba4..89972e700aa 100644
--- a/addons/web/static/src/js/views/form/form_renderer.js
+++ b/addons/web/static/src/js/views/form/form_renderer.js
@@ -1060,11 +1060,15 @@ var FormRenderer = BasicRenderer.extend({
_onNavigationMove: function (ev) {
ev.stopPropagation();
var index;
+ let target = ev.data.target || ev.target;
+ if (target.__owl__) {
+ target = target.__owl__.parent; // Owl fields are wrapped by the FieldWrapper
+ }
if (ev.data.direction === "next") {
- index = this.allFieldWidgets[this.state.id].indexOf(ev.data.target || ev.target);
+ index = this.allFieldWidgets[this.state.id].indexOf(target);
this._activateNextFieldWidget(this.state, index);
} else if (ev.data.direction === "previous") {
- index = this.allFieldWidgets[this.state.id].indexOf(ev.data.target);
+ index = this.allFieldWidgets[this.state.id].indexOf(target);
this._activatePreviousFieldWidget(this.state, index);
}
},