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" />