From f625a26bbd9e4e1049480028b7738ff4e37fd712 Mon Sep 17 00:00:00 2001 From: Adithya Abraham Philip Date: Mon, 17 Aug 2015 03:39:24 +0530 Subject: added on/off summaries --- .../keychain/ui/SettingsActivity.java | 27 +++++++++++++++++++++- OpenKeychain/src/main/res/values/strings.xml | 9 +++++--- OpenKeychain/src/main/res/xml/sync_preferences.xml | 6 ++--- 3 files changed, 34 insertions(+), 8 deletions(-) diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/SettingsActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/SettingsActivity.java index 0ae0c62a5..842059da5 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/SettingsActivity.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/SettingsActivity.java @@ -503,10 +503,12 @@ public class SettingsActivity extends AppCompatPreferenceActivity { ); } - private void initializeSyncCheckBox(CheckBoxPreference syncCheckBox, final Account account, + private void initializeSyncCheckBox(final CheckBoxPreference syncCheckBox, + final Account account, final String authority) { boolean syncEnabled = ContentResolver.getSyncAutomatically(account, authority); syncCheckBox.setChecked(syncEnabled); + setSummary(syncCheckBox, authority, syncEnabled); syncCheckBox.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { @Override @@ -520,10 +522,33 @@ public class SettingsActivity extends AppCompatPreferenceActivity { // cancel any ongoing/pending syncs ContentResolver.cancelSync(account, authority); } + setSummary(syncCheckBox, authority, syncEnabled); return true; } }); } + + private void setSummary(CheckBoxPreference syncCheckBox, String authority, + boolean checked) { + switch (authority) { + case Constants.PROVIDER_AUTHORITY: { + if (checked) { + syncCheckBox.setSummary(R.string.label_sync_settings_keyserver_summary_on); + } else { + syncCheckBox.setSummary(R.string.label_sync_settings_keyserver_summary_off); + } + break; + } + case ContactsContract.AUTHORITY: { + if (checked) { + syncCheckBox.setSummary(R.string.label_sync_settings_contacts_summary_on); + } else { + syncCheckBox.setSummary(R.string.label_sync_settings_contacts_summary_off); + } + break; + } + } + } } protected boolean isValidFragment(String fragmentName) { diff --git a/OpenKeychain/src/main/res/values/strings.xml b/OpenKeychain/src/main/res/values/strings.xml index ba5be593f..2d9b22852 100644 --- a/OpenKeychain/src/main/res/values/strings.xml +++ b/OpenKeychain/src/main/res/values/strings.xml @@ -177,9 +177,13 @@ "Search keys on keybase.io" "Automatically update keys" - "Updates keys older than a week, from the preferred keyserver" + "Keys older than a week are updated from the preferred keyserver" + "Keys not automatically updated" "Sync Contacts with Keys" - "Associates contacts with imported keys, based on email, completely offline" + "Keys linked to contacts with matching emails, happens completely offline" + "New keys will not be linked to contacts" + + "Automatically update keys" "Enable Tor" @@ -1358,7 +1362,6 @@ "Password" - "Update Keys from Cloud" "Sync From Cloud requires Orbot" "Tap to start orbot" "Start Orbot" diff --git a/OpenKeychain/src/main/res/xml/sync_preferences.xml b/OpenKeychain/src/main/res/xml/sync_preferences.xml index d4ea81591..e870be9ec 100644 --- a/OpenKeychain/src/main/res/xml/sync_preferences.xml +++ b/OpenKeychain/src/main/res/xml/sync_preferences.xml @@ -2,11 +2,9 @@ + android:title="@string/label_sync_settings_keyserver_title"/> + android:title="@string/label_sync_settings_contacts_title" /> -- cgit v1.2.3