diff options
3 files changed, 100 insertions, 81 deletions
diff --git a/OpenPGP-Keychain/res/layout/key_view.xml b/OpenPGP-Keychain/res/layout/key_view.xml index 5649fe338..88dc2a8eb 100644 --- a/OpenPGP-Keychain/res/layout/key_view.xml +++ b/OpenPGP-Keychain/res/layout/key_view.xml @@ -95,10 +95,12 @@ android:layout_height="wrap_content" android:padding="4dp" android:text="@string/section_user_ids" /> - - <ListView android:id="@+id/user_ids" + + <ListView + android:id="@+id/user_ids" android:layout_width="wrap_content" - android:layout_height="wrap_content"></ListView> + android:layout_height="wrap_content" > + </ListView> <TextView style="@style/SectionHeader" diff --git a/OpenPGP-Keychain/src/org/sufficientlysecure/keychain/pgp/PgpKeyHelper.java b/OpenPGP-Keychain/src/org/sufficientlysecure/keychain/pgp/PgpKeyHelper.java index 5a3d332c4..daba94b99 100644 --- a/OpenPGP-Keychain/src/org/sufficientlysecure/keychain/pgp/PgpKeyHelper.java +++ b/OpenPGP-Keychain/src/org/sufficientlysecure/keychain/pgp/PgpKeyHelper.java @@ -40,16 +40,16 @@ import android.content.Context; public class PgpKeyHelper { - /** - * Returns the last 9 chars of a fingerprint - * - * @param fingerprint - * String containing short or long fingerprint - * @return - */ - public static String shortifyFingerprint(String fingerprint) { - return fingerprint.substring(41); - } + /** + * Returns the last 9 chars of a fingerprint + * + * @param fingerprint + * String containing short or long fingerprint + * @return + */ + public static String shortifyFingerprint(String fingerprint) { + return fingerprint.substring(41); + } public static Date getCreationDate(PGPPublicKey key) { return key.getCreationTime(); diff --git a/OpenPGP-Keychain/src/org/sufficientlysecure/keychain/ui/KeyDetailsActivity.java b/OpenPGP-Keychain/src/org/sufficientlysecure/keychain/ui/KeyDetailsActivity.java index 652b8a89b..82d66e2c0 100644 --- a/OpenPGP-Keychain/src/org/sufficientlysecure/keychain/ui/KeyDetailsActivity.java +++ b/OpenPGP-Keychain/src/org/sufficientlysecure/keychain/ui/KeyDetailsActivity.java @@ -1,3 +1,21 @@ +/* + * Copyright (C) 2013 Bahtiar 'kalkin' Gadimov + * Copyright (C) 2013 Dominik Schürmann <dominik@dominikschuermann.de> + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + package org.sufficientlysecure.keychain.ui; import java.util.Date; @@ -19,72 +37,71 @@ import com.actionbarsherlock.app.SherlockActivity; public class KeyDetailsActivity extends SherlockActivity { - private PGPPublicKey publicKey; - private TextView mAlgorithm; - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - - Bundle extras = getIntent().getExtras(); - setContentView(R.layout.key_view); - if (extras == null) { - return; - } - - getSupportActionBar().setDisplayHomeAsUpEnabled(true); - getSupportActionBar().setHomeButtonEnabled(true); - - long key = extras.getLong("key"); - - KeyRings.buildPublicKeyRingsByMasterKeyIdUri(key + ""); - String[] projection = new String[]{""}; - - this.publicKey = ProviderHelper.getPGPPublicKeyByKeyId( - getApplicationContext(), key); - - TextView fingerprint = (TextView) this.findViewById(R.id.fingerprint); - fingerprint.setText(PgpKeyHelper.shortifyFingerprint(PgpKeyHelper.getFingerPrint(getApplicationContext(), key))); - String[] mainUserId = splitUserId(""); - - TextView expiry = (TextView) this.findViewById(R.id.expiry); - Date expiryDate = PgpKeyHelper.getExpiryDate(publicKey); - if (expiryDate == null) { - expiry.setText(""); - } else { - expiry.setText(DateFormat.getDateFormat(getApplicationContext()) - .format(expiryDate)); - } - - TextView creation = (TextView) this.findViewById(R.id.creation); - creation.setText(DateFormat.getDateFormat(getApplicationContext()) - .format(PgpKeyHelper.getCreationDate(publicKey))); - mAlgorithm = (TextView) this.findViewById(R.id.algorithm); - mAlgorithm.setText(PgpKeyHelper.getAlgorithmInfo(publicKey)); - - } - - private String[] splitUserId(String userId) { - - String[] result = new String[]{"", "", ""}; - Log.v("UserID", userId); - - Pattern withComment = Pattern.compile("^(.*) [(](.*)[)] <(.*)>$"); - Matcher matcher = withComment.matcher(userId); - if (matcher.matches()) { - result[0] = matcher.group(1); - result[1] = matcher.group(2); - result[2] = matcher.group(3); - return result; - } - - Pattern withoutComment = Pattern.compile("^(.*) <(.*)>$"); - matcher = withoutComment.matcher(userId); - if (matcher.matches()) { - result[0] = matcher.group(1); - result[1] = matcher.group(2); - return result; - } - return result; - } + private PGPPublicKey publicKey; + private TextView mAlgorithm; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + + Bundle extras = getIntent().getExtras(); + setContentView(R.layout.key_view); + if (extras == null) { + return; + } + + getSupportActionBar().setDisplayHomeAsUpEnabled(true); + getSupportActionBar().setHomeButtonEnabled(true); + + long key = extras.getLong("key"); + + KeyRings.buildPublicKeyRingsByMasterKeyIdUri(key + ""); + String[] projection = new String[] { "" }; + + this.publicKey = ProviderHelper.getPGPPublicKeyByKeyId(getApplicationContext(), key); + + TextView fingerprint = (TextView) this.findViewById(R.id.fingerprint); + fingerprint.setText(PgpKeyHelper.shortifyFingerprint(PgpKeyHelper.getFingerPrint( + getApplicationContext(), key))); + String[] mainUserId = splitUserId(""); + + TextView expiry = (TextView) this.findViewById(R.id.expiry); + Date expiryDate = PgpKeyHelper.getExpiryDate(publicKey); + if (expiryDate == null) { + expiry.setText(""); + } else { + expiry.setText(DateFormat.getDateFormat(getApplicationContext()).format(expiryDate)); + } + + TextView creation = (TextView) this.findViewById(R.id.creation); + creation.setText(DateFormat.getDateFormat(getApplicationContext()).format( + PgpKeyHelper.getCreationDate(publicKey))); + mAlgorithm = (TextView) this.findViewById(R.id.algorithm); + mAlgorithm.setText(PgpKeyHelper.getAlgorithmInfo(publicKey)); + + } + + private String[] splitUserId(String userId) { + + String[] result = new String[] { "", "", "" }; + Log.v("UserID", userId); + + Pattern withComment = Pattern.compile("^(.*) [(](.*)[)] <(.*)>$"); + Matcher matcher = withComment.matcher(userId); + if (matcher.matches()) { + result[0] = matcher.group(1); + result[1] = matcher.group(2); + result[2] = matcher.group(3); + return result; + } + + Pattern withoutComment = Pattern.compile("^(.*) <(.*)>$"); + matcher = withoutComment.matcher(userId); + if (matcher.matches()) { + result[0] = matcher.group(1); + result[1] = matcher.group(2); + return result; + } + return result; + } } |