summaryrefslogtreecommitdiff
path: root/addons/web/static/src
diff options
context:
space:
mode:
authorVincent Schippefilt <vsc@odoo.com>2018-04-11 10:16:02 +0200
committerVincent Schippefilt <vsc@odoo.com>2018-04-12 11:08:54 +0200
commitbf7dfa45c8d5420267403c765974075c38f8a073 (patch)
tree3a57ef2b382862580957805434666f0a7258ba27 /addons/web/static/src
parentc9098db40bee5ecee94415bcbe3b3ecbd2a107cb (diff)
[FIX] web: fix scroll on list and kanban when using keyboard navigation
Before this fix, list view and kanban views are scrolling every time the user uses the up and down keys. After this fix the list and kanban views will only scroll when the user arrives at the boder of the window
Diffstat (limited to 'addons/web/static/src')
-rw-r--r--addons/web/static/src/js/views/kanban/kanban_renderer.js8
-rw-r--r--addons/web/static/src/js/views/list/list_renderer.js2
2 files changed, 10 insertions, 0 deletions
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 953ffcf7dd7..2d18c879ee3 100644
--- a/addons/web/static/src/js/views/kanban/kanban_renderer.js
+++ b/addons/web/static/src/js/views/kanban/kanban_renderer.js
@@ -103,15 +103,21 @@ var KanbanRenderer = BasicRenderer.extend({
previousCard.focus();
}
},
+ /**
+ * @private
+ * @param {KeyboardEvent} e
+ */
_onRecordKeyDown: function(e) {
switch(e.which) {
case $.ui.keyCode.DOWN:
this._focusOnNextCard(e.currentTarget);
e.stopPropagation();
+ e.preventDefault();
break;
case $.ui.keyCode.UP:
this._focusOnPrevousCard(e.currentTarget);
e.stopPropagation();
+ e.preventDefault();
break;
case $.ui.keyCode.RIGHT:
var currentColumn = e.currentTarget.parentElement;
@@ -126,6 +132,7 @@ var KanbanRenderer = BasicRenderer.extend({
this._focusOnNextCard(e.currentTarget);
}
e.stopPropagation();
+ e.preventDefault();
break;
case $.ui.keyCode.LEFT:
var currentColumn = e.currentTarget.parentElement;
@@ -140,6 +147,7 @@ var KanbanRenderer = BasicRenderer.extend({
this._focusOnPrevousCard(e.currentTarget);
}
e.stopPropagation();
+ e.preventDefault();
break;
}
},
diff --git a/addons/web/static/src/js/views/list/list_renderer.js b/addons/web/static/src/js/views/list/list_renderer.js
index 354e7c8a90b..31919962d56 100644
--- a/addons/web/static/src/js/views/list/list_renderer.js
+++ b/addons/web/static/src/js/views/list/list_renderer.js
@@ -738,9 +738,11 @@ var ListRenderer = BasicRenderer.extend({
switch(e.which) {
case $.ui.keyCode.DOWN:
$(e.currentTarget).next().find('input').focus();
+ e.preventDefault();
break;
case $.ui.keyCode.UP:
$(e.currentTarget).prev().find('input').focus();
+ e.preventDefault();
break;
case $.ui.keyCode.ENTER:
e.preventDefault();