diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index e80d163c3..7306a766f 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -8,8 +8,6 @@ android:name="android.permission.READ_EXTERNAL_STORAGE"/> - 0 && barcodeTypeField.getText().length() > 0) { String formatString = barcodeTypeField.getText().toString(); @@ -302,7 +293,6 @@ public class LoyaltyCardViewActivity extends AppCompatActivity { String store = storeFieldEdit.getText().toString(); String note = noteFieldEdit.getText().toString(); - boolean shouldAddShortcut = shortcutCheckbox.isChecked(); String cardId = cardIdFieldView.getText().toString(); String barcodeType = barcodeTypeField.getText().toString(); @@ -328,39 +318,9 @@ public class LoyaltyCardViewActivity extends AppCompatActivity loyaltyCardId = (int)db.insertLoyaltyCard(store, note, cardId, barcodeType); } - if(shouldAddShortcut) - { - addShortcut(loyaltyCardId, store); - } - finish(); } - private void addShortcut(int id, String name) - { - Intent shortcutIntent = new Intent(this, LoyaltyCardViewActivity.class); - shortcutIntent.setAction(Intent.ACTION_MAIN); - // Prevent instances of the view activity from piling up; if one exists let this - // one replace it. - shortcutIntent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP); - Bundle bundle = new Bundle(); - bundle.putInt("id", id); - bundle.putBoolean("view", true); - shortcutIntent.putExtras(bundle); - - Intent intent = new Intent(); - intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent); - intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, name); - intent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, Intent.ShortcutIconResource - .fromContext(this, R.mipmap.ic_launcher)); - intent.setAction("com.android.launcher.action.INSTALL_SHORTCUT"); - // Do not duplicate the shortcut if it is already there - intent.putExtra("duplicate", false); - getApplicationContext().sendBroadcast(intent); - - Toast.makeText(this, R.string.addedShortcut, Toast.LENGTH_LONG).show(); - } - @Override public boolean onCreateOptionsMenu(Menu menu) { diff --git a/app/src/main/res/layout/loyalty_card_view_activity.xml b/app/src/main/res/layout/loyalty_card_view_activity.xml index 940a869d7..8e2a6da93 100644 --- a/app/src/main/res/layout/loyalty_card_view_activity.xml +++ b/app/src/main/res/layout/loyalty_card_view_activity.xml @@ -146,55 +146,6 @@ android:background="@color/inputBorder" /> - - - - - - - - - - - - - - - Store Note - Add to Home Screen Card ID Barcode Type diff --git a/app/src/test/java/protect/card_locker/LoyaltyCardViewActivityTest.java b/app/src/test/java/protect/card_locker/LoyaltyCardViewActivityTest.java index 6f7b56731..8e5b96d3b 100644 --- a/app/src/test/java/protect/card_locker/LoyaltyCardViewActivityTest.java +++ b/app/src/test/java/protect/card_locker/LoyaltyCardViewActivityTest.java @@ -89,7 +89,6 @@ public class LoyaltyCardViewActivityTest */ private void saveLoyaltyCardWithArguments(final Activity activity, final String store, final String note, - final boolean addShortcut, final String cardId, final String barcodeType, boolean creatingNewCard) @@ -106,25 +105,18 @@ public class LoyaltyCardViewActivityTest final EditText storeField = (EditText) activity.findViewById(R.id.storeNameEdit); final EditText noteField = (EditText) activity.findViewById(R.id.noteEdit); - final CheckBox shortcutCheckbox = (CheckBox) activity.findViewById(R.id.shortcutCheckbox); final TextView cardIdField = (TextView) activity.findViewById(R.id.cardIdView); final TextView barcodeTypeField = (TextView) activity.findViewById(R.id.barcodeType); storeField.setText(store); noteField.setText(note); - shortcutCheckbox.setChecked(addShortcut); cardIdField.setText(cardId); barcodeTypeField.setText(barcodeType); - ShortcutAddedReceiver shortcutAddedReceiver = new ShortcutAddedReceiver(); - shortcutAddedReceiver.registerReceiver(activity); - assertEquals(false, activity.isFinishing()); shadowOf(activity).clickMenuItem(R.id.action_save); assertEquals(true, activity.isFinishing()); - shortcutAddedReceiver.unregisterReceiver(activity); - assertEquals(1, db.getLoyaltyCardCount()); LoyaltyCard card = db.getLoyaltyCard(1); @@ -132,28 +124,6 @@ public class LoyaltyCardViewActivityTest assertEquals(note, card.note); assertEquals(cardId, card.cardId); assertEquals(barcodeType, card.barcodeType); - - Intent shortcutRequest = shortcutAddedReceiver.lastRequest(); - - if(addShortcut) - { - assertNotNull(shortcutRequest); - - String name = shortcutRequest.getStringExtra(Intent.EXTRA_SHORTCUT_NAME); - assertEquals(card.store, name); - - Intent startIntent = shortcutRequest.getParcelableExtra(Intent.EXTRA_SHORTCUT_INTENT); - assertNotNull(startIntent); - Bundle startBundle = startIntent.getExtras(); - assertNotNull(startBundle); - - assertEquals(card.id, startBundle.getInt("id", -1)); - assertEquals(true, startBundle.getBoolean("view", false)); - } - else - { - assertNull(shortcutRequest); - } } /** @@ -216,8 +186,6 @@ public class LoyaltyCardViewActivityTest checkFieldProperties(activity, R.id.storeNameEdit, editVisibility, store); checkFieldProperties(activity, R.id.storeNameView, viewVisibility, store); checkFieldProperties(activity, R.id.noteEdit, editVisibility, note); - checkFieldProperties(activity, R.id.shortcutBorder, editVisibility, null); - checkFieldProperties(activity, R.id.shortcutTablerow, editVisibility, null); checkFieldProperties(activity, R.id.noteView, viewVisibility, note); checkFieldProperties(activity, R.id.cardIdView, View.VISIBLE, cardId); checkFieldProperties(activity, R.id.cardIdDivider, cardId.isEmpty() ? View.GONE : View.VISIBLE, null); @@ -308,30 +276,7 @@ public class LoyaltyCardViewActivityTest checkAllFields(activity, ViewMode.ADD_CARD, "", "", BARCODE_DATA, BARCODE_TYPE); // Save and check the gift card - saveLoyaltyCardWithArguments(activity, "store", "note", false, BARCODE_DATA, BARCODE_TYPE, true); - } - - @Test - public void startWithoutParametersCaptureBarcodeCreateLoyaltyCardSaveShortcut() throws IOException - { - registerMediaStoreIntentHandler(); - - ActivityController activityController = Robolectric.buildActivity(LoyaltyCardViewActivity.class).create(); - activityController.start(); - activityController.visible(); - activityController.resume(); - - Activity activity = (Activity)activityController.get(); - - checkAllFields(activity, ViewMode.ADD_CARD, "", "", "", ""); - - // Complete barcode capture successfully - captureBarcodeWithResult(activity, R.id.captureButton, true); - - checkAllFields(activity, ViewMode.ADD_CARD, "", "", BARCODE_DATA, BARCODE_TYPE); - - // Save and check the gift card - saveLoyaltyCardWithArguments(activity, "store", "note", true, BARCODE_DATA, BARCODE_TYPE, true); + saveLoyaltyCardWithArguments(activity, "store", "note", BARCODE_DATA, BARCODE_TYPE, true); } @Test diff --git a/app/src/test/java/protect/card_locker/ShortcutAddedReceiver.java b/app/src/test/java/protect/card_locker/ShortcutAddedReceiver.java deleted file mode 100644 index d29c17eac..000000000 --- a/app/src/test/java/protect/card_locker/ShortcutAddedReceiver.java +++ /dev/null @@ -1,39 +0,0 @@ -package protect.card_locker; - -import android.content.BroadcastReceiver; -import android.content.Context; -import android.content.Intent; -import android.content.IntentFilter; - -public class ShortcutAddedReceiver extends BroadcastReceiver -{ - public static final String SHORTCUT_ADD_REQUEST = "com.android.launcher.action.INSTALL_SHORTCUT"; - - private Intent _request = null; - - @Override - public void onReceive(Context context, Intent intent) - { - _request = intent; - } - - public void registerReceiver(Context context) - { - context.registerReceiver(this, new IntentFilter(SHORTCUT_ADD_REQUEST)); - } - - public void unregisterReceiver(Context context) - { - context.unregisterReceiver(this); - } - - public Intent lastRequest() - { - return _request; - } - - public void reset() - { - _request = null; - } -}