From b3582c970e31dd02af1ec6f1126f330c8b54720a Mon Sep 17 00:00:00 2001 From: iNPUTmice Date: Tue, 4 Nov 2014 12:15:14 +0100 Subject: made qr code available from muc and contact details as well --- .../conversations/ui/EditAccountActivity.java | 56 ++++------------------ 1 file changed, 10 insertions(+), 46 deletions(-) (limited to 'src/main/java/eu/siacs/conversations/ui/EditAccountActivity.java') diff --git a/src/main/java/eu/siacs/conversations/ui/EditAccountActivity.java b/src/main/java/eu/siacs/conversations/ui/EditAccountActivity.java index 4942816d2..aadf05b26 100644 --- a/src/main/java/eu/siacs/conversations/ui/EditAccountActivity.java +++ b/src/main/java/eu/siacs/conversations/ui/EditAccountActivity.java @@ -41,6 +41,7 @@ import java.util.Hashtable; import eu.siacs.conversations.Config; import eu.siacs.conversations.R; import eu.siacs.conversations.entities.Account; +import eu.siacs.conversations.entities.Conversation; import eu.siacs.conversations.services.XmppConnectionService.OnAccountUpdate; import eu.siacs.conversations.ui.adapter.KnownHostsAdapter; import eu.siacs.conversations.utils.UIHelper; @@ -243,42 +244,6 @@ public class EditAccountActivity extends XmppActivity { } } - protected void showQrCode() { - Point size = new Point(); - getWindowManager().getDefaultDisplay().getSize(size); - final int width = (size.x < size.y ? size.x : size.y); - String jid = mAccount.getJid(); - Bitmap bitmap = createQrCodeBitmap("xmpp:" + jid, width); - ImageView view = new ImageView(this); - view.setImageBitmap(bitmap); - AlertDialog.Builder builder = new AlertDialog.Builder(this); - builder.setView(view); - builder.create().show(); - } - - protected Bitmap createQrCodeBitmap(String input, int size) { - try { - final QRCodeWriter QR_CODE_WRITER = new QRCodeWriter(); - final Hashtable hints = new Hashtable(); - hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.M); - final BitMatrix result = QR_CODE_WRITER.encode(input, BarcodeFormat.QR_CODE, size, size, hints); - final int width = result.getWidth(); - final int height = result.getHeight(); - final int[] pixels = new int[width * height]; - for (int y = 0; y < height; y++) { - final int offset = y * width; - for (int x = 0; x < width; x++) { - pixels[offset + x] = result.get(x, y) ? Color.BLACK : Color.TRANSPARENT; - } - } - final Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888); - bitmap.setPixels(pixels, 0, width, 0, 0, width, height); - return bitmap; - } catch (final WriterException e) { - return null; - } - } - protected void updateSaveButton() { if (mAccount != null && mAccount.getStatus() == Account.STATUS_CONNECTING) { @@ -317,6 +282,15 @@ public class EditAccountActivity extends XmppActivity { this.mPassword.getText().toString())); } + @Override + protected String getShareableUri() { + if (mAccount!=null) { + return "xmpp:"+mAccount.getJid(); + } else { + return super.getShareableUri(); + } + } + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -366,16 +340,6 @@ public class EditAccountActivity extends XmppActivity { return true; } - @Override - public boolean onOptionsItemSelected(MenuItem item) { - switch (item.getItemId()) { - case R.id.action_show_qr_code: - showQrCode(); - return true; - } - return super.onOptionsItemSelected(item); - } - @Override protected void onStart() { super.onStart(); -- cgit v1.2.3