From 82bccedf7001d08c6ee93dc713a94434ed2f7ab4 Mon Sep 17 00:00:00 2001 From: Daniel Gultsch Date: Fri, 2 May 2014 12:02:18 +0200 Subject: nicer dialog screen if openkeychain is not installed --- .../conversations/ui/ConversationFragment.java | 2 +- src/eu/siacs/conversations/ui/XmppActivity.java | 25 ++++++++++++++++++++-- 2 files changed, 24 insertions(+), 3 deletions(-) (limited to 'src/eu') diff --git a/src/eu/siacs/conversations/ui/ConversationFragment.java b/src/eu/siacs/conversations/ui/ConversationFragment.java index e7a5ccf8..c2373cf1 100644 --- a/src/eu/siacs/conversations/ui/ConversationFragment.java +++ b/src/eu/siacs/conversations/ui/ConversationFragment.java @@ -271,7 +271,7 @@ public class ConversationFragment extends Fragment { if (item.getType() == Message.TYPE_IMAGE) { String[] fileParams = item.getBody().split(","); - if (fileParams.length>=1) { + if ((fileParams.length>=1)&&(item.getStatus() != Message.STATUS_PREPARING)) { long size = Long.parseLong(fileParams[0]); filesize = size/1024+" KB \u00B7 "; } diff --git a/src/eu/siacs/conversations/ui/XmppActivity.java b/src/eu/siacs/conversations/ui/XmppActivity.java index 4d15addb..1f9c678a 100644 --- a/src/eu/siacs/conversations/ui/XmppActivity.java +++ b/src/eu/siacs/conversations/ui/XmppActivity.java @@ -10,8 +10,11 @@ import android.app.AlertDialog; import android.app.AlertDialog.Builder; import android.content.ComponentName; import android.content.Context; +import android.content.DialogInterface; +import android.content.DialogInterface.OnClickListener; import android.content.Intent; import android.content.ServiceConnection; +import android.net.Uri; import android.os.Bundle; import android.os.IBinder; import android.view.MenuItem; @@ -84,9 +87,27 @@ public abstract class XmppActivity extends Activity { return true; } else { Builder builder = new AlertDialog.Builder(this); - builder.setTitle("OpenKeychain not found"); + builder.setTitle(getString(R.string.openkeychain_required)); builder.setIconAttribute(android.R.attr.alertDialogIcon); - builder.setMessage("Please make sure you have installed OpenKeychain"); + builder.setMessage(getText(R.string.openkeychain_required_long)); + builder.setNegativeButton(getString(R.string.cancel), null); + builder.setNeutralButton(getString(R.string.restart), new OnClickListener() { + + @Override + public void onClick(DialogInterface dialog, int which) { + // TODO Auto-generated method stub + + } + }); + builder.setPositiveButton(getString(R.string.install), new OnClickListener() { + + @Override + public void onClick(DialogInterface dialog, int which) { + Uri uri = Uri.parse("market://details?id=org.sufficientlysecure.keychain"); + Intent intent = new Intent(Intent.ACTION_VIEW, uri); + startActivity(intent); + } + }); builder.create().show(); return false; } -- cgit v1.2.3