summaryrefslogtreecommitdiff
path: root/addons/web
diff options
context:
space:
mode:
Diffstat (limited to 'addons/web')
-rw-r--r--addons/web/static/src/js/views/kanban/kanban_record_quick_create.js2
-rw-r--r--addons/web/static/tests/views/kanban_tests.js13
2 files changed, 13 insertions, 2 deletions
diff --git a/addons/web/static/src/js/views/kanban/kanban_record_quick_create.js b/addons/web/static/src/js/views/kanban/kanban_record_quick_create.js
index 902a8ef22aa..eae7c6b401b 100644
--- a/addons/web/static/src/js/views/kanban/kanban_record_quick_create.js
+++ b/addons/web/static/src/js/views/kanban/kanban_record_quick_create.js
@@ -283,7 +283,7 @@ var RecordQuickCreate = Widget.extend({
}
// ignore clicks if target is inside the quick create
- if (this.el.contains(ev.target) && this.el !== ev.target) {
+ if (this.el.contains(ev.target) || this.el === ev.target) {
return;
}
diff --git a/addons/web/static/tests/views/kanban_tests.js b/addons/web/static/tests/views/kanban_tests.js
index 70e63d34eda..d483bdc8418 100644
--- a/addons/web/static/tests/views/kanban_tests.js
+++ b/addons/web/static/tests/views/kanban_tests.js
@@ -1405,7 +1405,7 @@ QUnit.module('Views', {
});
QUnit.test('quick create record: cancel when not dirty', async function (assert) {
- assert.expect(9);
+ assert.expect(11);
var kanban = await createView({
View: KanbanView,
@@ -1464,6 +1464,17 @@ QUnit.module('Views', {
assert.containsOnce(kanban, '.o_kanban_group:first .o_kanban_record',
"first column should still contain one record");
+ // click to reopen the quick create
+ await testUtils.dom.click(kanban.$('.o_kanban_header .o_kanban_quick_add i').first());
+ assert.containsOnce(kanban, '.o_kanban_quick_create',
+ "should have open the quick create widget");
+
+ // clicking on the quick create itself should keep it open
+ await testUtils.dom.click(kanban.$('.o_kanban_quick_create'));
+ assert.containsOnce(kanban, '.o_kanban_quick_create',
+ "the quick create should not have been destroyed when clicked on itself");
+
+
kanban.destroy();
});