diff options
Diffstat (limited to 'main/src/cgeo/geocaching/CacheDetailActivity.java')
| -rw-r--r-- | main/src/cgeo/geocaching/CacheDetailActivity.java | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/main/src/cgeo/geocaching/CacheDetailActivity.java b/main/src/cgeo/geocaching/CacheDetailActivity.java index 634eea6..8f501b7 100644 --- a/main/src/cgeo/geocaching/CacheDetailActivity.java +++ b/main/src/cgeo/geocaching/CacheDetailActivity.java @@ -129,6 +129,7 @@ public class CacheDetailActivity extends AbstractViewPagerActivity<CacheDetailAc private static final int CONTEXT_MENU_WAYPOINT_RESET_ORIGINAL_CACHE_COORDINATES = 1241; private static final Pattern DARK_COLOR_PATTERN = Pattern.compile(Pattern.quote("color=\"#") + "(0[0-9]){3}" + "\""); + public static final String STATE_PAGE_INDEX = "cgeo.geocaching.pageIndex"; private cgCache cache; private final Progress progress = new Progress(); @@ -287,7 +288,9 @@ public class CacheDetailActivity extends AbstractViewPagerActivity<CacheDetailAc } }); - final int pageToOpen = Settings.isOpenLastDetailsPage() ? Settings.getLastDetailsPage() : 1; + final int pageToOpen = savedInstanceState != null ? + savedInstanceState.getInt(STATE_PAGE_INDEX, 0) : + Settings.isOpenLastDetailsPage() ? Settings.getLastDetailsPage() : 1; createViewPager(pageToOpen, new OnPageSelectedListener() { @Override @@ -307,6 +310,12 @@ public class CacheDetailActivity extends AbstractViewPagerActivity<CacheDetailAc } @Override + public void onSaveInstanceState(final Bundle outState) { + super.onSaveInstanceState(outState); + outState.putInt(STATE_PAGE_INDEX, getCurrentItem()); + } + + @Override public void onResume() { super.onResume(); |
