aboutsummaryrefslogtreecommitdiffstats
path: root/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/util/KeyFormattingUtils.java
diff options
context:
space:
mode:
authorDominik Schürmann <dominik@dominikschuermann.de>2014-10-08 17:32:32 +0200
committerDominik Schürmann <dominik@dominikschuermann.de>2014-10-08 17:32:32 +0200
commitb573afe2359653d0ddeb9f35075ca22af40b0ab4 (patch)
tree1447f7d36ed7751435f03189fe7ac883350bd6ae /OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/util/KeyFormattingUtils.java
parentadcc07ca653db0c8a392a8dd7d75d254bd4cdbc1 (diff)
downloadopen-keychain-b573afe2359653d0ddeb9f35075ca22af40b0ab4.tar.gz
open-keychain-b573afe2359653d0ddeb9f35075ca22af40b0ab4.tar.bz2
open-keychain-b573afe2359653d0ddeb9f35075ca22af40b0ab4.zip
New decryption screen UI with modernPGP icons
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/util/KeyFormattingUtils.java')
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/util/KeyFormattingUtils.java127
1 files changed, 106 insertions, 21 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/util/KeyFormattingUtils.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/util/KeyFormattingUtils.java
index 5c2bc76d0..a59cb175f 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/util/KeyFormattingUtils.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/util/KeyFormattingUtils.java
@@ -19,18 +19,13 @@
package org.sufficientlysecure.keychain.ui.util;
import android.content.Context;
-import android.database.Cursor;
import android.graphics.Color;
import android.graphics.PorterDuff;
-import android.graphics.Typeface;
import android.text.Spannable;
-import android.text.SpannableString;
import android.text.SpannableStringBuilder;
import android.text.style.ForegroundColorSpan;
-import android.text.style.StyleSpan;
-import android.text.style.TypefaceSpan;
-import android.view.View;
import android.widget.ImageView;
+import android.widget.TextView;
import org.spongycastle.asn1.ASN1ObjectIdentifier;
import org.spongycastle.asn1.nist.NISTNamedCurves;
@@ -386,36 +381,126 @@ public class KeyFormattingUtils {
public static final int STATE_EXPIRED = 2;
public static final int STATE_VERIFIED = 3;
public static final int STATE_UNAVAILABLE = 4;
+ public static final int STATE_ENCRYPTED = 5;
+ public static final int STATE_NOT_ENCRYPTED = 6;
+ public static final int STATE_UNVERIFIED = 7;
+ public static final int STATE_UNKNOWN_KEY = 8;
+ public static final int STATE_INVALID = 9;
+ public static final int STATE_NOT_SIGNED = 10;
+
+ public static void setStatusImage(Context context, ImageView statusIcon, int state) {
+ setStatusImage(context, statusIcon, null, state);
+ }
/**
* Sets status image based on constant
*/
- public static void setStatusImage(Context context, ImageView statusView, int state) {
+ public static void setStatusImage(Context context, ImageView statusIcon, TextView statusText, int state) {
switch (state) {
- case STATE_REVOKED:
- statusView.setImageDrawable(
- context.getResources().getDrawable(R.drawable.status_signature_revoked_cutout));
- statusView.setColorFilter(context.getResources().getColor(R.color.android_red_dark),
+ /** GREEN: everything is good **/
+ case STATE_VERIFIED: {
+ statusIcon.setImageDrawable(
+ context.getResources().getDrawable(R.drawable.status_signature_verified_cutout));
+ statusIcon.setColorFilter(context.getResources().getColor(R.color.android_green_dark),
+ PorterDuff.Mode.SRC_ATOP);
+ if (statusText != null) {
+ statusText.setTextColor(context.getResources().getColor(R.color.android_green_dark));
+ }
+ break;
+ }
+ case STATE_ENCRYPTED: {
+ statusIcon.setImageDrawable(
+ context.getResources().getDrawable(R.drawable.status_lock_closed));
+ statusIcon.setColorFilter(context.getResources().getColor(R.color.android_green_dark),
PorterDuff.Mode.SRC_ATOP);
+ if (statusText != null) {
+ statusText.setTextColor(context.getResources().getColor(R.color.android_green_dark));
+ }
break;
- case STATE_EXPIRED:
- statusView.setImageDrawable(
+ }
+ /** ORANGE: mostly bad... **/
+ case STATE_UNVERIFIED: {
+ statusIcon.setImageDrawable(
+ context.getResources().getDrawable(R.drawable.status_signature_unverified_cutout));
+ statusIcon.setColorFilter(context.getResources().getColor(R.color.android_orange_dark),
+ PorterDuff.Mode.SRC_ATOP);
+ if (statusText != null) {
+ statusText.setTextColor(context.getResources().getColor(R.color.android_orange_dark));
+ }
+ break;
+ }
+ case STATE_EXPIRED: {
+ statusIcon.setImageDrawable(
context.getResources().getDrawable(R.drawable.status_signature_expired_cutout));
- statusView.setColorFilter(context.getResources().getColor(R.color.android_orange_dark),
+ statusIcon.setColorFilter(context.getResources().getColor(R.color.android_orange_dark),
+ PorterDuff.Mode.SRC_ATOP);
+ if (statusText != null) {
+ statusText.setTextColor(context.getResources().getColor(R.color.android_orange_dark));
+ }
+ break;
+ }
+ case STATE_UNKNOWN_KEY: {
+ statusIcon.setImageDrawable(
+ context.getResources().getDrawable(R.drawable.status_signature_unknown_cutout));
+ statusIcon.setColorFilter(context.getResources().getColor(R.color.android_orange_dark),
+ PorterDuff.Mode.SRC_ATOP);
+ if (statusText != null) {
+ statusText.setTextColor(context.getResources().getColor(R.color.android_orange_dark));
+ }
+ break;
+ }
+ /** RED: really bad... **/
+ case STATE_REVOKED: {
+ statusIcon.setImageDrawable(
+ context.getResources().getDrawable(R.drawable.status_signature_revoked_cutout));
+ statusIcon.setColorFilter(context.getResources().getColor(R.color.android_red_dark),
+ PorterDuff.Mode.SRC_ATOP);
+ if (statusText != null) {
+ statusText.setTextColor(context.getResources().getColor(R.color.android_red_dark));
+ }
+ break;
+ }
+ case STATE_NOT_ENCRYPTED: {
+ statusIcon.setImageDrawable(
+ context.getResources().getDrawable(R.drawable.status_lock_open));
+ statusIcon.setColorFilter(context.getResources().getColor(R.color.android_red_dark),
PorterDuff.Mode.SRC_ATOP);
+ if (statusText != null) {
+ statusText.setTextColor(context.getResources().getColor(R.color.android_red_dark));
+ }
break;
- case STATE_UNAVAILABLE:
- statusView.setImageDrawable(
+ }
+ case STATE_NOT_SIGNED: {
+ statusIcon.setImageDrawable(
+ context.getResources().getDrawable(R.drawable.status_signature_unknown_cutout));
+ statusIcon.setColorFilter(context.getResources().getColor(R.color.android_red_dark),
+ PorterDuff.Mode.SRC_ATOP);
+ if (statusText != null) {
+ statusText.setTextColor(context.getResources().getColor(R.color.android_red_dark));
+ }
+ break;
+ }
+ case STATE_INVALID: {
+ statusIcon.setImageDrawable(
context.getResources().getDrawable(R.drawable.status_signature_invalid_cutout));
- statusView.setColorFilter(context.getResources().getColor(R.color.bg_gray),
+ statusIcon.setColorFilter(context.getResources().getColor(R.color.android_red_dark),
PorterDuff.Mode.SRC_ATOP);
+ if (statusText != null) {
+ statusText.setTextColor(context.getResources().getColor(R.color.android_red_dark));
+ }
break;
- case STATE_VERIFIED:
- statusView.setImageDrawable(
- context.getResources().getDrawable(R.drawable.status_signature_verified_cutout));
- statusView.setColorFilter(context.getResources().getColor(R.color.android_green_dark),
+ }
+ /** special **/
+ case STATE_UNAVAILABLE: {
+ statusIcon.setImageDrawable(
+ context.getResources().getDrawable(R.drawable.status_signature_invalid_cutout));
+ statusIcon.setColorFilter(context.getResources().getColor(R.color.bg_gray),
PorterDuff.Mode.SRC_ATOP);
+ if (statusText != null) {
+ statusText.setTextColor(context.getResources().getColor(R.color.bg_gray));
+ }
break;
+ }
}
}