From a90899d41e0bbc8cb828791049e263536e9611ce Mon Sep 17 00:00:00 2001 From: Sylvia van Os Date: Wed, 27 Jan 2021 21:42:57 +0100 Subject: [PATCH] Fix crash on no barcode --- .../card_locker/LoyaltyCardViewActivity.java | 28 +++++++++---------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/app/src/main/java/protect/card_locker/LoyaltyCardViewActivity.java b/app/src/main/java/protect/card_locker/LoyaltyCardViewActivity.java index eda1363d6..a26860043 100644 --- a/app/src/main/java/protect/card_locker/LoyaltyCardViewActivity.java +++ b/app/src/main/java/protect/card_locker/LoyaltyCardViewActivity.java @@ -373,15 +373,15 @@ public class LoyaltyCardViewActivity extends AppCompatActivity Log.d(TAG, "ImageView size known known, creating barcode"); new BarcodeImageWriterTask(barcodeImage, cardIdString, format).execute(); } + + // Force redraw fullscreen state + setFullscreen(barcodeIsFullscreen); } else { maximizeButton.setVisibility(View.GONE); barcodeImage.setVisibility(View.GONE); } - - // Force redraw fullscreen state - setFullscreen(barcodeIsFullscreen); } @Override @@ -533,18 +533,18 @@ public class LoyaltyCardViewActivity extends AppCompatActivity private void redrawBarcodeAfterResize() { - barcodeImage.getViewTreeObserver().addOnGlobalLayoutListener( - new ViewTreeObserver.OnGlobalLayoutListener() - { - @Override - public void onGlobalLayout() - { - barcodeImage.getViewTreeObserver().removeOnGlobalLayoutListener(this); + if (format != null) { + barcodeImage.getViewTreeObserver().addOnGlobalLayoutListener( + new ViewTreeObserver.OnGlobalLayoutListener() { + @Override + public void onGlobalLayout() { + barcodeImage.getViewTreeObserver().removeOnGlobalLayoutListener(this); - Log.d(TAG, "ImageView size now known"); - new BarcodeImageWriterTask(barcodeImage, cardIdString, format).execute(); - } - }); + Log.d(TAG, "ImageView size now known"); + new BarcodeImageWriterTask(barcodeImage, cardIdString, format).execute(); + } + }); + }; } /**