aboutsummaryrefslogtreecommitdiffstats
path: root/main
diff options
context:
space:
mode:
Diffstat (limited to 'main')
-rw-r--r--main/res/menu/compass_activity_options.xml5
-rw-r--r--main/res/menu/map_activity.xml6
-rw-r--r--main/res/values/changelog_master.xml1
-rw-r--r--main/res/values/strings.xml1
-rw-r--r--main/src/cgeo/geocaching/CompassActivity.java8
-rw-r--r--main/src/cgeo/geocaching/maps/CGeoMap.java7
6 files changed, 28 insertions, 0 deletions
diff --git a/main/res/menu/compass_activity_options.xml b/main/res/menu/compass_activity_options.xml
index d70c637..d3887af 100644
--- a/main/res/menu/compass_activity_options.xml
+++ b/main/res/menu/compass_activity_options.xml
@@ -9,6 +9,11 @@
app:showAsAction="ifRoom|withText">
</item>
<item
+ android:id="@+id/menu_hint"
+ android:title="@string/cache_hint"
+ app:showAsAction="ifRoom|withText">
+ </item>
+ <item
android:id="@+id/menu_tts_start"
android:icon="@drawable/ic_menu_start_conversation"
android:title="@string/tts_start"
diff --git a/main/res/menu/map_activity.xml b/main/res/menu/map_activity.xml
index 04ccd98..667df17 100644
--- a/main/res/menu/map_activity.xml
+++ b/main/res/menu/map_activity.xml
@@ -30,6 +30,12 @@
app:showAsAction="ifRoom|withText">
</item>
<item
+ android:id="@+id/menu_hint"
+ android:title="@string/cache_hint"
+ app:showAsAction="ifRoom|withText"
+ android:visible="false">
+ </item>
+ <item
android:id="@+id/menu_store_caches"
android:icon="@drawable/ic_menu_set_as"
android:showAsAction="ifRoom|withText"
diff --git a/main/res/values/changelog_master.xml b/main/res/values/changelog_master.xml
index e15121e..daa91ad 100644
--- a/main/res/values/changelog_master.xml
+++ b/main/res/values/changelog_master.xml
@@ -9,6 +9,7 @@
· New: show rudimentary details for geocaching.com.au swaggies\n
· New: Weekday shown in event lists\n
· New: Filter for caches with offline logs\n
+ · New: Show hint in compass\n
· Fix: Don\'t allow logs in the future\n
· Fix: Allow shortcut creation for All caches list\n
\n
diff --git a/main/res/values/strings.xml b/main/res/values/strings.xml
index e1db81b..2eecdf1 100644
--- a/main/res/values/strings.xml
+++ b/main/res/values/strings.xml
@@ -676,6 +676,7 @@
<string name="cache_waypoints_add">Add Waypoint</string>
<string name="cache_hint">Hint</string>
+ <string name="cache_hint_not_available">No hint available</string>
<string name="cache_logs">Logbook</string>
<string name="cache_logs_friends_and_own">Friends/Own Logs</string>
<string name="cache_dialog_loading_details">Loading cache details…</string>
diff --git a/main/src/cgeo/geocaching/CompassActivity.java b/main/src/cgeo/geocaching/CompassActivity.java
index 27dbb4a..a79d270 100644
--- a/main/src/cgeo/geocaching/CompassActivity.java
+++ b/main/src/cgeo/geocaching/CompassActivity.java
@@ -203,6 +203,9 @@ public class CompassActivity extends AbstractActionBarActivity {
case R.id.menu_compass_cache:
setTarget(cache);
return true;
+ case R.id.menu_hint:
+ showHint();
+ return true;
default:
if (LoggingUI.onMenuItemSelected(item, this, cache)) {
return true;
@@ -218,6 +221,11 @@ public class CompassActivity extends AbstractActionBarActivity {
return super.onOptionsItemSelected(item);
}
+ private void showHint() {
+ final String hint = cache.getHint();
+ showToast(StringUtils.defaultString(hint, getString(R.string.cache_hint_not_available)));
+ }
+
private void setTarget(@NonNull final Geopoint coords, final String newDescription) {
setDestCoords(coords);
setTargetDescription(newDescription);
diff --git a/main/src/cgeo/geocaching/maps/CGeoMap.java b/main/src/cgeo/geocaching/maps/CGeoMap.java
index 70d8bb8..467a02f 100644
--- a/main/src/cgeo/geocaching/maps/CGeoMap.java
+++ b/main/src/cgeo/geocaching/maps/CGeoMap.java
@@ -682,6 +682,7 @@ public class CGeoMap extends AbstractMap implements ViewFactory {
default: // DETAILED
menu.findItem(R.id.menu_strategy_detailed).setChecked(true);
}
+ menu.findItem(R.id.menu_hint).setVisible(mapMode == MapMode.SINGLE);
} catch (final RuntimeException e) {
Log.e("CGeoMap.onPrepareOptionsMenu", e);
}
@@ -785,6 +786,12 @@ public class CGeoMap extends AbstractMap implements ViewFactory {
Settings.setLiveMapStrategy(Strategy.DETAILED);
return true;
}
+ case R.id.menu_hint:
+ if (caches.size() == 1) {
+ final String hint = caches.iterator().next().getHint();
+ ActivityMixin.showToast(getActivity(), StringUtils.defaultString(hint, getActivity().getString(R.string.cache_hint_not_available)));
+ }
+ return true;
default:
final MapSource mapSource = MapProviderFactory.getMapSource(id);
if (mapSource != null) {