diff options
| author | Mathieu Duckerts-Antoine <dam@odoo.com> | 2018-10-15 08:15:05 +0000 |
|---|---|---|
| committer | Mathieu Duckerts-Antoine <dam@odoo.com> | 2018-10-17 13:01:56 +0000 |
| commit | 7fb7522cfef23ef68d45db1415eaf99f9ce6cde0 (patch) | |
| tree | 45bc076196e568dca4c43839a47c225a02792029 /addons/web/static/src | |
| parent | fd27ef17653f225c955d487952f78568d65798ea (diff) | |
[FIX] web: JournalDashboardGraph widgets appear at kanban views updates
closes odoo/odoo#27892
Diffstat (limited to 'addons/web/static/src')
| -rw-r--r-- | addons/web/static/src/js/views/kanban/kanban_column.js | 1 | ||||
| -rw-r--r-- | addons/web/static/src/js/views/kanban/kanban_renderer.js | 6 |
2 files changed, 7 insertions, 0 deletions
diff --git a/addons/web/static/src/js/views/kanban/kanban_column.js b/addons/web/static/src/js/views/kanban/kanban_column.js index ffb63ad9083..57ecc6f4b4e 100644 --- a/addons/web/static/src/js/views/kanban/kanban_column.js +++ b/addons/web/static/src/js/views/kanban/kanban_column.js @@ -173,6 +173,7 @@ var KanbanColumn = Widget.extend({ * into a fragment, the focus has to be set manually once in the DOM. */ on_attach_callback: function () { + _.invoke(this.records, 'on_attach_callback'); if (this.quickCreateWidget) { this.quickCreateWidget.on_attach_callback(); } diff --git a/addons/web/static/src/js/views/kanban/kanban_renderer.js b/addons/web/static/src/js/views/kanban/kanban_renderer.js index 9356311d51c..3dc0cae5540 100644 --- a/addons/web/static/src/js/views/kanban/kanban_renderer.js +++ b/addons/web/static/src/js/views/kanban/kanban_renderer.js @@ -127,6 +127,7 @@ var KanbanRenderer = BasicRenderer.extend({ * Called each time the renderer is attached into the DOM. */ on_attach_callback: function () { + this._isInDom = true; _.invoke(this.widgets, 'on_attach_callback'); if (this.quickCreate) { this.quickCreate.on_attach_callback(); @@ -136,6 +137,7 @@ var KanbanRenderer = BasicRenderer.extend({ * Called each time the renderer is detached from the DOM. */ on_detach_callback: function () { + this._isInDom = false; _.invoke(this.widgets, 'on_detach_callback'); }, @@ -377,6 +379,7 @@ var KanbanRenderer = BasicRenderer.extend({ * @private */ _renderView: function () { + var self = this; var oldWidgets = this.widgets; this.widgets = []; this.$el.empty(); @@ -397,6 +400,9 @@ var KanbanRenderer = BasicRenderer.extend({ var defs = this.defs; return this._super.apply(this, arguments).then(function () { _.invoke(oldWidgets, 'destroy'); + if (self._isInDom) { + _.invoke(self.widgets, 'on_attach_callback'); + } return $.when.apply(null, defs); }); }, |
