From d33ec08b1865c91225b73149d0564052af1ac1a2 Mon Sep 17 00:00:00 2001 From: PavelRatushny Date: Thu, 21 Dec 2017 15:26:45 +0200 Subject: [PATCH 01/62] Extract finding night mode to method --- .../activities/actions/AppModeDialog.java | 32 ++++++++----------- 1 file changed, 13 insertions(+), 19 deletions(-) diff --git a/OsmAnd/src/net/osmand/plus/activities/actions/AppModeDialog.java b/OsmAnd/src/net/osmand/plus/activities/actions/AppModeDialog.java index 16b39e0e23..985bd9eac2 100644 --- a/OsmAnd/src/net/osmand/plus/activities/actions/AppModeDialog.java +++ b/OsmAnd/src/net/osmand/plus/activities/actions/AppModeDialog.java @@ -47,12 +47,7 @@ public class AppModeDialog { public static View prepareAppModeView(Activity a, final List values , final Set selected, ViewGroup parent, final boolean singleSelection, boolean drawer, boolean useMapTheme, final View.OnClickListener onClickListener) { View ll = a.getLayoutInflater().inflate(R.layout.mode_toggles, parent); - boolean nightMode; - if (useMapTheme) { - nightMode = ((OsmandApplication) a.getApplication()).getDaynightHelper().isNightModeForMapControls(); - } else { - nightMode = !((OsmandApplication) a.getApplication()).getSettings().isLightContent(); - } + boolean nightMode = isNightMode(((OsmandApplication) a.getApplication()), useMapTheme); ll.setBackgroundColor(ContextCompat.getColor(a, nightMode ? R.color.route_info_bg_dark : R.color.route_info_bg_light)); final View[] buttons = new View[values.size()]; int k = 0; @@ -75,12 +70,7 @@ public class AppModeDialog { final ApplicationMode mode = visible.get(i); final boolean checked = selected.contains(mode); ImageView iv = (ImageView) tb.findViewById(R.id.app_mode_icon); - boolean nightMode; - if (useMapTheme) { - nightMode = ctx.getDaynightHelper().isNightModeForMapControls(); - } else { - nightMode = !ctx.getSettings().isLightContent(); - } + boolean nightMode = isNightMode(ctx, useMapTheme); if (checked) { iv.setImageDrawable(ctx.getIconsCache().getIcon(mode.getSmallIconDark(), nightMode ? R.color.route_info_checked_mode_icon_color_dark : R.color.route_info_checked_mode_icon_color_light)); iv.setContentDescription(String.format("%s %s", mode.toHumanString(ctx), ctx.getString(R.string.item_checked))); @@ -129,13 +119,7 @@ public class AppModeDialog { int metricsY = (int) ctx.getResources().getDimension(R.dimen.route_info_modes_height); View tb = layoutInflater.inflate(R.layout.mode_view, null); ImageView iv = (ImageView) tb.findViewById(R.id.app_mode_icon); - boolean nightMode; - if (useMapTheme) { - nightMode = ctx.getDaynightHelper().isNightModeForMapControls(); - } else { - nightMode = !ctx.getSettings().isLightContent(); - } - iv.setImageDrawable(ctx.getIconsCache().getIcon(mode.getSmallIconDark(), nightMode ? R.color.route_info_checked_mode_icon_color_dark : R.color.route_info_checked_mode_icon_color_light)); + iv.setImageDrawable(ctx.getIconsCache().getIcon(mode.getSmallIconDark(), isNightMode(ctx, useMapTheme) ? R.color.route_info_checked_mode_icon_color_dark : R.color.route_info_checked_mode_icon_color_light)); iv.setContentDescription(mode.toHumanString(ctx)); // tb.setCompoundDrawablesWithIntrinsicBounds(null, ctx.getIconsCache().getIcon(mode.getIconId(), R.color.app_mode_icon_color), null, null); LayoutParams lp = new LinearLayout.LayoutParams(metricsX, metricsY); @@ -143,4 +127,14 @@ public class AppModeDialog { layout.addView(tb, lp); return tb; } + + private static boolean isNightMode(OsmandApplication ctx, boolean useMapTheme) { + boolean nightMode; + if (useMapTheme) { + nightMode = ctx.getDaynightHelper().isNightModeForMapControls(); + } else { + nightMode = !ctx.getSettings().isLightContent(); + } + return nightMode; + } } From 2ba6c849ba8768460eb7a8de2208b4680ae244c5 Mon Sep 17 00:00:00 2001 From: PavelRatushny Date: Thu, 21 Dec 2017 15:41:10 +0200 Subject: [PATCH 02/62] Fix if else in amenity controller --- .../controllers/AmenityMenuController.java | 20 +++++++++---------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/OsmAnd/src/net/osmand/plus/mapcontextmenu/controllers/AmenityMenuController.java b/OsmAnd/src/net/osmand/plus/mapcontextmenu/controllers/AmenityMenuController.java index 862f0090ca..67529b57f5 100644 --- a/OsmAnd/src/net/osmand/plus/mapcontextmenu/controllers/AmenityMenuController.java +++ b/OsmAnd/src/net/osmand/plus/mapcontextmenu/controllers/AmenityMenuController.java @@ -67,17 +67,15 @@ public class AmenityMenuController extends MenuController { new MapMarkerMenuController(mapActivity, marker.getPointDescription(mapActivity), marker); leftTitleButtonController = markerMenuController.getLeftTitleButtonController(); rightTitleButtonController = markerMenuController.getRightTitleButtonController(); - } else { - if (amenity.getType().isWiki()) { - leftTitleButtonController = new TitleButtonController() { - @Override - public void buttonPressed() { - POIMapLayer.showWikipediaDialog(mapActivity, mapActivity.getMyApplication(), amenity); - } - }; - leftTitleButtonController.caption = getMapActivity().getString(R.string.context_menu_read_article); - leftTitleButtonController.leftIcon = getIcon(R.drawable.ic_action_note_dark, isLight() ? R.color.ctx_menu_controller_button_text_color_light_n : R.color.ctx_menu_controller_button_text_color_dark_n); - } + } else if (amenity.getType().isWiki()) { + leftTitleButtonController = new TitleButtonController() { + @Override + public void buttonPressed() { + POIMapLayer.showWikipediaDialog(mapActivity, mapActivity.getMyApplication(), amenity); + } + }; + leftTitleButtonController.caption = getMapActivity().getString(R.string.context_menu_read_article); + leftTitleButtonController.leftIcon = getIcon(R.drawable.ic_action_note_dark, isLight() ? R.color.ctx_menu_controller_button_text_color_light_n : R.color.ctx_menu_controller_button_text_color_dark_n); } } From f70a37e68a7fef67e6a72d8d3896e1e47b890c2a Mon Sep 17 00:00:00 2001 From: PavelRatushny Date: Thu, 21 Dec 2017 15:42:22 +0200 Subject: [PATCH 03/62] Remove unnecessary variable --- .../other/MultiSelectionArrayAdapter.java | 23 +++++++++---------- 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/OsmAnd/src/net/osmand/plus/mapcontextmenu/other/MultiSelectionArrayAdapter.java b/OsmAnd/src/net/osmand/plus/mapcontextmenu/other/MultiSelectionArrayAdapter.java index b95304082e..ecfb0b6f89 100644 --- a/OsmAnd/src/net/osmand/plus/mapcontextmenu/other/MultiSelectionArrayAdapter.java +++ b/OsmAnd/src/net/osmand/plus/mapcontextmenu/other/MultiSelectionArrayAdapter.java @@ -33,15 +33,14 @@ public class MultiSelectionArrayAdapter extends ArrayAdapter Date: Thu, 21 Dec 2017 15:55:26 +0200 Subject: [PATCH 04/62] Fix multi selection menu adapter --- .../other/MultiSelectionArrayAdapter.java | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/OsmAnd/src/net/osmand/plus/mapcontextmenu/other/MultiSelectionArrayAdapter.java b/OsmAnd/src/net/osmand/plus/mapcontextmenu/other/MultiSelectionArrayAdapter.java index ecfb0b6f89..79fe4c1d08 100644 --- a/OsmAnd/src/net/osmand/plus/mapcontextmenu/other/MultiSelectionArrayAdapter.java +++ b/OsmAnd/src/net/osmand/plus/mapcontextmenu/other/MultiSelectionArrayAdapter.java @@ -38,9 +38,8 @@ public class MultiSelectionArrayAdapter extends ArrayAdapter Date: Thu, 21 Dec 2017 16:28:43 +0200 Subject: [PATCH 05/62] Change edit poi controller --- .../plus/osmedit/EditPOIMenuController.java | 64 ++++++++++++++++--- 1 file changed, 56 insertions(+), 8 deletions(-) diff --git a/OsmAnd/src/net/osmand/plus/osmedit/EditPOIMenuController.java b/OsmAnd/src/net/osmand/plus/osmedit/EditPOIMenuController.java index be90b2bd7a..ab5bf002be 100644 --- a/OsmAnd/src/net/osmand/plus/osmedit/EditPOIMenuController.java +++ b/OsmAnd/src/net/osmand/plus/osmedit/EditPOIMenuController.java @@ -5,13 +5,16 @@ import android.graphics.drawable.Drawable; import android.support.v7.app.AlertDialog; import net.osmand.data.PointDescription; +import net.osmand.osm.PoiType; import net.osmand.plus.OsmandPlugin; import net.osmand.plus.R; import net.osmand.plus.activities.MapActivity; import net.osmand.plus.mapcontextmenu.MenuController; import net.osmand.plus.osmedit.OsmPoint.Action; import net.osmand.plus.osmedit.dialogs.SendPoiDialogFragment; -import net.osmand.util.Algorithms; +import net.osmand.plus.render.RenderingIcons; + +import java.util.Map; public class EditPOIMenuController extends MenuController { @@ -94,6 +97,11 @@ public class EditPOIMenuController extends MenuController { } } + @Override + public boolean displayAdditionalTypeStrInHours() { + return true; + } + @Override protected void setObject(Object object) { if (object instanceof OsmPoint) { @@ -112,19 +120,59 @@ public class EditPOIMenuController extends MenuController { @Override public boolean needTypeStr() { - return !Algorithms.isEmpty(pointTypeStr); + return false; } @Override - public Drawable getLeftIcon() { - return getIcon(R.drawable.ic_action_gabout_dark, R.color.created_poi_icon_color); - } - - @Override - public String getTypeStr() { + public String getAdditionalTypeStr() { return pointTypeStr; } + @Override + public int getTimeStrColor() { + if (osmPoint.getAction() == OsmPoint.Action.CREATE) { + return R.color.color_osm_edit_create; + } else if (osmPoint.getAction() == OsmPoint.Action.MODIFY) { + return R.color.color_osm_edit_modify; + } else if (osmPoint.getAction() == OsmPoint.Action.DELETE) { + return R.color.color_osm_edit_delete; + } else { + return R.color.color_osm_edit_modify; + } + } + + @Override + public Drawable getAdditionalLineTypeIcon() { + if (osmPoint.getGroup() == OsmPoint.Group.POI) { + OpenstreetmapPoint osmP = (OpenstreetmapPoint) osmPoint; + int iconResId = 0; + String poiTranslation = osmP.getEntity().getTag(EditPoiData.POI_TYPE_TAG); + if (poiTranslation != null) { + Map poiTypeMap = getMapActivity().getMyApplication().getPoiTypes().getAllTranslatedNames(false); + PoiType poiType = poiTypeMap.get(poiTranslation.toLowerCase()); + if (poiType != null) { + String id = null; + if (RenderingIcons.containsBigIcon(poiType.getIconKeyName())) { + id = poiType.getIconKeyName(); + } else if (RenderingIcons.containsBigIcon(poiType.getOsmTag() + "_" + poiType.getOsmValue())) { + id = poiType.getOsmTag() + "_" + poiType.getOsmValue(); + } + if (id != null) { + iconResId = RenderingIcons.getBigIconResourceId(id); + } + } + } + if (iconResId == 0) { + iconResId = R.drawable.ic_type_info; + } + return getIcon(iconResId); + } else if (osmPoint.getGroup() == OsmPoint.Group.BUG) { + return getIcon(R.drawable.ic_type_bug); + } else { + return null; + } + } + @Override public boolean needStreetName() { return false; From c9edb3aa4a9c309cb915ab2e4fad066f89a2b612 Mon Sep 17 00:00:00 2001 From: PavelRatushnyi Date: Thu, 21 Dec 2017 17:31:23 +0200 Subject: [PATCH 06/62] Revert --- .../plus/osmedit/EditPOIMenuController.java | 64 +++---------------- 1 file changed, 8 insertions(+), 56 deletions(-) diff --git a/OsmAnd/src/net/osmand/plus/osmedit/EditPOIMenuController.java b/OsmAnd/src/net/osmand/plus/osmedit/EditPOIMenuController.java index ab5bf002be..be90b2bd7a 100644 --- a/OsmAnd/src/net/osmand/plus/osmedit/EditPOIMenuController.java +++ b/OsmAnd/src/net/osmand/plus/osmedit/EditPOIMenuController.java @@ -5,16 +5,13 @@ import android.graphics.drawable.Drawable; import android.support.v7.app.AlertDialog; import net.osmand.data.PointDescription; -import net.osmand.osm.PoiType; import net.osmand.plus.OsmandPlugin; import net.osmand.plus.R; import net.osmand.plus.activities.MapActivity; import net.osmand.plus.mapcontextmenu.MenuController; import net.osmand.plus.osmedit.OsmPoint.Action; import net.osmand.plus.osmedit.dialogs.SendPoiDialogFragment; -import net.osmand.plus.render.RenderingIcons; - -import java.util.Map; +import net.osmand.util.Algorithms; public class EditPOIMenuController extends MenuController { @@ -97,11 +94,6 @@ public class EditPOIMenuController extends MenuController { } } - @Override - public boolean displayAdditionalTypeStrInHours() { - return true; - } - @Override protected void setObject(Object object) { if (object instanceof OsmPoint) { @@ -120,59 +112,19 @@ public class EditPOIMenuController extends MenuController { @Override public boolean needTypeStr() { - return false; + return !Algorithms.isEmpty(pointTypeStr); } @Override - public String getAdditionalTypeStr() { + public Drawable getLeftIcon() { + return getIcon(R.drawable.ic_action_gabout_dark, R.color.created_poi_icon_color); + } + + @Override + public String getTypeStr() { return pointTypeStr; } - @Override - public int getTimeStrColor() { - if (osmPoint.getAction() == OsmPoint.Action.CREATE) { - return R.color.color_osm_edit_create; - } else if (osmPoint.getAction() == OsmPoint.Action.MODIFY) { - return R.color.color_osm_edit_modify; - } else if (osmPoint.getAction() == OsmPoint.Action.DELETE) { - return R.color.color_osm_edit_delete; - } else { - return R.color.color_osm_edit_modify; - } - } - - @Override - public Drawable getAdditionalLineTypeIcon() { - if (osmPoint.getGroup() == OsmPoint.Group.POI) { - OpenstreetmapPoint osmP = (OpenstreetmapPoint) osmPoint; - int iconResId = 0; - String poiTranslation = osmP.getEntity().getTag(EditPoiData.POI_TYPE_TAG); - if (poiTranslation != null) { - Map poiTypeMap = getMapActivity().getMyApplication().getPoiTypes().getAllTranslatedNames(false); - PoiType poiType = poiTypeMap.get(poiTranslation.toLowerCase()); - if (poiType != null) { - String id = null; - if (RenderingIcons.containsBigIcon(poiType.getIconKeyName())) { - id = poiType.getIconKeyName(); - } else if (RenderingIcons.containsBigIcon(poiType.getOsmTag() + "_" + poiType.getOsmValue())) { - id = poiType.getOsmTag() + "_" + poiType.getOsmValue(); - } - if (id != null) { - iconResId = RenderingIcons.getBigIconResourceId(id); - } - } - } - if (iconResId == 0) { - iconResId = R.drawable.ic_type_info; - } - return getIcon(iconResId); - } else if (osmPoint.getGroup() == OsmPoint.Group.BUG) { - return getIcon(R.drawable.ic_type_bug); - } else { - return null; - } - } - @Override public boolean needStreetName() { return false; From f8c455349ce83accbc77fe429dc8cf6dec315cb4 Mon Sep 17 00:00:00 2001 From: PavelRatushnyi Date: Fri, 22 Dec 2017 12:23:59 +0200 Subject: [PATCH 07/62] Fix transport stops --- .../FavouritePointMenuController.java | 12 ++++- .../controllers/TransportStopController.java | 49 +++++-------------- 2 files changed, 24 insertions(+), 37 deletions(-) diff --git a/OsmAnd/src/net/osmand/plus/mapcontextmenu/controllers/FavouritePointMenuController.java b/OsmAnd/src/net/osmand/plus/mapcontextmenu/controllers/FavouritePointMenuController.java index 12eee1afb4..81da068960 100644 --- a/OsmAnd/src/net/osmand/plus/mapcontextmenu/controllers/FavouritePointMenuController.java +++ b/OsmAnd/src/net/osmand/plus/mapcontextmenu/controllers/FavouritePointMenuController.java @@ -20,10 +20,14 @@ import net.osmand.plus.mapcontextmenu.editors.FavoritePointEditor; import net.osmand.plus.mapcontextmenu.editors.FavoritePointEditorFragment; import net.osmand.util.Algorithms; +import java.util.ArrayList; +import java.util.List; + public class FavouritePointMenuController extends MenuController { private FavouritePoint fav; private MapMarker mapMarker; + private List routes = new ArrayList<>(); public FavouritePointMenuController(MapActivity mapActivity, PointDescription pointDescription, final FavouritePoint fav) { super(new FavouritePointMenuBuilder(mapActivity, fav), pointDescription, mapActivity); @@ -43,7 +47,8 @@ public class FavouritePointMenuController extends MenuController { if (getObject() instanceof TransportStop) { TransportStop stop = (TransportStop) getObject(); TransportStopController transportStopController = new TransportStopController(getMapActivity(), pointDescription, stop); - transportStopController.processTransportStop(builder); + routes = transportStopController.processTransportStop(); + builder.setRoutes(routes); } } @@ -59,6 +64,11 @@ public class FavouritePointMenuController extends MenuController { return fav; } + @Override + public List getTransportStopRoutes() { + return routes; + } + @Override public boolean handleSingleTapOnMap() { Fragment fragment = getMapActivity().getSupportFragmentManager().findFragmentByTag(FavoritePointEditor.TAG); diff --git a/OsmAnd/src/net/osmand/plus/mapcontextmenu/controllers/TransportStopController.java b/OsmAnd/src/net/osmand/plus/mapcontextmenu/controllers/TransportStopController.java index 30b50155d9..a0bc74cab8 100644 --- a/OsmAnd/src/net/osmand/plus/mapcontextmenu/controllers/TransportStopController.java +++ b/OsmAnd/src/net/osmand/plus/mapcontextmenu/controllers/TransportStopController.java @@ -82,14 +82,16 @@ public class TransportStopController extends MenuController { PointDescription pointDescription, TransportStop transportStop) { super(new MenuBuilder(mapActivity), pointDescription, mapActivity); this.transportStop = transportStop; - processTransportStop(builder); + routes = processTransportStop(); + builder.setRoutes(routes); } @Override protected void setObject(Object object) { if (object instanceof TransportStop) { this.transportStop = (TransportStop) object; - processTransportStop(builder); + routes = processTransportStop(); + builder.setRoutes(routes); } } @@ -127,33 +129,8 @@ public class TransportStopController extends MenuController { return getPointDescription().getTypeName(); } - public void addPlainMenuItems(MenuBuilder builder, final LatLon latLon) { - for (final TransportStopRoute r : routes) { - OnClickListener listener = new OnClickListener() { - @Override - public void onClick(View arg0) { - MapContextMenu mm = getMapActivity().getContextMenu(); - PointDescription pd = new PointDescription(PointDescription.POINT_TYPE_TRANSPORT_ROUTE, - r.getDescription(getMapActivity().getMyApplication(), false)); - mm.show(latLon, pd, r); - TransportStopsLayer stopsLayer = getMapActivity().getMapLayers().getTransportStopsLayer(); - stopsLayer.setRoute(r.route); - int cz = r.calculateZoom(0, getMapActivity().getMapView().getCurrentRotatedTileBox()); - getMapActivity().changeZoom(cz - getMapActivity().getMapView().getZoom()); - } - }; - if (r.type == null) { - builder.addPlainMenuItem(R.drawable.ic_action_polygom_dark, r.getDescription(getMapActivity().getMyApplication(), true), - false, false, listener ); - } else { - builder.addPlainMenuItem(r.type.getResourceId(), r.getDescription(getMapActivity().getMyApplication(), true), - false, false, listener); - } - } - } - - public void processTransportStop(MenuBuilder builder) { - routes.clear(); + public List processTransportStop() { + ArrayList routes = new ArrayList<>(); List reps = getMapActivity().getMyApplication() .getResourceManager().searchTransportRepositories(transportStop.getLocation().getLatitude(), transportStop.getLocation().getLongitude()); @@ -164,14 +141,14 @@ public class TransportStopController extends MenuController { if (t.acceptTransportStop(transportStop)) { boolean empty = transportStop.getReferencesToRoutes() == null || transportStop.getReferencesToRoutes().length == 0; if(!empty) { - addRoutes(useEnglishNames, t, transportStop, transportStop, 0); + addRoutes(routes, useEnglishNames, t, transportStop, transportStop, 0); } ArrayList ls = new ArrayList<>(); QuadRect ll = MapUtils.calculateLatLonBbox(transportStop.getLocation().getLatitude(), transportStop.getLocation().getLongitude(), 150); t.searchTransportStops(ll.top, ll.left, ll.bottom, ll.right, -1, ls, null); for(TransportStop tstop : ls) { if(tstop.getId().longValue() != transportStop.getId().longValue() || empty) { - addRoutes(useEnglishNames, t, tstop, transportStop, + addRoutes(routes, useEnglishNames, t, tstop, transportStop, (int) MapUtils.getDistance(tstop.getLocation(), transportStop.getLocation())); } } @@ -193,10 +170,10 @@ public class TransportStopController extends MenuController { } }); - builder.setRoutes(routes); + return routes; } - private void addRoutes(boolean useEnglishNames, TransportIndexRepository t, TransportStop s, TransportStop refStop, int dist) { + private void addRoutes(List routes, boolean useEnglishNames, TransportIndexRepository t, TransportStop s, TransportStop refStop, int dist) { Collection rts = t.getRouteForStop(s); if (rts != null) { for (TransportRoute rs : rts) { @@ -204,7 +181,7 @@ public class TransportStopController extends MenuController { if (topType == null && type != null && type.isTopType()) { topType = type; } - if (!containsRef(rs)) { + if (!containsRef(routes, rs)) { TransportStopRoute r = new TransportStopRoute(); r.type = type; r.desc = useEnglishNames ? rs.getEnName(true) : rs.getName(); @@ -212,13 +189,13 @@ public class TransportStopController extends MenuController { r.refStop = refStop; r.stop = s; r.distance = dist; - this.routes.add(r); + routes.add(r); } } } } - private boolean containsRef(TransportRoute transportRoute) { + private boolean containsRef(List routes, TransportRoute transportRoute) { for (TransportStopRoute route : routes) { if (route.route.getRef().equals(transportRoute.getRef())) { return true; From 05895e577b5d379cb50c849a0949d0066c6ebe58 Mon Sep 17 00:00:00 2001 From: ezjerry liao Date: Fri, 22 Dec 2017 11:07:42 +0000 Subject: [PATCH 08/62] Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (2521 of 2521 strings) --- OsmAnd/res/values-zh-rTW/strings.xml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/OsmAnd/res/values-zh-rTW/strings.xml b/OsmAnd/res/values-zh-rTW/strings.xml index 6c7d46feb0..9bfdb8ffb9 100644 --- a/OsmAnd/res/values-zh-rTW/strings.xml +++ b/OsmAnd/res/values-zh-rTW/strings.xml @@ -2976,4 +2976,9 @@ OsmAnd (Automated Navigation Directions) 是一個地圖和導航的應用程式 \n• 地形(上坡)察覺登山健行時間(尼史密夫定律) \n \n - + 包括座標和所選註解資料的 GPX 檔案。 + 包括座標和所有註解資料的 GPX 檔案。 + 編輯 %1$s,合計 %2$s mBTC + OSM 收件人 + 捐款總計 + From 296bca7d969b5b8a01442a3a68a4421ffe39937d Mon Sep 17 00:00:00 2001 From: PaulStets Date: Fri, 22 Dec 2017 13:09:55 +0200 Subject: [PATCH 09/62] Added the recipients for the World and corrected the text2 position --- OsmAnd/src/net/osmand/plus/liveupdates/ReportsFragment.java | 6 +++--- .../net/osmand/plus/liveupdates/UsersReportFragment.java | 1 + 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/OsmAnd/src/net/osmand/plus/liveupdates/ReportsFragment.java b/OsmAnd/src/net/osmand/plus/liveupdates/ReportsFragment.java index ffb7762a7b..66f88b8cec 100644 --- a/OsmAnd/src/net/osmand/plus/liveupdates/ReportsFragment.java +++ b/OsmAnd/src/net/osmand/plus/liveupdates/ReportsFragment.java @@ -134,9 +134,9 @@ public class ReportsFragment extends BaseOsmAndFragment implements CountrySelect int monthItemPosition = monthReportsSpinner.getSelectedItemPosition(); String monthUrlString = monthsForReportsAdapter.getQueryString(monthItemPosition); String countryUrlString = selectedCountryItem.getDownloadName(); - if (countryUrlString.length() > 0) { + boolean isRecipientsReport = v.getId() == R.id.numberOfRecipientsLayout; + if (countryUrlString.length() > 0 || isRecipientsReport) { Bundle bl = new Bundle(); - boolean isRecipientsReport = v.getId() == R.id.numberOfRecipientsLayout; bl.putString(UsersReportFragment.URL_REQUEST, String.format(isRecipientsReport ? RECIPIENTS_BY_MONTH : USERS_RANKING_BY_MONTH, monthUrlString, countryUrlString)); userReportFragment.setArguments(bl); @@ -281,7 +281,7 @@ public class ReportsFragment extends BaseOsmAndFragment implements CountrySelect clearTextViewResult(recipientsTextView); clearTextViewResult(donationsTextView); clearTextViewResult(donationsTotalTextView); - + String recfinalUrl = String.format(RECIPIENTS_BY_MONTH, monthUrlString, regionUrlString); recChangesByMontAsyncTask.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, recfinalUrl); } diff --git a/OsmAnd/src/net/osmand/plus/liveupdates/UsersReportFragment.java b/OsmAnd/src/net/osmand/plus/liveupdates/UsersReportFragment.java index 9d03c3ccf8..bba2d2155c 100644 --- a/OsmAnd/src/net/osmand/plus/liveupdates/UsersReportFragment.java +++ b/OsmAnd/src/net/osmand/plus/liveupdates/UsersReportFragment.java @@ -122,6 +122,7 @@ public class UsersReportFragment extends BaseOsmAndDialogFragment { text2.setTextColor(textSecondaryColor); text1.setCompoundDrawablesWithIntrinsicBounds(drawableLeft, null, null, null); text1.setCompoundDrawablePadding(getResources().getDimensionPixelSize(R.dimen.list_content_padding)); + text2.setPadding(text1.getTotalPaddingLeft(), text1.getTotalPaddingTop(), text1.getTotalPaddingRight(), text1.getTotalPaddingBottom()); Object item = getItem(position); if (item instanceof UserRankingByMonth) { UserRankingByMonth rankingByMonth = (UserRankingByMonth) item; From 2e732526d16ff4b52fa4cc5330a9c751fe99ebcd Mon Sep 17 00:00:00 2001 From: Ldm Public Date: Fri, 22 Dec 2017 09:52:35 +0000 Subject: [PATCH 10/62] Translated using Weblate (French) Currently translated at 99.8% (2517 of 2521 strings) --- OsmAnd/res/values-fr/strings.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/OsmAnd/res/values-fr/strings.xml b/OsmAnd/res/values-fr/strings.xml index 68994c7f86..db9aa8efcf 100644 --- a/OsmAnd/res/values-fr/strings.xml +++ b/OsmAnd/res/values-fr/strings.xml @@ -3043,4 +3043,5 @@ représentant la zone : %1$s x %2$s \n • Durée d\'ascension en fonction du terrain (basé sur la règle de Naismith) \n \n - + Total des dons + From 4b611c8bbbf3b7f4f37cced6ecc27246133c4c2d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89loi=20Alain?= Date: Fri, 22 Dec 2017 12:01:48 +0000 Subject: [PATCH 11/62] Translated using Weblate (French) Currently translated at 100.0% (2521 of 2521 strings) --- OsmAnd/res/values-fr/strings.xml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/OsmAnd/res/values-fr/strings.xml b/OsmAnd/res/values-fr/strings.xml index db9aa8efcf..2ae50ff48e 100644 --- a/OsmAnd/res/values-fr/strings.xml +++ b/OsmAnd/res/values-fr/strings.xml @@ -3044,4 +3044,8 @@ représentant la zone : %1$s x %2$s \n \n Total des dons - +Fichier GPX comprenant les coordonnées et le contenu des notes sélectionnées. + Fichier GPX comprenant les coordonnées et le contenu de toutes les notes. + Modifications %1$s, total %2$s mBTC + Bénéficiaires d\\\'OSM + From 2caffd860e81e54ffae7a4be4b6b3e80fbb42266 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89loi=20Alain?= Date: Fri, 22 Dec 2017 12:16:43 +0000 Subject: [PATCH 12/62] Translated using Weblate (French) Currently translated at 85.0% (2825 of 3322 strings) --- OsmAnd/res/values-fr/phrases.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/OsmAnd/res/values-fr/phrases.xml b/OsmAnd/res/values-fr/phrases.xml index a517261396..31d55ea9bc 100644 --- a/OsmAnd/res/values-fr/phrases.xml +++ b/OsmAnd/res/values-fr/phrases.xml @@ -3122,4 +3122,6 @@ Réservation : non Réservation : membres uniquement + État opérationnel + Mode de distribution de l\\\'eau From 044ed8012bedb0596301d857c43a611420656222 Mon Sep 17 00:00:00 2001 From: Ldm Public Date: Fri, 22 Dec 2017 12:18:15 +0000 Subject: [PATCH 13/62] Translated using Weblate (French) Currently translated at 85.1% (2830 of 3322 strings) --- OsmAnd/res/values-fr/phrases.xml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/OsmAnd/res/values-fr/phrases.xml b/OsmAnd/res/values-fr/phrases.xml index 31d55ea9bc..faaa45606a 100644 --- a/OsmAnd/res/values-fr/phrases.xml +++ b/OsmAnd/res/values-fr/phrases.xml @@ -3124,4 +3124,10 @@ État opérationnel Mode de distribution de l\\\'eau + Ampérage + Boite aux lettres + Rue + Plat + + Centre de paiement From 6e333a81b766a85fa58c308c766babf9905852be Mon Sep 17 00:00:00 2001 From: Ldm Public Date: Fri, 22 Dec 2017 12:21:55 +0000 Subject: [PATCH 14/62] Translated using Weblate (French) Currently translated at 85.3% (2834 of 3322 strings) --- OsmAnd/res/values-fr/phrases.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/OsmAnd/res/values-fr/phrases.xml b/OsmAnd/res/values-fr/phrases.xml index faaa45606a..3311fdc6e4 100644 --- a/OsmAnd/res/values-fr/phrases.xml +++ b/OsmAnd/res/values-fr/phrases.xml @@ -3130,4 +3130,7 @@ Plat Centre de paiement + Bureau médical + Stationnement payant : oui + Stationnement payant : non From d07f4abfd3d3c685779f3b8e26edd5565d8752a4 Mon Sep 17 00:00:00 2001 From: Ldm Public Date: Fri, 22 Dec 2017 12:32:48 +0000 Subject: [PATCH 15/62] Translated using Weblate (French) Currently translated at 86.1% (2862 of 3322 strings) --- OsmAnd/res/values-fr/phrases.xml | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/OsmAnd/res/values-fr/phrases.xml b/OsmAnd/res/values-fr/phrases.xml index 3311fdc6e4..e0790e1227 100644 --- a/OsmAnd/res/values-fr/phrases.xml +++ b/OsmAnd/res/values-fr/phrases.xml @@ -3133,4 +3133,36 @@ Bureau médical Stationnement payant : oui Stationnement payant : non + Oiseaux + Location + Location : non + Réparation + Réparation : non + Pièces détachées + Pièces détachées : non + Pneus + Pneus : non + Propriétaire + + Direction : sens horaire + Direction : sens anti-horaire + Direction : entrée + Direction : sortie + Location de bateau + Bateaux à voile : oui + Bateaux à voile : non + Réseau + + Archive + Service public + Canal VHF + + Zone montagneuse + + Cassé + A réparer + + Aucune + Osmose inverse + Pompe From f923ef4562e21e5db2ae9b6a6a7134d06ec65a77 Mon Sep 17 00:00:00 2001 From: jan madsen Date: Fri, 22 Dec 2017 10:20:28 +0000 Subject: [PATCH 16/62] Translated using Weblate (Danish) Currently translated at 100.0% (2521 of 2521 strings) --- OsmAnd/res/values-da/strings.xml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/OsmAnd/res/values-da/strings.xml b/OsmAnd/res/values-da/strings.xml index 717bd6e8e7..4951765f5c 100644 --- a/OsmAnd/res/values-da/strings.xml +++ b/OsmAnd/res/values-da/strings.xml @@ -2994,4 +2994,9 @@ Repræsenterer område: %1$s x %2$s \n• Vandretid tager hensyn til terræn (stigning) (Naismiths regel) \n \n - + GPX fil med koordinaterne og data for de valgte noter. + GPX-fil med koordinater og data for alle noter. + Redigeringer %1$s, sum %2$s mBTC + OSM modtagere + Samlede donationer + From d82e28358d2a07192535ee6ade39de67f08425ff Mon Sep 17 00:00:00 2001 From: Ldm Public Date: Fri, 22 Dec 2017 12:08:29 +0000 Subject: [PATCH 17/62] Translated using Weblate (French) Currently translated at 100.0% (2521 of 2521 strings) --- OsmAnd/res/values-fr/strings.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/OsmAnd/res/values-fr/strings.xml b/OsmAnd/res/values-fr/strings.xml index 2ae50ff48e..d27bdbb4b2 100644 --- a/OsmAnd/res/values-fr/strings.xml +++ b/OsmAnd/res/values-fr/strings.xml @@ -3045,7 +3045,7 @@ représentant la zone : %1$s x %2$s \n Total des dons Fichier GPX comprenant les coordonnées et le contenu des notes sélectionnées. - Fichier GPX comprenant les coordonnées et le contenu de toutes les notes. - Modifications %1$s, total %2$s mBTC + Fichier GPX contenant les coordonnées et les notes. + Modifications : %1$s, Total : %2$s mBTC Bénéficiaires d\\\'OSM From 29460cbebbb88e60bfc860d5324c25f8092f435e Mon Sep 17 00:00:00 2001 From: Igor Eliezer Date: Fri, 22 Dec 2017 11:38:58 +0000 Subject: [PATCH 18/62] Translated using Weblate (Portuguese (Brazil)) Currently translated at 82.6% (2083 of 2521 strings) --- OsmAnd/res/values-pt-rBR/strings.xml | 40 +++++++++++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) diff --git a/OsmAnd/res/values-pt-rBR/strings.xml b/OsmAnd/res/values-pt-rBR/strings.xml index fbd6238e5f..2a0c245044 100644 --- a/OsmAnd/res/values-pt-rBR/strings.xml +++ b/OsmAnd/res/values-pt-rBR/strings.xml @@ -2446,4 +2446,42 @@ Pôr do Sol: %2$s Adquira por %1$s mês Obter downloads ilimitados de mapa e atualizações de mapas mais de uma vez por mês: por hora, diária ou semanal. Tocando o botão de ação adicionará um ponto de passagem de GPX na localização do centro da tela. - + Arquivo GPX com coordenadas e dados de todas as notas. + Armazenamento de dados do OsmAnd (para mapas, trilhas, etc.): %1$s. + Obtenha direções e descobra novos lugares sem precisar de conexão com Internet + Objetos superficiais + Vamos começar + %1$s paradas antes + Pesquisar a %1$s daqui + Trajeto atual + Resposta sonora de direção + Indicar a direção do ponto de destino por som. + Resposta tátil de direção + Indica a direção do ponto de destino por vibração. + Ativar a navegação por mudanças do OsmAnd Live. + Rumo magnético + Rumo relativo + Sem recálculo de rota depois de deixá-la + Sem recálculo de rota para a direção oposta + Auto-anúncio inteligente + Lista recolhida + Lista-árvore + Por favor, adicione marcadores de mapa pelo mapa + Não há pontos de passagem encontrados + Agora o aplicativo tem permissão para gravar no armazenamento externo. Reiniciar o aplicativo manualmente é necessário. + Mover para cima + Mover para baixo + Finalizar a navegação + Evitar estrada + Assinatura OsmAnd Live + Assinar + Nome Público + Não mostre meu nome em relatórios + Região de suporte + Custo mensal + Pagamento mensal. + Ativo + Inativo + Por favor insira um endereço de e-mail válido + Total de doações + From 38f223412116e596320dbf82d81f784615bb5459 Mon Sep 17 00:00:00 2001 From: Franco Date: Fri, 22 Dec 2017 12:49:07 +0000 Subject: [PATCH 19/62] Translated using Weblate (Spanish (Argentina)) Currently translated at 100.0% (2521 of 2521 strings) --- OsmAnd/res/values-es-rAR/strings.xml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/OsmAnd/res/values-es-rAR/strings.xml b/OsmAnd/res/values-es-rAR/strings.xml index c475ffb52f..0106fb82dd 100644 --- a/OsmAnd/res/values-es-rAR/strings.xml +++ b/OsmAnd/res/values-es-rAR/strings.xml @@ -2867,4 +2867,9 @@ Proporciona un código completo \n • El tiempo de caminata es consciente del terreno ascendente (regla de Naismith). \n \n - + Archivo GPX con coordenadas y datos de las notas elegidas. + Archivo GPX con coordenadas y datos de todas las notas. + Ediciones %1$s, sum %2$s mBTC + Destinatarios de OSM + Total de donaciones + From dc9529fa69a1be63b857a7ce30725229860a45d9 Mon Sep 17 00:00:00 2001 From: PavelRatushnyi Date: Fri, 22 Dec 2017 15:12:20 +0200 Subject: [PATCH 20/62] Fix divider width in context menu and remove unnecessary overloaded method --- .../audionotes/AudioVideoNoteMenuBuilder.java | 2 +- .../plus/mapcontextmenu/MenuBuilder.java | 43 ++++++++----------- .../builders/AmenityMenuBuilder.java | 36 +++++++++------- .../builders/FavouritePointMenuBuilder.java | 4 +- .../builders/GpxItemMenuBuilder.java | 2 +- .../builders/WptPtMenuBuilder.java | 14 +++--- .../plus/osmedit/EditPOIMenuBuilder.java | 10 ++--- 7 files changed, 55 insertions(+), 56 deletions(-) diff --git a/OsmAnd/src/net/osmand/plus/audionotes/AudioVideoNoteMenuBuilder.java b/OsmAnd/src/net/osmand/plus/audionotes/AudioVideoNoteMenuBuilder.java index 5362db7acc..1b213df41e 100644 --- a/OsmAnd/src/net/osmand/plus/audionotes/AudioVideoNoteMenuBuilder.java +++ b/OsmAnd/src/net/osmand/plus/audionotes/AudioVideoNoteMenuBuilder.java @@ -43,7 +43,7 @@ public class AudioVideoNoteMenuBuilder extends MenuBuilder { DateFormat timeFormat = android.text.format.DateFormat.getTimeFormat(view.getContext()); Date date = new Date(recording.getFile().lastModified()); buildRow(view, R.drawable.ic_action_data, dateFormat.format(date) + " — " + timeFormat.format(date), - 0, false, null, false, 0, false, null); + 0, false, null, false, 0, false, null, false); buildPlainMenuItems(view); diff --git a/OsmAnd/src/net/osmand/plus/mapcontextmenu/MenuBuilder.java b/OsmAnd/src/net/osmand/plus/mapcontextmenu/MenuBuilder.java index 49fbd60af8..4e9bdfefb5 100644 --- a/OsmAnd/src/net/osmand/plus/mapcontextmenu/MenuBuilder.java +++ b/OsmAnd/src/net/osmand/plus/mapcontextmenu/MenuBuilder.java @@ -294,8 +294,7 @@ public class MenuBuilder { } if (routes.size() > 0) { buildRow(view, 0, app.getString(R.string.transport_Routes), 0, true, getCollapsableTransportStopRoutesView(view.getContext(), false), - false, 0, false, null); - matchWidthDivider = true; + false, 0, false, null, true); } buildInternal(view); if (showOnlinePhotos) { @@ -322,7 +321,7 @@ public class MenuBuilder { protected void buildPlainMenuItems(View view) { for (PlainMenuItem item : plainMenuItems) { buildRow(view, item.getIconId(), item.getText(), 0, item.collapsable, item.collapsableView, - item.isNeedLinks(), 0, item.isUrl(), item.getOnClickListener()); + item.isNeedLinks(), 0, item.isUrl(), item.getOnClickListener(), false); } } @@ -346,7 +345,7 @@ public class MenuBuilder { if (mapContextMenu != null) { String title = mapContextMenu.getTitleStr(); if (title.length() > TITLE_LIMIT) { - buildRow(view, R.drawable.ic_action_note_dark, title, 0, false, null, false, 0, false, null); + buildRow(view, R.drawable.ic_action_note_dark, title, 0, false, null, false, 0, false, null, false); } } } @@ -355,7 +354,7 @@ public class MenuBuilder { if (processNearstWiki() && nearestWiki.size() > 0) { buildRow(view, R.drawable.ic_action_wikipedia, app.getString(R.string.wiki_around) + " (" + nearestWiki.size()+")", 0, true, getCollapsableWikiView(view.getContext(), true), - false, 0, false, null); + false, 0, false, null, false); } } @@ -378,7 +377,7 @@ public class MenuBuilder { } }); buildRow(view, R.drawable.ic_action_photo_dark, app.getString(R.string.online_photos), 0, true, - collapsableView, false, 1, false, null); + collapsableView, false, 1, false, null, false); if (needUpdateOnly && onlinePhotoCards != null) { onlinePhotoCardsRow.setCards(onlinePhotoCards); @@ -423,7 +422,7 @@ public class MenuBuilder { } protected void buildAfter(View view) { - buildRowDivider(view, false); + buildRowDivider(view); } public boolean isFirstRow() { @@ -436,23 +435,17 @@ public class MenuBuilder { public View buildRow(View view, int iconId, String text, int textColor, boolean collapsable, final CollapsableView collapsableView, - boolean needLinks, int textLinesLimit, boolean isUrl, OnClickListener onClickListener) { + boolean needLinks, int textLinesLimit, boolean isUrl, OnClickListener onClickListener, boolean matchWidthDivider) { return buildRow(view, iconId == 0 ? null : getRowIcon(iconId), text, textColor, null, collapsable, collapsableView, - needLinks, textLinesLimit, isUrl, onClickListener); - } - - public View buildRow(final View view, Drawable icon, final String text, int textColor, - boolean collapsable, final CollapsableView collapsableView, boolean needLinks, - int textLinesLimit, boolean isUrl, OnClickListener onClickListener) { - return buildRow(view, icon, text, textColor, null, collapsable, collapsableView, needLinks, textLinesLimit, isUrl, onClickListener); + needLinks, textLinesLimit, isUrl, onClickListener, matchWidthDivider); } public View buildRow(final View view, Drawable icon, final String text, int textColor, String secondaryText, boolean collapsable, final CollapsableView collapsableView, boolean needLinks, - int textLinesLimit, boolean isUrl, OnClickListener onClickListener) { + int textLinesLimit, boolean isUrl, OnClickListener onClickListener, boolean matchWidthDivider) { if (!isFirstRow()) { - buildRowDivider(view, false); + buildRowDivider(view); } LinearLayout baseView = new LinearLayout(view.getContext()); @@ -596,9 +589,15 @@ public class MenuBuilder { rowBuilt(); + setDividerWidth(matchWidthDivider); + return ll; } + protected void setDividerWidth(boolean matchWidthDivider) { + this.matchWidthDivider = matchWidthDivider; + } + protected void copyToClipboard(String text, Context ctx) { ((ClipboardManager) app.getSystemService(Activity.CLIPBOARD_SERVICE)).setText(text); Toast.makeText(ctx, @@ -648,15 +647,11 @@ public class MenuBuilder { rowBuilt(); } - public void buildRowDivider(View view, boolean matchWidth) { - if (matchWidthDivider) { - matchWidth = true; - matchWidthDivider = false; - } + public void buildRowDivider(View view) { View horizontalLine = new View(view.getContext()); LinearLayout.LayoutParams llHorLineParams = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, dpToPx(1f)); llHorLineParams.gravity = Gravity.BOTTOM; - if (!matchWidth) { + if (!matchWidthDivider) { llHorLineParams.setMargins(dpToPx(64f), 0, 0, 0); } horizontalLine.setLayoutParams(llHorLineParams); @@ -717,7 +712,7 @@ public class MenuBuilder { private void buildTransportRouteRow(ViewGroup parent, TransportStopRoute r, OnClickListener listener) { if (!isFirstRow()) { - buildRowDivider(parent, false); + buildRowDivider(parent); } View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.ctx_menu_transport_route_layout, parent, false); diff --git a/OsmAnd/src/net/osmand/plus/mapcontextmenu/builders/AmenityMenuBuilder.java b/OsmAnd/src/net/osmand/plus/mapcontextmenu/builders/AmenityMenuBuilder.java index 8e42c71832..67a88c9b70 100644 --- a/OsmAnd/src/net/osmand/plus/mapcontextmenu/builders/AmenityMenuBuilder.java +++ b/OsmAnd/src/net/osmand/plus/mapcontextmenu/builders/AmenityMenuBuilder.java @@ -62,18 +62,18 @@ public class AmenityMenuBuilder extends MenuBuilder { private void buildRow(View view, int iconId, String text, String textPrefix, boolean collapsable, final CollapsableView collapsableView, int textColor, boolean isWiki, boolean isText, boolean needLinks, - boolean isPhoneNumber, boolean isUrl) { + boolean isPhoneNumber, boolean isUrl, boolean matchWidthDivider) { buildRow(view, iconId == 0 ? null : getRowIcon(iconId), text, textPrefix, collapsable, collapsableView, textColor, - isWiki, isText, needLinks, isPhoneNumber, isUrl); + isWiki, isText, needLinks, isPhoneNumber, isUrl, matchWidthDivider); } protected void buildRow(final View view, Drawable icon, final String text, final String textPrefix, boolean collapsable, final CollapsableView collapsableView, int textColor, boolean isWiki, boolean isText, boolean needLinks, - boolean isPhoneNumber, boolean isUrl) { + boolean isPhoneNumber, boolean isUrl, boolean matchWidthDivider) { if (!isFirstRow()) { - buildRowDivider(view, false); + buildRowDivider(view); } final String txt; @@ -243,8 +243,6 @@ public class AmenityMenuBuilder extends MenuBuilder { button.setCompoundDrawablesWithIntrinsicBounds(compoundDrawable, null, null, null); button.setCompoundDrawablePadding(dpToPx(8f)); llText.addView(button); - - matchWidthDivider = true; } ((LinearLayout) view).addView(baseView); @@ -299,6 +297,8 @@ public class AmenityMenuBuilder extends MenuBuilder { } rowBuilt(); + + setDividerWidth(matchWidthDivider); } @Override @@ -448,15 +448,16 @@ public class AmenityMenuBuilder extends MenuBuilder { isUrl = true; } + boolean matchWidthDivider = !isDescription && isWiki; if (isDescription) { descriptions.add(new AmenityInfoRow(key, R.drawable.ic_action_note_dark, textPrefix, - vl, collapsable, collapsableView, 0, false, true, true, 0, "", false, false)); + vl, collapsable, collapsableView, 0, false, true, true, 0, "", false, false, matchWidthDivider)); } else if (icon != null) { infoRows.add(new AmenityInfoRow(key, icon, textPrefix, vl, collapsable, collapsableView, - textColor, isWiki, isText, needLinks, poiTypeOrder, poiTypeKeyName, isPhoneNumber, isUrl)); + textColor, isWiki, isText, needLinks, poiTypeOrder, poiTypeKeyName, isPhoneNumber, isUrl, matchWidthDivider)); } else { infoRows.add(new AmenityInfoRow(key, iconId, textPrefix, vl, collapsable, collapsableView, - textColor, isWiki, isText, needLinks, poiTypeOrder, poiTypeKeyName, isPhoneNumber, isUrl)); + textColor, isWiki, isText, needLinks, poiTypeOrder, poiTypeKeyName, isPhoneNumber, isUrl, matchWidthDivider)); } } @@ -499,7 +500,7 @@ public class AmenityMenuBuilder extends MenuBuilder { AmenityInfoRow wikiInfo = new AmenityInfoRow( "nearest_wiki", R.drawable.ic_action_wikipedia, null, app.getString(R.string.wiki_around) + " (" + nearestWiki.size() + ")", true, getCollapsableWikiView(view.getContext(), true), - 0, false, false, false, 1000, null, false, false); + 0, false, false, false, 1000, null, false, false, false); buildAmenityRow(view, wikiInfo); } @@ -516,11 +517,11 @@ public class AmenityMenuBuilder extends MenuBuilder { link = "https://www.openstreetmap.org/way/"; } buildRow(view, R.drawable.ic_action_info_dark, link + (amenity.getId() >> 1), - 0, false, null, true, 0, true, null); + 0, false, null, true, 0, true, null, false); } buildRow(view, R.drawable.ic_action_get_my_location, PointDescription.getLocationName(app, amenity.getLocation().getLatitude(), amenity.getLocation().getLongitude(), true) - .replaceAll("\n", " "), 0, false, null, false, 0, false, null); + .replaceAll("\n", " "), 0, false, null, false, 0, false, null, false); //if (st.COORDINATES_FORMAT.get() != PointDescription.OLC_FORMAT) // buildRow(view, R.drawable.ic_action_get_my_location, PointDescription.getLocationOlcName( // amenity.getLocation().getLatitude(), amenity.getLocation().getLongitude()) @@ -531,10 +532,10 @@ public class AmenityMenuBuilder extends MenuBuilder { public void buildAmenityRow(View view, AmenityInfoRow info) { if (info.icon != null) { buildRow(view, info.icon, info.text, info.textPrefix, info.collapsable, info.collapsableView, - info.textColor, info.isWiki, info.isText, info.needLinks, info.isPhoneNumber, info.isUrl); + info.textColor, info.isWiki, info.isText, info.needLinks, info.isPhoneNumber, info.isUrl, info.matchWidthDivider); } else { buildRow(view, info.iconId, info.text, info.textPrefix, info.collapsable, info.collapsableView, - info.textColor, info.isWiki, info.isText, info.needLinks, info.isPhoneNumber, info.isUrl); + info.textColor, info.isWiki, info.isText, info.needLinks, info.isPhoneNumber, info.isUrl, info.matchWidthDivider); } } @@ -569,11 +570,12 @@ public class AmenityMenuBuilder extends MenuBuilder { private boolean isUrl; private int order; private String name; + private boolean matchWidthDivider; public AmenityInfoRow(String key, Drawable icon, String textPrefix, String text, boolean collapsable, CollapsableView collapsableView, int textColor, boolean isWiki, boolean isText, boolean needLinks, - int order, String name, boolean isPhoneNumber, boolean isUrl) { + int order, String name, boolean isPhoneNumber, boolean isUrl, boolean matchWidthDivider) { this.key = key; this.icon = icon; this.textPrefix = textPrefix; @@ -588,12 +590,13 @@ public class AmenityMenuBuilder extends MenuBuilder { this.name = name; this.isPhoneNumber = isPhoneNumber; this.isUrl = isUrl; + this.matchWidthDivider = matchWidthDivider; } public AmenityInfoRow(String key, int iconId, String textPrefix, String text, boolean collapsable, CollapsableView collapsableView, int textColor, boolean isWiki, boolean isText, boolean needLinks, - int order, String name, boolean isPhoneNumber, boolean isUrl) { + int order, String name, boolean isPhoneNumber, boolean isUrl, boolean matchWidthDivider) { this.key = key; this.iconId = iconId; this.textPrefix = textPrefix; @@ -608,6 +611,7 @@ public class AmenityMenuBuilder extends MenuBuilder { this.name = name; this.isPhoneNumber = isPhoneNumber; this.isUrl = isUrl; + this.matchWidthDivider = matchWidthDivider; } } } diff --git a/OsmAnd/src/net/osmand/plus/mapcontextmenu/builders/FavouritePointMenuBuilder.java b/OsmAnd/src/net/osmand/plus/mapcontextmenu/builders/FavouritePointMenuBuilder.java index 4f919d6b4d..05097d55f2 100644 --- a/OsmAnd/src/net/osmand/plus/mapcontextmenu/builders/FavouritePointMenuBuilder.java +++ b/OsmAnd/src/net/osmand/plus/mapcontextmenu/builders/FavouritePointMenuBuilder.java @@ -78,9 +78,9 @@ public class FavouritePointMenuBuilder extends MenuBuilder { int disabledColor = light ? R.color.secondary_text_light : R.color.secondary_text_dark; color = favoriteGroup.visible ? (color | 0xff000000) : view.getResources().getColor(disabledColor); String name = view.getContext().getString(R.string.context_menu_points_of_group); - buildRow(view, app.getIconsCache().getPaintedIcon(R.drawable.ic_action_folder, color), name, 0, + buildRow(view, app.getIconsCache().getPaintedIcon(R.drawable.ic_action_folder, color), name, 0, null, true, getCollapsableFavouritesView(view.getContext(), true, favoriteGroup, fav), - false, 0, false, null); + false, 0, false, null, false); } } diff --git a/OsmAnd/src/net/osmand/plus/mapcontextmenu/builders/GpxItemMenuBuilder.java b/OsmAnd/src/net/osmand/plus/mapcontextmenu/builders/GpxItemMenuBuilder.java index 3e60a8952d..10d61daf3e 100644 --- a/OsmAnd/src/net/osmand/plus/mapcontextmenu/builders/GpxItemMenuBuilder.java +++ b/OsmAnd/src/net/osmand/plus/mapcontextmenu/builders/GpxItemMenuBuilder.java @@ -34,7 +34,7 @@ public class GpxItemMenuBuilder extends MenuBuilder { String description = GpxUiHelper.getDescription(app, item.analysis, false); String[] lines = description.split("\n"); for (String line : lines) { - buildRow(view, R.drawable.ic_action_info_dark, line, 0, false, null, false, 0, false, null); + buildRow(view, R.drawable.ic_action_info_dark, line, 0, false, null, false, 0, false, null, false); } } diff --git a/OsmAnd/src/net/osmand/plus/mapcontextmenu/builders/WptPtMenuBuilder.java b/OsmAnd/src/net/osmand/plus/mapcontextmenu/builders/WptPtMenuBuilder.java index c979304ccb..9553e96d39 100644 --- a/OsmAnd/src/net/osmand/plus/mapcontextmenu/builders/WptPtMenuBuilder.java +++ b/OsmAnd/src/net/osmand/plus/mapcontextmenu/builders/WptPtMenuBuilder.java @@ -44,23 +44,23 @@ public class WptPtMenuBuilder extends MenuBuilder { DateFormat timeFormat = android.text.format.DateFormat.getTimeFormat(view.getContext()); Date date = new Date(wpt.time); buildRow(view, R.drawable.ic_action_data, - dateFormat.format(date) + " — " + timeFormat.format(date), 0, false, null, false, 0, false, null); + dateFormat.format(date) + " — " + timeFormat.format(date), 0, false, null, false, 0, false, null, false); } if (wpt.speed > 0) { buildRow(view, R.drawable.ic_action_speed, - OsmAndFormatter.getFormattedSpeed((float)wpt.speed, app), 0, false, null, false, 0, false, null); + OsmAndFormatter.getFormattedSpeed((float)wpt.speed, app), 0, false, null, false, 0, false, null, false); } if (!Double.isNaN(wpt.ele)) { buildRow(view, R.drawable.ic_action_altitude, - OsmAndFormatter.getFormattedDistance((float) wpt.ele, app), 0, false, null, false, 0, false, null); + OsmAndFormatter.getFormattedDistance((float) wpt.ele, app), 0, false, null, false, 0, false, null, false); } if (!Double.isNaN(wpt.hdop)) { buildRow(view, R.drawable.ic_action_gps_info, Algorithms.capitalizeFirstLetterAndLowercase(app.getString(R.string.plugin_distance_point_hdop)) + ": " + (int)wpt.hdop, 0, - false, null, false, 0, false, null); + false, null, false, 0, false, null, false); } if (!Algorithms.isEmpty(wpt.desc)) { - final View row = buildRow(view, R.drawable.ic_action_note_dark, wpt.desc, 0, false, null, true, 10, false, null); + final View row = buildRow(view, R.drawable.ic_action_note_dark, wpt.desc, 0, false, null, true, 10, false, null, false); row.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { @@ -71,7 +71,7 @@ public class WptPtMenuBuilder extends MenuBuilder { } if (!Algorithms.isEmpty(wpt.comment)) { final View rowc = buildRow(view, R.drawable.ic_action_note_dark, wpt.comment, 0, - false, null, true, 10, false, null); + false, null, true, 10, false, null, false); rowc.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { @@ -98,7 +98,7 @@ public class WptPtMenuBuilder extends MenuBuilder { int color = getPointColor(wpt, getFileColor(selectedGpxFile)); buildRow(view, app.getIconsCache().getPaintedIcon(R.drawable.ic_type_waypoints_group, color), title, 0, gpxName, true, getCollapsableWaypointsView(view.getContext(), true, gpx, wpt), - false, 0, false, null); + false, 0, false, null, false); } } } diff --git a/OsmAnd/src/net/osmand/plus/osmedit/EditPOIMenuBuilder.java b/OsmAnd/src/net/osmand/plus/osmedit/EditPOIMenuBuilder.java index 595fe592aa..742ba1c410 100644 --- a/OsmAnd/src/net/osmand/plus/osmedit/EditPOIMenuBuilder.java +++ b/OsmAnd/src/net/osmand/plus/osmedit/EditPOIMenuBuilder.java @@ -30,8 +30,8 @@ public class EditPOIMenuBuilder extends MenuBuilder { if (osmPoint instanceof OsmNotesPoint) { OsmNotesPoint notes = (OsmNotesPoint) osmPoint; - buildRow(view, R.drawable.ic_action_note_dark, notes.getText(), 0, false, null, false, 0, false, null); - buildRow(view, R.drawable.ic_group, notes.getAuthor(), 0, false, null, false, 0, false, null); + buildRow(view, R.drawable.ic_action_note_dark, notes.getText(), 0, false, null, false, 0, false, null, false); + buildRow(view, R.drawable.ic_group, notes.getAuthor(), 0, false, null, false, 0, false, null, false); } else if (osmPoint instanceof OpenstreetmapPoint) { OpenstreetmapPoint point = (OpenstreetmapPoint) osmPoint; @@ -56,7 +56,7 @@ public class EditPOIMenuBuilder extends MenuBuilder { if (resId == 0) { resId = R.drawable.ic_action_folder_stroke; } - buildRow(view, resId, poiTranslation, 0, false, null, false, 0, false, null); + buildRow(view, resId, poiTranslation, 0, false, null, false, 0, false, null, false); break; } } @@ -67,12 +67,12 @@ public class EditPOIMenuBuilder extends MenuBuilder { continue; } String text = e.getKey() + "=" + e.getValue(); - buildRow(view, R.drawable.ic_action_info_dark, text, 0, false, null, false, 0, false, null); + buildRow(view, R.drawable.ic_action_info_dark, text, 0, false, null, false, 0, false, null, false); } } buildRow(view, R.drawable.ic_action_get_my_location, PointDescription.getLocationName(app, osmPoint.getLatitude(), osmPoint.getLongitude(), true) - .replaceAll("\n", " "), 0, false, null, false, 0, false, null); + .replaceAll("\n", " "), 0, false, null, false, 0, false, null, false); } } From 8f75d07b44b5ad72faec3d1c43d42d8bd4879ebe Mon Sep 17 00:00:00 2001 From: PavelRatushnyi Date: Fri, 22 Dec 2017 15:15:43 +0200 Subject: [PATCH 21/62] Show transport rotes on top --- .../net/osmand/plus/mapcontextmenu/MenuBuilder.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/OsmAnd/src/net/osmand/plus/mapcontextmenu/MenuBuilder.java b/OsmAnd/src/net/osmand/plus/mapcontextmenu/MenuBuilder.java index 4e9bdfefb5..1fb6c2d977 100644 --- a/OsmAnd/src/net/osmand/plus/mapcontextmenu/MenuBuilder.java +++ b/OsmAnd/src/net/osmand/plus/mapcontextmenu/MenuBuilder.java @@ -288,14 +288,14 @@ public class MenuBuilder { if (showTitleIfTruncated) { buildTitleRow(view); } + if (showTransportRoutes()) { + buildRow(view, 0, app.getString(R.string.transport_Routes), 0, true, getCollapsableTransportStopRoutesView(view.getContext(), false), + false, 0, false, null, true); + } buildNearestWikiRow(view); if (needBuildPlainMenuItems()) { buildPlainMenuItems(view); } - if (routes.size() > 0) { - buildRow(view, 0, app.getString(R.string.transport_Routes), 0, true, getCollapsableTransportStopRoutesView(view.getContext(), false), - false, 0, false, null, true); - } buildInternal(view); if (showOnlinePhotos) { buildNearestPhotosRow(view); @@ -304,6 +304,10 @@ public class MenuBuilder { buildAfter(view); } + private boolean showTransportRoutes() { + return routes.size() > 0; + } + void onHide() { hidden = true; } From 2fd340d695356e044543bf8b11ee631aa899e2fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89loi=20Alain?= Date: Fri, 22 Dec 2017 13:21:24 +0000 Subject: [PATCH 22/62] Translated using Weblate (French) Currently translated at 86.7% (2881 of 3322 strings) --- OsmAnd/res/values-fr/phrases.xml | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/OsmAnd/res/values-fr/phrases.xml b/OsmAnd/res/values-fr/phrases.xml index e0790e1227..971c4dd47f 100644 --- a/OsmAnd/res/values-fr/phrases.xml +++ b/OsmAnd/res/values-fr/phrases.xml @@ -2153,7 +2153,7 @@ Automatisé Type Type de carburant - Type + Type de carburant (avions) Type de paiement Son Bande podotactile @@ -3013,7 +3013,7 @@ Mammifères Poissons - Balise de voie + Balise de chemin Autorisé uniquement à pied Arrière-pays @@ -3165,4 +3165,19 @@ Aucune Osmose inverse Pompe + Implantation + Type de fortification : rempart + Référence du pont + Référence du tunnel + + Spécialité médicale : pédiatrie : non + Spécialité médicale : médecine d\'urgence : non + Spécialité médicale : médecine tropicale : non + Spécialité médicale : obstétrique (postnatale) : non + Spécialité médicale : obstétrique (prénatale) : non + Spécialité médicale : pédiatrie sociale : non + Spécialité médicale : obstétrique (césarienne) : non + Addictologie + Orthophonie + Thérapie manuelle From 2110dc171d1b1a272989fcb3a3f30ecc2c440076 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20B=C3=A9bin?= Date: Fri, 22 Dec 2017 13:22:27 +0000 Subject: [PATCH 23/62] Translated using Weblate (French) Currently translated at 86.7% (2881 of 3322 strings) --- OsmAnd/res/values-fr/phrases.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OsmAnd/res/values-fr/phrases.xml b/OsmAnd/res/values-fr/phrases.xml index 971c4dd47f..0c7454c03b 100644 --- a/OsmAnd/res/values-fr/phrases.xml +++ b/OsmAnd/res/values-fr/phrases.xml @@ -3036,7 +3036,7 @@ Sans balai Location bateaux -Accès toilettes : communauté +Accès au toilettes : propriété collective Péage par automate Décoration de façade From fa90b63e0334c5adef3ee635ec3a832306e69542 Mon Sep 17 00:00:00 2001 From: Dmitriy Prodchenko Date: Fri, 22 Dec 2017 17:10:04 +0200 Subject: [PATCH 24/62] Add icon for Download Region map context menu --- OsmAnd/res/drawable-hdpi/ic_sdcard_16.png | Bin 0 -> 1124 bytes OsmAnd/res/drawable-mdpi/ic_sdcard_16.png | Bin 0 -> 1076 bytes OsmAnd/res/drawable-xhdpi/ic_sdcard_16.png | Bin 0 -> 1139 bytes OsmAnd/res/drawable-xxhdpi/ic_sdcard_16.png | Bin 0 -> 1205 bytes 4 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 OsmAnd/res/drawable-hdpi/ic_sdcard_16.png create mode 100644 OsmAnd/res/drawable-mdpi/ic_sdcard_16.png create mode 100644 OsmAnd/res/drawable-xhdpi/ic_sdcard_16.png create mode 100644 OsmAnd/res/drawable-xxhdpi/ic_sdcard_16.png diff --git a/OsmAnd/res/drawable-hdpi/ic_sdcard_16.png b/OsmAnd/res/drawable-hdpi/ic_sdcard_16.png new file mode 100644 index 0000000000000000000000000000000000000000..45194b797373ada104bb940377ff16441150a262 GIT binary patch literal 1124 zcmbVLO=#3W6i!(y+ENt-f2v|g1r?f2CY$Ugp=)(FyLQp7%XY=qllhr+W1F8Q({5T& z)(X<1Uc7k_1W`PQcn}0VNTpCK-t?lUf)_n`6G5>~+TH4*^k5(}^Jd=n-uM1yOZ}%h z+B(|^g6JspDP_Fxjs7j0@w!w?|G?Wmlp90?u8C@@4~dh8t3k40tHZDiRbz5&5%v&7 zEVL?vXs~!j)?GWUMmq7(_Ar_tdU``o)kh#AH8^ZJY3kd{R}^U(Y3jUCWQ$%FR;|7% z9}Z0QSM;e7T{5WN<77`LV*@rsDjC|NP9TSAYQ?UM&(SqQkt-@_Bu%Z78Z4H`tm{Kk zh$m?sBt$YL#epD+9N$fHEJ!k}!~mXVfy_!W3&_StVQ;=+%4H?r@P(x`RYk~?8KzdN z#cPSU>kl(Pk|c)Z7>=W{1|3W~NDXNx=xSO}V4(Y!hb-42Ba5o$j-xb%nXZOld&T0K zVJB!L3a5+-RgVF2ma*+9t`+S7mEm6+>uLv;Ne?n*7`WrUj_YA|HNiM{8#{^=F&p`; zZ{eb-ql&AK+t5J;B~9U%xM3NxsOyPjG9l4WkXV`*Ih7VUj>QYB34)=Sn#MQntcMp; zDIo(uQpxi<0CFiYlK{DF9wbryEeI!Y1vwbMN;K>6Nnm}63ryd zYrIK|VoIc;rs;+Wqy!eI2HyDJ3^JG$6Sd1f?bE!%JsBO>h5-v};{+W%Lp~msa|?Gb z<3XD)C?_l7C+*kra&L@o*%iCha=iUT{l}gi%SU!z`|$nV{?{`{X0F6Q`|P&gvH8dI z7wX+}Gl#F=xb2v+z?x*iRO(!o6)#=*@uZG)O=N9_jOrJW@eR}r()}a&DN07Pw z^-=5n-6eDGP}{qo*_*8ci_bPyV*Q67ygkr4M(nsqfIIB-XI)>~qq#5S`jsb{i_?Dq DVSZ=N literal 0 HcmV?d00001 diff --git a/OsmAnd/res/drawable-mdpi/ic_sdcard_16.png b/OsmAnd/res/drawable-mdpi/ic_sdcard_16.png new file mode 100644 index 0000000000000000000000000000000000000000..3962ada98811a77151d91e51225a1a5290c0dca1 GIT binary patch literal 1076 zcmbVLJ7^R^7+w+y8Vp7(qM~NmC`51{v$t=udED)tImpHHa**rHK4x=EvJZDB-X_&) z7b0S?v9SmWHez9`pkSpS*w|Rw2sRd42IB1HE?R^XF6_+wGynJh-~ZaI&R-uIJU>Vf z#87$GsNsD$`;QOcb@bPsiMMm8*gy-Ri&|z3i5VxfAX)a!Wmtozvwr&noFIt))T=j8 zqcW%2q0g9^4wL#3Mia!uR2rG~3Phv@m%Tuze!hN7k)ESdi(-YVL_)V%s@M%BeIIRgM-E-lP?t=kUT=qUczzWeGhyhv7w87V`ki7$uC?E5y)5VO$Tx)m|4=n;{C5W*Cu$ zLRNK|9Iu$R7i5=LvqJ61ZNS*O1D#SF`eY~5ns*2b$>aqWC>AX%u0#u#;L?gBD>Sq$ z+i`)K!vfXCJO7(O7L#JLcKN4$dRMq7v*W=qVBuh#V1Q>R#>4Vly||4BtyVT>>giW& zcW-a1|4MuFZod7g{eF6P^webg#pBakBTIevtCBYK=;@P@asJ(jt;NsYn*rhBkG|j2 um!+F0zfE6A`yZUy`98e!Z0;6I96L+s1DC!CueLvCb6hUY8!z)q_x=Fd3Q%AG literal 0 HcmV?d00001 diff --git a/OsmAnd/res/drawable-xhdpi/ic_sdcard_16.png b/OsmAnd/res/drawable-xhdpi/ic_sdcard_16.png new file mode 100644 index 0000000000000000000000000000000000000000..c94318f851dd4a7deeab6be797fcb2c5f415dbaf GIT binary patch literal 1139 zcmbVM&ui0A9FNj^QIK_g1jKlf zFBS>lEBfahS6)gQ4u~{rx;ul@H1TvZ1lubXw-h@; zBT*z}Y^ZrGjB~7QM{#YS16)FX-Pjf#lxID}mQdi%_y(y*rMF2Yx!c)L1SH-lmwk&A zMVnS#W5z}fE~sgme2JTusYr&ANG209gG8BQ1c}!eiRU@8aJnd(dPUcTrk?HiVk#vL zLCC9lAqQbDB@HEDE}Msml*$hYP;7DwPJlJXKuy~gvEAUp9l1)@M;dnhvg=MayI^$E z#cnX^dLWyPs-6O8ike|L(Pdv$sLi-l+<)O?(_P3U#wSd>uTpa23}N;5AP8=F^#+4&)x4l zGDC3r9_~l|z*7CT@MKAR-1)Zc>zne^)xOy2g->Glnni(^)V-E-v8nt)F8U1=awF=) Ip{qCl0Oho4&j0`b literal 0 HcmV?d00001 diff --git a/OsmAnd/res/drawable-xxhdpi/ic_sdcard_16.png b/OsmAnd/res/drawable-xxhdpi/ic_sdcard_16.png new file mode 100644 index 0000000000000000000000000000000000000000..3314db26c1fa401059d193455db1fbcc41736936 GIT binary patch literal 1205 zcmbVLU1$_n6rL!xA|{j;3fdy$r1S?ezdN%#Gi2Q)JG*AvZW=a=$%BIPb0--$Gj}p` zlbz%tHMUarMN12c`XCB@kV>gfZK_xh2?UG}Mv;gQzEnz;rqq<8h8_Er#0cfMD9sr`-f(9T9 zu09M(K({8x=0PVxY>b@p5E?3euA0zg^ccfLu8-LS(V2;S-K+pa8erJ*($wlt#os8U3FI1y6Rky2RIaae2S%;uX znpzENsMt?tVE{;pNzx{tkja$7@RA}6Vh1U3e3Io9mKSM`S2;!Hc(UFN_)zgS!|?1ha);gqqF?z23@v924xtBwv)3A_knU36HU^Z{D}Asi1(To1dw zNyfQ*wWAn_qfx&I99$HARDd99}p> zk}ShE46$ivJ-(RI1Sy+LX?aoM`CLlwN$|OBo=;$XkH||+ZovzY?wO$J+rhpY+~g~{ zYBm5mfmj9Bb3=zy0s+g};uU z;%lc*n)g4_&R4FtJU#H|hj)J1aZ1g=o%P}V=fdUMxq&Nhdh-` Date: Fri, 22 Dec 2017 17:49:57 +0200 Subject: [PATCH 25/62] Add button backgrounds for lond round button --- OsmAnd/res/drawable-hdpi/bt_round_long_day.9.png | Bin 0 -> 4504 bytes .../res/drawable-hdpi/bt_round_long_night.9.png | Bin 0 -> 4179 bytes OsmAnd/res/drawable-mdpi/bt_round_long_day.9.png | Bin 0 -> 3176 bytes .../res/drawable-mdpi/bt_round_long_night.9.png | Bin 0 -> 2976 bytes .../res/drawable-xhdpi/bt_round_long_day.9.png | Bin 0 -> 5982 bytes .../res/drawable-xhdpi/bt_round_long_night.9.png | Bin 0 -> 5580 bytes .../res/drawable-xxhdpi/bt_round_long_day.9.png | Bin 0 -> 8826 bytes .../drawable-xxhdpi/bt_round_long_night.9.png | Bin 0 -> 8100 bytes 8 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 OsmAnd/res/drawable-hdpi/bt_round_long_day.9.png create mode 100644 OsmAnd/res/drawable-hdpi/bt_round_long_night.9.png create mode 100644 OsmAnd/res/drawable-mdpi/bt_round_long_day.9.png create mode 100644 OsmAnd/res/drawable-mdpi/bt_round_long_night.9.png create mode 100644 OsmAnd/res/drawable-xhdpi/bt_round_long_day.9.png create mode 100644 OsmAnd/res/drawable-xhdpi/bt_round_long_night.9.png create mode 100644 OsmAnd/res/drawable-xxhdpi/bt_round_long_day.9.png create mode 100644 OsmAnd/res/drawable-xxhdpi/bt_round_long_night.9.png diff --git a/OsmAnd/res/drawable-hdpi/bt_round_long_day.9.png b/OsmAnd/res/drawable-hdpi/bt_round_long_day.9.png new file mode 100644 index 0000000000000000000000000000000000000000..05f542c298a16177352df3a5dec6af460db4fa49 GIT binary patch literal 4504 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 UfuToZ$|a7ePDF!DBbpt^X0VdtI@n|g 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 literal 0 HcmV?d00001 diff --git a/OsmAnd/res/drawable-mdpi/bt_round_long_night.9.png b/OsmAnd/res/drawable-mdpi/bt_round_long_night.9.png new file mode 100644 index 0000000000000000000000000000000000000000..857a0499f6b0f76cb64c58e611f2e7c5b528544e GIT binary patch literal 2976 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 literal 0 HcmV?d00001 diff --git a/OsmAnd/res/drawable-xhdpi/bt_round_long_night.9.png b/OsmAnd/res/drawable-xhdpi/bt_round_long_night.9.png new file mode 100644 index 0000000000000000000000000000000000000000..8b3336777a0ef4d6e53f514ef7b673d9865259c2 GIT binary patch literal 5580 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 Y+z~4eryfIT&p-Vd>sz2|kRF8p0UI!$%>V!Z literal 0 HcmV?d00001 diff --git a/OsmAnd/res/drawable-xxhdpi/bt_round_long_night.9.png b/OsmAnd/res/drawable-xxhdpi/bt_round_long_night.9.png new file mode 100644 index 0000000000000000000000000000000000000000..fa0b086d00da71cc79df39c7143ddc15075da387 GIT binary patch literal 8100 zcmbVxc|4Tg`}bfl#x}OGGlqmLgF&{;Fl67i6d8>=?Lllox{W~$*%^p(e+(#VJT`ct_904<#`f2_MVE(qp^yGHQShHt#=gu@6P+HeOIGlZGH z9u7}13=hEBgqz#ChkLuLd%$%rz_h|Nr~-U(L0DLrua94#MwmAIZ@C)O_UW(!9QHR! zkheDcAEO-2EMa=Y031w3URBOrQTaSfOnBiC8ycaF8~fYUw{y@bxz{`>$ZX!2bY6g-js~ z>#v|Fk5KUSJ)PIz)PX_Pxc_a&|41EZd&3{6V2ukT1_!uP*TYl%UuG(H|8GU7gj8!Z zECLABMZx-Di0;9@IKLnxj5eJ5M&5(qp`os*s;-R1Das){kjipMH&u5ztcM#y4(I8v zr0k*UhE#TU|5wic#ILWaq^G2&q=zw3QC3vcS39q(tf;SNps1{dQPM>!s{G4qfGltD8X8t*?ksRH3p^c@h6tUJbnf95#p;U`r(W{Objlcw!JS5Kr`n>FJ%Wx*AN% z4C_wtI~|lhU8sNNjll&FLU0}i0YqQe-$-i^{s${?O6NV4-92z}I5js9Iiw1;<>s!2 zl~clERopy0kZNiOW%z&iJ^p_YRG=EAaOy7qhx`0HMD@wj=6{2M+WBud;rysE6hIA@ zg|iJ=)Nt)F!k}%#rdJD?a|HYD4^&;glYz|3K(Y_@_V>pt5@~&2`Tw5u%w&z3)#E&W zQ>+8R=y*Ot6&pGQFaezHs#%MhjCQa4p)F1@5GQO?KDU`N#a$U*zh`hKVz@Q?*?NXk zC zC)cB0pATJ>>SqRC{;HP5GGHgZOLJ8)Lh7O7v0r-eo7k?e+kDY5xWiGJPCDwm)G_KL zls0*eN&2R9%z;=Jp9z(4SHv8}7dG4*?ZF%e(`BPg5~Vc;Vo@|8nXt1k39Pu@UBe>r zkWR+vR3PL%AC0TbanS)V2_vcg(g?Vzx9(2+){<^M6#_&Le@>4l2LlYP3ZFc}J;K(; zoUJ(fW@JZ{V_C5;)W?!&^{0HI+@ZqZK~6bu?nd2&Y2W(@mOSe{aX{=wsx(06XBEKE zMhAT)u|vPSwc4~$r?extEI3BA>FjkG<>?rFVMXsIg`zM5(%t5Sc5KEruoslSbWX|d z5OZ(owHHBJb-trmv_LW-5-ltip!HYWt@QnN*+qWOSng%wSgkT5PpJ5S6J#30r^?3w z1!hVW(M2zx#4WC0E7y4gFw7Wf1k-(GURJv#r;F@HNcSW#C4P?e4_SOTa(s2JMMMG& zr0>GE9`}wpID(Pp4AP@HW3~0uJ?uRKaSnB6aD)_S>IacV(0c+GR zt;fJ~AEx!W=Q_%&3MXNd{Uq)MIIAtSnSThL0bUoPs00WPB$-_9`?E5)!?)M*W6ve+ z*k(tocDc#vzJ1jtFQh<3T6n2#m3?U5kin3(4LWZ3;l2as&y_M$rx7$`d_8TqE;pIp zl~k}-Sk}S4t!Y*K)Ou-K$?jMw^3k1sw=LVvfe+po8fi7bG&%5qXSKa^b=KRe?Hgxa zU#_t_d9csAoWOwEme5FL1wl(uPbsrCzGUJFWXI%N`JK5p@C-vOZS6>z`*~Vig^6=| z!@udAwMNV9ZFHX9x?CYNBfGH{IqKE4O!JwcU;49qM#<+hAr^py9SQ;plY)T+>8IKD zP8wd%uqoTg&swL8yz%$y5uMRKJz3#u+=TfnICQZbyw=p9iU7Rfpcebk$9Q0`T^K{haPTyHc^URUUOynw2kWe&jGfq#{9i5MUCm{L0>q_2xXjZ zRvYEV3%avn5Hq+vX6+a9n^rDrLw_nI4LZ>b*3{e(&H6LJQqp@8%rs}Sja(XMJ$@7I z3Wy=d1ZA|2m2aN?@ryZ!bMRZKRA6M4U6n(#n%d`5S0ViB@rA%qTLQ$D^7e{&KBTdf z=CN+4#KqFyuk0a0q4I?~g^%*03{>(`BrOv+Cf*)Ii24%!T*`*E`_>UMN1E9(do&-O zERc$Sz$QsuDrUDON0<7h_71m3@W?v>Y{VhYz`$$XTg{A%zrv$!2L=84!oj3+glbIJ zT6ol>{lH48yH~HYq0r|oHq%irhDu>qK3}H-{YQXf0U*wWmJH_frv4)WY4EG|`!F~!KUJRb}{u8V;{Nmp%d*=B>~ zWEDsi%9`3`E;cBi#neiTNUMSC%+7ewn#5Bd- zfs^%dERKbAl}kuMFz*Wr8)ie(t2w4%QbL+|`nB~etlS!&vjrNJbjf<67r3>TqsYl} z)noGW^iAgs$#%2!GWRgdZ2NQ-_h6`;9tycaTK8shf$;X{Mifb+K=B{o8RBmcQ zw_P0hdr1I^pg&$vS#_}r_5ec%j|Pl$E}EC+n?B_&*Gc=urx2@}@PgMT>K>ur>an4H ziSFdO%}4GO^G+BjbA9#ZF}+fUiF|r+HqduNXcl$*+AwE(%^2CL+urMO-WA5sC+d9> z;*O!9oGbi4xTW(LSwX6WuG8~4K1r)?Fi0|%uSC-}z@ao{;OvLGUFcufSFA{C4XSu% z@@59X@IEvb-*mPj9ektX0&; zy3I7|rbbwr>R%%l{Y!N3(rWl)?p9y>OML5k6npoW(&q{WGmj!xa-!?j0wz*t4V58g zm{t^Mqq7U2`9$!1-dgAuSUQ;Mg+bQ%r|UCVsg}_8@&QMDtl>A>w*W2Y#=2AWLKZF{ zk;PVN&kQ}EUciivKDX0odL)pP{4MbCP~i_3$wr!tZ0v7@CxbbL8g9*5i$5w9dnj-7 zARyngOr%@YU{sNu?3$;FUvY6$?Scvb?Kpbg4)2b@^4sV5GxKkhUIH=Mo}2RV)34h@ z>lYMNxl4mIY-(Q4y_&@d@Wdc;ABD5z^A5e193_mri{<&%dnoQe6KhYrM@TE$hf$zr zAtzWQ)TE!9INe7}a{2I*&^uet6M>_7>q#26UXNu^Ve0&9SvaLB9+G!XInsu|9btVj^h8 zP=fPLpWFF+sn9nl%_6b)WtYm-3$_g}odp&|{>5xGGibe3u@oUR&`p1Hgq9!Ah?JPT zX%W5sMoL9#ErEx0H}9cV%1{!tUqV0wTW&Ysfi}n%&P;?9CKmRTVVK>2CMDT`A%>IX zMVdvD=TKdl&U;RpohAnG5q=-zMudTP9Dld*bWt^ThDGPN0D(=AW4hlWotgY@tDdiD3d3x$0Mo<*vP<+0Mq z>6a>g_I-_VHyX+ep?GHt4>AsI2DSlzLyM=Xx$X_B>)Toq?#I!ip^7al(7vxf2|gOg zeCVBl29ntnguX!$R6;9pPRj53WDq`k1voMo>;&O>=2BVVbT&T1Kf@3iYnI?S3Li-X z#j!Bm$T0(Sv){OBv@UoNZbTLIlD@&xrg)=oO{OQw{Hl+&<)SzUpN)oi$w(U|cr>Gq zkArjKE`xi~5HbT0SP=B4<-qm_ZNUpO|GBQ~l66aDpFE5Wmw*)ttasOKuSUSYpKL`H z`xb^VL*kue886fTtms+O9LWzW$62q)CaBjvh<15(hC6R95%$4Wb~TAN#}Tb39^$9) z>C4)egDBx!F35bz5nFK|V?S|tSjj?vnO?&XshHsatZRZIa(!YQ3c%p=@O5)AAu!uM zB%f_a36vlyu*wLE8gNe&tkSAYKAo>bUS%-hmm^%42aVG7gy?!#hr$}2K(u){h|}{# ze;-(*9$BP0oSe_9ilpwTaySl?>ngJae)!=1TU-nzq%MnCU2pjt0 zvk+@pOGU@N+NGA4K0lfEXur*}1uNxtu=-0?Xx!`N-;(UB)_~}K+H}AV2 zTSd7Mj1R}kjjIloR7LX&bf?aZjwL$Ciry8~@VUtZ=|FWxO}e#inKjd^&qAp_@nj$M z_=&F@R>R`1TQ0BS3n2ZLgsNwrdsie07sdoDfs=!MM2#N3G`{vVd7cNuR!PKwjL*JH^lUacdn;&Ci73!!2j!gmndYr5`d-0HRM^#qk z&0U@iv){)0yGkOe=kk{LBWi6qV>Wp*?(n}cpNUDv*%f>V)sGW6`^t{6c#HWH&(Q1T zo&9Qq_NcB;uaiJg3UCsk0~gq+O+d=LUL(N&UL~kx6h2`RoLG?$V-=9!Q5VX zr6UVvR=YV|<+@cuU>e%0EaLC}z5-?y(5DjtY4CnalvHaf)N_~+`H|98`SC9mA2(z* zyw#}{oHu{}p{cuuQ`Seu4nn{h(8UT!IMsL;)`Nk-DrjwZ{>aq81tEp}dT zn_|xpIlBKRp~}|j zYL1`xvr3-zwHUwz_P94ZYu zta@Tu$B+DVu|!18QlHKj(Nkt18SA}?a}_=aZ6z+>sIJ~gYbHGKDKa(a$SMEne0l5X zC9bjz_=xCvW**icG$ILH^7V=GtD{_y=TrNt`?J=?n{39oM%HP*X{WlqT2t{yFae-+ zYPCG=GcKM)iLBspmRm5LD_(!ZKg~{c*jEVMj1S;9i+yoh6^b)86`T#9FR)Fj#=D+V z`KnLPiPWe4s1{yL7EDKRJJN_c$Z)faJ=_6BLp0o^pP6;Gk=N9-9Un z2OMjD#P)gznL%jifki;03_bD7yU}uX-HUWywFb0@92Q^F0c@Y6Uai#?oqMONJ#^63 z>r`zxEUQVa$Z2S7@pODFAx%$AR@|pQu?v#$KqYx#V04WnpLr?Fw^+n9xSc z$Rw7aiwzhdp}wCudPJwNE-CE3}yZ7jh#SOR2(@p?5S=X-nC8kLzx zcei0q#%W^aXkxuqyZ%ZJX$PRs>chbhTfzq&o2wj=VX`6?a`J^?($JIwl(a};cjC|e z_=3T4w?sF@I{M9G-MH!ny2LR(AN4UyM|El(n*(5P8NXUnGB=}xEO_xmp; z0xgeFR_xK;hsAfe0p(sKmoiKwP0Tic!SI&6F?(E@@m}8(=FFw-8>9u+7eks-ISRy@ z+Q=fq+g+~pHN)Wm8h#JRK2xvW*a?RhZmQc70=@QQYxrX6h}QCi0XN>S=l1V=-l?6n z1%o3q#holnz;QIlS}VVcyzX>+fPXnB(bd@CTF`^HKZc(^Eh{V@UXc2MYC;K*KO*5m zktKk4(j)@c%WnxaRyqJ+yL@^C8_Acit(4STA^5(EO-kgB#rs8G`7`$hFIr9SGnfQe z13p)6ZTL+2=BV#PTfA$#c!!SE5#!3taH(?pnT(x=aZXuwKtltsG~ZLJ?{2Yn6Wu>2#4jjaq%Jrl_!#WK}pDUJPbK{O1%a2%h06wxHSmDIp^J ze)4Ud4^F5*8b3W9(9iN|S>Zr!M)XsvH*`yAbOk<$*ygrk=?WI877m~ut|WOV?bI!_ zRn%K{{;;Da&BB!1JwNVM4TLe!dHB;kC_#()geykrEYmJtim=3z(;#a<&R!C$E;w%a z=L~Pu>1+M&>(>OO@CAs=(dH&}=%_X;xlcj+=k0B+SUe4#M>9{)1ih;(jKU1M=I}nF zmUyL^Db^f4%hV695>552FmSK;kj!*8qV7ldbSlrl^<<8ra#2JFcD4?w`^jo~X$BuR zH&ULlwG>|hUY)843QTRsYE_Hp}_3t>%S~Ed1&a+8)Q{Z$2vC43@9im~fr4 zj4mRH86Fjlj$$Mrn?h|aIebE!5BUA(bINNKM`|-f89IYM^1MUhv6+Z|sNUMmv~2`f zND~+fB&|`3XnQc*&nGl=GzZ~~m=wZyrte&<_0B2f-*r_q1O5oSUGaYR=RwY7ZpU97 z`OA_s=wF90=VCfxdIo-=;7AM*5(N2KRWue^qoG&%=xxmsEBN;Nj#q8(m_l|C2hLzNB~M1Nb7%? z#68Y_IhbVVwtd|}f7bvSZAIS=<$m#g_r Date: Fri, 22 Dec 2017 20:08:10 +0000 Subject: [PATCH 26/62] Translated using Weblate (Russian) Currently translated at 100.0% (2521 of 2521 strings) --- OsmAnd/res/values-ru/strings.xml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/OsmAnd/res/values-ru/strings.xml b/OsmAnd/res/values-ru/strings.xml index a6be4c71c7..4f5be4f013 100644 --- a/OsmAnd/res/values-ru/strings.xml +++ b/OsmAnd/res/values-ru/strings.xml @@ -2789,4 +2789,7 @@ \n• Время ходьбы в зависимости от местности (подъема) (правило Нейсмита) \n \n - + Правок %1$s, сумма %2$s mBTC + OSM получателей + Всего пожертвований + From 3ab08638227789e4e0a760b7e3096e293941938d Mon Sep 17 00:00:00 2001 From: Kheireddine Mkh Date: Fri, 22 Dec 2017 18:12:26 +0000 Subject: [PATCH 27/62] Translated using Weblate (Arabic) Currently translated at 96.8% (2441 of 2521 strings) --- OsmAnd/res/values-ar/strings.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OsmAnd/res/values-ar/strings.xml b/OsmAnd/res/values-ar/strings.xml index 920fef76b9..97e630ce27 100644 --- a/OsmAnd/res/values-ar/strings.xml +++ b/OsmAnd/res/values-ar/strings.xml @@ -2848,7 +2848,7 @@ حُذف تم تعديله تمت إضافة - تغيير طلب البحث. + تغيير البحث. %s علامة مفعلة. اضغط علامة على الخريطة لتحريكها الى أعلى العلامات المفعلة دون فتح قائمة السياق. تدوين ملاحظات! From 65baccd784600aa83ce05dbfcb291764ddc9647f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89loi=20Alain?= Date: Fri, 22 Dec 2017 13:32:34 +0000 Subject: [PATCH 28/62] Translated using Weblate (French) Currently translated at 100.0% (2521 of 2521 strings) --- OsmAnd/res/values-fr/strings.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OsmAnd/res/values-fr/strings.xml b/OsmAnd/res/values-fr/strings.xml index d27bdbb4b2..a12e4a61e8 100644 --- a/OsmAnd/res/values-fr/strings.xml +++ b/OsmAnd/res/values-fr/strings.xml @@ -3047,5 +3047,5 @@ représentant la zone : %1$s x %2$s Fichier GPX comprenant les coordonnées et le contenu des notes sélectionnées. Fichier GPX contenant les coordonnées et les notes. Modifications : %1$s, Total : %2$s mBTC - Bénéficiaires d\\\'OSM + Bénéficiaires d\'OSM From 1ee391e25f87b2ff90cdc2ee36d85b331545ee0f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89loi=20Alain?= Date: Fri, 22 Dec 2017 13:33:34 +0000 Subject: [PATCH 29/62] Translated using Weblate (French) Currently translated at 86.7% (2881 of 3322 strings) --- OsmAnd/res/values-fr/phrases.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/OsmAnd/res/values-fr/phrases.xml b/OsmAnd/res/values-fr/phrases.xml index 0c7454c03b..2bf27e1e4c 100644 --- a/OsmAnd/res/values-fr/phrases.xml +++ b/OsmAnd/res/values-fr/phrases.xml @@ -3036,7 +3036,7 @@ Sans balai Location bateaux -Accès au toilettes : propriété collective +Accès aux toilettes : propriété collective Péage par automate Décoration de façade @@ -3123,7 +3123,7 @@ Réservation : membres uniquement État opérationnel - Mode de distribution de l\\\'eau + Mode de distribution de l\'eau Ampérage Boite aux lettres Rue From 4ab690a0f699894b074f822429d0d800621a859f Mon Sep 17 00:00:00 2001 From: Viktar Vauchkevich Date: Fri, 22 Dec 2017 21:10:19 +0000 Subject: [PATCH 30/62] Translated using Weblate (Belarusian) Currently translated at 100.0% (2536 of 2536 strings) --- OsmAnd/res/values-be/strings.xml | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/OsmAnd/res/values-be/strings.xml b/OsmAnd/res/values-be/strings.xml index 96b3dd8b7e..598e82dff0 100644 --- a/OsmAnd/res/values-be/strings.xml +++ b/OsmAnd/res/values-be/strings.xml @@ -2992,4 +2992,24 @@ \n • Час хадзьбы ў залежнасці ад мясцовасці (пад\'ёму) (правіла Нейсміта) \n \n - + Што тут: + прапаркаваны на + Узяць да + Без абмежавання часу + Чытаць увесь артыкул + Чытаць артыкул + Усе кропкі групы + Адчынена ад + Адчынена да + Будзе зачынена а + Будзе адчынена а + Будзе адчынена + Дадатковыя дзеянні + GPX-файл з каардынатамі і данымі выбраных нататак. + GPX-файл з каардынатамі і данымі ўсіх нататак. + Дзеянні + Маркер + Змен %1$s, сума %2$s mBTC + OSM-атрымальнікі + Усяго ахвяраванняў + From 99d8803b6298099fd891396bc767b3524dbcacba Mon Sep 17 00:00:00 2001 From: Viktar Vauchkevich Date: Wed, 13 Dec 2017 19:04:21 +0000 Subject: [PATCH 31/62] Translated using Weblate (Belarusian) Currently translated at 100.0% (3323 of 3323 strings) --- OsmAnd/res/values-be/phrases.xml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/OsmAnd/res/values-be/phrases.xml b/OsmAnd/res/values-be/phrases.xml index 032e1992c7..46dd6526c9 100644 --- a/OsmAnd/res/values-be/phrases.xml +++ b/OsmAnd/res/values-be/phrases.xml @@ -3698,4 +3698,6 @@ Плацёжны цэнтр Грашовы перавод - +Метро + + From 8d9f0d6b48791e03de040039170f84497a7370a4 Mon Sep 17 00:00:00 2001 From: Viktar Vauchkevich Date: Fri, 22 Dec 2017 21:12:09 +0000 Subject: [PATCH 32/62] Translated using Weblate (Belarusian (latin)) Currently translated at 100.0% (2536 of 2536 strings) --- OsmAnd/res/values-be-rBY/strings.xml | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/OsmAnd/res/values-be-rBY/strings.xml b/OsmAnd/res/values-be-rBY/strings.xml index 90fd35c999..99e04d1fc8 100644 --- a/OsmAnd/res/values-be-rBY/strings.xml +++ b/OsmAnd/res/values-be-rBY/strings.xml @@ -2943,4 +2943,24 @@ U vypadku, kali vy lubіcie OsmAnd і OSM і chočacie padtrymać jaho, heta іd \n • Čas chadźby ŭ zaliežnasci ad miascovasci (padjomu) (pravila Niejsmita) \n \n - + Što tut: + praparkavany na + Uziać da + Biez abmiežavannia času + Čytać uvieś artykul + Čytać artykul + Usie kropki hrupy + Adčyniena ad + Adčyniena da + Budzie začyniena a + Budzie adčyniena a + Budzie adčyniena + Dadatkovyja dziejanni + GPX-fajl z kaardynatami i danymi vybranych natatak. + GPX-fajl z kaardynatami i danymi ŭsich natatak. + Dziejanni + Markier + Zmien %1$s, suma %2$s mBTC + OSM-atrymaĺniki + Usiaho achviaravanniaŭ + From a95a5fd6a7a9c61d2be830aec5a443aee08d8a40 Mon Sep 17 00:00:00 2001 From: Ldm Public Date: Fri, 22 Dec 2017 22:39:28 +0000 Subject: [PATCH 33/62] Translated using Weblate (French) Currently translated at 100.0% (2536 of 2536 strings) --- OsmAnd/res/values-fr/strings.xml | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/OsmAnd/res/values-fr/strings.xml b/OsmAnd/res/values-fr/strings.xml index a12e4a61e8..ed0b2ba7ae 100644 --- a/OsmAnd/res/values-fr/strings.xml +++ b/OsmAnd/res/values-fr/strings.xml @@ -3048,4 +3048,19 @@ représentant la zone : %1$s x %2$s Fichier GPX contenant les coordonnées et les notes. Modifications : %1$s, Total : %2$s mBTC Bénéficiaires d\'OSM + Ce qu\'il y a ici : + stationné à + A récupérer jusqu\'à + Sans limite de temps + Lire l\'article complet + Lire l\'article + Tous les points du groupe + Ouvert depuis + Ouvert depuis + Fermera à + Ouvrira à + Sera ouvert le + Actions supplémentaires + Actions + Marque From 4d9755a5e49d6e162efdaf25a3dda52655f3be3b Mon Sep 17 00:00:00 2001 From: Evgenii Martynenko Date: Fri, 22 Dec 2017 22:41:35 +0000 Subject: [PATCH 34/62] Translated using Weblate (Russian) Currently translated at 100.0% (2536 of 2536 strings) --- OsmAnd/res/values-ru/strings.xml | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/OsmAnd/res/values-ru/strings.xml b/OsmAnd/res/values-ru/strings.xml index 4f5be4f013..fe5b01d53f 100644 --- a/OsmAnd/res/values-ru/strings.xml +++ b/OsmAnd/res/values-ru/strings.xml @@ -2792,4 +2792,19 @@ Правок %1$s, сумма %2$s mBTC OSM получателей Всего пожертвований - +Что здесь: + припаркован в + Забрать до + Без ограничения по времени + Читать статью целиком + Читать статью + Все точки группы + Открыто с + Открыто до + Закроется в + Откроется в + Откроется + Дополнительные действия + Действия + Маркер + From cc02990c20d5b0f0cde57f184b00bcce8fa19f40 Mon Sep 17 00:00:00 2001 From: Franco Date: Fri, 15 Dec 2017 14:35:07 +0000 Subject: [PATCH 35/62] Translated using Weblate (Spanish (Argentina)) Currently translated at 100.0% (3323 of 3323 strings) --- OsmAnd/res/values-es-rAR/phrases.xml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/OsmAnd/res/values-es-rAR/phrases.xml b/OsmAnd/res/values-es-rAR/phrases.xml index 999d609788..abecd09ce7 100644 --- a/OsmAnd/res/values-es-rAR/phrases.xml +++ b/OsmAnd/res/values-es-rAR/phrases.xml @@ -3709,4 +3709,6 @@ Centro de pagos Transferencia de dinero - +Subte + + From 5d3f9b21cbc6903742d9fe998a2261c8d7d6fe1b Mon Sep 17 00:00:00 2001 From: Emily Date: Mon, 18 Dec 2017 17:39:20 +0000 Subject: [PATCH 36/62] Translated using Weblate (Spanish (American)) Currently translated at 100.0% (3323 of 3323 strings) --- OsmAnd/res/values-es-rUS/phrases.xml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/OsmAnd/res/values-es-rUS/phrases.xml b/OsmAnd/res/values-es-rUS/phrases.xml index 9298438932..3c8d5bf8e0 100644 --- a/OsmAnd/res/values-es-rUS/phrases.xml +++ b/OsmAnd/res/values-es-rUS/phrases.xml @@ -3471,4 +3471,6 @@ Centro de pagos Transferencia de dinero - +Metro + + From a5c57ebdcc55cbc1e20bf8049e9679e7721d9f95 Mon Sep 17 00:00:00 2001 From: jan madsen Date: Sat, 16 Dec 2017 08:53:01 +0000 Subject: [PATCH 37/62] Translated using Weblate (Danish) Currently translated at 100.0% (3323 of 3323 strings) --- OsmAnd/res/values-da/phrases.xml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/OsmAnd/res/values-da/phrases.xml b/OsmAnd/res/values-da/phrases.xml index 39c5af4a4e..8e3f763c1b 100644 --- a/OsmAnd/res/values-da/phrases.xml +++ b/OsmAnd/res/values-da/phrases.xml @@ -3743,4 +3743,6 @@ Betalingscenter Pengeoverførsel - +Metro + + From 2cd8a496c70fa4694b4abb8616392459bf379bf1 Mon Sep 17 00:00:00 2001 From: Hardy Date: Sat, 23 Dec 2017 10:07:23 +0100 Subject: [PATCH 38/62] string improvements --- OsmAnd/res/values/strings.xml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/OsmAnd/res/values/strings.xml b/OsmAnd/res/values/strings.xml index bb1b048ded..68fe9d8c22 100644 --- a/OsmAnd/res/values/strings.xml +++ b/OsmAnd/res/values/strings.xml @@ -11,11 +11,11 @@ --> What\'s here: parked at - Pick up till + Pick up until Without time limit Read full article Read article - All points of group + All points of the group Opened from Opened till Will be closed at @@ -75,7 +75,7 @@ %1$d digits Go to next field Rename marker - A tap on the map hide the control buttons and widgets. + A tap on the map toggles the control buttons and widgets. Full screen mode Mark passed can be imported as Favorites points, or as track file. @@ -2033,7 +2033,7 @@ Accessibility mode Turns on the accessibility features. According to the global system setting - Back To Menu + Back to menu Zoom out Zoom in Zoom level is @@ -2837,6 +2837,6 @@ File %1$s does not contain waypoints, import it as a track? Move Point Add to a GPX track - OSM Recipients - Total Donations + OSM recipients + Total donations From c0528f2a115eeafd4d8a087df18fcffaa27b2617 Mon Sep 17 00:00:00 2001 From: Roberto GEB Date: Sat, 23 Dec 2017 11:07:01 +0000 Subject: [PATCH 39/62] Translated using Weblate (Spanish) Currently translated at 100.0% (2536 of 2536 strings) --- OsmAnd/res/values-es/strings.xml | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/OsmAnd/res/values-es/strings.xml b/OsmAnd/res/values-es/strings.xml index 35e1911a51..815f009477 100644 --- a/OsmAnd/res/values-es/strings.xml +++ b/OsmAnd/res/values-es/strings.xml @@ -2746,7 +2746,7 @@ Por favor proporciona un código completo Atrás Ver Puntos de ruta añadidos a marcadores de mapa - Una pulsación en el mapa alterna la vista de la interfaz y los controles. + Una pulsación en el mapa oculta los botones y los controles. Modo de pantalla completa Mostrar en la barra superior Descartar marcador @@ -2805,4 +2805,24 @@ Por favor proporciona un código completo Notas por fecha Por fecha Por tipo - + Lo que hay aquí: + Aparcado en + Recoger antes de las + Tiempo ilimitado + Leer el artículo completo + Leer artículo + Todos los puntos del grupo + Abierto desde + Abierto hasta + Se cerrará en + Se abrirá en + Se abrirá en + Acciones adicionales + Archivo GPX con coordenadas y datos de las notas seleccionadas. + Archivo GPX con las coordenadas y los datos de todas las notas. + Acciones + Marcador + Ediciones %1$s, suma %2$s mBTC + Destinatarios de OSM + Total de donaciones + From ba952f4cb038e4411ecc54f3dc0b3f0163923e0a Mon Sep 17 00:00:00 2001 From: ezjerry liao Date: Sat, 23 Dec 2017 05:22:55 +0000 Subject: [PATCH 40/62] Translated using Weblate (Chinese (Traditional)) Currently translated at 99.7% (2530 of 2536 strings) --- OsmAnd/res/values-zh-rTW/strings.xml | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/OsmAnd/res/values-zh-rTW/strings.xml b/OsmAnd/res/values-zh-rTW/strings.xml index 9bfdb8ffb9..ddd5f1a173 100644 --- a/OsmAnd/res/values-zh-rTW/strings.xml +++ b/OsmAnd/res/values-zh-rTW/strings.xml @@ -2981,4 +2981,13 @@ OsmAnd (Automated Navigation Directions) 是一個地圖和導航的應用程式 編輯 %1$s,合計 %2$s mBTC OSM 收件人 捐款總計 - +停在 + 沒有時間限制 + 閱讀全文 + 閱讀文章 + 群組的全部標點 + 已開啟自 + 已開啟直到 + 將關閉于 + 將開啟于 + From dd99bdbd2901f6706779befbdb5500d5327c5314 Mon Sep 17 00:00:00 2001 From: jan madsen Date: Sat, 23 Dec 2017 10:11:13 +0000 Subject: [PATCH 41/62] Translated using Weblate (Danish) Currently translated at 100.0% (2536 of 2536 strings) --- OsmAnd/res/values-da/strings.xml | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/OsmAnd/res/values-da/strings.xml b/OsmAnd/res/values-da/strings.xml index 4951765f5c..445f8dec9e 100644 --- a/OsmAnd/res/values-da/strings.xml +++ b/OsmAnd/res/values-da/strings.xml @@ -2999,4 +2999,19 @@ Repræsenterer område: %1$s x %2$s Redigeringer %1$s, sum %2$s mBTC OSM modtagere Samlede donationer - +Hvad er der her: + parkeret på + Hent til + Uden tidsbegrænsning + Læs hele artiklen + Læs artikel + Alle punkter i gruppen + Åben fra + Åben til + Vil være lukket på + Vil blive åbnet på + Der åbnes på + Yderligere handlinger + Handlinger + Markør + From 9b90bc579560e48fe37799f7ff404299b5cbf641 Mon Sep 17 00:00:00 2001 From: Igor Eliezer Date: Sat, 23 Dec 2017 02:53:55 +0000 Subject: [PATCH 42/62] Translated using Weblate (Portuguese (Brazil)) Currently translated at 85.8% (2178 of 2536 strings) --- OsmAnd/res/values-pt-rBR/strings.xml | 124 +++++++++++++++++++++++---- 1 file changed, 109 insertions(+), 15 deletions(-) diff --git a/OsmAnd/res/values-pt-rBR/strings.xml b/OsmAnd/res/values-pt-rBR/strings.xml index 2a0c245044..3eeb977ea8 100644 --- a/OsmAnd/res/values-pt-rBR/strings.xml +++ b/OsmAnd/res/values-pt-rBR/strings.xml @@ -507,7 +507,7 @@ Iniciar automaticamente a viagem e enviar posições após o início do aplicativo. Iniciar automaticamente a viagem Identificador do rastreador - Toque para ver ou compartilhar id de rastreio. Ao usar id de rastreio, aparelhos conectados poderão ver todos os movimentos deste aparelho! Para desconectar-se selecione a opção restaurar. + Toque para ver o ID de rastreio. Token de sessão: %1$s À espera de autorização… "Posição enviada %1$d (in buffer %2$d) " @@ -1450,7 +1450,7 @@ Pôr do Sol: %2$s segundos min. Definir intervalo de ativação usado pelo serviço em segundo plano - Escolher o provedor de posição usado pelo serviço em segundo plano + Escolher o provedor de posição usado pelo serviço em segundo plano. Provedor de posição Executar OsmAnd em segundo plano para monitorar sua posição enquanto a tela estiver desligada Executar em segundo plano @@ -1952,7 +1952,7 @@ Pôr do Sol: %2$s Distância: Tempo: App não tem permissão para usar o cartão SD -App não tem permissão para acessar os dados de localização. +O aplicativo não tem permissão para acessar os dados de localização. App não tem permissão para acessar a câmera. App não tem permissão para acessar o microfone. Escolha as vias que quer evitar durante a navegação. @@ -2097,7 +2097,7 @@ Pôr do Sol: %2$s Ordenar Modo mapa Médio - Reportar + Relatório Aberto 24 horas Velocidade média Altitude média @@ -2191,7 +2191,7 @@ Pôr do Sol: %2$s Nome de usuário Você pode filtrar imagens por quem submeteu ou por data. Os filtros só se aplicam para ampliação bem próxima. Permissões - O OsmAnd não pode importar o arquivo. Favor verificar se o OsmAnd tem permissão para ler arquivo do local. + O OsmAnd não pode importar o arquivo. Favor verificar se o OsmAnd tem permissão para ler arquivo de sua localização. Distância corrigida Imagem do Mapillary Abrir o Mapillary @@ -2301,7 +2301,7 @@ Pôr do Sol: %2$s Marcadores marcados como visitados aparecerão nesta tela. Dois Um - Exibir as linhas de guia desde a sua posição até as localizações dos marcadores ativos. + Exibir as linhas de guia desde a sua posição até os locais dos marcadores ativos. Exibir uma ou duas setas indicando a direção para os marcadores ativos. Escolher como exibir a distância para os marcadores ativos. Escolher quantos indicadores de mudança de direção são exibidos. @@ -2428,24 +2428,24 @@ Pôr do Sol: %2$s Arquivo %1$s não possui pontos de passagem, importe-o como uma trilha? Adicionar a uma trilha GPX Adicionar nota de áudio, vídeo ou foto para cada ponto no mapa, usando o widget ou o menu de contexto. - Tocando no botão de ação adicionará um destino na localização do centro da tela. O destino anteriormente definido se torna o último destino intermediário. - Tocando no botão de ação substituirá o destino com a localização do centro da tela. - Tocando no botão de ação adicionará um primeiro ponto intermédio na localização do centro da tela. - Se inscreva na nossa lista de e-mail sobre descontos do app e obtenha mais 3 downloads de mapa! + Tocando no botão de ação adicionará um destino no local do centro da tela. O destino anteriormente definido se torna o último destino intermediário. + Tocando no botão de ação substituirá o destino com o local do centro da tela. + Tocando no botão de ação adicionará um primeiro ponto intermédio no local do centro da tela. + Assine a nossa lista de e-mail sobre descontos do aplicativo e obtenha mais 3 downloads de mapa! OsmAnd coleta informações sobre quais partes do aplicativo você abrir. A sua localização nunca é enviada, nem qualquer coisa digitada no aplicativo ou detalhes das áreas que você visualizar, pesquisar ou baixar. Autodividir gravações após um intervalo Iniciar novo segmento após intervalo de 6 min, um novo trajeto após intervalo de 2 h, ou um novo arquivo depois de um longo intervalo se a data foi alterada. Você pode enviar sua nota de OSM anonimamente ou usando seu perfil OpenStreetMap.org. Exiba uma notificação de sistema que permite iniciar a gravação de viagem. Antecipando os feriados de Natal e ano novo, você pode optar por exibir o POI associado com o Natal: árvores de Natal, mercados, etc. - Assinatura será cobrada mensalmente. Você pode cancelar sua assinatura no Google Play a qualquer momento. - Parte de sua doação será enviada aos usuários OSM que enviam alterações ao OpenStreetMap. O custo da inscrição permanece o mesmo. - Assinatura permite atualizações a cada hora, diariamente e semanais, e downloads ilimitados para todos os mapas globalmente. + A assinatura será cobrada mensalmente. Você pode cancelar a sua assinatura no Google Play a qualquer momento. + Parte de sua doação será enviada aos usuários OSM que enviam alterações ao OpenStreetMap. O custo da assinatura permanece o mesmo. + A assinatura permite atualizações a cada hora, diariamente e semanais, e downloads ilimitados para todos os mapas globalmente. Adquira já Adquira por %1$s Adquira por %1$s mês Obter downloads ilimitados de mapa e atualizações de mapas mais de uma vez por mês: por hora, diária ou semanal. - Tocando o botão de ação adicionará um ponto de passagem de GPX na localização do centro da tela. + Tocando o botão de ação adicionará um ponto de passagem GPX no local do centro da tela. Arquivo GPX com coordenadas e dados de todas as notas. Armazenamento de dados do OsmAnd (para mapas, trilhas, etc.): %1$s. Obtenha direções e descobra novos lugares sem precisar de conexão com Internet @@ -2484,4 +2484,98 @@ Pôr do Sol: %2$s Inativo Por favor insira um endereço de e-mail válido Total de doações - +O que há aqui: + estacionado em + Pegar até + Sem limite de tempo + Leia o artigo completo + Leia o artigo + Todos os pontos do grupo + Aberto a partir de + Aberto até + Fechará às + Abrirá às + Ficará aberto aos/às + Ações adicionais + Arquivo GPX com coordenadas e dados das notas selecionadas. + Ações + Marcador + Período de auto-anúncio + Mapa está vinculado a localização + Navegue até + %s arquivos GPX selecionados + Mais fino + Fino + Grosso + A pasta de armazenamento de dados selecionada é somente leitura. A pasta de armazenamento foi alterada temporariamente para memória interna. Por favor, escolha uma pasta de armazenamento válida. + Memória compartilhada + Relatório completo + Edições %1$s, classificação %2$s, total de edições %3$s + Edições %1$s, soma de %2$s mBTC + Necessários para fornecer-lhe informações sobre as contribuições. + Por favor, digite o Nome Público + Obrigado por assinar as atualizações ao vivo! + Parte da sua doação será enviada para os usuários OSM que enviam alterações para o mapa da região. + Configurações de assinatura + Por favor, adquira a assinatura OsmAnd Live primeiro + Esta assinatura permite atualizações a cada hora para todos os mapas ao redor do mundo. Parte da renda retorna à Comunidade OSM e é pago por cada contribuição OSM. Se você ama OsmAnd e OSM e quer apoiá-los, esta é a maneira perfeita de fazê-lo. + Selecione marcador de mapa + Outros marcadores + Enviar anonimamente + Mostrar transparência seekbar + Enviar Nota OSM + Primeiro marcador de mapa + Segundo marcador de mapa + Barra de ferramentas + Widgets + Amarelo escuro + Rosa translúcida + Espanhol (americano) + Asturiano + Open Location Code + Inválido OLC +\n + Média + %1$d de %2$d + Subida/Descida + Tempo em movimento + Máx/Mín + Mín/Máx + Inglês (Reino Unido) + Bielo-russo (latim) + Húngaro (formal) + Canarês + Sérvio (latino) + Chinês (Hong Kong) + Austrália + O plugin de mapas de ski Skiing OsmAnd permite que você veja pistas de ski com nível de complexidade e algumas informações adicionais, como localização de elevadores e outras facilidades. + Buffer de tempo para rastreamento on-line + Nome contém muitas letras maiúsculas. Você quer continuar? + Nome do arquivo contém caracteres ilegais + Ação rápida + Ação %d + Tela %d + Adicionar marcador de mapa + Adicionar POI + Mudar estilo de mapa + O estilo do mapa foi alterado para \"%s\". + Tome nota de áudio + Tome nota de vídeo + Tome nota de foto + Adicionar Nota OSM + Ligar/desligar voz + A voz está desligada + A voz está ligada + Adicionar ponto de passagem GPX + Adicionar lugar de estacionamento + Adicionar ação + Editar ação + Adicionar favorito + Adicionar ação + Apagar ação + Tem certeza de que deseja apagar a ação \"%s\"? + Mostrar diálogo favoritos + Nome do preset + Tocando o botão de ação adicionará um marcador de mapa no local do centro da tela. + Tocar o botão de ação adicionará um lugar de estacionamento no local do centro da tela. + From f198af3e611f02bdb2292a4737fb9f554722c6e3 Mon Sep 17 00:00:00 2001 From: Evgenii Martynenko Date: Fri, 22 Dec 2017 22:48:04 +0000 Subject: [PATCH 43/62] Translated using Weblate (Russian) Currently translated at 100.0% (2536 of 2536 strings) --- OsmAnd/res/values-ru/strings.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OsmAnd/res/values-ru/strings.xml b/OsmAnd/res/values-ru/strings.xml index fe5b01d53f..990763a217 100644 --- a/OsmAnd/res/values-ru/strings.xml +++ b/OsmAnd/res/values-ru/strings.xml @@ -2790,7 +2790,7 @@ \n \n Правок %1$s, сумма %2$s mBTC - OSM получателей + OSM получатели Всего пожертвований Что здесь: припаркован в From 5d150d015d782e65e63993f67ea24fc4286bae41 Mon Sep 17 00:00:00 2001 From: ace shadow Date: Sat, 23 Dec 2017 01:04:24 +0000 Subject: [PATCH 44/62] Translated using Weblate (Slovak) Currently translated at 99.2% (2516 of 2536 strings) --- OsmAnd/res/values-sk/strings.xml | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/OsmAnd/res/values-sk/strings.xml b/OsmAnd/res/values-sk/strings.xml index 287b40606d..f2850442ad 100644 --- a/OsmAnd/res/values-sk/strings.xml +++ b/OsmAnd/res/values-sk/strings.xml @@ -2989,4 +2989,24 @@ Zodpovedá oblasti: %1$s x %2$s \n • Čas pešej trasy zohľadňuje terén/stúpanie (Naismithovo pravidlo) \n \n - + Čo je tu: + zaparkované o + Vyzdvihnúť do + Bez časového obmedzenia + Prečítať celý článok + Prečítať článok + Všetky body skupiny + Otvorené od + Otvorené do + Bude zatvorené o + Bude otvorené o + Bude otvorené v + Ďalšie akcie + Súbor GPX so súradnicami a údajmi vybraných poznámok. + Súbor GPX so súradnicami a údajmi všetkých poznámok. + Akcie + Značka + Počet úprav %1$s, suma %2$s mBTC + Prijímatelia OSM + Celkové príspevky + From 303fd024321cb2505576d2792fe4cbcab3ab0d58 Mon Sep 17 00:00:00 2001 From: Franco Date: Fri, 22 Dec 2017 23:09:29 +0000 Subject: [PATCH 45/62] Translated using Weblate (Spanish (American)) Currently translated at 100.0% (2536 of 2536 strings) --- OsmAnd/res/values-es-rUS/strings.xml | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/OsmAnd/res/values-es-rUS/strings.xml b/OsmAnd/res/values-es-rUS/strings.xml index 4587a1bc2b..f795ecb984 100644 --- a/OsmAnd/res/values-es-rUS/strings.xml +++ b/OsmAnd/res/values-es-rUS/strings.xml @@ -2881,4 +2881,24 @@ Proporciona un código completo \n • El tiempo de caminata es consciente del terreno ascendente (regla de Naismith). \n \n - + Aquí hay: + estacionado a las + Recoger hasta las + Sin límite de tiempo + Leer artículo completo + Leer artículo + Todos los puntos del grupo + Abierto de + Abierto hasta + Cerrará en + Abrirá en + Abrirá en + Acciones adicionales + Archivo GPX con coordenadas y datos de las notas elegidas. + Archivo GPX con coordenadas y datos de todas las notas. + Acciones + Marcador + %1$s ediciones, suman %2$s mBTC + Destinatarios de OSM + Total de donaciones + From d33dae2fa65f5e60375d33d98624bb7f191864f8 Mon Sep 17 00:00:00 2001 From: Franco Date: Fri, 22 Dec 2017 23:03:25 +0000 Subject: [PATCH 46/62] Translated using Weblate (Spanish (Argentina)) Currently translated at 100.0% (2536 of 2536 strings) --- OsmAnd/res/values-es-rAR/strings.xml | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/OsmAnd/res/values-es-rAR/strings.xml b/OsmAnd/res/values-es-rAR/strings.xml index 0106fb82dd..c52ad795e5 100644 --- a/OsmAnd/res/values-es-rAR/strings.xml +++ b/OsmAnd/res/values-es-rAR/strings.xml @@ -2872,4 +2872,19 @@ Proporciona un código completo Ediciones %1$s, sum %2$s mBTC Destinatarios de OSM Total de donaciones - +Aquí hay: + estacionado a las + Recoger a las + Sin límite de tiempo + Leer artículo completo + Leer artículo + Todos los puntos del grupo + Abierto de + Abierto hasta + Cerrará en + Abrirá en + Abrirá a las + Acciones adicionales + Acciones + Marcador + From e4ba61837e28a3fd318af73394e96490d90ac17e Mon Sep 17 00:00:00 2001 From: Franco Date: Sat, 23 Dec 2017 12:19:57 +0000 Subject: [PATCH 47/62] Translated using Weblate (Spanish (Argentina)) Currently translated at 100.0% (2536 of 2536 strings) --- OsmAnd/res/values-es-rAR/strings.xml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/OsmAnd/res/values-es-rAR/strings.xml b/OsmAnd/res/values-es-rAR/strings.xml index c52ad795e5..e34c5e327d 100644 --- a/OsmAnd/res/values-es-rAR/strings.xml +++ b/OsmAnd/res/values-es-rAR/strings.xml @@ -968,7 +968,7 @@ Tanto la ubicación como el tiempo del estacionamiento se muestran en el menú p Ubicación compartida Buscar el auto del estacionamiento Advertencia - Una notificación para recoger tu automóvil se añadió al Calendario. Permanecerá allí hasta que la borres manualmente. + Una notificación para recoger el automóvil se añadió al Calendario. Permanecerá allí hasta que la borres manualmente. Definir el tiempo límite del estacionamiento ¿Quieres borrar el marcador del estacionamiento? Quitar marcador de estacionamiento @@ -1049,7 +1049,7 @@ Tanto la ubicación como el tiempo del estacionamiento se muestran en el menú p Modo accesibilidad Activa las funciones de accesibilidad. Usar ajuste global del sistema - Volver al Menú + Volver al menú Alejar Acercar El nivel de ampliación es @@ -2812,10 +2812,10 @@ Proporciona un código completo Importar como archivo GPX Importar como favoritos Importar archivo - Una pulsación en el mapa oculta los botones de la interfaz y los controles. + Una pulsación en el mapa alterna los botones de la interfaz y los controles. Modo de pantalla completa Mostrar en la barra superior - Descartar marcador + Descartar Renombrar marcador Número de dígitos decimales Derecha @@ -2874,16 +2874,16 @@ Proporciona un código completo Total de donaciones Aquí hay: estacionado a las - Recoger a las + Recoger hasta las Sin límite de tiempo Leer artículo completo Leer artículo Todos los puntos del grupo Abierto de - Abierto hasta - Cerrará en - Abrirá en - Abrirá a las + Abierto hasta las + Cerrará a las + Abrirá a las + Abrirá sobre las Acciones adicionales Acciones Marcador From dbae4254b4969dedd997c333a890393b95c9bd10 Mon Sep 17 00:00:00 2001 From: Franco Date: Sat, 23 Dec 2017 12:25:06 +0000 Subject: [PATCH 48/62] Translated using Weblate (Spanish (American)) Currently translated at 100.0% (2536 of 2536 strings) --- OsmAnd/res/values-es-rUS/strings.xml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/OsmAnd/res/values-es-rUS/strings.xml b/OsmAnd/res/values-es-rUS/strings.xml index f795ecb984..b5215e61c8 100644 --- a/OsmAnd/res/values-es-rUS/strings.xml +++ b/OsmAnd/res/values-es-rUS/strings.xml @@ -981,7 +981,7 @@ Tanto la ubicación como el tiempo del estacionamiento se muestran en el menú p Ubicación compartida Buscar el auto del estacionamiento Advertencia - Una notificación para recoger tu automóvil se añadió al Calendario. Permanecerá allí hasta que la borres manualmente. + Una notificación para recoger el automóvil se añadió al Calendario. Permanecerá allí hasta que la borres manualmente. Definir el tiempo límite del estacionamiento ¿Quieres borrar el marcador del estacionamiento? Quitar marcador de estacionamiento @@ -1062,7 +1062,7 @@ Tanto la ubicación como el tiempo del estacionamiento se muestran en el menú p Modo accesibilidad Activa las funciones de accesibilidad. Usar ajuste global del sistema - Volver al Menú + Volver al menú Alejar Acercar El nivel de ampliación es @@ -2826,10 +2826,10 @@ Proporciona un código completo Importar como archivo GPX Importar como favoritos Importar archivo - Una pulsación en el mapa oculta los botones de la interfaz y los controles. + Una pulsación en el mapa alterna los botones de la interfaz y los controles. Modo de pantalla completa Mostrar en la barra superior - Descartar marcador + Descartar Número de dígitos decimales Derecha Izquierda @@ -2884,15 +2884,15 @@ Proporciona un código completo Aquí hay: estacionado a las Recoger hasta las - Sin límite de tiempo + Tiempo ilimitado Leer artículo completo Leer artículo Todos los puntos del grupo Abierto de - Abierto hasta - Cerrará en - Abrirá en - Abrirá en + Abierto hasta las + Cerrará a las + Abrirá a las + Abrirá sobre las Acciones adicionales Archivo GPX con coordenadas y datos de las notas elegidas. Archivo GPX con coordenadas y datos de todas las notas. From 5297a4120dc00fe219f117190c5fd5969fdb9cda Mon Sep 17 00:00:00 2001 From: ezjerry liao Date: Sat, 23 Dec 2017 12:25:09 +0000 Subject: [PATCH 49/62] Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (2536 of 2536 strings) --- OsmAnd/res/values-zh-rTW/strings.xml | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/OsmAnd/res/values-zh-rTW/strings.xml b/OsmAnd/res/values-zh-rTW/strings.xml index ddd5f1a173..239b0c9896 100644 --- a/OsmAnd/res/values-zh-rTW/strings.xml +++ b/OsmAnd/res/values-zh-rTW/strings.xml @@ -228,7 +228,7 @@ 開啟 關閉 配合整體的系統設定 - 回主選單 + 回到選單 縮小 放大 縮放程度為 @@ -2921,7 +2921,7 @@ OsmAnd (Automated Navigation Directions) 是一個地圖和導航的應用程式 匯入為 GPX 檔案 匯入為我的收藏 匯入檔案 - 在地圖上輕點以隱藏控制按鈕和小工具。 + 在地圖上輕點以切換控制按鈕和小工具。 全螢幕模式 在頂列上顯示 已經過標記 @@ -2990,4 +2990,10 @@ OsmAnd (Automated Navigation Directions) 是一個地圖和導航的應用程式 已開啟直到 將關閉于 將開啟于 + 這裡的內容: + 取得直到 + 將被開啟 + 輔助的操作 + 操作 + 標記 From 3b8f88905e3447cebd86c688ad7ad44db0c823f7 Mon Sep 17 00:00:00 2001 From: Ldm Public Date: Sat, 23 Dec 2017 13:27:29 +0000 Subject: [PATCH 50/62] Translated using Weblate (French) Currently translated at 100.0% (2536 of 2536 strings) --- OsmAnd/res/values-fr/strings.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/OsmAnd/res/values-fr/strings.xml b/OsmAnd/res/values-fr/strings.xml index ed0b2ba7ae..33d1d52ef2 100644 --- a/OsmAnd/res/values-fr/strings.xml +++ b/OsmAnd/res/values-fr/strings.xml @@ -725,7 +725,7 @@ Au-delà la navigation bascule automatiquement sur le service en ligne CloudMade Oui Non Selon les paramètres globaux - Retour menu + Retour au menu Zoom - Zoom + Le niveau de zoom est @@ -2988,7 +2988,7 @@ représentant la zone : %1$s x %2$s Importer comme fichier GPX Importer comme Favoris Importer fichier - Un appui sur la carte masque les boutons et gadgets. + Un appui sur la carte bascule les boutons et gadgets. Mode plein écran Afficher dans la barre supérieure Marquer comme visité @@ -3047,10 +3047,10 @@ représentant la zone : %1$s x %2$s Fichier GPX comprenant les coordonnées et le contenu des notes sélectionnées. Fichier GPX contenant les coordonnées et les notes. Modifications : %1$s, Total : %2$s mBTC - Bénéficiaires d\'OSM + Destinataires OSM Ce qu\'il y a ici : stationné à - A récupérer jusqu\'à + A récupérer avant Sans limite de temps Lire l\'article complet Lire l\'article From f1ab9b4a2f03c9e125324f87e53d347950ad9e6c Mon Sep 17 00:00:00 2001 From: iman Date: Sun, 24 Dec 2017 09:17:53 +0000 Subject: [PATCH 51/62] Translated using Weblate (Persian) Currently translated at 100.0% (2536 of 2536 strings) --- OsmAnd/res/values-fa/strings.xml | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/OsmAnd/res/values-fa/strings.xml b/OsmAnd/res/values-fa/strings.xml index a64f1e2d11..80228baec7 100644 --- a/OsmAnd/res/values-fa/strings.xml +++ b/OsmAnd/res/values-fa/strings.xml @@ -2986,4 +2986,24 @@ \n • در نظر گرفتن ناهمواری (صعود) برای محاسبهٔ زمان پیاده‌گردی (قاعدهٔ نای‌اسمیت) \n \n - + اینجا کجاست: + ساعت پارک‌کردن + برداشتن تا + بدون محدودیت زمانی + مقالهٔ کامل را بخوانید + خواندن مقاله + همهٔ نقاط این گروه + ساعت بازشدن + ساعت کاری تا + ساعت تعطیل‌کردن + ساعت بازکردن + روز بازکردن + عملیات بیشتر + فایل GPX با مختصات و داده‌های یادداشت‌های انتخاب‌شده + فایل GPX با مختصات و داده‌های همهٔ یادداشت‌ها + عملیات‌ها + نشانه + ویرایش‌ها + گیرندگان OSM + کل پرداخت‌ها + From 00381d36ef8ad503de505871c35a051e2d01b943 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Babos=20G=C3=A1bor?= Date: Tue, 19 Dec 2017 11:31:14 +0000 Subject: [PATCH 52/62] Translated using Weblate (Hungarian) Currently translated at 100.0% (3323 of 3323 strings) --- OsmAnd/res/values-hu/phrases.xml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/OsmAnd/res/values-hu/phrases.xml b/OsmAnd/res/values-hu/phrases.xml index 82afa6fee2..76cda90a27 100644 --- a/OsmAnd/res/values-hu/phrases.xml +++ b/OsmAnd/res/values-hu/phrases.xml @@ -3668,4 +3668,6 @@ Befizetőpont Pénzküldő - +Metró + + From 75d8d375e907c973cb7e82dd50f056dc8cb7c17c Mon Sep 17 00:00:00 2001 From: Viktar Vauchkevich Date: Sun, 24 Dec 2017 13:41:12 +0000 Subject: [PATCH 53/62] Translated using Weblate (Belarusian) Currently translated at 100.0% (2536 of 2536 strings) --- OsmAnd/res/values-be/strings.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/OsmAnd/res/values-be/strings.xml b/OsmAnd/res/values-be/strings.xml index 598e82dff0..f0c5ded4a6 100644 --- a/OsmAnd/res/values-be/strings.xml +++ b/OsmAnd/res/values-be/strings.xml @@ -488,7 +488,7 @@ Рэжым даступнасьці Уключыць уласцівасьці даступнасці. Паводле глябальных наладаў сыстэмы - Назад да мэню + Назад да меню Аддаліць Наблізіць Маштаб @@ -2937,7 +2937,7 @@ Імпартаваць як GPX-файл Імпартаваць як Улюбёныя Імпартаваць файл - Дотык на мапе хавае кнопкі кіраваньня і віджэты. + Дотык на мапе пераключае кнопкі кіраваньня і віджэты. Поўныэкранны рэжым Паказаць на верхняй панэлі Адзначыць прайдзеныя From 6fe169884601d69dd3af1a1e8d210eb5a2b51fec Mon Sep 17 00:00:00 2001 From: Viktar Vauchkevich Date: Sun, 24 Dec 2017 13:41:49 +0000 Subject: [PATCH 54/62] Translated using Weblate (Belarusian (latin)) Currently translated at 100.0% (2536 of 2536 strings) --- OsmAnd/res/values-be-rBY/strings.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/OsmAnd/res/values-be-rBY/strings.xml b/OsmAnd/res/values-be-rBY/strings.xml index 99e04d1fc8..057c737ae9 100644 --- a/OsmAnd/res/values-be-rBY/strings.xml +++ b/OsmAnd/res/values-be-rBY/strings.xml @@ -961,7 +961,7 @@ Miesca parkoŭkі і čas vіdać na paneli kіravańnia OsmAnd і na vіdžecie Uklučyć Vyklučyć Pavodle hlabalnych naładaŭ systemy - Nazad da meniu + Nazad da mieniu Addalić Nablizіć Maštab @@ -2888,7 +2888,7 @@ U vypadku, kali vy lubіcie OsmAnd і OSM і chočacie padtrymać jaho, heta іd Impartavać jak GPX-fajł Impartavać jak Ulubionyja Impartavać fajł - Dotyk na mapie chavaje knopki kiravańnia i vidžety. + Dotyk na mapie pierakliučaje knopki kiravańnia i vidžety. Poŭnyekranny režym Pakazać na vierchniaj paneli Adznačyć prajdzienyja From f0cab72f4b2ddec70cea8a4b072017da941e97fd Mon Sep 17 00:00:00 2001 From: josep constanti Date: Sun, 24 Dec 2017 15:15:46 +0000 Subject: [PATCH 55/62] Translated using Weblate (Catalan) Currently translated at 100.0% (2536 of 2536 strings) --- OsmAnd/res/values-ca/strings.xml | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/OsmAnd/res/values-ca/strings.xml b/OsmAnd/res/values-ca/strings.xml index 277ea395d8..6528ee62aa 100644 --- a/OsmAnd/res/values-ca/strings.xml +++ b/OsmAnd/res/values-ca/strings.xml @@ -2690,7 +2690,7 @@ Abasta l\'àrea: %1$s x %2$s Importa com un arxiu GPX Importa com punts Preferits Importa fitxer - Prement en el mapa s\'oculten els botons de control i els ginys. + Prement el mapa canvien els botons de control i els ginys. Mode de pantalla completa Mostra a la barra superior Marca com passat @@ -2745,4 +2745,24 @@ Abasta l\'àrea: %1$s x %2$s \n \n S\'activa amb un toc - + El que hi ha aquí: + aparcat a + Treure abans de + Sense límit de temps + Llegiu l\'article complet + Llegiu l\'article + Tots els punts del grup + Obert des de + Obert fins a + Es tancarà a + S\'obrirà a + S\'obrirà el + Accions addicionals + Arxiu GPX amb coordenades i dades de les notes seleccionades. + Fitxer GPX amb coordenades i dades de totes les notes. + Accions + Marcador + %1$s edicions, %2$s mBTC en total + Receptors OSM + Total de donacions + From 8c6dc826e0c663388a71c88662cdcc787e53d23e Mon Sep 17 00:00:00 2001 From: Matej U Date: Sun, 24 Dec 2017 20:25:50 +0000 Subject: [PATCH 56/62] Translated using Weblate (Slovenian) Currently translated at 100.0% (2536 of 2536 strings) --- OsmAnd/res/values-sl/strings.xml | 73 ++++++++++++++++++++------------ 1 file changed, 45 insertions(+), 28 deletions(-) diff --git a/OsmAnd/res/values-sl/strings.xml b/OsmAnd/res/values-sl/strings.xml index 0cb8c66ce8..374904720e 100644 --- a/OsmAnd/res/values-sl/strings.xml +++ b/OsmAnd/res/values-sl/strings.xml @@ -366,7 +366,7 @@ Sorazmerna velikost pomnilnika je %4$s MB (omejitev na androidu je %5$s MB, na d Obvestilo, da odpeljite vozilo s parkirišča, je bilo dodano v koledar. Ostalo bo zapisano, dokler ga ne izbrišete ročno. Nastavi časovno omejitev parkiranja Ali želite izbrisati označbo mesta, kjer je vozilo parkirano? - Izbriši mesto parkiranja + Izbriši označbo mesta parkiranja Izbira vrste parkiranja Časovno omejeno Časovno neomejeno @@ -375,12 +375,12 @@ Sorazmerna velikost pomnilnika je %4$s MB (omejitev na androidu je %5$s MB, na d Časovno neomejeno parkiranje Položaj parkiranega vozila: %1$s Prevzem vozila ob: - Točka parkiranja + Mesto parkiranja Vstavek za parkiranje omogoča enostavno shranjevanje mesta parkiranja vozila in časa parkirne ure. Podatki so prikazani na zaslonu za enostavno opozarjanje. Omogoča tudi dodajanje opomb v koledar za prikaz opomnikov ob daljših časih parkiranja (letališča, letovišča …). Parkiranje (mesto in čas) - Označi kot kraj parkiranja + Označi kot mesto parkiranja Izbriši označbo parkirnega mesta Podatki usmerjanja Izbor priljubljene točke … @@ -1074,7 +1074,7 @@ Omogoča tudi dodajanje opomb v koledar za prikaz opomnikov ob daljših časih p nadmorska višina Točka Ime datoteke GPX - Datoteka GPX uspešno shranjena v {0} + Datoteka GPX je uspešno shranjena v {0} Ne pokaži več Začni z merjenjem razdalje Končaj določanje razdalje @@ -1107,12 +1107,9 @@ Omogoča tudi dodajanje opomb v koledar za prikaz opomnikov ob daljših časih p Podatki izohips Poteka prejemanje * Pritisnite za določitev točke. - -* Zadržite pritisk na zemljevidu za brisanje prejšnje točke. - -* Zadržite pritisk na točki za ogled ali dodajanje opisa. - -* Kliknite na gradnik za merjenje za prikaz več možnosti. +\n* Zadržite pritisk na zemljevidu za brisanje predhodne točke. +\n* Zadržite pritisk na točki za ogled in dodajanje opisa. +\n* Za prikaz več možnosti, kliknite na gradnik za merjenje. " OsmAnd (OSM Automated Navigation Directions - Avtomatsko usmerjanje), je zemljevid in program za navigacijo z dostopom do svetovnih brezplačnih, zelo kakovostnih OpenStreetMap (OSM) podatkov. Vse podatke map je mogoče shraniti na pomnilniško kartico vašega telefona za uporabo brez povezave. OsmAnd ponuja usmerjanje preko sledilnika GPS naprave, s prikazom na zaslonu in glasovno, za avto, kolo in pešce. Vse glavne funkcije delujejo tako v povezavi kot brez nje (internet ni potreben). @@ -2451,7 +2448,7 @@ Del prihodka se vrne skupnosti OSM in se izplačuje za vsako opravljeno dejavnos Zabeleži Ni podatkov Božične točke POI - Ali želite prikaz Božičnih točk POI? + Ali želite omogočiti prikaz prazničnih prizorišč? Svetlorjava Temnorjava Kakovost površine ceste @@ -2468,13 +2465,13 @@ Del prihodka se vrne skupnosti OSM in se izplačuje za vsako opravljeno dejavnos Filter: nastavitev najmanjše natančnosti beleženja točk na zemljevidu. Objavi Pokaži obvestilo za možnost začetka beleženja potovanja. - \\022 Dejavne ikone na zemljevidu + • Gradnik Dejavne ikone na zemljevidu \n \n • Zmogljivo iskanje točk POI: iskanje na primer restavracij po vrsti kuhinje, ali pa prostore za kampiranje s posebnimi zahtevami \n \n • Topo – Nov slog zemljevida za kolesarje in pohodnike \n -\n • Izboljšano beleženje potovanja +\n • Izboljšano beleženje potovanja \n \n • Prilagojena obvestila navigacije za različne naprave (Android Wear) \n @@ -2482,7 +2479,7 @@ Del prihodka se vrne skupnosti OSM in se izplačuje za vsako opravljeno dejavnos \n \n in še veliko več … Barvna shema izohips - Ob koncu leta je mogoče izbrati prikaz točk POI, ki so povezane z božičnimi in novoletnimi dogodki: božična in novoletna drevesca, prodajalne, razstave ... + V zadnjih dneh koledarskega leta je mogoče izbrati prikaz točk POI, ki so povezane z božičnimi in novoletnimi dogodki: postavljena novoletna drevesca, božične jasli, prodajalne, razstave ... Barvna shema izohips Pošlji točko POI Izračunavanje poti @@ -2790,12 +2787,12 @@ Koda predstavlja območje: %1$s x %2$s OsmAnd je odprtokodni program, ki je v neprestanem razvoju. Vsakdo lahko sodeluje pri razvoju z objavljanjem hroščev, pregledom prevodov in razvojem programske opreme. Pri programu sodeluje živahna odprtokodna skupnost s celega sveta. Napredek razvoja je odvisen tudi od donacij za programiranje in preizkušanje programske opreme. Ocena kakovosti in pokritosti zemljevidov: • Zahodna Evropa: **** • Vzhodna Evropa: *** • Rusija: *** • Severna Amerika: *** • Južna Amerika: ** • Azija: ** • Japonska in Koreja: *** • Bližnji vzhod: ** • Afrika: ** • Antarktika: * Večina zemljevidov držav je na voljo za prejem! Uporabite zanesljiv navigacijski sistem za različne države – Francijo, Nemčijo, Mehiko, Združeno kraljestvo, Španijo, Nizozemsko, Združene države, Rusijo, Brazilijo in mnoge druge. Nadaljuj/Ustavi navigacijo Začni/Končaj navigacijo - \\022 Vstavek Mapillary za slikovno podporo ulic -\n -\n • Gradnik ravnila za merjenje razdalj -\n -\n • Razdelitev intervalov GPX za podrobnejši prikaz poti -\n + • Vstavek Mapillary za slikovno podporo ulic +\n +\n • Gradnik Ravnilo za merjenje razdalj +\n +\n • Razdelitev intervalov GPX za podrobnejši prikaz poti +\n \n • Druge posodobitve in razrešene napake \n \n @@ -2960,14 +2957,14 @@ Koda predstavlja območje: %1$s x %2$s Vmesne točke so dodane med označbe zemljevida. Za uporabo te zmožnosti je treba dodati vsaj eno označbo. Označba zemljevida je premaknjena med dejavne - \\022 Popolnoma predelane označbe zemljevida z vodilnimi črtami in načrtovanjem poti -\n -\n • Orodje za merjenje razdalje sedaj omogoča prilagajanje potem in shranjevanje točk kot sledi -\n -\n • OsmAnd Live: odprava hroščev, posodobitve, ki so samodejno vključene v navigacijo, se objavljajo vsakih 30 minut + • Popolnoma predelane označbe zemljevida z vodilnimi črtami in načrtovanjem poti +\n +\n • Orodje za merjenje razdalje sedaj omogoča prilagajanje potem in shranjevanje točk kot sledi +\n +\n • OsmAnd Live: razrešeni hrošči in posodobitve, ki so samodejno vključene v navigacijo, se objavljajo vsakih 30 minut \n \n - \\022 Zaznava znakov STOP po novem vpliva na usmerjanje vožnje + • Zaznava znakov STOP po novem vpliva na usmerjanje vožnje \n \n • Z novim algoritmom so vrednosti spustov in vzponov na sledeh GPX bolj smiselne \n @@ -2976,8 +2973,28 @@ Koda predstavlja območje: %1$s x %2$s \n Ustvari ali spremeni točke POI, ureja opombe OSM in omogoča objavljanje zabeleženih sledi GPX. Samodejno preklopi na naslednje polje, ko je vpisana %1$d decimalka. - S pritiskom na zemljevid se skrijejo gumbi in gradniki. + S pritiskom na zemljevid se preklopi prikaz gumbov in gradnikov. "je lahko uvožen med priljubljene točke ali kot datoteka sledi." Način določanja razdalje in smeri do označb zemljevida na zaslonu: Hitrost, pri kateri se usmerjenost preklopi »iz smeri gibanja« na »kompas«. - + Kaj je tu: + parkirano + Odpelji do + Brez časovne omejitve + Preberi celotno objavo + Preberi objavo + Vse točke skupine + Odprto od + Odprto do + Zapre se ob + Odpre se ob + Odprto bo na + Dodatna dejanja + Datoteka GPX s koordinatami in podatki izbranih sporočil. + Datoteka GPX s koordinatami in podatki vseh sporočil. + Dejanja + Označba + Število urejanj %1$s, vsota %2$s mBTC + Prejemniki skupine OSM + Skupno donacij + From 3835cedf76381efa26036895aff505595eeebcb5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Claus=20R=C3=BCdinger?= Date: Sat, 23 Dec 2017 21:28:40 +0000 Subject: [PATCH 57/62] Translated using Weblate (German) Currently translated at 99.0% (2513 of 2536 strings) --- OsmAnd/res/values-de/strings.xml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/OsmAnd/res/values-de/strings.xml b/OsmAnd/res/values-de/strings.xml index b95284eae0..da08604674 100644 --- a/OsmAnd/res/values-de/strings.xml +++ b/OsmAnd/res/values-de/strings.xml @@ -2933,4 +2933,15 @@ Abgedeckte Fläche: %1$s x %2$s \n \n Aktiviren mit einem Tap + Was ist hier: + Ohne Zeitbegrenzung + Ganzen Artikel lesen + Artikel lesen + Alle Punkte der Gruppe + Geöffnet ab + Geöffnet bis + Schließt um + Öffnet um + Öffnet am + Zusätzliche Aktionen From aafdc608f5aa23149696fbe698d520626c083e24 Mon Sep 17 00:00:00 2001 From: Ettore Atalan Date: Sun, 24 Dec 2017 23:54:51 +0000 Subject: [PATCH 58/62] Translated using Weblate (German) Currently translated at 100.0% (2536 of 2536 strings) --- OsmAnd/res/values-de/strings.xml | 36 ++++++++++++++++++++++++-------- 1 file changed, 27 insertions(+), 9 deletions(-) diff --git a/OsmAnd/res/values-de/strings.xml b/OsmAnd/res/values-de/strings.xml index da08604674..3d1fa42a87 100644 --- a/OsmAnd/res/values-de/strings.xml +++ b/OsmAnd/res/values-de/strings.xml @@ -471,8 +471,8 @@ Min. Vektor-Zoomstufe Online OSM Klassifizierung mit Bildern. - Fehler in der Offline-Suche aufgetreten - Konnte geointent nicht verarbeiten: \'%s\' + Fehler in der Offline-Suche aufgetreten. + Konnte geo intent nicht verarbeiten: \'%s\'. Adresssuche mit Offline-Daten Systemeinstellung Anzeigesprache wählen (App nach Änderungen neu starten). @@ -1276,7 +1276,7 @@ Proportionaler Speicher %4$s MB (Android Limit %5$s MB, Dalvik %6$s MB).Möchten Sie die angezeigte Strecke zur Navigation verwenden? Als letztes Ziel hinzufügen GPX-Datei auswählen… - Ziel auswählen. + Ziel auswählen Sprachansagen pausieren (nicht nur dämpfen) Musikwiedergabe. Standort immer in Bildschirmmitte anzeigen Stimme @@ -1300,7 +1300,7 @@ Proportionaler Speicher %4$s MB (Android Limit %5$s MB, Dalvik %6$s MB).Meine Favoriten Meine Orte %1$s wird geladen … - Uhrzeit + Aktuelle Zeit " \n \nZur Darstellung auf der Karte lange drücken" @@ -2655,7 +2655,7 @@ Abgedeckte Fläche: %1$s x %2$s Ziel hinzufügen Ziel ersetzen Ersten Zwischenstopp hinzufügen - Drücken der Aktionstaste fügt die zum Bildschirmmittelpunkt gehörende Position als Ziel hinzu. Ursprüngliches Ziel wird zum letzten Zwischenstopp. + Drücken der Aktionstaste fügt die zum Bildschirmmittelpunkt gehörende Position als Ziel hinzu. Das zuvor eingestellte Ziel wird zum letzten Zwischenziel. Drücken der Aktionstaste ersetzt das Ziel durch die dem Bildschirmmittelpunkt entsprechende Position. Drücken der Aktionstaste fügt die zum Bildschirmmittelpunkt gehörende Position als ersten Zwischenstopp ein. Fehler @@ -2896,7 +2896,7 @@ Abgedeckte Fläche: %1$s x %2$s Suche nach Spuren mit Wegpunkten Mehr Darstellung auf der Karte - Favoriten Kategorie + Favoritenkategorie Gruppe hinzufügen Kartenmarkierungen erstellen! Gruppen importieren @@ -2909,7 +2909,7 @@ Abgedeckte Fläche: %1$s x %2$s Zum nächsten Feld gehen Markierung umbenennen Markierung passiert - Track-Wegpunkte + Spuren-Wegpunkte Suchanfrage verändern. Erstellen oder ändern von OSM-Objekten OSM-POI erstellen oder verändern, OSM-Notizen eröffnen oder bearbeiten, und aufgezeichnete GPX-Dateien hinzufügen. @@ -2924,7 +2924,7 @@ Abgedeckte Fläche: %1$s x %2$s kann als Favoriten-Punkte oder als Track-Datei importiert werden. Audio-, Video- oder Fotonotizen zu jedem Punkt auf der Karte über Widget oder Kontextmenü hinzufügen. Notizen nach Datum - Berührung der Karte verbirgt Steuerungselementen und Widgets. + Ein Tippen auf die Karte schaltet die Steuerschaltflächen und Bedienelemente um. • Erkennung von Stoppschildern jetzt nach Fahrtrichtung \n \n• Neuer Algorithmus für die Bereitstellung von sinnvollen Auf-/Abstieg-Werten für GPX-tracks @@ -2944,4 +2944,22 @@ Abgedeckte Fläche: %1$s x %2$s Öffnet um Öffnet am Zusätzliche Aktionen - + geparkt um + Abholung bis + GPX-Datei mit Koordinaten und Daten der ausgewählten Notizen. + GPX-Datei mit Koordinaten und Daten aller Notizen. + Aktionen + Markierung + Wählen Sie eine Spur aus, um ihre Wegpunkte zu den Markierungen hinzuzufügen. (Nur Spuren mit Wegpunkten werden aufgelistet.) + Wählen Sie eine Favoritenkategorie aus, die Sie den Markierungen hinzufügen möchten. + Sie können Gruppen aus Favoriten oder Spuren-Wegpunkten importieren. + Tippen Sie Orte lang oder kurz an, tippen Sie anschließend auf die Markierungsfahnenschaltfläche. + Sie können Favoritengruppen oder Spuren-Wegpunkte als Markierungen importieren. + Hilfslinien von Ihrem Standort bis zu den aktiven Markierungspunkten anzeigen. + Ein oder zwei Pfeile anzeigen, die die Richtung zu den aktiven Markierungen angeben. + Wählen Sie aus, wie der Abstand zu aktiven Markierungen angezeigt werden soll. + Wählen Sie aus, wie viele Richtungsanzeiger angezeigt werden sollen. + %1$s bearbeitet, Summe %2$s mBTC + OSM-Empfänger + Spenden insgesamt + From f986b0be3a65e15cf27d0d251fa50075b7a5b66d Mon Sep 17 00:00:00 2001 From: Evgenii Martynenko Date: Mon, 25 Dec 2017 06:08:57 +0000 Subject: [PATCH 59/62] Translated using Weblate (Russian) Currently translated at 100.0% (2536 of 2536 strings) --- OsmAnd/res/values-ru/strings.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/OsmAnd/res/values-ru/strings.xml b/OsmAnd/res/values-ru/strings.xml index 990763a217..d5f81e40fb 100644 --- a/OsmAnd/res/values-ru/strings.xml +++ b/OsmAnd/res/values-ru/strings.xml @@ -965,7 +965,7 @@ Включён Отключён Использовать системную настройку - Главное меню + Назад к меню Уменьшить Увеличить Масштаб @@ -2640,7 +2640,7 @@ Направо Налево Показать цифровую панель - Нажатие на карте скрывает кнопки управления и виджеты. + Нажатие на карте переключает кнопки управления и виджеты. Показать на верхней панели могут быть импортированы как избранные точки или как трек файл. Больше From 657e27d16ccc4d53bc908b396d1231cf7fc7d2d8 Mon Sep 17 00:00:00 2001 From: Franco Date: Mon, 25 Dec 2017 23:39:34 +0000 Subject: [PATCH 60/62] Translated using Weblate (Spanish) Currently translated at 100.0% (2536 of 2536 strings) --- OsmAnd/res/values-es/strings.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/OsmAnd/res/values-es/strings.xml b/OsmAnd/res/values-es/strings.xml index 815f009477..6d731403bb 100644 --- a/OsmAnd/res/values-es/strings.xml +++ b/OsmAnd/res/values-es/strings.xml @@ -659,7 +659,7 @@ El espacio de almacenamiento usado es {1} MB. Activado Desactivado De acuerdo con el ajuste global del sistema - Volver al Menú + Volver al menú Alejar Acercar El nivel de zoom es @@ -2746,7 +2746,7 @@ Por favor proporciona un código completo Atrás Ver Puntos de ruta añadidos a marcadores de mapa - Una pulsación en el mapa oculta los botones y los controles. + Una pulsación en el mapa alterna los botones y los controles. Modo de pantalla completa Mostrar en la barra superior Descartar marcador @@ -2807,7 +2807,7 @@ Por favor proporciona un código completo Por tipo Lo que hay aquí: Aparcado en - Recoger antes de las + Recoger hasta las Tiempo ilimitado Leer el artículo completo Leer artículo From 17c6f68b3656c36a13aba10fffd81d36ea5a7a34 Mon Sep 17 00:00:00 2001 From: Franco Date: Mon, 25 Dec 2017 23:38:35 +0000 Subject: [PATCH 61/62] Translated using Weblate (Spanish) Currently translated at 100.0% (3323 of 3323 strings) updated --- OsmAnd/res/values-es/phrases.xml | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/OsmAnd/res/values-es/phrases.xml b/OsmAnd/res/values-es/phrases.xml index d5578a2e3d..74d507d24a 100644 --- a/OsmAnd/res/values-es/phrases.xml +++ b/OsmAnd/res/values-es/phrases.xml @@ -3685,10 +3685,19 @@ Tamaño del mapa: Ciudad Tamaño del mapa: Región -Barranco estrecho +Couloir (barranco estrecho y empinado) Estación de carga Depósito Buzón - + Metro + + Calle + Número de portal + Piso de oficina + + Centro de pago + Transferencia de dinero + + From acd60f00c8a5e4812f13fe8133a96242b360a252 Mon Sep 17 00:00:00 2001 From: ezjerry liao Date: Tue, 26 Dec 2017 06:43:05 +0000 Subject: [PATCH 62/62] Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (3323 of 3323 strings) --- OsmAnd/res/values-zh-rTW/phrases.xml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/OsmAnd/res/values-zh-rTW/phrases.xml b/OsmAnd/res/values-zh-rTW/phrases.xml index c5bc9eecad..14b9972712 100644 --- a/OsmAnd/res/values-zh-rTW/phrases.xml +++ b/OsmAnd/res/values-zh-rTW/phrases.xml @@ -3677,4 +3677,16 @@ 充電站 +捷運 + + 車站 + + 信箱 + + 門牌號碼 + 平地 + + 支付中心 + 匯款 +