diff --git a/app/src/main/java/org/tasks/sync/SynchronizationPreferences.java b/app/src/main/java/org/tasks/sync/SynchronizationPreferences.java
index 79f4c7db4..27d716624 100644
--- a/app/src/main/java/org/tasks/sync/SynchronizationPreferences.java
+++ b/app/src/main/java/org/tasks/sync/SynchronizationPreferences.java
@@ -43,8 +43,6 @@ import org.tasks.ui.Toaster;
public class SynchronizationPreferences extends InjectingPreferenceActivity {
- private static final String KEY_ADD_GOOGLE_TASKS = "add_google_tasks";
- private static final String KEY_ADD_CALDAV = "add_caldav";
private static final int REQUEST_LOGIN = 0;
private static final int REQUEST_CALDAV_SETTINGS = 101;
private static final int REQUEST_CALDAV_SUBSCRIBE = 102;
@@ -86,6 +84,38 @@ public class SynchronizationPreferences extends InjectingPreferenceActivity {
workManager.updateBackgroundSync(null, (Boolean) o, null);
return true;
});
+ Preference addGoogleTaskAccount = findPreference(R.string.p_add_google_task_account);
+ if (inventory.hasPro() || googleTaskListDao.getAccounts().isEmpty()) {
+ addGoogleTaskAccount.setOnPreferenceClickListener(
+ preference -> {
+ addGoogleTaskAccount();
+ return false;
+ });
+ } else {
+ addGoogleTaskAccount.setSummary(R.string.requires_pro_subscription);
+ addGoogleTaskAccount.setOnPreferenceClickListener(
+ preference -> {
+ startActivityForResult(
+ new Intent(this, PurchaseActivity.class), REQUEST_GOOGLE_TASKS_SUBSCRIBE);
+ return false;
+ });
+ }
+ Preference addCaldavAccount = findPreference(R.string.p_add_caldav_account);
+ if (inventory.hasPro()) {
+ addCaldavAccount.setOnPreferenceClickListener(
+ preference -> {
+ addCaldavAccount();
+ return false;
+ });
+ } else {
+ addCaldavAccount.setSummary(R.string.requires_pro_subscription);
+ addCaldavAccount.setOnPreferenceClickListener(
+ preference -> {
+ startActivityForResult(
+ new Intent(this, PurchaseActivity.class), REQUEST_CALDAV_SUBSCRIBE);
+ return false;
+ });
+ }
}
private void logoutConfirmation(GoogleTaskAccount account) {
@@ -146,25 +176,6 @@ public class SynchronizationPreferences extends InjectingPreferenceActivity {
});
googleTaskPreferences.addPreference(accountPreferences);
}
- Preference addGoogleTaskAccount = new Preference(this);
- addGoogleTaskAccount.setKey(KEY_ADD_GOOGLE_TASKS);
- addGoogleTaskAccount.setTitle(R.string.add_account);
- if (inventory.hasPro() || googleTaskListDao.getAccounts().isEmpty()) {
- addGoogleTaskAccount.setOnPreferenceClickListener(
- preference -> {
- addGoogleTaskAccount();
- return false;
- });
- } else {
- addGoogleTaskAccount.setSummary(R.string.requires_pro_subscription);
- addGoogleTaskAccount.setOnPreferenceClickListener(
- preference -> {
- startActivityForResult(
- new Intent(this, PurchaseActivity.class), REQUEST_GOOGLE_TASKS_SUBSCRIBE);
- return false;
- });
- }
- googleTaskPreferences.addPreference(addGoogleTaskAccount);
}
private void addGoogleTaskAccount() {
@@ -190,26 +201,6 @@ public class SynchronizationPreferences extends InjectingPreferenceActivity {
});
caldavPreferences.addPreference(accountPreferences);
}
- Preference addCaldavAccount = new Preference(this);
- addCaldavAccount.setKey(KEY_ADD_CALDAV);
- addCaldavAccount.setTitle(R.string.add_account);
-
- if (inventory.hasPro()) {
- addCaldavAccount.setOnPreferenceClickListener(
- preference -> {
- addCaldavAccount();
- return false;
- });
- } else {
- addCaldavAccount.setSummary(R.string.requires_pro_subscription);
- addCaldavAccount.setOnPreferenceClickListener(
- preference -> {
- startActivityForResult(
- new Intent(this, PurchaseActivity.class), REQUEST_CALDAV_SUBSCRIBE);
- return false;
- });
- }
- caldavPreferences.addPreference(addCaldavAccount);
}
private void addCaldavAccount() {
diff --git a/app/src/main/res/values/keys.xml b/app/src/main/res/values/keys.xml
index ec4d317c4..8ebf9fb95 100644
--- a/app/src/main/res/values/keys.xml
+++ b/app/src/main/res/values/keys.xml
@@ -308,5 +308,6 @@
map_provider
place_provider
preference_screen
-
+ add_google_task_account
+ add_google_task_account
diff --git a/app/src/main/res/xml/preferences_synchronization.xml b/app/src/main/res/xml/preferences_synchronization.xml
index ee3ff27f7..729da2b43 100644
--- a/app/src/main/res/xml/preferences_synchronization.xml
+++ b/app/src/main/res/xml/preferences_synchronization.xml
@@ -9,10 +9,18 @@
android:key="@string/gtasks_GPr_header"
android:title="@string/gtasks_GPr_header"/>
+
+
+
+