aboutsummaryrefslogtreecommitdiffstats
path: root/main/src/cgeo/geocaching/CacheDetailActivity.java
diff options
context:
space:
mode:
authorSamuel Tardieu <sam@rfc1149.net>2013-01-13 23:35:25 +0100
committerSamuel Tardieu <sam@rfc1149.net>2013-01-13 23:35:25 +0100
commitd1184c978e3b7d9e41798d59e9e78f30e1c50c97 (patch)
tree9cddac58b45bf1ae43806c51c2a7c58c15f4135c /main/src/cgeo/geocaching/CacheDetailActivity.java
parent0f66ede6fb49fb91146d74c1213420e2f82ee490 (diff)
downloadcgeo-d1184c978e3b7d9e41798d59e9e78f30e1c50c97.zip
cgeo-d1184c978e3b7d9e41798d59e9e78f30e1c50c97.tar.gz
cgeo-d1184c978e3b7d9e41798d59e9e78f30e1c50c97.tar.bz2
fix #2394: view pager jumps back to details on device rotation
Diffstat (limited to 'main/src/cgeo/geocaching/CacheDetailActivity.java')
-rw-r--r--main/src/cgeo/geocaching/CacheDetailActivity.java11
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();