diff --git a/OsmAnd/res/drawable-hdpi/ic_action_type_add_16.png b/OsmAnd/res/drawable-hdpi/ic_action_type_add_16.png
new file mode 100644
index 0000000000..ff4d2d7400
Binary files /dev/null and b/OsmAnd/res/drawable-hdpi/ic_action_type_add_16.png differ
diff --git a/OsmAnd/res/drawable-hdpi/ic_action_type_delete_16.png b/OsmAnd/res/drawable-hdpi/ic_action_type_delete_16.png
new file mode 100644
index 0000000000..1df427fe41
Binary files /dev/null and b/OsmAnd/res/drawable-hdpi/ic_action_type_delete_16.png differ
diff --git a/OsmAnd/res/drawable-hdpi/ic_action_type_edit_16.png b/OsmAnd/res/drawable-hdpi/ic_action_type_edit_16.png
new file mode 100644
index 0000000000..8f02b07001
Binary files /dev/null and b/OsmAnd/res/drawable-hdpi/ic_action_type_edit_16.png differ
diff --git a/OsmAnd/res/drawable-mdpi/ic_action_type_add_16.png b/OsmAnd/res/drawable-mdpi/ic_action_type_add_16.png
new file mode 100644
index 0000000000..db1826da8b
Binary files /dev/null and b/OsmAnd/res/drawable-mdpi/ic_action_type_add_16.png differ
diff --git a/OsmAnd/res/drawable-mdpi/ic_action_type_delete_16.png b/OsmAnd/res/drawable-mdpi/ic_action_type_delete_16.png
new file mode 100644
index 0000000000..4cd6c72dd2
Binary files /dev/null and b/OsmAnd/res/drawable-mdpi/ic_action_type_delete_16.png differ
diff --git a/OsmAnd/res/drawable-mdpi/ic_action_type_edit_16.png b/OsmAnd/res/drawable-mdpi/ic_action_type_edit_16.png
new file mode 100644
index 0000000000..a33538c185
Binary files /dev/null and b/OsmAnd/res/drawable-mdpi/ic_action_type_edit_16.png differ
diff --git a/OsmAnd/res/drawable-xhdpi/ic_action_type_add_16.png b/OsmAnd/res/drawable-xhdpi/ic_action_type_add_16.png
new file mode 100644
index 0000000000..9713bfff68
Binary files /dev/null and b/OsmAnd/res/drawable-xhdpi/ic_action_type_add_16.png differ
diff --git a/OsmAnd/res/drawable-xhdpi/ic_action_type_delete_16.png b/OsmAnd/res/drawable-xhdpi/ic_action_type_delete_16.png
new file mode 100644
index 0000000000..9cc3481cb0
Binary files /dev/null and b/OsmAnd/res/drawable-xhdpi/ic_action_type_delete_16.png differ
diff --git a/OsmAnd/res/drawable-xhdpi/ic_action_type_edit_16.png b/OsmAnd/res/drawable-xhdpi/ic_action_type_edit_16.png
new file mode 100644
index 0000000000..f568e5b24f
Binary files /dev/null and b/OsmAnd/res/drawable-xhdpi/ic_action_type_edit_16.png differ
diff --git a/OsmAnd/res/drawable-xxhdpi/ic_action_type_add_16.png b/OsmAnd/res/drawable-xxhdpi/ic_action_type_add_16.png
new file mode 100644
index 0000000000..aacd481d4f
Binary files /dev/null and b/OsmAnd/res/drawable-xxhdpi/ic_action_type_add_16.png differ
diff --git a/OsmAnd/res/drawable-xxhdpi/ic_action_type_delete_16.png b/OsmAnd/res/drawable-xxhdpi/ic_action_type_delete_16.png
new file mode 100644
index 0000000000..4995ad3158
Binary files /dev/null and b/OsmAnd/res/drawable-xxhdpi/ic_action_type_delete_16.png differ
diff --git a/OsmAnd/res/drawable-xxhdpi/ic_action_type_edit_16.png b/OsmAnd/res/drawable-xxhdpi/ic_action_type_edit_16.png
new file mode 100644
index 0000000000..f00b70c66e
Binary files /dev/null and b/OsmAnd/res/drawable-xxhdpi/ic_action_type_edit_16.png differ
diff --git a/OsmAnd/res/layout/fragment_reports.xml b/OsmAnd/res/layout/fragment_reports.xml
index cc94f46c20..84e6564ccb 100644
--- a/OsmAnd/res/layout/fragment_reports.xml
+++ b/OsmAnd/res/layout/fragment_reports.xml
@@ -275,6 +275,64 @@
android:background="?attr/dashboard_divider"/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ android:layout_height="wrap_content"
+ android:background="?attr/selectableItemBackground"
+ android:minHeight="@dimen/bottom_sheet_selected_item_title_height">
diff --git a/OsmAnd/res/layout/route_info_layout.xml b/OsmAnd/res/layout/route_info_layout.xml
index 08685ae667..822b7c87fd 100644
--- a/OsmAnd/res/layout/route_info_layout.xml
+++ b/OsmAnd/res/layout/route_info_layout.xml
@@ -107,7 +107,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
- android:src="@drawable/ic_action_polygom_dark"/>
+ android:src="@drawable/ic_action_route_distance"/>
+ Файл GPX с координатами и данными выбранных заметок.
+ Файл GPX с координатами и данными всех заметок.
Место
Ваш пункт назначения находится на частной территории. Вы хотите разрешить доступ к частным дорогам для этой поездки?
Искать снова
@@ -432,7 +434,7 @@
Пользовательские
Файл с избранными уже существует. Вы хотите его заменить?
Настройка профиля
- Профиль
+ Профиль по умолчанию
Выберите профиль работы приложения (в каждом профиле настройки хранятся отдельно).
Общие настройки
Общие настройки приложения
diff --git a/OsmAnd/res/values/strings.xml b/OsmAnd/res/values/strings.xml
index ddd4d52ea3..61bfe7f88c 100644
--- a/OsmAnd/res/values/strings.xml
+++ b/OsmAnd/res/values/strings.xml
@@ -9,6 +9,8 @@
3. All your modified/created strings are in the top of the file (to make easier find what\'s translated).
PLEASE: Have a look at http://code.google.com/p/osmand/wiki/UIConsistency, it may really improve your and our work :-) Thx - Hardy
-->
+ GPX file with coordinates and data of the selected notes.
+ GPX file with coordinates and data of all notes.
\u2022 Detection of stop signs now considers driving direction\n\n
\u2022 New algorithm providing meaningful ascent/descent values for GPX tracks\n\n
@@ -554,6 +556,7 @@
Donations
Number of recipients
Edits %1$s, rank %2$s, total edits %3$s
+ Edits %1$s, sum %2$s mBTC
OSM Editors ranking
OsmAnd Live subscription
Subscribe
@@ -2819,4 +2822,6 @@
File %1$s does not contain waypoints, import it as a track?
Move Point
Add to a GPX track
+ OSM Recipients
+ Total Donations
diff --git a/OsmAnd/res/xml/paths.xml b/OsmAnd/res/xml/paths.xml
index 78a4755a05..90217e4c1f 100644
--- a/OsmAnd/res/xml/paths.xml
+++ b/OsmAnd/res/xml/paths.xml
@@ -3,6 +3,9 @@
+ path="share"/>
+
\ No newline at end of file
diff --git a/OsmAnd/src/net/osmand/plus/activities/ShowRouteInfoDialogFragment.java b/OsmAnd/src/net/osmand/plus/activities/ShowRouteInfoDialogFragment.java
index 42cf8163ea..599d867829 100644
--- a/OsmAnd/src/net/osmand/plus/activities/ShowRouteInfoDialogFragment.java
+++ b/OsmAnd/src/net/osmand/plus/activities/ShowRouteInfoDialogFragment.java
@@ -118,7 +118,7 @@ public class ShowRouteInfoDialogFragment extends DialogFragment {
});
((ImageView) view.findViewById(R.id.distance_icon))
- .setImageDrawable(app.getIconsCache().getThemedIcon(R.drawable.ic_action_polygom_dark));
+ .setImageDrawable(app.getIconsCache().getThemedIcon(R.drawable.ic_action_route_distance));
((ImageView) view.findViewById(R.id.time_icon))
.setImageDrawable(app.getIconsCache().getThemedIcon(R.drawable.ic_action_time_span));
diff --git a/OsmAnd/src/net/osmand/plus/audionotes/AudioVideoNotesPlugin.java b/OsmAnd/src/net/osmand/plus/audionotes/AudioVideoNotesPlugin.java
index 379fb7339f..f811b6abc6 100644
--- a/OsmAnd/src/net/osmand/plus/audionotes/AudioVideoNotesPlugin.java
+++ b/OsmAnd/src/net/osmand/plus/audionotes/AudioVideoNotesPlugin.java
@@ -481,6 +481,15 @@ public class AudioVideoNotesPlugin extends OsmandPlugin {
return date + " • " + sz + " • " + getDuration(ctx, false);
}
+ public String getTypeWithDuration(Context ctx) {
+ StringBuilder res = new StringBuilder(getType(ctx));
+ if (isAudio() || isVideo()) {
+ updateInternalDescription();
+ res.append(", ").append(getDuration(ctx, false));
+ }
+ return res.toString();
+ }
+
public String getPlainDuration(boolean accessibilityEnabled) {
updateInternalDescription();
if (duration > 0) {
diff --git a/OsmAnd/src/net/osmand/plus/audionotes/NotesFragment.java b/OsmAnd/src/net/osmand/plus/audionotes/NotesFragment.java
index c43e4fb721..b7091cba4f 100644
--- a/OsmAnd/src/net/osmand/plus/audionotes/NotesFragment.java
+++ b/OsmAnd/src/net/osmand/plus/audionotes/NotesFragment.java
@@ -10,6 +10,7 @@ import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
+import android.support.v4.content.FileProvider;
import android.support.v7.app.AlertDialog;
import android.support.v7.view.ActionMode;
import android.view.LayoutInflater;
@@ -453,16 +454,17 @@ public class NotesFragment extends OsmAndListFragment {
}
private void shareItems(Set selected) {
- ArrayList files = new ArrayList<>();
+ ArrayList uris = new ArrayList<>();
for (Recording rec : selected) {
File file = rec == SHARE_LOCATION_FILE ? generateGPXForRecordings(selected) : rec.getFile();
if (file != null) {
- files.add(Uri.parse(file.getAbsolutePath()));
+ uris.add(FileProvider.getUriForFile(getContext(), getActivity().getPackageName() + ".fileprovider", file));
}
}
+
Intent intent = new Intent(Intent.ACTION_SEND_MULTIPLE);
intent.setType("*/*");
- intent.putExtra(Intent.EXTRA_STREAM, files);
+ intent.putExtra(Intent.EXTRA_STREAM, uris);
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
if (Build.VERSION.SDK_INT > 18) {
intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
@@ -470,16 +472,18 @@ public class NotesFragment extends OsmAndListFragment {
startActivity(Intent.createChooser(intent, getString(R.string.share_note)));
}
- @Nullable
- private File generateGPXForRecordings(Set selected) {
- File externalCacheDir = getActivity().getExternalCacheDir();
- if (externalCacheDir == null) {
- return null;
+ private Set getRecordingsForGpx(Set selected) {
+ if (selected.size() == 1 && selected.contains(SHARE_LOCATION_FILE)) {
+ return new HashSet<>(plugin.getAllRecordings());
}
- File tmpFile = new File(externalCacheDir, "share/noteLocations.gpx");
+ return selected;
+ }
+
+ private File generateGPXForRecordings(Set selected) {
+ File tmpFile = new File(getActivity().getCacheDir(), "share/noteLocations.gpx");
tmpFile.getParentFile().mkdirs();
GPXFile file = new GPXFile();
- for (Recording r : selected) {
+ for (Recording r : getRecordingsForGpx(selected)) {
if (r != SHARE_LOCATION_FILE) {
String desc = r.getDescriptionName(r.getFileName());
if (desc == null) {
@@ -492,6 +496,7 @@ public class NotesFragment extends OsmAndListFragment {
wpt.link = r.getFileName();
wpt.time = r.getFile().lastModified();
wpt.category = r.getSearchHistoryType();
+ wpt.desc = r.getTypeWithDuration(getContext());
getMyApplication().getSelectedGpxHelper().addPoint(wpt, file);
}
}
diff --git a/OsmAnd/src/net/osmand/plus/audionotes/adapters/NotesAdapter.java b/OsmAnd/src/net/osmand/plus/audionotes/adapters/NotesAdapter.java
index fa7f286156..1fe1548665 100644
--- a/OsmAnd/src/net/osmand/plus/audionotes/adapters/NotesAdapter.java
+++ b/OsmAnd/src/net/osmand/plus/audionotes/adapters/NotesAdapter.java
@@ -205,7 +205,7 @@ public class NotesAdapter extends ArrayAdapter