Open mapActivity
This commit is contained in:
parent
fea90fd37e
commit
ea1c439cd1
3 changed files with 18 additions and 8 deletions
|
@ -177,6 +177,8 @@ public class TravelObfHelper implements TravelHelper {
|
||||||
res.file = file;
|
res.file = file;
|
||||||
String title = amenity.getName("en");
|
String title = amenity.getName("en");
|
||||||
res.title = capitalizeFirstLetter(getGpxTitle(Algorithms.isEmpty(title) ? amenity.getName() : title));
|
res.title = capitalizeFirstLetter(getGpxTitle(Algorithms.isEmpty(title) ? amenity.getName() : title));
|
||||||
|
res.lat = amenity.getLocation().getLatitude();
|
||||||
|
res.lon = amenity.getLocation().getLongitude();
|
||||||
res.routeId = Algorithms.emptyIfNull(amenity.getTagContent(Amenity.ROUTE_ID));
|
res.routeId = Algorithms.emptyIfNull(amenity.getTagContent(Amenity.ROUTE_ID));
|
||||||
try {
|
try {
|
||||||
res.totalDistance = Float.parseFloat(Algorithms.emptyIfNull(amenity.getTagContent(DISTANCE)));
|
res.totalDistance = Float.parseFloat(Algorithms.emptyIfNull(amenity.getTagContent(DISTANCE)));
|
||||||
|
@ -319,6 +321,7 @@ public class TravelObfHelper implements TravelHelper {
|
||||||
gpxFile.tracks = new ArrayList<>();
|
gpxFile.tracks = new ArrayList<>();
|
||||||
gpxFile.tracks.add(track);
|
gpxFile.tracks.add(track);
|
||||||
}
|
}
|
||||||
|
article.gpxFile = gpxFile;
|
||||||
return gpxFile;
|
return gpxFile;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -181,7 +181,7 @@ public class ExploreTabFragment extends BaseOsmAndFragment implements DownloadEv
|
||||||
List<TravelArticle> popularArticles = app.getTravelHelper().getPopularArticles();
|
List<TravelArticle> popularArticles = app.getTravelHelper().getPopularArticles();
|
||||||
for (TravelArticle article : popularArticles) {
|
for (TravelArticle article : popularArticles) {
|
||||||
if (article instanceof TravelGpx) {
|
if (article instanceof TravelGpx) {
|
||||||
items.add(new TravelGpxCard(app, nightMode, (TravelGpx) article, activity.getSupportFragmentManager()));
|
items.add(new TravelGpxCard(app, nightMode, (TravelGpx) article, getActivity()));
|
||||||
} else {
|
} else {
|
||||||
items.add(new ArticleTravelCard(app, nightMode, article, activity.getSupportFragmentManager()));
|
items.add(new ArticleTravelCard(app, nightMode, article, activity.getSupportFragmentManager()));
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,13 +5,15 @@ import android.view.View;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
|
||||||
import androidx.annotation.NonNull;
|
import androidx.annotation.NonNull;
|
||||||
import androidx.fragment.app.FragmentManager;
|
import androidx.fragment.app.FragmentActivity;
|
||||||
import androidx.recyclerview.widget.RecyclerView;
|
import androidx.recyclerview.widget.RecyclerView;
|
||||||
|
|
||||||
import net.osmand.AndroidUtils;
|
import net.osmand.AndroidUtils;
|
||||||
import net.osmand.plus.OsmAndFormatter;
|
import net.osmand.plus.OsmAndFormatter;
|
||||||
import net.osmand.plus.OsmandApplication;
|
import net.osmand.plus.OsmandApplication;
|
||||||
import net.osmand.plus.R;
|
import net.osmand.plus.R;
|
||||||
|
import net.osmand.plus.activities.MapActivity;
|
||||||
|
import net.osmand.plus.settings.backend.OsmandSettings;
|
||||||
import net.osmand.plus.wikipedia.WikiArticleHelper;
|
import net.osmand.plus.wikipedia.WikiArticleHelper;
|
||||||
import net.osmand.plus.wikivoyage.data.TravelGpx;
|
import net.osmand.plus.wikivoyage.data.TravelGpx;
|
||||||
import net.osmand.plus.wikivoyage.data.TravelLocalDataHelper;
|
import net.osmand.plus.wikivoyage.data.TravelLocalDataHelper;
|
||||||
|
@ -22,15 +24,15 @@ public class TravelGpxCard extends BaseTravelCard {
|
||||||
|
|
||||||
private final TravelGpx article;
|
private final TravelGpx article;
|
||||||
private final Drawable readIcon;
|
private final Drawable readIcon;
|
||||||
private final FragmentManager fragmentManager;
|
private final FragmentActivity activity;
|
||||||
private boolean isLastItem;
|
private boolean isLastItem;
|
||||||
|
|
||||||
public TravelGpxCard(@NonNull OsmandApplication app, boolean nightMode, @NonNull TravelGpx article,
|
public TravelGpxCard(@NonNull OsmandApplication app, boolean nightMode, @NonNull TravelGpx article,
|
||||||
@NonNull FragmentManager fragmentManager) {
|
@NonNull FragmentActivity activity) {
|
||||||
super(app, nightMode);
|
super(app, nightMode);
|
||||||
this.article = article;
|
this.article = article;
|
||||||
readIcon = getActiveIcon(R.drawable.ic_action_read_article);
|
readIcon = getActiveIcon(R.drawable.ic_action_read_article);
|
||||||
this.fragmentManager = fragmentManager;
|
this.activity = activity;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -49,10 +51,15 @@ public class TravelGpxCard extends BaseTravelCard {
|
||||||
View.OnClickListener readClickListener = new View.OnClickListener() {
|
View.OnClickListener readClickListener = new View.OnClickListener() {
|
||||||
@Override
|
@Override
|
||||||
public void onClick(View v) {
|
public void onClick(View v) {
|
||||||
if (fragmentManager != null) {
|
if (activity != null) {
|
||||||
// WikivoyageArticleDialogFragment.showInstance(app, fragmentManager,
|
|
||||||
// article.generateIdentifier(), article.getLang());
|
|
||||||
app.getTravelHelper().createGpxFile(article);
|
app.getTravelHelper().createGpxFile(article);
|
||||||
|
final OsmandSettings settings = app.getSettings();
|
||||||
|
settings.setMapLocationToShow(article.getLat(), article.getLon(),
|
||||||
|
settings.getLastKnownMapZoom(),
|
||||||
|
null,
|
||||||
|
false,
|
||||||
|
article.getGpxFile());
|
||||||
|
MapActivity.launchMapActivityMoveToTop(activity);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue