diff options
| author | Bananeweizen <bananeweizen@gmx.de> | 2014-07-08 21:41:13 +0200 |
|---|---|---|
| committer | Bananeweizen <bananeweizen@gmx.de> | 2014-07-08 21:41:13 +0200 |
| commit | 986217740a3c91b37fb1a7cc6efa52a2350d4b5a (patch) | |
| tree | bdfcef32819b38e0d0d6f0e4c979d3a04bf3c085 /main | |
| parent | 4e1d9e0b6c9166e5d4f1b143996d14943c90b239 (diff) | |
| download | cgeo-986217740a3c91b37fb1a7cc6efa52a2350d4b5a.zip cgeo-986217740a3c91b37fb1a7cc6efa52a2350d4b5a.tar.gz cgeo-986217740a3c91b37fb1a7cc6efa52a2350d4b5a.tar.bz2 | |
show active state also for gcvote and send2cgeo services
Diffstat (limited to 'main')
| -rw-r--r-- | main/res/values/preference_keys.xml | 1 | ||||
| -rw-r--r-- | main/res/xml/preferences.xml | 4 | ||||
| -rw-r--r-- | main/src/cgeo/geocaching/CacheListActivity.java | 2 | ||||
| -rw-r--r-- | main/src/cgeo/geocaching/settings/Settings.java | 4 | ||||
| -rw-r--r-- | main/src/cgeo/geocaching/settings/SettingsActivity.java | 12 |
5 files changed, 21 insertions, 2 deletions
diff --git a/main/res/values/preference_keys.xml b/main/res/values/preference_keys.xml index 0993452..72d7c61 100644 --- a/main/res/values/preference_keys.xml +++ b/main/res/values/preference_keys.xml @@ -21,6 +21,7 @@ <string name="preference_screen_twitter">preference_screen_twitter</string> <string name="preference_screen_navigation_menu">fakekey_navigation_menu_screen</string> <string name="preference_screen_sendtocgeo">preference_screen_sendtocgeo</string> + <string name="preference_screen_gcvote">preference_screen_gcvote</string> <string name="pref_fakekey_ocde_authorization">fakekey_ocde_authorization</string> <string name="pref_fakekey_ocpl_authorization">fakekey_ocpl_authorization</string> <string name="pref_fakekey_ocnl_authorization">fakekey_ocnl_authorization</string> diff --git a/main/res/xml/preferences.xml b/main/res/xml/preferences.xml index 1f1838b..6226ebf 100644 --- a/main/res/xml/preferences.xml +++ b/main/res/xml/preferences.xml @@ -315,7 +315,9 @@ android:title="@string/settings_open_website" /> </PreferenceCategory> </PreferenceScreen> - <PreferenceScreen android:title="@string/init_gcvote" > + <PreferenceScreen + android:key="@string/preference_screen_gcvote" + android:title="@string/init_gcvote" > <PreferenceCategory android:title="@string/settings_settings" > <CheckBoxPreference android:defaultValue="true" diff --git a/main/src/cgeo/geocaching/CacheListActivity.java b/main/src/cgeo/geocaching/CacheListActivity.java index 452b55e..2191e0e 100644 --- a/main/src/cgeo/geocaching/CacheListActivity.java +++ b/main/src/cgeo/geocaching/CacheListActivity.java @@ -1126,7 +1126,7 @@ public class CacheListActivity extends AbstractListActivity implements FilteredA public void importWeb() { // menu is also shown with no device connected - if (Settings.getWebDeviceCode() == null) { + if (!Settings.isRegisteredForSend2cgeo()) { Dialogs.confirm(this, R.string.web_import_title, R.string.init_sendToCgeo_description, new OnClickListener() { @Override diff --git a/main/src/cgeo/geocaching/settings/Settings.java b/main/src/cgeo/geocaching/settings/Settings.java index 78df254..975e019 100644 --- a/main/src/cgeo/geocaching/settings/Settings.java +++ b/main/src/cgeo/geocaching/settings/Settings.java @@ -714,6 +714,10 @@ public class Settings { return getString(R.string.pref_webDeviceCode, null); } + public static boolean isRegisteredForSend2cgeo() { + return getWebDeviceCode() != null; + } + public static String getWebDeviceName() { return getString(R.string.pref_webDeviceName, android.os.Build.MODEL); } diff --git a/main/src/cgeo/geocaching/settings/SettingsActivity.java b/main/src/cgeo/geocaching/settings/SettingsActivity.java index f4097b2..ceb57a6 100644 --- a/main/src/cgeo/geocaching/settings/SettingsActivity.java +++ b/main/src/cgeo/geocaching/settings/SettingsActivity.java @@ -170,6 +170,14 @@ public class SettingsActivity extends PreferenceActivity { setServiceScreenSummary(getPreferenceManager(), R.string.pref_connectorGCActive); setServiceScreenSummary(getPreferenceManager(), R.string.pref_connectorOXActive); setServiceScreenSummary(getPreferenceManager(), R.string.pref_connectorECActive); + registerForSummaryAndUpdate(R.string.preference_screen_sendtocgeo); + registerForSummaryAndUpdate(R.string.preference_screen_gcvote); + } + + private void registerForSummaryAndUpdate(final int preferenceKey) { + getPreference(preferenceKey).setOnPreferenceChangeListener(VALUE_CHANGE_LISTENER); + // force an immediate update + VALUE_CHANGE_LISTENER.onPreferenceChange(getPreference(preferenceKey), StringUtils.EMPTY); } private void setWebsite(final int preferenceKey, final String host) { @@ -631,6 +639,10 @@ public class SettingsActivity extends PreferenceActivity { text = preference.getContext().getString(R.string.init_backup_last_no); } preference.setSummary(text); + } else if (isPreference(preference, R.string.preference_screen_sendtocgeo)) { + preference.setSummary(getServiceSummary(Settings.isRegisteredForSend2cgeo())); + } else if (isPreference(preference, R.string.preference_screen_gcvote)) { + preference.setSummary(getServiceSummary(Settings.isRatingWanted())); } else { // For all other preferences, set the summary to the value's // simple string representation. |
