diff options
| -rw-r--r-- | main/src/cgeo/geocaching/CacheDetailActivity.java | 11 | ||||
| -rw-r--r-- | main/src/cgeo/geocaching/TrackableActivity.java | 7 |
2 files changed, 12 insertions, 6 deletions
diff --git a/main/src/cgeo/geocaching/CacheDetailActivity.java b/main/src/cgeo/geocaching/CacheDetailActivity.java index 188f939..5f6fdef 100644 --- a/main/src/cgeo/geocaching/CacheDetailActivity.java +++ b/main/src/cgeo/geocaching/CacheDetailActivity.java @@ -533,10 +533,12 @@ public class CacheDetailActivity extends AbstractViewPagerActivity<CacheDetailAc @Override public boolean onPrepareOptionsMenu(Menu menu) { - menu.findItem(MENU_DEFAULT_NAVIGATION).setVisible(null != cache.getCoords()); - menu.findItem(MENU_CALENDAR).setVisible(cache.canBeAddedToCalendar()); - menu.findItem(MENU_CACHES_AROUND).setVisible(null != cache.getCoords() && cache.supportsCachesAround()); - menu.findItem(MENU_BROWSER).setVisible(cache.canOpenInBrowser()); + if (cache != null) { + menu.findItem(MENU_DEFAULT_NAVIGATION).setVisible(null != cache.getCoords()); + menu.findItem(MENU_CALENDAR).setVisible(cache.canBeAddedToCalendar()); + menu.findItem(MENU_CACHES_AROUND).setVisible(null != cache.getCoords() && cache.supportsCachesAround()); + menu.findItem(MENU_BROWSER).setVisible(cache.canOpenInBrowser()); + } return super.onPrepareOptionsMenu(menu); } @@ -650,6 +652,7 @@ public class CacheDetailActivity extends AbstractViewPagerActivity<CacheDetailAc reinitializeViewPager(); // rendering done! remove progress popup if any there + invalidateOptionsMenuCompatible(); progress.dismiss(); } diff --git a/main/src/cgeo/geocaching/TrackableActivity.java b/main/src/cgeo/geocaching/TrackableActivity.java index b01942f..8b300be 100644 --- a/main/src/cgeo/geocaching/TrackableActivity.java +++ b/main/src/cgeo/geocaching/TrackableActivity.java @@ -95,6 +95,7 @@ public class TrackableActivity extends AbstractViewPagerActivity<TrackableActivi setTitle(trackable.getName()); } + invalidateOptionsMenuCompatible(); reinitializeViewPager(); } catch (Exception e) { @@ -257,8 +258,10 @@ public class TrackableActivity extends AbstractViewPagerActivity<TrackableActivi @Override public boolean onPrepareOptionsMenu(Menu menu) { - menu.findItem(MENU_LOG_TOUCH).setEnabled(StringUtils.isNotBlank(geocode) && trackable.isLoggable()); - menu.findItem(MENU_BROWSER_TRACKABLE).setEnabled(StringUtils.isNotBlank(trackable.getUrl())); + if (trackable != null) { + menu.findItem(MENU_LOG_TOUCH).setEnabled(StringUtils.isNotBlank(geocode) && trackable.isLoggable()); + menu.findItem(MENU_BROWSER_TRACKABLE).setEnabled(StringUtils.isNotBlank(trackable.getUrl())); + } return super.onPrepareOptionsMenu(menu); } |
