[FIX] web: prevent unwanted click on enter keypress

Backport of 801c603218

Pressing ENTER on a button element triggers an additionnal 'click' event.
Since this 'unwanted' click caused some issues in a few cases, we prevent it.
Moreover, there isn't currently any known case in which this event is useful.

Before this commit:
No modification of the initial behaviour on ENTER key

After this commit:
ENTER key pressed in abstract fields has its default behaviour suppressed
This commit is contained in:
Julien Mougenot
2019-09-18 06:11:03 +00:00
committed by Aaron Bohy
parent 3c867d7c95
commit d201802abe
@@ -523,6 +523,12 @@ var AbstractField = Widget.extend({
}
break;
case $.ui.keyCode.ENTER:
// We preventDefault the ENTER key because of two coexisting behaviours:
// - In HTML5, pressing ENTER on a <button> triggers two events: a 'keydown' AND a 'click'
// - When creating and opening a dialog, the focus is automatically given to the primary button
// The end result caused some issues where a modal opened by an ENTER keypress (e.g. saving
// changes in multiple edition) confirmed the modal without any intentionnal user input.
ev.preventDefault();
ev.stopPropagation();
this.trigger_up('navigation_move', {direction: 'next_line'});
break;