From a66650a7fa4bdb8e728ee2edd4ac9109701704fc Mon Sep 17 00:00:00 2001 From: David Monjoie Date: Wed, 22 Aug 2018 15:50:41 +0200 Subject: [PATCH] [FIX] web: esc cancels kanban column quick create The feature was already declared in AbstractQuickCreate, but the ColumnQuickCreate object did not define a _cancel function. --- .../src/js/views/kanban/kanban_quick_create.js | 13 +++++++++++++ addons/web/static/tests/views/kanban_tests.js | 9 ++++++++- 2 files changed, 21 insertions(+), 1 deletion(-) 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 216cf1bbe88..559f508e37e 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 @@ -266,6 +266,19 @@ var ColumnQuickCreate = AbstractQuickCreate.extend({ // Private //-------------------------------------------------------------------------- + /** + * Triggers up an event to cancel the quick creation + * + * @override + * @private + */ + _cancel: function () { + if (!this.folded) { + this.folded = true; + this.$input.val(''); + this._update(); + } + }, /** * Triggers up an event to quick create a column with the given value * diff --git a/addons/web/static/tests/views/kanban_tests.js b/addons/web/static/tests/views/kanban_tests.js index 759ed61a00f..9638d1c20d3 100644 --- a/addons/web/static/tests/views/kanban_tests.js +++ b/addons/web/static/tests/views/kanban_tests.js @@ -1203,7 +1203,7 @@ QUnit.module('Views', { }); QUnit.test('quick create record & column in grouped on m2o', function (assert) { - assert.expect(2); + assert.expect(4); var kanban = createView({ View: KanbanView, @@ -1230,6 +1230,13 @@ QUnit.module('Views', { assert.strictEqual(kanban.$('.o_kanban_group:last span:contains(new column)').length, 1, "the last column should be the newly created one"); + + assert.strictEqual(kanban.$('.o_kanban_quick_create:visible button.o_kanban_add').length, 1, + "the quick create column should still be opened for mass creation"); + kanban.$('.o_column_quick_create input').trigger($.Event('keydown', { keyCode: $.ui.keyCode.ESCAPE })); + assert.strictEqual(kanban.$('.o_kanban_quick_create:visible button.o_kanban_add').length, 0, + "the quick create column should now be closed"); + kanban.destroy(); });