aboutsummaryrefslogtreecommitdiffstats
path: root/main/src
diff options
context:
space:
mode:
authorBananeweizen <Bananeweizen@gmx.de>2012-05-04 07:22:27 -0700
committerBananeweizen <Bananeweizen@gmx.de>2012-05-04 07:22:27 -0700
commit54d11ddd78a9a61f9685ce8a3fa89c826dfaeb61 (patch)
treeabaab39df7a494707dc9c2e39bee44bc7031f389 /main/src
parentc1a312f418d8c47812ac5b3bd6f155de135b5a63 (diff)
parent6c6a420135605b7a2fc8c2ea5f43e2e1ec66426f (diff)
downloadcgeo-54d11ddd78a9a61f9685ce8a3fa89c826dfaeb61.zip
cgeo-54d11ddd78a9a61f9685ce8a3fa89c826dfaeb61.tar.gz
cgeo-54d11ddd78a9a61f9685ce8a3fa89c826dfaeb61.tar.bz2
Merge pull request #1492 from marco-jacob/issue#1465
Fix for Issue#1465
Diffstat (limited to 'main/src')
-rw-r--r--main/src/cgeo/geocaching/StaticMapsActivity.java40
-rw-r--r--main/src/cgeo/geocaching/StaticMapsProvider.java10
2 files changed, 34 insertions, 16 deletions
diff --git a/main/src/cgeo/geocaching/StaticMapsActivity.java b/main/src/cgeo/geocaching/StaticMapsActivity.java
index 0cbf01e..a8495ee 100644
--- a/main/src/cgeo/geocaching/StaticMapsActivity.java
+++ b/main/src/cgeo/geocaching/StaticMapsActivity.java
@@ -51,22 +51,7 @@ public class StaticMapsActivity extends AbstractActivity {
finish();
}
} else {
- if (inflater == null) {
- inflater = getLayoutInflater();
- }
-
- if (smapsView == null) {
- smapsView = (LinearLayout) findViewById(R.id.maps_list);
- }
- smapsView.removeAllViews();
-
- for (final Bitmap image : maps) {
- if (image != null) {
- final ImageView map = (ImageView) inflater.inflate(R.layout.map_static_item, null);
- map.setImageBitmap(image);
- smapsView.addView(map);
- }
- }
+ showStaticMaps();
}
} catch (Exception e) {
Log.e("StaticMapsActivity.loadMapsHandler: " + e.toString());
@@ -81,6 +66,7 @@ public class StaticMapsActivity extends AbstractActivity {
switch (which) {
case DialogInterface.BUTTON_POSITIVE:
downloadStaticMaps();
+ startActivity(StaticMapsActivity.this.getIntent());
break;
case DialogInterface.BUTTON_NEGATIVE:
@@ -91,6 +77,28 @@ public class StaticMapsActivity extends AbstractActivity {
}
};
+ /**
+ * Shows the static maps.
+ */
+ private void showStaticMaps() {
+ if (inflater == null) {
+ inflater = getLayoutInflater();
+ }
+
+ if (smapsView == null) {
+ smapsView = (LinearLayout) findViewById(R.id.maps_list);
+ }
+ smapsView.removeAllViews();
+
+ for (final Bitmap image : maps) {
+ if (image != null) {
+ final ImageView map = (ImageView) inflater.inflate(R.layout.map_static_item, null);
+ map.setImageBitmap(image);
+ smapsView.addView(map);
+ }
+ }
+ }
+
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
diff --git a/main/src/cgeo/geocaching/StaticMapsProvider.java b/main/src/cgeo/geocaching/StaticMapsProvider.java
index 691516f..fa5c32f 100644
--- a/main/src/cgeo/geocaching/StaticMapsProvider.java
+++ b/main/src/cgeo/geocaching/StaticMapsProvider.java
@@ -181,6 +181,16 @@ public class StaticMapsProvider {
return MARKERS_URL + "marker_waypoint_" + type + ".png";
}
+ public static void removeCacheStaticMaps(String geocode) {
+ for (int level = 1; level <= 5; level++) {
+ try {
+ StaticMapsProvider.getMapFile(geocode, "", level, false).delete();
+ } catch (Exception e) {
+ Log.e("StaticMapsProvider.removeCacheStaticMaps: " + e.toString());
+ }
+ }
+ }
+
public static void removeWpStaticMaps(int wp_id, String geocode) {
for (int level = 1; level <= 5; level++) {
try {