diff --git a/app/src/main/java/eu/faircode/email/FragmentOptionsEncryption.java b/app/src/main/java/eu/faircode/email/FragmentOptionsEncryption.java
index 90326cab41..4b51665363 100644
--- a/app/src/main/java/eu/faircode/email/FragmentOptionsEncryption.java
+++ b/app/src/main/java/eu/faircode/email/FragmentOptionsEncryption.java
@@ -75,6 +75,7 @@ public class FragmentOptionsEncryption extends FragmentBase implements SharedPre
private SwitchCompat swAutoUndoDecrypt;
private Spinner spOpenPgp;
+ private ImageButton ibOpenKeychain;
private TextView tvOpenPgpStatus;
private SwitchCompat swAutocrypt;
private SwitchCompat swAutocryptMutual;
@@ -113,6 +114,7 @@ public class FragmentOptionsEncryption extends FragmentBase implements SharedPre
swAutoUndoDecrypt = view.findViewById(R.id.swAutoUndoDecrypt);
spOpenPgp = view.findViewById(R.id.spOpenPgp);
+ ibOpenKeychain = view.findViewById(R.id.ibOpenKeychain);
tvOpenPgpStatus = view.findViewById(R.id.tvOpenPgpStatus);
swAutocrypt = view.findViewById(R.id.swAutocrypt);
swAutocryptMutual = view.findViewById(R.id.swAutocryptMutual);
@@ -208,6 +210,26 @@ public class FragmentOptionsEncryption extends FragmentBase implements SharedPre
}
});
+ ibOpenKeychain.setVisibility(openPgpProvider.size() > 0 ? View.VISIBLE : View.INVISIBLE);
+ ibOpenKeychain.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ String pkg = (String) spOpenPgp.getTag();
+ if (pkg == null)
+ return;
+
+ PackageManager pm = v.getContext().getPackageManager();
+ if (pm == null)
+ return;
+
+ Intent intent = pm.getLaunchIntentForPackage(pkg);
+ if (intent == null)
+ return;
+
+ v.getContext().startActivity(intent);
+ }
+ });
+
swAutocrypt.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton compoundButton, boolean checked) {
diff --git a/app/src/main/res/layout/fragment_options_encryption.xml b/app/src/main/res/layout/fragment_options_encryption.xml
index da589a5879..9b9d54ff92 100644
--- a/app/src/main/res/layout/fragment_options_encryption.xml
+++ b/app/src/main/res/layout/fragment_options_encryption.xml
@@ -165,12 +165,24 @@
+
+