From 422501da3e13e3c725de3a214cb7d829d82a16ae Mon Sep 17 00:00:00 2001 From: Sylvia van Os Date: Sat, 4 Jan 2020 23:00:23 +0100 Subject: [PATCH] Make it easy to add extra barcodes --- .../card_locker/LoyaltyCardEditActivity.java | 8 ++++++++ .../card_locker/LoyaltyCardViewActivity.java | 17 ++++++++++++++++- .../res/layout/loyalty_card_view_layout.xml | 10 ++++++++++ 3 files changed, 34 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/protect/card_locker/LoyaltyCardEditActivity.java b/app/src/main/java/protect/card_locker/LoyaltyCardEditActivity.java index f5397409c..706a0cf53 100644 --- a/app/src/main/java/protect/card_locker/LoyaltyCardEditActivity.java +++ b/app/src/main/java/protect/card_locker/LoyaltyCardEditActivity.java @@ -57,6 +57,7 @@ public class LoyaltyCardEditActivity extends AppCompatActivity int loyaltyCardId; boolean updateLoyaltyCard; + String loyaltyCardStorePrefill = ""; Uri importLoyaltyCardUri = null; Integer headingColorValue = null; Integer headingStoreTextColorValue = null; @@ -69,6 +70,7 @@ public class LoyaltyCardEditActivity extends AppCompatActivity final Bundle b = intent.getExtras(); loyaltyCardId = b != null ? b.getInt("id") : 0; updateLoyaltyCard = b != null && b.getBoolean("update", false); + loyaltyCardStorePrefill = b != null ? b.getString("store", "") : ""; importLoyaltyCardUri = intent.getData(); Log.d(TAG, "View activity: id=" + loyaltyCardId @@ -209,6 +211,12 @@ public class LoyaltyCardEditActivity extends AppCompatActivity setTitle(R.string.addCardTitle); } + // Set prefill values if nothing is set + if(storeFieldEdit.getText().length() == 0 && !loyaltyCardStorePrefill.isEmpty()) + { + storeFieldEdit.setText(loyaltyCardStorePrefill); + } + if(headingColorValue == null) { // Select a random color to start out with. diff --git a/app/src/main/java/protect/card_locker/LoyaltyCardViewActivity.java b/app/src/main/java/protect/card_locker/LoyaltyCardViewActivity.java index b33f5d029..52cd0688d 100644 --- a/app/src/main/java/protect/card_locker/LoyaltyCardViewActivity.java +++ b/app/src/main/java/protect/card_locker/LoyaltyCardViewActivity.java @@ -26,6 +26,7 @@ import android.widget.ImageView; import android.widget.TextView; import android.widget.Toast; +import com.google.android.material.floatingactionbutton.FloatingActionButton; import com.google.android.material.tabs.TabLayout; import com.google.zxing.BarcodeFormat; @@ -39,6 +40,7 @@ public class LoyaltyCardViewActivity extends AppCompatActivity private static final String TAG = "CardLocker"; private static final double LUMINANCE_MIDPOINT = 0.5; + FloatingActionButton FabAdd; TabLayout tabLayout; TabLayout.OnTabSelectedListener onTabSelectedListener; TextView cardIdFieldView; @@ -102,6 +104,19 @@ public class LoyaltyCardViewActivity extends AppCompatActivity db = new DBHelper(this); importURIHelper = new ImportURIHelper(this); + FabAdd = findViewById(R.id.fabAdd); + FabAdd.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) + { + Intent intent = new Intent(getApplicationContext(), LoyaltyCardEditActivity.class); + Bundle bundle = new Bundle(); + bundle.putString("store", loyaltyCard.store); + intent.putExtras(bundle); + startActivity(intent); + finish(); + } + }); tabLayout = findViewById(R.id.tabLayout); onTabSelectedListener = new TabLayout.OnTabSelectedListener() { @Override @@ -286,7 +301,7 @@ public class LoyaltyCardViewActivity extends AppCompatActivity } else { - findViewById(R.id.barcode).setVisibility(View.GONE); + findViewById(R.id.barcode).setVisibility(View.INVISIBLE); } } diff --git a/app/src/main/res/layout/loyalty_card_view_layout.xml b/app/src/main/res/layout/loyalty_card_view_layout.xml index 8f644d213..07a84b577 100644 --- a/app/src/main/res/layout/loyalty_card_view_layout.xml +++ b/app/src/main/res/layout/loyalty_card_view_layout.xml @@ -8,6 +8,15 @@ android:fitsSystemWindows="true" > + +