diff options
Diffstat (limited to 'main')
| -rw-r--r-- | main/res/values/preference_keys.xml | 2 | ||||
| -rw-r--r-- | main/res/xml/preferences.xml | 23 | ||||
| -rw-r--r-- | main/src/cgeo/geocaching/CacheListActivity.java | 17 |
3 files changed, 31 insertions, 11 deletions
diff --git a/main/res/values/preference_keys.xml b/main/res/values/preference_keys.xml index 6036be3..c26f5b3 100644 --- a/main/res/values/preference_keys.xml +++ b/main/res/values/preference_keys.xml @@ -19,6 +19,7 @@ <string name="preference_screen_ox">preference_screen_ox</string> <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="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> @@ -167,5 +168,4 @@ <string name="pref_twitter_cache_message">twitter_cache_message</string> <string name="pref_twitter_trackable_message">twitter_trackable_message</string> <string name="pref_ec_icons">ec_icons</string> - </resources>
\ No newline at end of file diff --git a/main/res/xml/preferences.xml b/main/res/xml/preferences.xml index 11d62c5..76a6407 100644 --- a/main/res/xml/preferences.xml +++ b/main/res/xml/preferences.xml @@ -216,7 +216,9 @@ android:title="@string/settings_open_website" /> </PreferenceCategory> </PreferenceScreen> - <PreferenceScreen android:title="@string/settings_title_ec" android:key="@string/preference_screen_ec"> + <PreferenceScreen + android:key="@string/preference_screen_ec" + android:title="@string/settings_title_ec" > <PreferenceCategory android:title="@string/settings_settings" > <CheckBoxPreference android:defaultValue="false" @@ -266,7 +268,9 @@ android:title="@string/settings_open_website" /> </PreferenceCategory> </PreferenceScreen> - <PreferenceScreen android:title="@string/settings_title_ox" android:key="@string/preference_screen_ox"> + <PreferenceScreen + android:key="@string/preference_screen_ox" + android:title="@string/settings_title_ox" > <PreferenceCategory android:title="@string/settings_settings" > <CheckBoxPreference android:defaultValue="false" @@ -285,11 +289,12 @@ </PreferenceScreen> <PreferenceScreen android:title="@string/init_gcvote" > <PreferenceCategory android:title="@string/settings_settings" > - <CheckBoxPreference - android:defaultValue="true" - android:key="@string/pref_ratingwanted" - android:summary="@string/init_summary_ratingwanted" - android:title="@string/init_ratingwanted" /> + <CheckBoxPreference + android:defaultValue="true" + android:key="@string/pref_ratingwanted" + android:summary="@string/init_summary_ratingwanted" + android:title="@string/init_ratingwanted" /> + <cgeo.geocaching.settings.EditPasswordPreference android:dialogTitle="@string/init_password" android:hint="@string/init_password" @@ -305,7 +310,9 @@ android:title="@string/settings_open_website" /> </PreferenceCategory> </PreferenceScreen> - <PreferenceScreen android:title="@string/init_sendToCgeo" > + <PreferenceScreen + android:key="@string/preference_screen_sendtocgeo" + android:title="@string/init_sendToCgeo" > <PreferenceCategory android:title="@string/settings_settings" > <EditTextPreference android:dialogTitle="@string/init_sendToCgeo_name" diff --git a/main/src/cgeo/geocaching/CacheListActivity.java b/main/src/cgeo/geocaching/CacheListActivity.java index 5a385a2..87f03da 100644 --- a/main/src/cgeo/geocaching/CacheListActivity.java +++ b/main/src/cgeo/geocaching/CacheListActivity.java @@ -40,6 +40,7 @@ import cgeo.geocaching.sensors.DirectionProvider; import cgeo.geocaching.sensors.GeoDirHandler; import cgeo.geocaching.sensors.IGeoData; import cgeo.geocaching.settings.Settings; +import cgeo.geocaching.settings.SettingsActivity; import cgeo.geocaching.sorting.CacheComparator; import cgeo.geocaching.sorting.ComparatorUserInterface; import cgeo.geocaching.ui.CacheListAdapter; @@ -67,6 +68,7 @@ import android.app.AlertDialog; import android.app.ProgressDialog; import android.content.Context; import android.content.DialogInterface; +import android.content.DialogInterface.OnClickListener; import android.content.Intent; import android.content.res.Configuration; import android.database.Cursor; @@ -543,7 +545,7 @@ public class CacheListActivity extends AbstractListActivity implements FilteredA setVisible(menu, R.id.menu_export, !isEmpty && (isHistory || isOffline)); setVisible(menu, R.id.menu_remove_from_history, !isEmpty && isHistory); setVisible(menu, R.id.menu_clear_offline_logs, !isEmpty && containsOfflineLogs() && (isHistory || isOffline)); - setVisible(menu, R.id.menu_import_web, isOffline && Settings.getWebDeviceCode() != null); + setVisible(menu, R.id.menu_import_web, isOffline); setVisible(menu, R.id.menu_import_gpx, isOffline); setVisible(menu, R.id.menu_refresh_stored_top, !isOffline && !isEmpty); @@ -1077,8 +1079,19 @@ public class CacheListActivity extends AbstractListActivity implements FilteredA } public void importWeb() { - detailProgress = 0; + // menu is also shown with no device connected + if (Settings.getWebDeviceCode() == null) { + Dialogs.confirm(this, R.string.web_import_title, R.string.init_sendToCgeo_description, new OnClickListener() { + + @Override + public void onClick(DialogInterface dialog, int which) { + SettingsActivity.openForScreen(R.string.preference_screen_sendtocgeo, CacheListActivity.this); + } + }); + return; + } + detailProgress = 0; showProgress(false); final DownloadFromWebHandler downloadFromWebHandler = new DownloadFromWebHandler(); progress.show(this, null, res.getString(R.string.web_import_waiting), true, downloadFromWebHandler.cancelMessage()); |
