aboutsummaryrefslogtreecommitdiffstats
path: root/main/src/cgeo/geocaching/connector/gc/GCMap.java
diff options
context:
space:
mode:
Diffstat (limited to 'main/src/cgeo/geocaching/connector/gc/GCMap.java')
-rw-r--r--main/src/cgeo/geocaching/connector/gc/GCMap.java17
1 files changed, 9 insertions, 8 deletions
diff --git a/main/src/cgeo/geocaching/connector/gc/GCMap.java b/main/src/cgeo/geocaching/connector/gc/GCMap.java
index 643caf5..4bc55fe 100644
--- a/main/src/cgeo/geocaching/connector/gc/GCMap.java
+++ b/main/src/cgeo/geocaching/connector/gc/GCMap.java
@@ -2,7 +2,7 @@ package cgeo.geocaching.connector.gc;
import cgeo.geocaching.Geocache;
import cgeo.geocaching.SearchResult;
-import cgeo.geocaching.Settings;
+import cgeo.geocaching.settings.Settings;
import cgeo.geocaching.cgData;
import cgeo.geocaching.cgeoapplication;
import cgeo.geocaching.enumerations.CacheSize;
@@ -337,7 +337,7 @@ public class GCMap {
Log.e("GCMap.searchByViewport: No cache parsed for viewport " + viewport);
}
else {
- searchResult.addGeocodes(search.getGeocodes());
+ searchResult.addSearchResult(search);
}
Tile.Cache.add(tile);
}
@@ -349,20 +349,21 @@ public class GCMap {
}
}
+
+ // Check for vanished found caches
+ if (tiles.iterator().next().getZoomlevel() >= Tile.ZOOMLEVEL_MIN_PERSONALIZED) {
+ searchResult.addFilteredGeocodes(cgData.getCachedMissingFromSearch(searchResult, tiles, GCConnector.getInstance(), Tile.ZOOMLEVEL_MIN_PERSONALIZED - 1));
+ }
}
- if (strategy.flags.contains(StrategyFlag.SEARCH_NEARBY)) {
+ if (strategy.flags.contains(StrategyFlag.SEARCH_NEARBY) && Settings.isPremiumMember()) {
final Geopoint center = viewport.getCenter();
if ((lastSearchViewport == null) || !lastSearchViewport.contains(center)) {
//FIXME We don't have a RecaptchaReceiver!?
SearchResult search = GCParser.searchByCoords(center, Settings.getCacheType(), false, null);
if (search != null && !search.isEmpty()) {
final Set<String> geocodes = search.getGeocodes();
- if (Settings.isPremiumMember()) {
- lastSearchViewport = cgData.getBounds(geocodes);
- } else {
- lastSearchViewport = new Viewport(center, center);
- }
+ lastSearchViewport = cgData.getBounds(geocodes);
searchResult.addGeocodes(geocodes);
}
}