From 8496a314219f8013db025bd960632c9dfe27d24f Mon Sep 17 00:00:00 2001 From: qsm-odoo Date: Wed, 13 Sep 2017 17:12:22 +0200 Subject: [PATCH] [REF] web: move misplaced kanban quick create code --- .../web/static/src/js/views/kanban/kanban_column.js | 7 ------- .../src/js/views/kanban/kanban_quick_create.js | 12 ++++++++++++ 2 files changed, 12 insertions(+), 7 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 8f201b2b5e6..d22f4fe2fe9 100644 --- a/addons/web/static/src/js/views/kanban/kanban_column.js +++ b/addons/web/static/src/js/views/kanban/kanban_column.js @@ -144,16 +144,9 @@ var KanbanColumn = Widget.extend({ if (this.quickCreateWidget) { return; } - var self = this; var width = this.records.length ? this.records[0].$el.innerWidth() : this.$el.width() - 8; this.quickCreateWidget = new RecordQuickCreate(this, width); this.quickCreateWidget.insertAfter(this.$header); - this.quickCreateWidget.$el.focusout(function () { - var taskName = self.quickCreateWidget.$('[type=text]')[0].value; - if (!taskName && self.quickCreateWidget) { - self._cancelQuickCreate(); - } - }); }, /** * Adds a record in the column. diff --git a/addons/web/static/src/js/views/kanban/kanban_quick_create.js b/addons/web/static/src/js/views/kanban/kanban_quick_create.js index c9fc26e82b9..216cf1bbe88 100644 --- a/addons/web/static/src/js/views/kanban/kanban_quick_create.js +++ b/addons/web/static/src/js/views/kanban/kanban_quick_create.js @@ -16,6 +16,7 @@ var AbstractQuickCreate = Widget.extend({ 'keypress input': '_onKeypress', 'mousedown .o_kanban_add': '_onMousedown', 'mousedown .o_kanban_cancel': '_onMousedown', + 'focusout': '_onFocusOut', }, //-------------------------------------------------------------------------- @@ -74,6 +75,17 @@ var AbstractQuickCreate = Widget.extend({ _onCancelClicked: function () { this._cancel(); }, + /** + * Cancels quick creation on focusout input event + * + * @private + * @param {KeyEvent} ev + */ + _onFocusOut: function (ev) { + if (!this.$input.val()) { + this._cancel(); + } + }, /** * Cancels quick creation on escape keydown event *