diff options
author | Erik <roboerik@android.com> | 2010-09-15 18:59:04 -0700 |
---|---|---|
committer | Erik <roboerik@android.com> | 2010-09-21 13:47:09 -0700 |
commit | 6b858fc6f8afad95a075595016c5c22547924886 (patch) | |
tree | 5d99912b5667c5ca5800cb060d2f1f4e34de1c36 /src/com/android/calendar/CalendarSettingsActivity.java | |
parent | 57e0bf4285419d9aca9d1949fd46889f852c0d09 (diff) | |
download | android_packages_apps_Calendar-6b858fc6f8afad95a075595016c5c22547924886.tar.gz android_packages_apps_Calendar-6b858fc6f8afad95a075595016c5c22547924886.tar.bz2 android_packages_apps_Calendar-6b858fc6f8afad95a075595016c5c22547924886.zip |
Moves per calendar sync settings into Settings
This makes calendar sync settings show up on a per account basis
in the Calendar Settings activity and also displays a message to
the user if the account is not being auto-synced.
Change-Id: I2326922f518ae3bc8d1db70ae5c1d5b07b251ca3
Diffstat (limited to 'src/com/android/calendar/CalendarSettingsActivity.java')
-rw-r--r-- | src/com/android/calendar/CalendarSettingsActivity.java | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/src/com/android/calendar/CalendarSettingsActivity.java b/src/com/android/calendar/CalendarSettingsActivity.java index 8851bf24..24ad2931 100644 --- a/src/com/android/calendar/CalendarSettingsActivity.java +++ b/src/com/android/calendar/CalendarSettingsActivity.java @@ -16,7 +16,13 @@ package com.android.calendar; +import android.accounts.Account; +import android.accounts.AccountManager; +import android.content.ContentResolver; +import android.os.Bundle; import android.preference.PreferenceActivity; +import android.provider.Calendar; +import android.provider.Calendar.Calendars; import java.util.List; @@ -24,5 +30,23 @@ public class CalendarSettingsActivity extends PreferenceActivity { @Override public void onBuildHeaders(List<Header> target) { loadHeadersFromResource(R.xml.calendar_settings_headers, target); + Account[] accounts = AccountManager.get(this).getAccounts(); + if (accounts != null) { + int length = accounts.length; + for (int i = 0; i < length; i++) { + Account acct = accounts[i]; + if (ContentResolver.getIsSyncable(acct, Calendar.AUTHORITY) > 0) { + Header accountHeader = new Header(); + accountHeader.title = acct.name; + accountHeader.fragment = + "com.android.calendar.selectcalendars.SelectCalendarsSyncFragment"; + Bundle args = new Bundle(); + args.putString(Calendars.ACCOUNT_NAME, acct.name); + args.putString(Calendars.ACCOUNT_TYPE, acct.type); + accountHeader.fragmentArguments = args; + target.add(1, accountHeader); + } + } + } } -}
\ No newline at end of file +} |