package cgeo.geocaching.apps.cachelist; import cgeo.geocaching.R; import cgeo.geocaching.SearchResult; import cgeo.geocaching.apps.AbstractApp; import cgeo.geocaching.maps.DefaultMap; import cgeo.geocaching.models.Geocache; import cgeo.geocaching.settings.Settings; import android.app.Activity; import android.support.annotation.NonNull; import java.util.List; class InternalCacheListMap extends AbstractApp implements CacheListApp { final Class<?> cls; InternalCacheListMap(final Class<?> cls, final int name) { super(getString(name), null); this.cls = cls; } InternalCacheListMap() { super(getString(R.string.cache_menu_map), null); cls = null; } @Override public boolean isInstalled() { return true; } @Override public boolean invoke(@NonNull final List<Geocache> caches, @NonNull final Activity activity, @NonNull final SearchResult search) { DefaultMap.startActivitySearch(activity, cls != null ? cls : Settings.getMapProvider().getMapClass(), search, null); return true; } }