diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/RequestKeyPermissionActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/RequestKeyPermissionActivity.java
index 884674445..934ea70aa 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/RequestKeyPermissionActivity.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/RequestKeyPermissionActivity.java
@@ -38,8 +38,10 @@ import android.widget.TextView;
import org.openintents.openpgp.util.OpenPgpUtils.UserId;
import org.sufficientlysecure.keychain.R;
+import org.sufficientlysecure.keychain.model.SubKey.UnifiedKeyInfo;
import org.sufficientlysecure.keychain.remote.ui.RequestKeyPermissionPresenter.RequestKeyPermissionMvpView;
import org.sufficientlysecure.keychain.ui.dialog.CustomAlertDialogBuilder;
+import org.sufficientlysecure.keychain.ui.util.KeyInfoFormatter;
import org.sufficientlysecure.keychain.ui.util.ThemeChanger;
@@ -131,29 +133,29 @@ public class RequestKeyPermissionActivity extends FragmentActivity {
@NonNull
private RequestKeyPermissionMvpView createMvpView(View view) {
final TextView titleText = view.findViewById(R.id.select_identity_key_title);
- final TextView keyUserIdView = view.findViewById(R.id.select_key_item_name);
+ final TextView keyNameView = view.findViewById(R.id.key_list_item_name);
+ final TextView keyEmailView = view.findViewById(R.id.key_list_item_email);
+ final TextView keyCreationDateView = view.findViewById(R.id.key_list_item_creation);
final ImageView iconClientApp = view.findViewById(R.id.icon_client_app);
final View keyUnavailableWarning = view.findViewById(R.id.requested_key_unavailable_warning);
- final View keyInfoLayout = view.findViewById(R.id.key_info_layout);
return new RequestKeyPermissionMvpView() {
@Override
public void switchToLayoutRequestKeyChoice() {
- keyInfoLayout.setVisibility(View.VISIBLE);
keyUnavailableWarning.setVisibility(View.GONE);
buttonAllow.setEnabled(true);
}
@Override
public void switchToLayoutNoSecret() {
- keyInfoLayout.setVisibility(View.VISIBLE);
keyUnavailableWarning.setVisibility(View.VISIBLE);
buttonAllow.setEnabled(false);
}
@Override
- public void displayKeyInfo(String userIdName) {
- keyUserIdView.setText(userIdName);
+ public void displayKeyInfo(KeyInfoFormatter keyInfoFormatter) {
+ keyInfoFormatter.formatUserId(keyNameView, keyEmailView);
+ keyInfoFormatter.formatCreationDate(keyCreationDateView);
}
@Override
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/RequestKeyPermissionPresenter.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/RequestKeyPermissionPresenter.java
index 700936342..8f45d5fb3 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/RequestKeyPermissionPresenter.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/RequestKeyPermissionPresenter.java
@@ -34,6 +34,7 @@ import org.sufficientlysecure.keychain.daos.KeyRepository;
import org.sufficientlysecure.keychain.daos.KeyRepository.NotFoundException;
import org.sufficientlysecure.keychain.remote.ApiPermissionHelper;
import org.sufficientlysecure.keychain.remote.ApiPermissionHelper.WrongPackageCertificateException;
+import org.sufficientlysecure.keychain.ui.util.KeyInfoFormatter;
import timber.log.Timber;
@@ -100,7 +101,9 @@ class RequestKeyPermissionPresenter {
}
masterKeyId = secretKeyRingOrPublicFallback.master_key_id();
- view.displayKeyInfo(secretKeyRingOrPublicFallback.name());
+ KeyInfoFormatter keyInfoFormatter = new KeyInfoFormatter(context);
+ keyInfoFormatter.setKeyInfo(secretKeyRingOrPublicFallback);
+ view.displayKeyInfo(keyInfoFormatter);
if (secretKeyRingOrPublicFallback.has_any_secret()) {
view.switchToLayoutRequestKeyChoice();
@@ -177,7 +180,7 @@ class RequestKeyPermissionPresenter {
void setTitleText(String text);
void setTitleClientIcon(Drawable drawable);
- void displayKeyInfo(String userIdName);
+ void displayKeyInfo(KeyInfoFormatter keyInfoFormatter);
void finish();
void finishAsCancelled();
diff --git a/OpenKeychain/src/main/res/layout/api_remote_request_key_permission.xml b/OpenKeychain/src/main/res/layout/api_remote_request_key_permission.xml
index 6598b48cc..298eba655 100644
--- a/OpenKeychain/src/main/res/layout/api_remote_request_key_permission.xml
+++ b/OpenKeychain/src/main/res/layout/api_remote_request_key_permission.xml
@@ -80,44 +80,14 @@
tools:text="@string/request_permission_msg"
/>
-
+ android:text="@string/requested_key_label"
+ android:textAppearance="?android:attr/textAppearanceSmall" />
-
-
-
-
-
-
-
-
-
-
+
+ android:paddingRight="12dp">