~singpolyma/cheogram-android

e68d564778c64560251c06011675efd99ff2c795 — Stephen Paul Weber 7 months ago f240e52
Don't set to UTF8 if it's just ascii

for better compatibility with scanners
1 files changed, 2 insertions(+), 1 deletions(-)

M src/main/java/eu/siacs/conversations/services/BarcodeProvider.java
M src/main/java/eu/siacs/conversations/services/BarcodeProvider.java => src/main/java/eu/siacs/conversations/services/BarcodeProvider.java +2 -1
@@ 17,6 17,7 @@ import android.util.Log;

import androidx.annotation.Nullable;

import com.google.common.base.CharMatcher;
import com.google.zxing.BarcodeFormat;
import com.google.zxing.EncodeHintType;
import com.google.zxing.common.BitMatrix;


@@ 57,7 58,7 @@ public class BarcodeProvider extends ContentProvider implements ServiceConnectio
			final QRCodeWriter barcodeWriter = new QRCodeWriter();
			final Hashtable<EncodeHintType, Object> hints = new Hashtable<>();
			hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.M);
			hints.put(EncodeHintType.CHARACTER_SET, "UTF-8");
			if (!CharMatcher.ascii().matchesAllOf(input)) hints.put(EncodeHintType.CHARACTER_SET, "UTF-8");
			final BitMatrix result = barcodeWriter.encode(input, BarcodeFormat.QR_CODE, size, size, hints);
			final int width = result.getWidth();
			final int height = result.getHeight();