From fa7dab804946bd9bf5240b6d48a32b10549e3b7d Mon Sep 17 00:00:00 2001 From: M66B Date: Sat, 8 Dec 2018 16:39:44 +0100 Subject: [PATCH] Resync on granting contacts permission only --- app/src/main/java/eu/faircode/email/FragmentSetup.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/FragmentSetup.java b/app/src/main/java/eu/faircode/email/FragmentSetup.java index 3cd656e43d..92960d2789 100644 --- a/app/src/main/java/eu/faircode/email/FragmentSetup.java +++ b/app/src/main/java/eu/faircode/email/FragmentSetup.java @@ -298,7 +298,7 @@ public class FragmentSetup extends FragmentEx { for (int i = 0; i < permissions.length; i++) grantResults[i] = ContextCompat.checkSelfPermission(getActivity(), permissions[i]); - onRequestPermissionsResult(0, permissions, grantResults); + checkPermissions(permissions, grantResults, true); // Create outbox new SimpleTask() { @@ -427,6 +427,10 @@ public class FragmentSetup extends FragmentEx { @Override public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { + checkPermissions(permissions, grantResults, false); + } + + private void checkPermissions(String[] permissions, @NonNull int[] grantResults, boolean init) { boolean has = (grantResults.length > 0); for (int result : grantResults) if (result != PackageManager.PERMISSION_GRANTED) { @@ -438,7 +442,7 @@ public class FragmentSetup extends FragmentEx { tvPermissionsDone.setText(has ? R.string.title_setup_done : R.string.title_setup_to_do); tvPermissionsDone.setCompoundDrawablesWithIntrinsicBounds(has ? check : null, null, null, null); - if (has) + if (has && !init) new SimpleTask() { @Override protected Void onLoad(Context context, Bundle args) {