diff --git a/addons/web/static/src/js/view_form.js b/addons/web/static/src/js/view_form.js
index fcad37b8ff4..9e6c5396091 100644
--- a/addons/web/static/src/js/view_form.js
+++ b/addons/web/static/src/js/view_form.js
@@ -103,7 +103,9 @@ openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView#
this.$element.html(this.rendered);
this.root_frame = instanciate_widget(this.registry.get_object('frame'), this, this.fields_view.arch);
- this.root_frame.appendTo($(".oe_form_header", this.$element));
+ var to_append = $(".oe_form_header", this.$element);
+ this.root_frame.appendTo(to_append.length > 0 ? to_append : this.$element);
+ this.root_frame.$element.children().unwrap();
this.$form_header = this.$element.find('.oe_form_header:first');
this.$form_header.find('div.oe_form_pager button[data-pager-action]').click(function() {
diff --git a/addons/web/static/src/js/view_list_editable.js b/addons/web/static/src/js/view_list_editable.js
index c7222455889..6942f720863 100644
--- a/addons/web/static/src/js/view_list_editable.js
+++ b/addons/web/static/src/js/view_list_editable.js
@@ -235,13 +235,10 @@ openerp.web.list_editable = function (openerp) {
}
self.edition = true;
self.edition_id = record_id;
- self.edition_form = _.extend(new openerp.web.ListEditableFormView(self.view, self.dataset, false), {
- form_template: 'ListView.row.form',
- registry: openerp.web.list.form.widgets,
- $element: $new_row
- });
- // HA HA
- self.edition_form.appendTo();
+ self.edition_form = new openerp.web.ListEditableFormView(self.view, self.dataset, false);
+ self.edition_form.$element = $new_row;
+ // HO HO
+ // empty
$.when(self.edition_form.on_loaded(self.get_form_fields_view())).then(function () {
// put in $.when just in case FormView.on_loaded becomes asynchronous
$new_row.find('> td')
@@ -383,7 +380,7 @@ openerp.web.list_editable = function (openerp) {
openerp.web.list.form = {};
}
openerp.web.list.form.WidgetFrame = openerp.web.form.WidgetFrame.extend({
- template: 'ListView.row.frame'
+ form_template: 'ListView.row.frame'
});
var form_widgets = openerp.web.form.widgets;
openerp.web.list.form.widgets = form_widgets.extend({
@@ -418,9 +415,10 @@ openerp.web.list_editable = function (openerp) {
});
openerp.web.ListEditableFormView = openerp.web.FormView.extend({
- init_view: function() {},
- _render_and_insert: function () {
- return this.start();
- }
+ form_template: 'ListView.row.form',
+ init: function() {
+ this._super.apply(this, arguments);
+ this.registry = openerp.web.list.form.widgets;
+ },
});
};
diff --git a/addons/web/static/src/xml/base.xml b/addons/web/static/src/xml/base.xml
index 8dae18b2915..10779ee5994 100644
--- a/addons/web/static/src/xml/base.xml
+++ b/addons/web/static/src/xml/base.xml
@@ -728,7 +728,6 @@
-
@@ -1519,21 +1518,21 @@
|
-
-
- $(document.createElement('t'))
- .append(this.contents())
- .attr({
- 't-foreach': this.attr('t-foreach'),
- 't-as': this.attr('t-as')
- })
- .replaceAll(this)
- .after($(document.createElement('td')).append(
- $(document.createElement('button')).attr({
- 'class': 'oe-edit-row-save', 'type': 'button'})
- .html(' ')))
- .unwrap();
+
+
+
+
+
+ |
+
+
+
+ |