diff --git a/app/src/main/java/eu/faircode/email/FragmentOptionsMisc.java b/app/src/main/java/eu/faircode/email/FragmentOptionsMisc.java
index 452d8a82f0..6b7dcb4982 100644
--- a/app/src/main/java/eu/faircode/email/FragmentOptionsMisc.java
+++ b/app/src/main/java/eu/faircode/email/FragmentOptionsMisc.java
@@ -137,9 +137,11 @@ public class FragmentOptionsMisc extends FragmentBase implements SharedPreferenc
private EditText etSend;
private ImageButton ibSend;
private SwitchCompat swUpdates;
+ private TextView tvGithubPrivacy;
private ImageButton ibChannelUpdated;
private SwitchCompat swCheckWeekly;
private SwitchCompat swBeta;
+ private TextView tvBitBucketPrivacy;
private SwitchCompat swChangelog;
private SwitchCompat swCrashReports;
private TextView tvUuid;
@@ -350,9 +352,11 @@ public class FragmentOptionsMisc extends FragmentBase implements SharedPreferenc
etSend = view.findViewById(R.id.etSend);
ibSend = view.findViewById(R.id.ibSend);
swUpdates = view.findViewById(R.id.swUpdates);
+ tvGithubPrivacy = view.findViewById(R.id.tvGithubPrivacy);
ibChannelUpdated = view.findViewById(R.id.ibChannelUpdated);
swCheckWeekly = view.findViewById(R.id.swWeekly);
swBeta = view.findViewById(R.id.swBeta);
+ tvBitBucketPrivacy = view.findViewById(R.id.tvBitBucketPrivacy);
swChangelog = view.findViewById(R.id.swChangelog);
swCrashReports = view.findViewById(R.id.swCrashReports);
tvUuid = view.findViewById(R.id.tvUuid);
@@ -817,6 +821,14 @@ public class FragmentOptionsMisc extends FragmentBase implements SharedPreferenc
}
});
+ tvGithubPrivacy.getPaint().setUnderlineText(true);
+ tvGithubPrivacy.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ Helper.view(v.getContext(), Uri.parse(Helper.GITHUB_PRIVACY_URI), true);
+ }
+ });
+
final Intent channelUpdate = new Intent(Settings.ACTION_CHANNEL_NOTIFICATION_SETTINGS)
.putExtra(Settings.EXTRA_APP_PACKAGE, getContext().getPackageName())
.putExtra(Settings.EXTRA_CHANNEL_ID, "update");
@@ -843,6 +855,14 @@ public class FragmentOptionsMisc extends FragmentBase implements SharedPreferenc
}
});
+ tvBitBucketPrivacy.getPaint().setUnderlineText(true);
+ tvBitBucketPrivacy.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ Helper.view(v.getContext(), Uri.parse(Helper.BITBUCKET_PRIVACY_URI), true);
+ }
+ });
+
swChangelog.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton compoundButton, boolean checked) {
diff --git a/app/src/main/java/eu/faircode/email/Helper.java b/app/src/main/java/eu/faircode/email/Helper.java
index 1bce93a17e..4fa792cb29 100644
--- a/app/src/main/java/eu/faircode/email/Helper.java
+++ b/app/src/main/java/eu/faircode/email/Helper.java
@@ -197,6 +197,8 @@ public class Helper {
static final String TEST_URI = "https://play.google.com/apps/testing/" + BuildConfig.APPLICATION_ID;
static final String BIMI_PRIVACY_URI = "https://datatracker.ietf.org/doc/html/draft-brotman-ietf-bimi-guidance-03#section-7.4";
static final String LT_PRIVACY_URI = "https://languagetool.org/legal/privacy";
+ static final String GITHUB_PRIVACY_URI = "https://docs.github.com/en/site-policy/privacy-policies/github-privacy-statement";
+ static final String BITBUCKET_PRIVACY_URI = "https://www.atlassian.com/legal/privacy-policy";
static final String ID_COMMAND_URI = "https://datatracker.ietf.org/doc/html/rfc2971#section-3.1";
static final String AUTH_RESULTS_URI = "https://datatracker.ietf.org/doc/html/rfc7601";
static final String FAVICON_PRIVACY_URI = "https://en.wikipedia.org/wiki/Favicon";
diff --git a/app/src/main/res/layout/fragment_options_misc.xml b/app/src/main/res/layout/fragment_options_misc.xml
index 7dc75bc3f5..5ebb9084c7 100644
--- a/app/src/main/res/layout/fragment_options_misc.xml
+++ b/app/src/main/res/layout/fragment_options_misc.xml
@@ -536,6 +536,21 @@
app:layout_constraintTop_toBottomOf="@id/ibSend"
app:switchPadding="12dp" />
+
+
+
+
+ app:constraint_referenced_ids="swUpdates,tvGithubPrivacy,swWeekly,swBeta,tvBitBucketPrivacy" />