Merge branch 'master' of ssh://github.com/osmandapp/Osmand into disable_animations

This commit is contained in:
PavelRatushny 2017-08-29 16:51:45 +03:00
commit f5379d4b47
17 changed files with 1387 additions and 132 deletions

View file

@ -0,0 +1,122 @@
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="56dp"
android:descendantFocusability="blocksDescendants">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="?attr/bg_color">
<android.support.v7.widget.AppCompatImageView
android:id="@+id/marker_reorder_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_centerVertical="true"
android:padding="16dp"
android:tint="?attr/secondary_icon_color"
tools:src="@drawable/ic_action_reorder"/>
<android.support.v7.widget.AppCompatImageView
android:id="@+id/marker_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginEnd="16dp"
android:layout_marginRight="16dp"
android:layout_toEndOf="@id/marker_reorder_icon"
android:layout_toRightOf="@id/marker_reorder_icon"
tools:src="@drawable/ic_action_flag_dark"/>
<ImageButton
android:id="@+id/marker_options_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginBottom="16dp"
android:layout_marginLeft="14dp"
android:layout_marginRight="14dp"
android:layout_marginTop="16dp"
android:background="?attr/selectableItemBackground"
android:focusableInTouchMode="true"
tools:src="@drawable/ic_overflow_menu_white"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toEndOf="@+id/marker_icon"
android:layout_toLeftOf="@id/marker_options_button"
android:layout_toRightOf="@+id/marker_icon"
android:layout_toStartOf="@id/marker_options_button"
android:orientation="vertical">
<android.support.v7.widget.AppCompatTextView
android:id="@+id/measure_point_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="?android:textColorPrimary"
android:textSize="@dimen/default_desc_text_size"
tools:text="Van Gogh Museum"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/direction_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
tools:src="@drawable/ic_direction_arrow"/>
<android.support.v7.widget.AppCompatTextView
android:id="@+id/marker_distance"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="4dp"
android:layout_marginRight="4dp"
android:maxLines="1"
android:textColor="@color/marker_blue"
android:textSize="@dimen/default_sub_text_size"
tools:text="213 m"/>
<android.support.v7.widget.AppCompatTextView
android:id="@+id/point_icon_text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="•"
android:textColor="?android:textColorSecondary"
android:textSize="@dimen/default_sub_text_size"/>
<android.support.v7.widget.AppCompatTextView
android:id="@+id/marker_description"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="4dp"
android:layout_marginRight="4dp"
android:maxLines="1"
android:textColor="?android:textColorSecondary"
android:textSize="@dimen/default_sub_text_size"
tools:text="Amsterdam Weekend"/>
</LinearLayout>
</LinearLayout>
<View
android:id="@+id/points_divider"
android:layout_width="wrap_content"
android:layout_height="1dp"
android:layout_alignParentBottom="true"
android:layout_toEndOf="@+id/marker_reorder_icon"
android:layout_toRightOf="@+id/marker_reorder_icon"
android:background="?attr/dashboard_divider"/>
</RelativeLayout>
</FrameLayout>

View file

@ -1564,4 +1564,22 @@
<string name="poi_animal_shelter_purpose">الغرض</string>
<string name="poi_direction_entrance">الوجهة: مدخل</string>
<string name="poi_boat_rental_type">قوارب مستأجرة</string>
<string name="poi_petroleum_well">بئر نفط</string>
<string name="poi_cricket_nets">شبكات الكريكيت</string>
<string name="poi_college">كلية</string>
<string name="poi_social_facility">مرفق اجتماعي</string>
<string name="poi_quarter">ربع</string>
<string name="poi_locality">موضع</string>
<string name="poi_nursing_home">دار تمريض</string>
<string name="poi_audiologist">اختصاصي السمع</string>
<string name="poi_occupational_therapist">أخصائي العلاج الوظيفي</string>
<string name="poi_optometrist">طبيب العيون</string>
<string name="poi_bookmaker">ناشر</string>
<string name="poi_golf_course">ملعب غولف</string>
<string name="poi_ice_rink">حلبة تزلج</string>
<string name="poi_running_track">مسار جري</string>
<string name="poi_raceway">مضمار سباق</string>
<string name="poi_archery">الرماية</string>
</resources>

File diff suppressed because it is too large Load diff

View file

@ -1083,4 +1083,13 @@
<string name="empty_state_favourites">Fawority dodać</string>
<string name="import_track">Čaru importować</string>
<string name="move_point">Dypk přesunyć</string>
<string name="show_something_on_map">%1$s na karće pokazać</string>
<string name="text_size_descr">Postaj wulkosć teksta na karće.</string>
<string name="local_index_items_uploaded">%1$d wot %2$d objektow wuspěšnje nahraty.</string>
<string name="local_index_mi_upload_gpx">Na OSM pósłać</string>
<string name="show_more_map_detail">wjace detailow na karće pokazać</string>
<string name="show_more_map_detail_descr">někotre kartowe detaile (n. př. puće) hižo w nišich zoom-runinach pokazać</string>
<string name="favourites_delete_multiple_succesful">Faworitowe dypki wuspěšnje wotstronjene.</string>
<string name="favorite_delete_multiple">Chceš %1$d faworit(ow) a %2$d skupin faworitow wotstronić. Sy sej wěsty/a?</string>
<string name="basemap_missing">Zakładna karta swěta (pokrywajo cyły swět na niskich zoom-runinach) pobrachuje. Prošu wobstaraj sej World_basemap_x.obf za globalny přehlad.</string>
</resources>

View file

@ -2806,4 +2806,6 @@ U vypadku, kali vy lubіcie OsmAnd і OSM і chočacie padtrymać jaho, heta іd
<string name="import_track_desc">Fajl %1$s nie zmiaščaje kropki šliachu, impartavać jak slied?</string>
<string name="move_point">Pieramiascić kropku</string>
<string name="add_segment_to_the_track">Dadać u GPX-slied</string>
</resources>
<string name="keep_showing_on_map">Praciahvać pakazvać na mapie</string>
<string name="exit_without_saving">Vyjsci biez zachavannia?</string>
</resources>

View file

@ -2855,4 +2855,6 @@
<string name="import_track_desc">Файл %1$s не змяшчае кропкі шляху, імпартаваць як след?</string>
<string name="move_point">Перамясціць кропку</string>
<string name="add_segment_to_the_track">Дадаць у GPX-след</string>
</resources>
<string name="keep_showing_on_map">Працягваць паказваць на мапе</string>
<string name="exit_without_saving">Выйсці без захавання?</string>
</resources>

View file

@ -2608,4 +2608,6 @@ Abasta l\'àrea: %1$s x %2$s</string>
<string name="import_track_desc">El fitxer %1$s no conté fites, voleu importar-lo com una traça?</string>
<string name="move_point">Mou punt</string>
<string name="add_segment_to_the_track">Afegeix a una traça GPX</string>
</resources>
<string name="keep_showing_on_map">Continua mostrant al mapa</string>
<string name="exit_without_saving">Voleu sortir sense desar?</string>
</resources>

View file

@ -1682,7 +1682,7 @@ Kaj la loko kaj tempo estas montrataj en la OsmAnd-a stirpanelo, kaj sur la fene
<string name="search_offline_geo_error">Ne povis interpreti \'%s\'</string>
<string name="search_osm_offline">Serĉi geo-lokon</string>
<string name="preferred_locale_descr">Elekti lingvon de fasado (bonvolu restarti OsmAnd post ŝanĝo)</string>
<string name="unit_of_length">Long-unuo</string>
<string name="unit_of_length">Long-unuoj</string>
<string name="unit_of_length_descr">Ŝanĝi unuon de longo</string>
<string name="si_mi_feet">Mejloj/futoj</string>
<string name="si_mi_yard">Mejloj/jardoj</string>
@ -2769,4 +2769,6 @@ Indikas lokon: %1$s x %2$s"</string>
<string name="import_track_desc">Dosiero %1$s ne enhavas navigadpunktojn, ĉe enporti ĝin kiel spuron?</string>
<string name="move_point">Movi punkton</string>
<string name="add_segment_to_the_track">Aldoni al GPX-spuro</string>
</resources>
<string name="keep_showing_on_map">Daŭre montri sur mapo</string>
<string name="exit_without_saving">Ĉu eliri sen konservi?</string>
</resources>

View file

@ -2733,4 +2733,6 @@ Proporciona un código completo</string>
<string name="import_track_desc">El archivo «%1$s» no contiene puntos de referencia, ¿Quieres importarlo como una traza?</string>
<string name="move_point">Mover punto</string>
<string name="add_segment_to_the_track">Añadir a una traza GPX</string>
</resources>
<string name="keep_showing_on_map">Mantener en el mapa</string>
<string name="exit_without_saving">Salir sin guardar?</string>
</resources>

View file

@ -2734,4 +2734,6 @@ Proporciona un código completo</string>
<string name="import_track_desc">El archivo «%1$s» no contiene puntos de referencia, ¿Quieres importarlo como una traza?</string>
<string name="move_point">Mover punto</string>
<string name="add_segment_to_the_track">Añadir a una traza GPX</string>
</resources>
<string name="keep_showing_on_map">Mantener en el mapa</string>
<string name="exit_without_saving">Salir sin guardar?</string>
</resources>

View file

@ -2763,4 +2763,12 @@ Area honi dagokio: %1$s x %2$s</string>
<string name="waypoint_one">1. bide-puntua</string>
<string name="route_point_one">1. ibilbide-puntua</string>
<string name="measurement_tool_altitude">Garaiera: %1$s</string>
<string name="line">Linea</string>
<string name="save_as_route_point">Gorde ibilbideko puntuak gisa</string>
<string name="save_as_line">Gorde linea gisa</string>
<string name="route_point">Ibilbideko puntua</string>
<string name="edit_line">Editatu linea</string>
<string name="add_point_before">Gehitu puntua aurretik</string>
<string name="add_point_after">Gehitu puntua atzetik</string>
<string name="shared_string_options">Aukerak</string>
</resources>

View file

@ -1146,7 +1146,7 @@ OsmAnd jest otwarto-źródłowym programem do nawigacji z dostępem do szerokiej
<string name="use_distance_measurement_help">* Naciśnij, aby zaznaczyć punkt.
\n * Naciśnij i przytrzymaj mapę, aby usunąć poprzedni punkt.
\n * Naciśnij i przytrzymaj punkt, aby przejrzeć i dołączyć opis.
\n * Kliknij na widgecie obliczania odległości, aby zobaczyć więcej czynności.</string>
\n * Kliknij na widżecie obliczania odległości, aby zobaczyć więcej czynności.</string>
<string name="shared_string_do_not_show_again">Nie pokazuj ponownie</string>
<string name="distance_measurement_start_editing">Rozpocznij edycję</string>
<string name="distance_measurement_finish_editing">Zakończ edycję</string>
@ -1359,7 +1359,7 @@ OsmAnd jest otwarto-źródłowym programem do nawigacji z dostępem do szerokiej
<string name="index_item_nation_addresses">Adresy krajowe</string>
<string name="index_item_world_basemap">Podstawowa mapa świata</string>
<string name="index_item_world_ski">Światowa mapa tras narciarskich</string>
<string name="interrupt_music_descr">Wstrzymuje odtwarzanie każdej muzyki podczas komunikatów (nie tylko ją przycisza)</string>
<string name="interrupt_music_descr">Całkowicie wstrzymuje odtwarzanie muzyki podczas komunikatów (nie tylko ją przycisza)</string>
<string name="interrupt_music">Przerywanie muzyki</string>
<string name="always_center_position_on_map">Zawsze wyśrodkowane położenie</string>
<string name="voice_pref_title">Głos</string>
@ -2459,7 +2459,7 @@ Długość %2$s</string>
\n
\n i więcej…</string>
<string name="trip_rec_notification_settings">Rejestrowanie śladu (brak danych)</string>
<string name="trip_rec_notification_settings_desc">Wyświetla komunikat umożliwiający rozpoczęcie rejestrowania śladu po naciśnięciu przycisku</string>
<string name="trip_rec_notification_settings_desc">Wyświetl powiadomienie systemowe z opcję rozpoczęcia rejestrowania śladu</string>
<string name="shared_string_notifications">Powiadomienia</string>
<string name="osmo_share_location">Udostępnij</string>
<string name="osmo_pause_location">Wstrzymaj</string>
@ -2820,4 +2820,15 @@ Reprezentuje obszar: %1$s x %2$s</string>
<string name="edit_line">Zmodyfikuj linię</string>
<string name="add_point_before">Dodaj punkt wcześniej</string>
<string name="add_point_after">Dodaj punkt dalej</string>
</resources>
<string name="measurement_tool_snap_to_road_descr">OsmAnd doda dalsze punkty w zależności od rodzaju nawigacji.</string>
<string name="add_route_points">Dodaj punkty trasy</string>
<string name="add_line">Dodaj linię</string>
<string name="empty_state_my_tracks">Dodaj i nagraj ślady</string>
<string name="empty_state_my_tracks_desc">Zarejestruj lub zaimportuj ślady do wyświetlenia</string>
<string name="empty_state_favourites">Dodaj do ulubionych</string>
<string name="empty_state_favourites_desc">Dodaj ulubione punkty na mapę lub zaimportuj je z pamięci</string>
<string name="import_track">Importuj ślad</string>
<string name="import_track_desc">Plik %1$s nie zawiera punktów trasy, czy zaimportować go jako ślad?</string>
<string name="move_point">Przesuń punkt</string>
<string name="add_segment_to_the_track">Dodaj do śladu GPX</string>
</resources>

View file

@ -2756,4 +2756,6 @@ Pro praghere iscrie su còdighe intreu</string>
<string name="import_track_desc">Su documentu %1$s non cuntenit puntos de coladòrgiu, importare comente rasta?</string>
<string name="move_point">Move puntu</string>
<string name="add_segment_to_the_track">Annanghe a una rasta GPX</string>
</resources>
<string name="keep_showing_on_map">Sighi a l\'ammustrare in sa mapa</string>
<string name="exit_without_saving">Essire chene sarvare?</string>
</resources>

View file

@ -2837,4 +2837,5 @@ Koda predstavlja območje: %1$s x %2$s</string>
<string name="import_track_desc">Datoteka %1$s ne vključuje nobene vmesne točke. Ali želite pot uvoziti kot sled?</string>
<string name="move_point">Premakni točko</string>
<string name="add_segment_to_the_track">Dodaj na sled GPX</string>
</resources>
<string name="empty_state_favourites_desc">Dodaj priljubljene na zemljevid ali pa jih uvozi iz datoteke</string>
</resources>

View file

@ -2839,4 +2839,6 @@ OsmAnd (Automated Navigation Directions) 是一個地圖和導航的應用程式
<string name="import_track_desc">%1$s 檔案不包含航點,要將其匯入軌跡嗎?</string>
<string name="move_point">移動標點</string>
<string name="add_segment_to_the_track">增加到 GPX 軌跡</string>
</resources>
<string name="keep_showing_on_map">在地圖上維持著顯示</string>
<string name="exit_without_saving">離開而不儲存嗎?</string>
</resources>

View file

@ -112,7 +112,8 @@ public class MeasurementToolFragment extends Fragment {
private enum SaveType {
ROUTE_POINT,
LINE
LINE,
SNAP_TO_ROAD
}
private void setEditingCtx(MeasurementEditingContext editingCtx) {
@ -459,12 +460,12 @@ public class MeasurementToolFragment extends Fragment {
@Override
public void onDestroyView() {
super.onDestroyView();
cancelModes();
exitMeasurementMode();
adapter.setAdapterListener(null);
if (pointsListOpened) {
hidePointsList();
}
closeModes();
MeasurementToolLayer layer = getMeasurementLayer();
if (layer != null) {
layer.setOnSingleTapListener(null);
@ -837,7 +838,7 @@ public class MeasurementToolFragment extends Fragment {
int position = editingCtx.getSelectedPointPosition();
editingCtx.getCommandManager().execute(new MovePointCommand(measurementLayer, oldPoint, newPoint, position));
editingCtx.addPoint(newPoint);
measurementLayer.exitMovePointMode(false);
exitMovePointMode(false);
doAddOrMovePointCommonStuff();
measurementLayer.refreshMap();
}
@ -845,22 +846,28 @@ public class MeasurementToolFragment extends Fragment {
private void cancelMovePointMode() {
switchMovePointMode(false);
MeasurementToolLayer measurementToolLayer = getMeasurementLayer();
if (measurementToolLayer != null) {
measurementToolLayer.exitMovePointMode(true);
measurementToolLayer.refreshMap();
exitMovePointMode(true);
MapActivity mapActivity = getMapActivity();
if (mapActivity != null) {
mapActivity.refreshMap();
}
}
private void closeModes() {
if (editingCtx.getOriginalPointToMove() != null) {
switchMovePointMode(false);
} else if (editingCtx.getSelectedPointPosition() != -1) {
switchAddPointBeforeAfterMode(false);
void exitMovePointMode(boolean saveOriginalPoint) {
if (saveOriginalPoint) {
WptPt pt = editingCtx.getOriginalPointToMove();
editingCtx.addPoint(pt);
}
MeasurementToolLayer layer = getMeasurementLayer();
if (layer != null && editingCtx.getOriginalPointToMove() != null) {
layer.exitMovePointMode(true);
editingCtx.setOriginalPointToMove(null);
editingCtx.setSelectedPointPosition(-1);
editingCtx.splitSegments(editingCtx.getBeforePoints().size() + editingCtx.getAfterPoints().size());
}
private void cancelModes() {
if (editingCtx.getOriginalPointToMove() != null) {
cancelMovePointMode();
} else if (editingCtx.getSelectedPointPosition() != -1) {
cancelAddPointBeforeOrAfterMode();
}
}
@ -1074,7 +1081,7 @@ public class MeasurementToolFragment extends Fragment {
final SwitchCompat showOnMapToggle = (SwitchCompat) view.findViewById(R.id.toggle_show_on_map);
showOnMapToggle.setChecked(true);
final String suggestedName = new SimpleDateFormat("yyyy-M-dd_HH-mm_EEE", Locale.US).format(new Date());
final String suggestedName = new SimpleDateFormat("yyyy-MM-dd_HH-mm_EEE", Locale.US).format(new Date());
String displayedName = suggestedName;
File fout = new File(dir, suggestedName + GPX_SUFFIX);
int ind = 1;
@ -1156,7 +1163,7 @@ public class MeasurementToolFragment extends Fragment {
@Override
protected void onPreExecute() {
closeModes();
cancelModes();
MapActivity activity = getMapActivity();
if (activity != null) {
progressDialog = new ProgressDialog(activity);
@ -1184,6 +1191,19 @@ public class MeasurementToolFragment extends Fragment {
Route rt = new Route();
gpx.routes.add(rt);
rt.points.addAll(points);
} else if (saveType == SaveType.SNAP_TO_ROAD) {
TrkSegment segmentToSave = new TrkSegment();
TrkSegment before = editingCtx.getBeforeTrkSegmentLine();
TrkSegment after = editingCtx.getAfterTrkSegmentLine();
segmentToSave.points.addAll(before.points);
segmentToSave.points.addAll(after.points);
Track track = new Track();
track.segments.add(segmentToSave);
gpx.tracks.add(track);
Route rt = new Route();
rt.points.addAll(points);
gpx.routes.add(rt);
}
}
if (activity != null) {
@ -1390,7 +1410,7 @@ public class MeasurementToolFragment extends Fragment {
builder.setPositiveButton(R.string.shared_string_ok, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
final String name = new SimpleDateFormat("yyyy-M-dd_HH-mm_EEE", Locale.US).format(new Date());
final String name = new SimpleDateFormat("yyyy-MM-dd_HH-mm_EEE", Locale.US).format(new Date());
String fileName = name + GPX_SUFFIX;
File fout = new File(dir, fileName);
int ind = 1;
@ -1398,7 +1418,13 @@ public class MeasurementToolFragment extends Fragment {
fileName = name + "_" + (++ind) + GPX_SUFFIX;
fout = new File(dir, fileName);
}
saveNewGpx(dir, fileName, showOnMapToggle.isChecked(), SaveType.LINE, true);
SaveType saveType;
if (editingCtx.isInSnapToRoadMode()) {
saveType = SaveType.SNAP_TO_ROAD;
} else {
saveType = SaveType.LINE;
}
saveNewGpx(dir, fileName, showOnMapToggle.isChecked(), saveType, true);
}
});
} else {

View file

@ -300,16 +300,6 @@ public class MeasurementToolLayer extends OsmandMapLayer implements ContextMenuL
}
}
void exitMovePointMode(boolean saveOriginalPoint) {
if (saveOriginalPoint) {
WptPt pt = editingCtx.getOriginalPointToMove();
editingCtx.addPoint(pt);
}
editingCtx.setOriginalPointToMove(null);
editingCtx.setSelectedPointPosition(-1);
editingCtx.splitSegments(editingCtx.getBeforePoints().size() + editingCtx.getAfterPoints().size());
}
private void drawCenterIcon(Canvas canvas, RotatedTileBox tb, QuadPoint center, boolean nightMode) {
canvas.rotate(-tb.getRotate(), center.x, center.y);
if (nightMode) {