diff options
| author | Julien Mougenot <jum@odoo.com> | 2019-08-14 12:35:21 +0000 |
|---|---|---|
| committer | Aaron Bohy <aab@odoo.com> | 2019-09-18 06:11:03 +0000 |
| commit | d201802abe054195c2de7a3ecce8c1c3cf866f3d (patch) | |
| tree | edca3eb747d9fbc1504c27b69eb15f19faeed5e6 /addons/web/static/src/js | |
| parent | 3c867d7c95c526ccca5945b3a0e49fd96fa02510 (diff) | |
[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
Diffstat (limited to 'addons/web/static/src/js')
| -rw-r--r-- | addons/web/static/src/js/fields/abstract_field.js | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/addons/web/static/src/js/fields/abstract_field.js b/addons/web/static/src/js/fields/abstract_field.js index 822c90c31f4..1d37dfcade5 100644 --- a/addons/web/static/src/js/fields/abstract_field.js +++ b/addons/web/static/src/js/fields/abstract_field.js @@ -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; |
