Listening event using keyup instead of keypress

Dear community,

Our company is located in France and is using the AZERTY keyboard layout (instead of the QWERTY layout used in the US).

Barcode scanners are considered as keyboards while connected to a computer and the keyboard layout has an impact on the output.

In our case, while scanning a tote barcode in the Shiphero packing view (https://endeavour.shiphero.com/orders), the tote ID isn’t accurately interpreted by Shiphero which makes the order completion impossible.

We eventually discovered that this was caused by the inability of endeavour to work with non-QWERTY keyboards.

If you’d like to write “1” with a QWERTY keyboard, you’ll just need to press the “1” key.

Capture d’écran 2020-01-15 à 18.34.22
On an AZERTY keyboard, you’ll need to press SHIFT+&.

Capture d’écran 2020-01-15 à 18.34.34
The listening event used in the packing view of endeavour is keyup:

SequenceListener.prototype.listenKeyboard = function () { document.onkeyup = function (keyEvent) { this.keyUp(keyEvent); }.bind(this);

SHIFT+& isn’t interpreted by keyup as “1”.

We managed to fix the issue in our tests by replacing keyup with keypress.

Please note that keypress is compatible with both QWERTY and AZERTY keyboards.

Could you please update your code in order to make Shiphero compatible with foreign keyboards? Please consider that the issue might exists in several screens (we experienced it while scanning tote IDs as well as scanning product barcodes in the packing view).

Thanks

Paul