fix popup with saved track name in trip recording dialog
This commit is contained in:
parent
428327c2cd
commit
4218711971
4 changed files with 23 additions and 11 deletions
|
@ -12,6 +12,7 @@
|
||||||
|
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
<string name="track_recording_will_be_continued">The recording will be continued.</string>
|
||||||
<string name="map_widget_distance_by_tap">Distance by tap</string>
|
<string name="map_widget_distance_by_tap">Distance by tap</string>
|
||||||
<string name="quick_action_coordinates_widget_descr">A toggle to show or hide the Coordinates widget on the map.</string>
|
<string name="quick_action_coordinates_widget_descr">A toggle to show or hide the Coordinates widget on the map.</string>
|
||||||
<string name="quick_action_coordinates_widget_show">Show Coordinates widget</string>
|
<string name="quick_action_coordinates_widget_show">Show Coordinates widget</string>
|
||||||
|
|
|
@ -90,11 +90,11 @@ public class StopTrackRecordingBottomFragment extends MenuBottomSheetDialogFragm
|
||||||
@Override
|
@Override
|
||||||
public void onClick(View v) {
|
public void onClick(View v) {
|
||||||
tag = (ItemType) buttonSave.getTag();
|
tag = (ItemType) buttonSave.getTag();
|
||||||
if (plugin != null && settings.SAVE_GLOBAL_TRACK_TO_GPX.get()) {
|
if (plugin != null && app.getSavingTrackHelper().hasDataToSave()) {
|
||||||
plugin.saveCurrentTrack(null, mapActivity);
|
plugin.saveCurrentTrack(null, mapActivity);
|
||||||
app.getNotificationHelper().refreshNotifications();
|
app.getNotificationHelper().refreshNotifications();
|
||||||
|
dismiss();
|
||||||
}
|
}
|
||||||
dismiss();
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.create());
|
.create());
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
package net.osmand.plus.monitoring;
|
package net.osmand.plus.monitoring;
|
||||||
|
|
||||||
import android.annotation.SuppressLint;
|
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
import android.app.Dialog;
|
import android.app.Dialog;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
@ -38,6 +37,7 @@ import com.google.android.material.snackbar.Snackbar;
|
||||||
|
|
||||||
import net.osmand.AndroidUtils;
|
import net.osmand.AndroidUtils;
|
||||||
import net.osmand.GPXUtilities.GPXFile;
|
import net.osmand.GPXUtilities.GPXFile;
|
||||||
|
import net.osmand.IndexConstants;
|
||||||
import net.osmand.PlatformUtil;
|
import net.osmand.PlatformUtil;
|
||||||
import net.osmand.plus.GpxSelectionHelper.SelectedGpxFile;
|
import net.osmand.plus.GpxSelectionHelper.SelectedGpxFile;
|
||||||
import net.osmand.plus.OsmandApplication;
|
import net.osmand.plus.OsmandApplication;
|
||||||
|
@ -61,6 +61,7 @@ import net.osmand.util.Algorithms;
|
||||||
import org.apache.commons.logging.Log;
|
import org.apache.commons.logging.Log;
|
||||||
|
|
||||||
import java.lang.ref.WeakReference;
|
import java.lang.ref.WeakReference;
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
@ -71,6 +72,7 @@ public class TripRecordingActiveBottomSheet extends MenuBottomSheetDialogFragmen
|
||||||
public static final String TAG = TripRecordingActiveBottomSheet.class.getSimpleName();
|
public static final String TAG = TripRecordingActiveBottomSheet.class.getSimpleName();
|
||||||
private static final Log log = PlatformUtil.getLog(TripRecordingActiveBottomSheet.class);
|
private static final Log log = PlatformUtil.getLog(TripRecordingActiveBottomSheet.class);
|
||||||
private static final String UPDATE_CURRENT_GPX_FILE = "update_current_gpx_file";
|
private static final String UPDATE_CURRENT_GPX_FILE = "update_current_gpx_file";
|
||||||
|
public static final String UPDATE_TRACK_ICON = "update_track_icon";
|
||||||
private static final int GENERAL_UPDATE_GPS_INTERVAL = 1000;
|
private static final int GENERAL_UPDATE_GPS_INTERVAL = 1000;
|
||||||
private static final int GENERAL_UPDATE_SAVE_INTERVAL = 1000;
|
private static final int GENERAL_UPDATE_SAVE_INTERVAL = 1000;
|
||||||
|
|
||||||
|
@ -131,7 +133,7 @@ public class TripRecordingActiveBottomSheet extends MenuBottomSheetDialogFragmen
|
||||||
|
|
||||||
View buttonClear = itemView.findViewById(R.id.button_clear);
|
View buttonClear = itemView.findViewById(R.id.button_clear);
|
||||||
final View buttonOnline = itemView.findViewById(R.id.button_online);
|
final View buttonOnline = itemView.findViewById(R.id.button_online);
|
||||||
View buttonSegment = itemView.findViewById(R.id.button_segment);
|
final View buttonSegment = itemView.findViewById(R.id.button_segment);
|
||||||
buttonSave = itemView.findViewById(R.id.button_save);
|
buttonSave = itemView.findViewById(R.id.button_save);
|
||||||
final View buttonPause = itemView.findViewById(R.id.button_pause);
|
final View buttonPause = itemView.findViewById(R.id.button_pause);
|
||||||
View buttonStop = itemView.findViewById(R.id.button_stop);
|
View buttonStop = itemView.findViewById(R.id.button_stop);
|
||||||
|
@ -274,6 +276,7 @@ public class TripRecordingActiveBottomSheet extends MenuBottomSheetDialogFragmen
|
||||||
settings.SAVE_GLOBAL_TRACK_TO_GPX.set(wasTrackMonitored);
|
settings.SAVE_GLOBAL_TRACK_TO_GPX.set(wasTrackMonitored);
|
||||||
updateStatus();
|
updateStatus();
|
||||||
createItem(buttonPause, wasTrackMonitored ? ItemType.PAUSE : ItemType.RESUME, true);
|
createItem(buttonPause, wasTrackMonitored ? ItemType.PAUSE : ItemType.RESUME, true);
|
||||||
|
createItem(buttonSegment, ItemType.START_SEGMENT, wasTrackMonitored);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -443,16 +446,21 @@ public class TripRecordingActiveBottomSheet extends MenuBottomSheetDialogFragmen
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void gpxSavingFinished(Exception errorMessage) {
|
public void gpxSavingFinished(Exception errorMessage) {
|
||||||
String gpxFileName = Algorithms.getFileWithoutDirs(getGPXFile().path);
|
|
||||||
final MapActivity mapActivity = getMapActivity();
|
final MapActivity mapActivity = getMapActivity();
|
||||||
final Context context = getContext();
|
final Context context = getContext();
|
||||||
final SaveGpxResult result = helper.saveDataToGpx(app.getAppCustomization().getTracksDir());
|
final SaveGpxResult result = helper.saveDataToGpx(app.getAppCustomization().getTracksDir());
|
||||||
|
ArrayList<String> filenames = new ArrayList<>(result.getFilenames());
|
||||||
|
String fileName = "";
|
||||||
|
if (filenames.size() > 0) {
|
||||||
|
fileName = filenames.get(filenames.size() - 1) + IndexConstants.GPX_FILE_EXT;
|
||||||
|
}
|
||||||
|
String message = fileName + " " + app.getResources().getString(R.string.shared_string_is_saved) + ". "
|
||||||
|
+ app.getResources().getString(R.string.track_recording_will_be_continued);
|
||||||
if (mapActivity != null && context != null) {
|
if (mapActivity != null && context != null) {
|
||||||
final WeakReference<MapActivity> mapActivityRef = new WeakReference<>(mapActivity);
|
final WeakReference<MapActivity> mapActivityRef = new WeakReference<>(mapActivity);
|
||||||
final FragmentManager fragmentManager = mapActivityRef.get().getSupportFragmentManager();
|
final FragmentManager fragmentManager = mapActivityRef.get().getSupportFragmentManager();
|
||||||
@SuppressLint({"StringFormatInvalid", "LocalSuppress"})
|
|
||||||
Snackbar snackbar = Snackbar.make(getView(),
|
Snackbar snackbar = Snackbar.make(getView(),
|
||||||
app.getResources().getString(R.string.shared_string_file_is_saved, gpxFileName),
|
message,
|
||||||
Snackbar.LENGTH_LONG)
|
Snackbar.LENGTH_LONG)
|
||||||
.setAction(R.string.shared_string_rename, new View.OnClickListener() {
|
.setAction(R.string.shared_string_rename, new View.OnClickListener() {
|
||||||
@Override
|
@Override
|
||||||
|
@ -492,10 +500,12 @@ public class TripRecordingActiveBottomSheet extends MenuBottomSheetDialogFragmen
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void show(boolean updateTrackIcon) {
|
public void show(String... keys) {
|
||||||
show();
|
show();
|
||||||
if (updateTrackIcon && buttonAppearance != null) {
|
for (String key : keys) {
|
||||||
updateTrackIcon(buttonAppearance);
|
if (key.equals(UPDATE_TRACK_ICON)) {
|
||||||
|
updateTrackIcon(buttonAppearance);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -64,6 +64,7 @@ import static net.osmand.plus.dialogs.ConfigureMapMenu.CURRENT_TRACK_COLOR_ATTR;
|
||||||
import static net.osmand.plus.dialogs.GpxAppearanceAdapter.TRACK_WIDTH_BOLD;
|
import static net.osmand.plus.dialogs.GpxAppearanceAdapter.TRACK_WIDTH_BOLD;
|
||||||
import static net.osmand.plus.dialogs.GpxAppearanceAdapter.TRACK_WIDTH_MEDIUM;
|
import static net.osmand.plus.dialogs.GpxAppearanceAdapter.TRACK_WIDTH_MEDIUM;
|
||||||
import static net.osmand.plus.dialogs.GpxAppearanceAdapter.getAppearanceItems;
|
import static net.osmand.plus.dialogs.GpxAppearanceAdapter.getAppearanceItems;
|
||||||
|
import static net.osmand.plus.monitoring.TripRecordingActiveBottomSheet.UPDATE_TRACK_ICON;
|
||||||
|
|
||||||
public class TrackAppearanceFragment extends ContextMenuScrollFragment implements CardListener, ColorPickerListener {
|
public class TrackAppearanceFragment extends ContextMenuScrollFragment implements CardListener, ColorPickerListener {
|
||||||
|
|
||||||
|
@ -385,7 +386,7 @@ public class TrackAppearanceFragment extends ContextMenuScrollFragment implement
|
||||||
if (target instanceof TripRecordingBottomSheet) {
|
if (target instanceof TripRecordingBottomSheet) {
|
||||||
((TripRecordingBottomSheet) target).show();
|
((TripRecordingBottomSheet) target).show();
|
||||||
} else if (target instanceof TripRecordingActiveBottomSheet) {
|
} else if (target instanceof TripRecordingActiveBottomSheet) {
|
||||||
((TripRecordingActiveBottomSheet) target).show(true);
|
((TripRecordingActiveBottomSheet) target).show(UPDATE_TRACK_ICON);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue