|
|
@ -18,8 +18,8 @@ import org.tasks.analytics.Tracker;
|
|
|
|
import org.tasks.analytics.Tracking;
|
|
|
|
import org.tasks.analytics.Tracking;
|
|
|
|
import org.tasks.data.GoogleTaskDao;
|
|
|
|
import org.tasks.data.GoogleTaskDao;
|
|
|
|
import org.tasks.dialogs.DialogBuilder;
|
|
|
|
import org.tasks.dialogs.DialogBuilder;
|
|
|
|
|
|
|
|
import org.tasks.gtasks.GtaskSyncAdapterHelper;
|
|
|
|
import org.tasks.gtasks.PlayServicesAvailability;
|
|
|
|
import org.tasks.gtasks.PlayServicesAvailability;
|
|
|
|
import org.tasks.gtasks.SyncAdapterHelper;
|
|
|
|
|
|
|
|
import org.tasks.injection.ActivityComponent;
|
|
|
|
import org.tasks.injection.ActivityComponent;
|
|
|
|
import org.tasks.injection.InjectingPreferenceActivity;
|
|
|
|
import org.tasks.injection.InjectingPreferenceActivity;
|
|
|
|
import org.tasks.preferences.ActivityPermissionRequestor;
|
|
|
|
import org.tasks.preferences.ActivityPermissionRequestor;
|
|
|
@ -36,7 +36,7 @@ public class GtasksPreferences extends InjectingPreferenceActivity {
|
|
|
|
@Inject GtasksPreferenceService gtasksPreferenceService;
|
|
|
|
@Inject GtasksPreferenceService gtasksPreferenceService;
|
|
|
|
@Inject ActivityPermissionRequestor permissionRequestor;
|
|
|
|
@Inject ActivityPermissionRequestor permissionRequestor;
|
|
|
|
@Inject Tracker tracker;
|
|
|
|
@Inject Tracker tracker;
|
|
|
|
@Inject SyncAdapterHelper syncAdapterHelper;
|
|
|
|
@Inject GtaskSyncAdapterHelper gtaskSyncAdapterHelper;
|
|
|
|
@Inject PlayServicesAvailability playServicesAvailability;
|
|
|
|
@Inject PlayServicesAvailability playServicesAvailability;
|
|
|
|
@Inject DialogBuilder dialogBuilder;
|
|
|
|
@Inject DialogBuilder dialogBuilder;
|
|
|
|
@Inject GoogleTaskDao googleTaskDao;
|
|
|
|
@Inject GoogleTaskDao googleTaskDao;
|
|
|
@ -48,7 +48,7 @@ public class GtasksPreferences extends InjectingPreferenceActivity {
|
|
|
|
addPreferencesFromResource(R.xml.preferences_gtasks);
|
|
|
|
addPreferencesFromResource(R.xml.preferences_gtasks);
|
|
|
|
|
|
|
|
|
|
|
|
final CheckBoxPreference gtaskPreference = (CheckBoxPreference) findPreference(getString(R.string.sync_gtasks));
|
|
|
|
final CheckBoxPreference gtaskPreference = (CheckBoxPreference) findPreference(getString(R.string.sync_gtasks));
|
|
|
|
gtaskPreference.setChecked(syncAdapterHelper.isEnabled());
|
|
|
|
gtaskPreference.setChecked(gtaskSyncAdapterHelper.isEnabled());
|
|
|
|
gtaskPreference.setOnPreferenceChangeListener((preference, newValue) -> {
|
|
|
|
gtaskPreference.setOnPreferenceChangeListener((preference, newValue) -> {
|
|
|
|
if ((boolean) newValue) {
|
|
|
|
if ((boolean) newValue) {
|
|
|
|
if (!playServicesAvailability.refreshAndCheck()) {
|
|
|
|
if (!playServicesAvailability.refreshAndCheck()) {
|
|
|
@ -58,7 +58,7 @@ public class GtasksPreferences extends InjectingPreferenceActivity {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return false;
|
|
|
|
return false;
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
syncAdapterHelper.enableSynchronization(false);
|
|
|
|
gtaskSyncAdapterHelper.enableSynchronization(false);
|
|
|
|
tracker.reportEvent(Tracking.Events.GTASK_DISABLED);
|
|
|
|
tracker.reportEvent(Tracking.Events.GTASK_DISABLED);
|
|
|
|
gtasksPreferenceService.stopOngoing();
|
|
|
|
gtasksPreferenceService.stopOngoing();
|
|
|
|
return true;
|
|
|
|
return true;
|
|
|
@ -70,7 +70,7 @@ public class GtasksPreferences extends InjectingPreferenceActivity {
|
|
|
|
gtasksPreferenceService.getLastSyncDate())));
|
|
|
|
gtasksPreferenceService.getLastSyncDate())));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
findPreference(getString(R.string.gtask_background_sync)).setOnPreferenceChangeListener((preference, o) -> {
|
|
|
|
findPreference(getString(R.string.gtask_background_sync)).setOnPreferenceChangeListener((preference, o) -> {
|
|
|
|
syncAdapterHelper.enableSynchronization((Boolean) o);
|
|
|
|
gtaskSyncAdapterHelper.enableSynchronization((Boolean) o);
|
|
|
|
return true;
|
|
|
|
return true;
|
|
|
|
});
|
|
|
|
});
|
|
|
|
findPreference(getString(R.string.sync_SPr_forget_key)).setOnPreferenceClickListener(preference -> {
|
|
|
|
findPreference(getString(R.string.sync_SPr_forget_key)).setOnPreferenceClickListener(preference -> {
|
|
|
@ -79,7 +79,7 @@ public class GtasksPreferences extends InjectingPreferenceActivity {
|
|
|
|
gtasksPreferenceService.clearLastSyncDate();
|
|
|
|
gtasksPreferenceService.clearLastSyncDate();
|
|
|
|
gtasksPreferenceService.setUserName(null);
|
|
|
|
gtasksPreferenceService.setUserName(null);
|
|
|
|
googleTaskDao.deleteAll();
|
|
|
|
googleTaskDao.deleteAll();
|
|
|
|
syncAdapterHelper.enableSynchronization(false);
|
|
|
|
gtaskSyncAdapterHelper.enableSynchronization(false);
|
|
|
|
tracker.reportEvent(Tracking.Events.GTASK_LOGOUT);
|
|
|
|
tracker.reportEvent(Tracking.Events.GTASK_LOGOUT);
|
|
|
|
gtaskPreference.setChecked(false);
|
|
|
|
gtaskPreference.setChecked(false);
|
|
|
|
})
|
|
|
|
})
|
|
|
@ -98,8 +98,8 @@ public class GtasksPreferences extends InjectingPreferenceActivity {
|
|
|
|
super.onPostResume();
|
|
|
|
super.onPostResume();
|
|
|
|
|
|
|
|
|
|
|
|
CheckBoxPreference backgroundSync = (CheckBoxPreference) findPreference(getString(R.string.gtask_background_sync));
|
|
|
|
CheckBoxPreference backgroundSync = (CheckBoxPreference) findPreference(getString(R.string.gtask_background_sync));
|
|
|
|
backgroundSync.setChecked(syncAdapterHelper.isSyncEnabled());
|
|
|
|
backgroundSync.setChecked(gtaskSyncAdapterHelper.isSyncEnabled());
|
|
|
|
if (syncAdapterHelper.isMasterSyncEnabled()) {
|
|
|
|
if (gtaskSyncAdapterHelper.isMasterSyncEnabled()) {
|
|
|
|
backgroundSync.setSummary(null);
|
|
|
|
backgroundSync.setSummary(null);
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
backgroundSync.setSummary(R.string.master_sync_warning);
|
|
|
|
backgroundSync.setSummary(R.string.master_sync_warning);
|
|
|
@ -111,7 +111,7 @@ public class GtasksPreferences extends InjectingPreferenceActivity {
|
|
|
|
if (requestCode == REQUEST_LOGIN) {
|
|
|
|
if (requestCode == REQUEST_LOGIN) {
|
|
|
|
boolean enabled = resultCode == RESULT_OK;
|
|
|
|
boolean enabled = resultCode == RESULT_OK;
|
|
|
|
if (enabled) {
|
|
|
|
if (enabled) {
|
|
|
|
syncAdapterHelper.enableSynchronization(true);
|
|
|
|
gtaskSyncAdapterHelper.enableSynchronization(true);
|
|
|
|
tracker.reportEvent(Tracking.Events.GTASK_ENABLED);
|
|
|
|
tracker.reportEvent(Tracking.Events.GTASK_ENABLED);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
((CheckBoxPreference) findPreference(getString(R.string.sync_gtasks))).setChecked(enabled);
|
|
|
|
((CheckBoxPreference) findPreference(getString(R.string.sync_gtasks))).setChecked(enabled);
|
|
|
|