aboutsummaryrefslogtreecommitdiffstats
path: root/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptFragment.java
diff options
context:
space:
mode:
authorDominik Schürmann <dominik@dominikschuermann.de>2014-04-15 22:37:36 +0200
committerDominik Schürmann <dominik@dominikschuermann.de>2014-04-15 22:37:36 +0200
commit14a8586e8c132aa1c217225e1d78b7185af3b7c2 (patch)
tree45f0ef476dc552453bcfd924eb284b0836cda7d8 /OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptFragment.java
parentfcb73f4e24b04ebcf6f139f8aa17d2ce5ed33a78 (diff)
downloadopen-keychain-14a8586e8c132aa1c217225e1d78b7185af3b7c2.tar.gz
open-keychain-14a8586e8c132aa1c217225e1d78b7185af3b7c2.tar.bz2
open-keychain-14a8586e8c132aa1c217225e1d78b7185af3b7c2.zip
Improve verification result display, close #568
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptFragment.java')
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptFragment.java42
1 files changed, 31 insertions, 11 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptFragment.java
index 2254029df..71a5f3ad5 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptFragment.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptFragment.java
@@ -31,7 +31,6 @@ import android.widget.RelativeLayout;
import android.widget.TextView;
import com.beardedhen.androidbootstrap.BootstrapButton;
-import com.devspark.appmsg.AppMsg;
import org.openintents.openpgp.OpenPgpSignatureResult;
import org.sufficientlysecure.keychain.R;
@@ -73,11 +72,6 @@ public class DecryptFragment extends Fragment {
}
});
mResultLayout.setVisibility(View.GONE);
- mResultLayout.setOnClickListener(new OnClickListener() {
- public void onClick(View v) {
- lookupUnknownKey(mSignatureKeyId);
- }
- });
}
private void lookupUnknownKey(long unknownKeyId) {
@@ -119,7 +113,7 @@ public class DecryptFragment extends Fragment {
String userId = signatureResult.getUserId();
String[] userIdSplit = PgpKeyHelper.splitUserId(userId);
if (userIdSplit[0] != null) {
- mUserId.setText(userId);
+ mUserId.setText(userIdSplit[0]);
} else {
mUserId.setText(R.string.user_id_no_name);
}
@@ -132,37 +126,63 @@ public class DecryptFragment extends Fragment {
switch (signatureResult.getStatus()) {
case OpenPgpSignatureResult.SIGNATURE_SUCCESS_CERTIFIED: {
- mResultText.setText(R.string.decrypt_verified_successful);
+ if (signatureResult.isSignatureOnly()) {
+ mResultText.setText(R.string.decrypt_result_signature_certified);
+ } else {
+ mResultText.setText(R.string.decrypt_result_decrypted_and_signature_certified);
+ }
mResultLayout.setBackgroundColor(getResources().getColor(R.color.result_green));
mSignatureStatusImage.setImageResource(R.drawable.overlay_ok);
+ mSignatureLayout.setVisibility(View.VISIBLE);
mLookupKey.setVisibility(View.GONE);
break;
}
case OpenPgpSignatureResult.SIGNATURE_SUCCESS_UNCERTIFIED: {
- mResultText.setText(R.string.decrypt_verified_successful);
+ if (signatureResult.isSignatureOnly()) {
+ mResultText.setText(R.string.decrypt_result_signature_uncertified);
+ } else {
+ mResultText.setText(R.string.decrypt_result_decrypted_and_signature_uncertified);
+ }
mResultLayout.setBackgroundColor(getResources().getColor(R.color.result_orange));
mSignatureStatusImage.setImageResource(R.drawable.overlay_ok);
+ mSignatureLayout.setVisibility(View.VISIBLE);
mLookupKey.setVisibility(View.GONE);
break;
}
case OpenPgpSignatureResult.SIGNATURE_UNKNOWN_PUB_KEY: {
- mResultText.setText(R.string.unknown_signature);
+ if (signatureResult.isSignatureOnly()) {
+ mResultText.setText(R.string.decrypt_result_signature_unknown_pub_key);
+ } else {
+ mResultText.setText(R.string.decrypt_result_decrypted_unknown_pub_key);
+ }
mResultLayout.setBackgroundColor(getResources().getColor(R.color.result_orange));
mSignatureStatusImage.setImageResource(R.drawable.overlay_error);
+ mSignatureLayout.setVisibility(View.VISIBLE);
mLookupKey.setVisibility(View.VISIBLE);
break;
}
+ case OpenPgpSignatureResult.SIGNATURE_ERROR: {
+ mResultText.setText(R.string.decrypt_result_invalid_signature);
+
+ mResultLayout.setBackgroundColor(getResources().getColor(R.color.result_red));
+ mSignatureStatusImage.setImageResource(R.drawable.overlay_error);
+ mSignatureLayout.setVisibility(View.GONE);
+ mLookupKey.setVisibility(View.GONE);
+ break;
+ }
+
default: {
mResultText.setText(R.string.error);
mResultLayout.setBackgroundColor(getResources().getColor(R.color.result_red));
mSignatureStatusImage.setImageResource(R.drawable.overlay_error);
+ mSignatureLayout.setVisibility(View.GONE);
mLookupKey.setVisibility(View.GONE);
break;
}
@@ -172,7 +192,7 @@ public class DecryptFragment extends Fragment {
// only successful decryption
mResultLayout.setBackgroundColor(getResources().getColor(R.color.result_blue));
- mResultText.setText(R.string.decrypt_successful);
+ mResultText.setText(R.string.decrypt_result_decrypted);
}
}