diff --git a/app/src/main/java/protect/card_locker/ScanActivity.java b/app/src/main/java/protect/card_locker/ScanActivity.java index e9cee9f131..01fc3854dc 100644 --- a/app/src/main/java/protect/card_locker/ScanActivity.java +++ b/app/src/main/java/protect/card_locker/ScanActivity.java @@ -343,13 +343,21 @@ public void onTextChanged(CharSequence s, int start, int before, int count) { } public void addManually() { - Intent i = new Intent(getApplicationContext(), BarcodeSelectorActivity.class); - if (cardId != null) { - final Bundle b = new Bundle(); - b.putString("initialCardId", cardId); - i.putExtras(b); - } - manualAddLauncher.launch(i); + MaterialAlertDialogBuilder builder = new MaterialAlertDialogBuilder(ScanActivity.this); + builder.setTitle(R.string.add_manually_warning_title); + builder.setMessage(R.string.add_manually_warning_message); + builder.setPositiveButton(R.string.continue_, (dialog, which) -> { + Intent i = new Intent(getApplicationContext(), BarcodeSelectorActivity.class); + if (cardId != null) { + final Bundle b = new Bundle(); + b.putString("initialCardId", cardId); + i.putExtras(b); + } + manualAddLauncher.launch(i); + }); + builder.setNegativeButton(R.string.cancel, (dialog, which) -> setScannerActive(true)); + builder.setOnCancelListener(dialog -> setScannerActive(true)); + builder.show(); } public void addFromImage() { diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 66ecc3683e..fde49355d3 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -335,4 +335,7 @@ Add a card in a different way Field must not be empty Enter the ID number or text on your card and press the barcode that looks like the one on your card. + Scanning is recommended + For some stores, the barcode value differs from the number written on the card. Because of this, entering a barcode manually may not always work. It is strongly recommended to scan the barcode with your camera instead. Do you still want to continue? + Continue