diff --git a/app/src/main/java/it/integry/integrywmsnative/core/expansion/BaseActivity.java b/app/src/main/java/it/integry/integrywmsnative/core/expansion/BaseActivity.java index f73e4cb1..23103b9b 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/expansion/BaseActivity.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/expansion/BaseActivity.java @@ -12,7 +12,7 @@ public class BaseActivity extends AppCompatActivity { @Override public boolean dispatchKeyEvent(KeyEvent event) { if (BarcodeManager.isEnabled() && BarcodeManager.isKeyboardEmulator()) { - if (event.getAction() == KeyEvent.ACTION_DOWN) { + if (event.getAction() == KeyEvent.ACTION_DOWN || event.getAction() == KeyEvent.ACTION_MULTIPLE) { return BarcodeManager.onKeyDown(event.getKeyCode(), event); } } diff --git a/app/src/main/java/it/integry/integrywmsnative/core/expansion/BaseDialog.java b/app/src/main/java/it/integry/integrywmsnative/core/expansion/BaseDialog.java index 2ce56ac8..278c3380 100644 --- a/app/src/main/java/it/integry/integrywmsnative/core/expansion/BaseDialog.java +++ b/app/src/main/java/it/integry/integrywmsnative/core/expansion/BaseDialog.java @@ -20,7 +20,7 @@ public class BaseDialog extends Dialog { super(context); if (BarcodeManager.isEnabled() && BarcodeManager.isKeyboardEmulator()){ setOnKeyListener((dialog, keyCode, event) -> { - if (mBarcodeListener && event.getAction() == KeyEvent.ACTION_DOWN && !isControlKey(event)) { + if (mBarcodeListener && (event.getAction() == KeyEvent.ACTION_DOWN || event.getAction() == KeyEvent.ACTION_MULTIPLE) && !isControlKey(event)) { return BarcodeManager.onKeyDown(event.getKeyCode(), event); } return false; diff --git a/keyobardemulatorscannerlibrary/src/main/java/it/integry/keyobardemulatorscannerlibrary/KeyboardEmulatorBarcodeReader.java b/keyobardemulatorscannerlibrary/src/main/java/it/integry/keyobardemulatorscannerlibrary/KeyboardEmulatorBarcodeReader.java index 6bc32e4c..8091d60b 100644 --- a/keyobardemulatorscannerlibrary/src/main/java/it/integry/keyobardemulatorscannerlibrary/KeyboardEmulatorBarcodeReader.java +++ b/keyobardemulatorscannerlibrary/src/main/java/it/integry/keyobardemulatorscannerlibrary/KeyboardEmulatorBarcodeReader.java @@ -64,6 +64,8 @@ public class KeyboardEmulatorBarcodeReader implements BarcodeReaderInterface { mLastCharInsertTime =keyEvent.getEventTime(); if (keyEvent.getUnicodeChar() > 0){ mTextBarcode+= (char) keyEvent.getUnicodeChar(); + }else if (keyEvent.getCharacters() != null){ + mTextBarcode = keyEvent.getCharacters(); } } }else{