diff --git a/OsmAnd/res/values/colors.xml b/OsmAnd/res/values/colors.xml
index c95e62c66f..3d16d4ae95 100644
--- a/OsmAnd/res/values/colors.xml
+++ b/OsmAnd/res/values/colors.xml
@@ -305,4 +305,8 @@
#9fadfc
#ed5421
+ #73b825
+ #FDD835
+ #e53935
+
\ No newline at end of file
diff --git a/OsmAnd/src/net/osmand/plus/osmedit/OsmEditsAdapter.java b/OsmAnd/src/net/osmand/plus/osmedit/OsmEditsAdapter.java
index d52250269e..cf7c7ff088 100644
--- a/OsmAnd/src/net/osmand/plus/osmedit/OsmEditsAdapter.java
+++ b/OsmAnd/src/net/osmand/plus/osmedit/OsmEditsAdapter.java
@@ -11,8 +11,11 @@ import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.TextView;
+import net.osmand.osm.edit.Node;
+import net.osmand.osm.edit.OSMSettings;
import net.osmand.plus.OsmandApplication;
import net.osmand.plus.R;
+import net.osmand.plus.render.RenderingIcons;
import net.osmand.util.Algorithms;
import java.util.List;
@@ -117,7 +120,26 @@ public class OsmEditsAdapter extends ArrayAdapter {
private Drawable getIcon(OsmPoint point) {
if (point.getGroup() == OsmPoint.Group.POI) {
- return app.getIconsCache().getIcon(R.drawable.ic_type_info, R.color.color_distance);
+ Node node = ((OpenstreetmapPoint) point).getEntity();
+ int iconResId = 0;
+ String typeStr = node.getTag(OSMSettings.OSMTagKey.AMENITY);
+ if (!Algorithms.isEmpty(typeStr)) {
+ iconResId = RenderingIcons.getBigIconResourceId(OSMSettings.OSMTagKey.AMENITY.getValue() + "_" + typeStr);
+ }
+ if (iconResId == 0) {
+ iconResId = R.drawable.ic_type_info;
+ }
+ int colorResId = R.color.color_distance;
+ if (point.getAction() == OsmPoint.Action.CREATE) {
+ colorResId = R.color.color_osm_edit_create;
+ } else if (point.getAction() == OsmPoint.Action.MODIFY) {
+ colorResId = R.color.color_osm_edit_modify;
+ } else if (point.getAction() == OsmPoint.Action.DELETE) {
+ colorResId = R.color.color_osm_edit_delete;
+ } else if (point.getAction() == OsmPoint.Action.REOPEN) {
+ colorResId = R.color.color_osm_edit_modify;
+ }
+ return app.getIconsCache().getIcon(iconResId, colorResId);
} else if (point.getGroup() == OsmPoint.Group.BUG) {
return app.getIconsCache().getIcon(R.drawable.ic_type_bug, R.color.color_distance);
}