Merge branch 'master' of ssh://github.com/osmandapp/Osmand into mapillary_filters
BIN
OsmAnd/res/drawable-hdpi/ic_action_altitude_average_16.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 1.2 KiB |
BIN
OsmAnd/res/drawable-hdpi/ic_action_altitude_range_16.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
OsmAnd/res/drawable-hdpi/ic_action_max_speed_16.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
OsmAnd/res/drawable-hdpi/ic_action_speed_16.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
OsmAnd/res/drawable-hdpi/ic_action_split_interval.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
OsmAnd/res/drawable-hdpi/ic_action_time_end_16.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
OsmAnd/res/drawable-hdpi/ic_action_time_moving_16.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
OsmAnd/res/drawable-hdpi/ic_action_time_span_16.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
OsmAnd/res/drawable-hdpi/ic_action_time_start_16.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
OsmAnd/res/drawable-hdpi/ic_action_track_16.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
OsmAnd/res/drawable-mdpi/ic_action_altitude_average_16.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.1 KiB |
BIN
OsmAnd/res/drawable-mdpi/ic_action_altitude_range_16.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
OsmAnd/res/drawable-mdpi/ic_action_max_speed_16.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
OsmAnd/res/drawable-mdpi/ic_action_speed_16.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
OsmAnd/res/drawable-mdpi/ic_action_split_interval.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
OsmAnd/res/drawable-mdpi/ic_action_time_end_16.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
OsmAnd/res/drawable-mdpi/ic_action_time_moving_16.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
OsmAnd/res/drawable-mdpi/ic_action_time_span_16.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
OsmAnd/res/drawable-mdpi/ic_action_time_start_16.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
OsmAnd/res/drawable-mdpi/ic_action_track_16.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
OsmAnd/res/drawable-xhdpi/ic_action_altitude_average_16.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 1.2 KiB |
BIN
OsmAnd/res/drawable-xhdpi/ic_action_altitude_range_16.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
OsmAnd/res/drawable-xhdpi/ic_action_max_speed_16.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
BIN
OsmAnd/res/drawable-xhdpi/ic_action_speed_16.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
BIN
OsmAnd/res/drawable-xhdpi/ic_action_split_interval.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
OsmAnd/res/drawable-xhdpi/ic_action_time_end_16.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
BIN
OsmAnd/res/drawable-xhdpi/ic_action_time_moving_16.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
OsmAnd/res/drawable-xhdpi/ic_action_time_span_16.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
OsmAnd/res/drawable-xhdpi/ic_action_time_start_16.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
BIN
OsmAnd/res/drawable-xhdpi/ic_action_track_16.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
BIN
OsmAnd/res/drawable-xxhdpi/ic_action_altitude_average_16.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 1.4 KiB |
BIN
OsmAnd/res/drawable-xxhdpi/ic_action_altitude_range_16.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
OsmAnd/res/drawable-xxhdpi/ic_action_max_speed_16.png
Normal file
After Width: | Height: | Size: 1.6 KiB |
BIN
OsmAnd/res/drawable-xxhdpi/ic_action_speed_16.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
OsmAnd/res/drawable-xxhdpi/ic_action_split_interval.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
OsmAnd/res/drawable-xxhdpi/ic_action_time_end_16.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
BIN
OsmAnd/res/drawable-xxhdpi/ic_action_time_moving_16.png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
OsmAnd/res/drawable-xxhdpi/ic_action_time_span_16.png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
OsmAnd/res/drawable-xxhdpi/ic_action_time_start_16.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
BIN
OsmAnd/res/drawable-xxhdpi/ic_action_track_16.png
Normal file
After Width: | Height: | Size: 1.6 KiB |
|
@ -2923,4 +2923,5 @@ Moduli:
|
|||
<string name="shared_string_reload">Abnavić</string>
|
||||
<string name="mapillary_menu_descr_tile_cache">Abnavić frahmienty, kab ubačyć aktuaĺnyja danyja.</string>
|
||||
<string name="mapillary_menu_title_tile_cache">Keš frahmientaŭ</string>
|
||||
<string name="shared_string_reset">Skinuć</string>
|
||||
</resources>
|
||||
|
|
|
@ -2972,4 +2972,5 @@ OsmAnd мае адкрыты зыходны код і актыўна разві
|
|||
<string name="shared_string_reload">Абнавіць</string>
|
||||
<string name="mapillary_menu_descr_tile_cache">Абнавіць фрагменты, каб убачыць актуальныя даныя.</string>
|
||||
<string name="mapillary_menu_title_tile_cache">Кэш фрагментаў</string>
|
||||
<string name="shared_string_reset">Скінуць</string>
|
||||
</resources>
|
||||
|
|
|
@ -1685,15 +1685,17 @@ Afganistan, Albània, Alemanya, Antilles Holandeses, Algèria, Andorra, Angola,
|
|||
<string name="track_segments">Segments de traça</string>
|
||||
<string name="track_points">Punts de traça</string>
|
||||
<string name="plugin_touringview_name">Vista turística del mapa</string>
|
||||
<string name="plugin_touringview_descr">"En activar el canvi en l\'estil de la vista del mapa de l\'OsmAnd a «Vista turística del mapa», es mostra una vista especial de gran detall per viatgers i conductors professionals.
|
||||
<string name="plugin_touringview_descr">En activar el canvi en l\'estil del mapa de l\'OsmAnd a «Vista de viatge», es mostra una vista especial de gran detall per viatgers i conductors professionals.
|
||||
\n
|
||||
\nAquesta vista proporciona, a qualsevol nivell de zoom del mapa, el màxim detall disponible a les dades del mapa per viatjar (particularment carreteres, pistes, camins i senyals d\'orientació).
|
||||
\n
|
||||
\nTambé es discrimina amb nitidesa tots els tipus de carreteres pel codi de colors, la qual cosa és molt útil, per exemple, conduint vehicles pesats.
|
||||
\n
|
||||
\nAquesta vista proporciona, per a qualsevol nivell de zoom al mapa, la quantitat màxima de detalls de viatge disponibles a les dades del mapa (particularment carreteres, pistes, camins i senyals d\'orientació).
|
||||
\n
|
||||
\nTambé es discrimina amb nitidesa tots els tipus de carreteres pel codi de colors, la qual cosa és molt útil, per exemple, conduint vehicles pesats.
|
||||
\n
|
||||
\nNo cal baixar un mapa específic, aquesta vista es crea amb els nostres mapes estàndards.
|
||||
\n
|
||||
\nAquesta vista es pot desfer tornant a fer la mateixa selecció, o en canviar l\'«Estil del mapa» de «Configuració del mapa» a la vista que es desitgi. "</string>
|
||||
\nI ofereix opcions de viatge concretes com representar les rutes ciclistes o d\'alpinisme a la muntanya.
|
||||
\n
|
||||
\nNo cal baixar un mapa específic, aquesta vista es crea amb els nostres mapes estàndards.
|
||||
\n
|
||||
\nAquesta vista es pot desfer tornant a fer la mateixa selecció, o en canviar l\'«Estil del mapa» de «Configuració del mapa» a la vista que es desitgi.</string>
|
||||
<string name="osmo_grop_name_length_alert">El nom de grup ha de tenir una mida mínima de 3 caràcters!</string>
|
||||
<string name="local_osm_changes_upload_all_confirm">"Esteu a punt de pujar %1$d modificacio(ns) a OSM. N\'esteu segur?"</string>
|
||||
<string name="confirmation_to_clear_history">Voleu esborrar l\'històric?</string>
|
||||
|
|
|
@ -2969,4 +2969,5 @@ Tidligere destination bliver sidste mellemliggende punkt.</string>
|
|||
<string name="shared_string_reload">Genindlæs</string>
|
||||
<string name="mapillary_menu_descr_tile_cache">Genindlæs kortbrikker for at se opdaterede data.</string>
|
||||
<string name="mapillary_menu_title_tile_cache">Kortbrik-cache</string>
|
||||
<string name="shared_string_reset">Nulstil</string>
|
||||
</resources>
|
||||
|
|
|
@ -2848,4 +2848,5 @@ Indikas lokon: %1$s x %2$s"</string>
|
|||
<string name="mapillary_menu_descr_username">Vidi bildojn aldonitajn de iu uzanto.</string>
|
||||
<string name="mapillary_menu_title_username">Uzantnomo</string>
|
||||
<string name="mapillary_menu_filter_description">Vi povas filtri bildojn laŭ alŝutinto aŭ laŭ dato. Filtriloj aplikiĝas nur je pligrandigo.</string>
|
||||
<string name="shared_string_reset">Reagordi</string>
|
||||
</resources>
|
||||
|
|
|
@ -2821,7 +2821,7 @@ Representa el área: %1$s x %2$s</string>
|
|||
<string name="search_favorites">Buscar favoritos</string>
|
||||
<string name="restart_search">Reiniciar búsqueda</string>
|
||||
<string name="increase_search_radius">Aumentar radio de búsqueda</string>
|
||||
<string name="nothing_found">Nada encontrado :(</string>
|
||||
<string name="nothing_found">¡Nada por aquí! 😞</string>
|
||||
<string name="nothing_found_descr">Modifica la consulta de búsqueda o aumenta el radio de búsqueda</string>
|
||||
<string name="private_access_routing_req">El destino se ubica en un área de acceso privado. ¿Quieres acceder en este viaje a los caminos privados?</string>
|
||||
<string name="mapillary">Mapillary</string>
|
||||
|
@ -2857,4 +2857,5 @@ Representa el área: %1$s x %2$s</string>
|
|||
<string name="shared_string_reload">Recargar</string>
|
||||
<string name="mapillary_menu_descr_tile_cache">Recarga las teselas para ver la información actualizada.</string>
|
||||
<string name="mapillary_menu_title_tile_cache">Caché de teselas</string>
|
||||
<string name="shared_string_reset">Restablecer</string>
|
||||
</resources>
|
||||
|
|
|
@ -132,7 +132,7 @@
|
|||
<string name="poi_route_light_rail_ref">Smálest</string>
|
||||
<string name="poi_clothes_schoolwear">Skólaföt</string>
|
||||
<string name="poi_social_facility_shelter">Skýli</string>
|
||||
<string name="poi_social_facility_for_disabled">Óvirkt</string>
|
||||
<string name="poi_social_facility_for_disabled">Fatlaðir</string>
|
||||
<string name="poi_site_type_city">Borg</string>
|
||||
<string name="poi_fire_hydrant_style_water_source_stream">Lækur</string>
|
||||
<string name="poi_aerodrome_type_public">Opinbert</string>
|
||||
|
@ -1519,7 +1519,7 @@
|
|||
<string name="poi_theatre_genre_shadow_play">Skuggaleikhús</string>
|
||||
|
||||
<string name="poi_bandstand">Hljómsveitarpallur</string>
|
||||
<string name="poi_historic_civilization_byzantine">Menning: byzantínsk (285 e.Kr. – 1453 e.Kr.)</string>
|
||||
<string name="poi_historic_civilization_byzantine">Menning: býsantínsk (285 e.Kr. – 1453 e.Kr.)</string>
|
||||
<string name="poi_historic_civilization_mycenaean">Menning: mýkenönsk</string>
|
||||
<string name="poi_animal_training">Dýraþjálfun</string>
|
||||
<string name="poi_historic_period_stone_bronze_undetermined">Sögutími: steinöld / bronsöld (óráðið)</string>
|
||||
|
@ -2447,4 +2447,125 @@
|
|||
<string name="poi_vending_public_transport_plans">Kort yfir almenningssamgöngur</string>
|
||||
<string name="poi_vending_drinks_sweets">Drykkir og sælgæti</string>
|
||||
<string name="poi_memorial_cross">Krosslaga</string>
|
||||
<string name="poi_branch">Útibú</string>
|
||||
|
||||
<string name="poi_memorial_stele">Staur</string>
|
||||
<string name="poi_memorial_koshinto">Koshinto</string>
|
||||
<string name="poi_memorial_blue_plaque">Blár skjöldur</string>
|
||||
<string name="poi_memorial_jizo">Jizo</string>
|
||||
<string name="poi_memorial_stolperstein">Götusteinn</string>
|
||||
<string name="poi_memorial_stupa">Stupa</string>
|
||||
<string name="poi_memorial_prasat">Prasat</string>
|
||||
<string name="poi_memorial_fassade_decoration">Veggskreyting</string>
|
||||
|
||||
<string name="poi_historic_quarry">Söguleg grjótnáma</string>
|
||||
|
||||
<string name="poi_resource_aggregate">Malarblanda</string>
|
||||
<string name="poi_resource_antimony">Antímon</string>
|
||||
<string name="poi_resource_beryl">Berýl</string>
|
||||
<string name="poi_resource_chromite">Krómít</string>
|
||||
<string name="poi_resource_dimension_stone">Byggingasteinn</string>
|
||||
<string name="poi_resource_lignite">Brúnkol</string>
|
||||
<string name="poi_resource_mica">Glimmer</string>
|
||||
<string name="poi_resource_mineral_oil">Steinefnaolía</string>
|
||||
<string name="poi_resource_peat">Mór</string>
|
||||
<string name="poi_resource_rutile">Títansandur</string>
|
||||
<string name="poi_resource_slate_iron_ore_copper">Steinþynnur;járngrýti;kopar</string>
|
||||
<string name="poi_resource_slate">Þynnur</string>
|
||||
<string name="poi_resource_zircon">Zirkon</string>
|
||||
|
||||
<string name="poi_wetland_wet_meadow">Engi</string>
|
||||
<string name="poi_beach_shingle">Möl</string>
|
||||
<string name="poi_beach_rocky">Klettótt</string>
|
||||
|
||||
<string name="poi_chimney">Skorsteinn</string>
|
||||
<string name="poi_bench_no">Án bekkja</string>
|
||||
<string name="poi_bin_yes">Með ruslafötu</string>
|
||||
<string name="poi_bin_no">Án ruslafötu</string>
|
||||
|
||||
<string name="poi_shelter_type_picnic_shelter">Nestisaðstaða</string>
|
||||
<string name="poi_shelter_type_lean_to">Setskýli</string>
|
||||
<string name="poi_shelter_type_basic_hut">Einfaldur kofi</string>
|
||||
<string name="poi_shelter_type_wildlife_hide">Dýraskoðunarskýli</string>
|
||||
<string name="poi_shelter_type_rock_shelter">Skýli í klettaskúta</string>
|
||||
<string name="poi_shelter_type_field_shelter">Skýli fyrir búpening</string>
|
||||
<string name="poi_shelter_type_tent">Gerð skýlis: tjald</string>
|
||||
<string name="poi_shelter_type_abandoned">Gerð skýlis: yfirgefið</string>
|
||||
|
||||
<string name="poi_artwork_type_stele">Tegund listaverks: staur</string>
|
||||
<string name="poi_architecture_constructivism">Byggingastíll: konstrúktívismi</string>
|
||||
<string name="poi_architecture_timber_frame">Byggingastíll: bindingsverk</string>
|
||||
<string name="poi_architecture_oldrussian">Byggingastíll: fornrússneskur</string>
|
||||
<string name="poi_architecture_postconstructivism">Byggingastíll: póstkonstrúktívismi</string>
|
||||
<string name="poi_tunnel_waterway">Vatnsgöng</string>
|
||||
<string name="poi_tunnel_car">Vegagöng</string>
|
||||
<string name="poi_tunnel_pedestrian">Göng fyrir fótgangandi</string>
|
||||
<string name="poi_bridge_car">Vegabrú</string>
|
||||
<string name="poi_bridge_waterway">Bátabrú</string>
|
||||
<string name="poi_lit_yes">Upplýst: já</string>
|
||||
<string name="poi_lit_no">Upplýst: nei</string>
|
||||
|
||||
<string name="poi_surface_sett">Yfirborð: steinlagt</string>
|
||||
<string name="poi_surface_cobblestone">Yfirborð: götusteinar</string>
|
||||
<string name="poi_surface_paving_stones">Yfirborð: hellusteinar</string>
|
||||
<string name="poi_surface_grass_paver">Yfirborð: grassteinar</string>
|
||||
<string name="poi_surface_ground">Yfirborð: jarðvegur</string>
|
||||
<string name="poi_surface_dirt">Yfirborð: mold</string>
|
||||
<string name="poi_service_bicycle_second_hand_yes">Sala á notuðum reiðhjólum</string>
|
||||
<string name="poi_service_bicycle_second_hand_no">Sala á notuðum reiðhjólum: nei</string>
|
||||
<string name="poi_bicycle_repair_station">Stöð til að gera sjálf við reiðhjól</string>
|
||||
|
||||
<string name="poi_note">Athugasemd</string>
|
||||
<string name="poi_model_aerodrome">Módelflugsvæði</string>
|
||||
<string name="poi_historic_milestone">Sögulegur kílómetrasteinn</string>
|
||||
|
||||
<string name="poi_historic_manor">Sögulegur herragarður</string>
|
||||
<string name="poi_castle_type_stately">Tegund kastala: bústaður</string>
|
||||
<string name="poi_castle_type_defensive">Tegund kastala: varnarvirki</string>
|
||||
<string name="poi_castle_type_fortress">Tegund kastala: virki</string>
|
||||
<string name="poi_castle_type_palace">Tegund kastala: höll</string>
|
||||
<string name="poi_castle_type_kremlin">Tegund kastala: rússneskur (kreml)</string>
|
||||
<string name="poi_castle_type_defensive_stately">Tegund kastala: varnarvirki, bústaður</string>
|
||||
<string name="poi_castle_type_castrum">Tegund kastala: rómverskur (castrum)</string>
|
||||
<string name="poi_castle_type_shiro">Tegund kastala: japanskur (shiro)</string>
|
||||
|
||||
<string name="poi_social_facility_group_home">Sambýli</string>
|
||||
<string name="poi_social_facility_assisted_living">Búseta með stuðningi</string>
|
||||
<string name="poi_social_facility_outreach">Útbreiðsla</string>
|
||||
<string name="poi_social_facility_food_bank">Matarbanki</string>
|
||||
<string name="poi_social_facility_ambulatory_care">Heimahlynning</string>
|
||||
<string name="poi_social_facility_for_senior">Aldraðir</string>
|
||||
<string name="poi_social_facility_for_child">Börn</string>
|
||||
<string name="poi_social_facility_for_orphan">Munaðarleysingjar</string>
|
||||
<string name="poi_social_facility_for_mental_health">Sjúklingar með geðrænar truflanir</string>
|
||||
<string name="poi_social_facility_for_juvenile">Ungmenni</string>
|
||||
<string name="poi_social_facility_for_homeless">Heimilislausir</string>
|
||||
<string name="poi_social_facility_for_migrant">Farandfólk</string>
|
||||
<string name="poi_social_facility_for_underprivileged">Bágstaddir</string>
|
||||
<string name="poi_social_facility_for_drug_addicted">Eiturlyfjafíklar</string>
|
||||
<string name="poi_social_facility_for_unemployed">Atvinnulausir</string>
|
||||
<string name="poi_social_facility_for_diseased">Sjúkir</string>
|
||||
<string name="poi_social_facility_for_child_juvenile">Börn: ungmenni</string>
|
||||
|
||||
<string name="poi_historic_civilization_nuragic">Menning: núrísk (18. öld f. Kr – 2. öld e.Kr.)</string>
|
||||
<string name="poi_historic_civilization_imperial_chinese">Menning: kínverska keisaraveldið (221 f. Kr – 1911 e. Kr)</string>
|
||||
<string name="poi_historic_civilization_greek_egyptian">Menning: grísk-egypsk (332-30 f.Kr)</string>
|
||||
<string name="poi_historic_civilization_roman_and_byzantine_egyptian">Menning: rómversk- og býsantísk-egypsk</string>
|
||||
<string name="poi_historic_period_nuragic">Sögutími: núrískur</string>
|
||||
<string name="poi_boat_storage">Bátageymsla</string>
|
||||
|
||||
<string name="poi_health_specialty_general_yes">Almennar heimilislækningar</string>
|
||||
<string name="poi_health_specialty_ophthalmology_yes">Augnlækningar</string>
|
||||
<string name="poi_health_specialty_paediatrics_yes">Barnalækningar</string>
|
||||
<string name="poi_health_specialty_dermatology_yes">Húðlækningar</string>
|
||||
<string name="poi_health_specialty_urology_yes">Þvagfæralækningar</string>
|
||||
<string name="poi_health_specialty_surgery_yes">Almennar skurðlækningar</string>
|
||||
<string name="poi_health_specialty_radiology_yes">Geislalækninar</string>
|
||||
<string name="poi_health_specialty_psychiatry_yes">Geðlækningar</string>
|
||||
<string name="poi_health_specialty_neurology_yes">Taugalækningar</string>
|
||||
<string name="poi_health_specialty_cardiology_yes">Hjartalækningar</string>
|
||||
<string name="poi_health_specialty_trauma_yes">Áfallalækningar</string>
|
||||
<string name="poi_health_specialty_anaesthetics_yes">Svæfingalækningar</string>
|
||||
<string name="poi_health_specialty_dentistry_yes">Tannlækningar</string>
|
||||
<string name="poi_health_specialty_reiki_yes">Reiki</string>
|
||||
</resources>
|
||||
|
|
|
@ -1433,7 +1433,7 @@ og leiðsögn</string>
|
|||
<string name="use_english_names_descr">Veldu á milli staðarheita og enskra heita</string>
|
||||
<string name="map_tile_source_descr">Veldu uppruna nettengdra korta eða kortatígla í biðminni</string>
|
||||
<string name="save_track_min_speed">Lágmarkshraði skráningar</string>
|
||||
<string name="save_track_min_distance">Hreyfiskynjun skráningar</string>
|
||||
<string name="save_track_min_distance">Skráning minnstu hreyfingar</string>
|
||||
<string name="save_track_precision">Lágmarksnákvæmni skráningar</string>
|
||||
<string name="christmas_poi">Jólastaðir</string>
|
||||
<string name="search_hint">Settu inn borg, heimilisfang, merkisstað</string>
|
||||
|
@ -2222,4 +2222,16 @@ Stendur fyrir svæði: %1$s x %2$s</string>
|
|||
<string name="distance_moving">Leiðrétt fjarlægð</string>
|
||||
<string name="improve_coverage_mapillary">Bæta ljósmyndaþekju með Mapillary</string>
|
||||
<string name="hide_from_zoom_level">Fela í aðdráttarstigi</string>
|
||||
<string name="shared_string_reload">Endurnýja</string>
|
||||
<string name="mapillary_menu_descr_tile_cache">Endurlesa kortaflísar til að sjá uppfærð gögn.</string>
|
||||
<string name="mapillary_menu_title_tile_cache">Tiglaskyndiminni</string>
|
||||
<string name="wrong_user_name">Rangt notandanafn!</string>
|
||||
<string name="shared_string_to">Til</string>
|
||||
<string name="mapillary_menu_date_from">Frá</string>
|
||||
<string name="mapillary_menu_descr_dates">Skoða myndir sem bætt hefur verið inn á tilteknu tímabili.</string>
|
||||
<string name="mapillary_menu_title_dates">Dagsetningar</string>
|
||||
<string name="mapillary_menu_edit_text_hint">Settu inn nafn á notanda</string>
|
||||
<string name="mapillary_menu_descr_username">Skoða myndir sem tiltekinn notandi hefur bætt við.</string>
|
||||
<string name="mapillary_menu_title_username">Notandanafn</string>
|
||||
<string name="mapillary_menu_filter_description">Þú getur síað myndir eftir sendanda eða dagsetningu. Síum er aðeins beitt í miklum aðdrætti.</string>
|
||||
</resources>
|
||||
|
|
|
@ -1610,7 +1610,7 @@
|
|||
<string name="poi_historic_period_first_intermediate_period">Історичний період: перший перехідний період (2181 - 2055 р. до н.е.)</string>
|
||||
<string name="poi_piste_difficulty_advanced">Для просунутих</string>
|
||||
<string name="poi_historic_period_second_intermediate_period">Історичний період: другий перехідний період (1650 - 1550 р. до н.е.)</string>
|
||||
<string name="poi_historic_period_third_intermediate_period">"Історичний період: третій перехідний період (1069 - 664 до н.е.) "</string>
|
||||
<string name="poi_historic_period_third_intermediate_period">Історичний період: третій перехідний період (1069 – 664 до н.е.)</string>
|
||||
<string name="poi_piste_difficulty_novice">Для новачків</string>
|
||||
<string name="poi_piste_difficulty_expert">Експерт</string>
|
||||
<string name="poi_historic_period_first_persian_period">Історичний період: перший перський період</string>
|
||||
|
@ -2567,7 +2567,7 @@
|
|||
<string name="poi_min_age">Мінімальний вік</string>
|
||||
|
||||
<string name="poi_cuisine_brasserie">Брассери (стейк і чіпси)</string>
|
||||
<string name="poi_payment_pro100_yes">"ПРО100 "</string>
|
||||
<string name="poi_payment_pro100_yes">ПРО100</string>
|
||||
<string name="poi_vending_excrement_bags">Пакети для екскрементів тварин</string>
|
||||
<string name="poi_wetland_wet_meadow">Заболочений луг</string>
|
||||
<string name="poi_industrial_oil">Тип: нафтова промисловість</string>
|
||||
|
|
|
@ -73,7 +73,7 @@
|
|||
<string name="gpx_visibility_txt">Видимість</string>
|
||||
<string name="gpx_tags_txt">Теги</string>
|
||||
<string name="gpx_description_txt">Опис</string>
|
||||
<string name="validate_gpx_upload_name_pwd">Будь ласка, вкажіть ім’я користувача і пароль в OSM для завантаження GPX файлів в OSM.</string>
|
||||
<string name="validate_gpx_upload_name_pwd">Будь ласка, вкажіть ім’я користувача і пароль в OSM для вивантаження GPX-файлів в OSM.</string>
|
||||
<string name="default_buttons_support">Підтримка</string>
|
||||
<string name="support_new_features">Підтримати розробку нових функцій</string>
|
||||
<string name="show_ruler_level">Відображати масштаб</string>
|
||||
|
@ -136,12 +136,12 @@
|
|||
<string name="offline_edition">Оффлайн редагування</string>
|
||||
<string name="offline_edition_descr">Завжди використовувати оффлайн редагування</string>
|
||||
<string name="update_poi_does_not_change_indexes">Змінення POI в застосунку не впливають на POI завантажені з інтернету, всі зміни записуються в локальний файл.</string>
|
||||
<string name="local_openstreetmap_uploading">Завантаження …</string>
|
||||
<string name="local_openstreetmap_were_uploaded">{0} POI/Нотатки завантажено в OpenStreetMap</string>
|
||||
<string name="local_openstreetmap_uploadall">Завантажити все</string>
|
||||
<string name="local_openstreetmap_uploading">Вивантаження …</string>
|
||||
<string name="local_openstreetmap_were_uploaded">{0} POI/нотатки вивантажено у OpenStreetMap</string>
|
||||
<string name="local_openstreetmap_uploadall">Вивантажити усе</string>
|
||||
|
||||
|
||||
<string name="local_openstreetmap_upload">Завантажити зміни в OSM</string>
|
||||
<string name="local_openstreetmap_upload">Вивантажити зміни в OSM</string>
|
||||
<string name="local_openstreetmap_delete">Вилучити створені</string>
|
||||
<string name="local_openstreetmap_descr_title">Асинхронне редагування OSM:</string>
|
||||
<string name="local_openstreetmap_settings">Локально збережені POI/Нотатки</string>
|
||||
|
@ -259,8 +259,8 @@
|
|||
<string name="file_with_name_already_exist">Файл з таким ім’ям вже існує.</string>
|
||||
<string name="shared_string_save">Зберегти</string>
|
||||
|
||||
<string name="local_index_upload_gpx_description">Відіслати GPX файли на OSM сервер. Вони будуть використані для покращення мап і завантажені на osm.org.</string>
|
||||
<string name="local_index_items_uploaded">%1$d з %2$d об’єктів успішно завантажено.</string>
|
||||
<string name="local_index_upload_gpx_description">Вивантажити GPX-файли на сервер OSM. Вони будуть використані для покращення мап.</string>
|
||||
<string name="local_index_items_uploaded">%1$d з %2$d об’єктів успішно вивантажено.</string>
|
||||
<string name="local_index_mi_upload_gpx">Відправити в OSM</string>
|
||||
<string name="show_more_map_detail">Показати більше деталей</string>
|
||||
<string name="show_more_map_detail_descr">Відображати деталі (дороги та інше) починаючи з малого масштабу</string>
|
||||
|
@ -606,8 +606,8 @@
|
|||
<string name="favorite">Закладки</string>
|
||||
<string name="shared_string_clear_all">Очистити все</string>
|
||||
<string name="shared_string_history">Історія</string>
|
||||
<string name="uploading_data">Завантаження даних…</string>
|
||||
<string name="uploading">Завантаження…</string>
|
||||
<string name="uploading_data">Вивантаження даних…</string>
|
||||
<string name="uploading">Вивантаження…</string>
|
||||
<string name="search_nothing_found">Нічого не знайдено</string>
|
||||
<string name="searching">Пошук…</string>
|
||||
<string name="searching_address">Пошук адреси…</string>
|
||||
|
@ -1593,10 +1593,10 @@ OsmAnd має відкриті сирці і активно розвиваєть
|
|||
<string name="osmo_settings_debug">Інформація для відлагодження</string>
|
||||
<string name="osmo_settings_descr">Налаштування параметрів моніторингу та встановлення персонального каналу моніторингу</string>
|
||||
<string name="osmo_settings">OsMo</string>
|
||||
<string name="osmo_plugin_description">Цей втулок частково надає можливості OpenStreetMap Monitoring, дивіться https://osmo.mobi
|
||||
\n
|
||||
\nВи можете відстежувати пристрої учасників з вашої групи в поточному часі. Також, ви можете бачити точки та треки завантажені в групу, до якої ви належите.
|
||||
\n
|
||||
<string name="osmo_plugin_description">Цей втулок частково надає можливості OpenStreetMap Monitoring, дивіться https://osmo.mobi
|
||||
\n
|
||||
\nВи можете відстежувати пристрої учасників з вашої групи в поточному часі. Також, ви можете бачити точки та треки вивантажені в групу, до якої ви належите.
|
||||
\n
|
||||
\nГрупи, що не були вилучені впродовж місяців, повинні привести свій стан у відповідність до груп створених на сайті OsMo.mobi</string>
|
||||
<string name="osmo_plugin_name">OpenStreetMap моніторинг</string>
|
||||
<string name="always_center_position_on_map">Показувати положення завжди в центрі</string>
|
||||
|
@ -1974,7 +1974,7 @@ OsmAnd має відкриті сирці і активно розвиваєть
|
|||
<string name="back_to_map">Повернутись до мапи</string>
|
||||
<string name="location_on_map">Координати:↵\n Шир %1$s↵\n Дов %2$s</string>
|
||||
<string name="shared_string_release">Дата випуску</string>
|
||||
<string name="local_osm_changes_upload_all_confirm">Ви збираєтесь надіслати %1$d змін до OSM. Ви впевнені?</string>
|
||||
<string name="local_osm_changes_upload_all_confirm">Ви збираєтесь вивантажити %1$d змін до OSM. Ви впевнені?</string>
|
||||
<string name="confirmation_to_clear_history">Бажаєте очистити історію?</string>
|
||||
<string name="delay_to_start_navigation_descr">Вкажіть час очікування для перебування на екрані планування маршруту</string>
|
||||
<string name="shared_string_is_open">Відкрито</string>
|
||||
|
@ -2214,7 +2214,7 @@ OsmAnd має відкриті сирці і активно розвиваєть
|
|||
<string name="rate_this_app">Оцінити цей додаток</string>
|
||||
<string name="rate_this_app_long">Будь ласка, дайте оцінку OsmAnd на Google Play</string>
|
||||
<string name="user_hates_app_get_feedback">Розкажіть нам, чому.</string>
|
||||
<string name="failed_to_upload">Не вдалося завантажити</string>
|
||||
<string name="failed_to_upload">Не вдалося вивантажити</string>
|
||||
<string name="delete_change">Видалити зміни</string>
|
||||
<string name="successfully_uploaded_pattern">Успішно вивантажено {0}/{1}</string>
|
||||
<string name="try_again">Спробуйте ще раз</string>
|
||||
|
@ -2312,7 +2312,7 @@ OsmAnd має відкриті сирці і активно розвиваєть
|
|||
<string name="select_voice_provider_descr">Виберіть або завантажте голосові вказівки для вашої мови</string>
|
||||
<string name="impassable_road_desc">Виберіть дороги, яких ви бажаєте уникати під час навігації</string>
|
||||
<string name="shared_string_sound">Звук</string>
|
||||
<string name="poi_deleted_localy">POI буде видалено після того, як ви завантажите ваші зміни</string>
|
||||
<string name="poi_deleted_localy">POI буде вилучено після того, як ви вивантажите ваші зміни</string>
|
||||
<string name="confirm_download_roadmaps">Ви впевнені, що бажаєте завантажити мапу з дорогами, хоча ви вже маєете стандартну (повну) мапу?</string>
|
||||
<string name="missing_write_external_storage_permission">Додаток не має дозволу для запису на SD-карту</string>
|
||||
<string name="last_update">Останнє оновлення: %s</string>
|
||||
|
@ -2535,8 +2535,8 @@ Facebook: https://www.facebook.com/osmandapp
|
|||
Частина від передплати спрямовується до спільноти OSM та виплачується кожному маперу за його внесок.
|
||||
Якщо вам подобається OsmAnd та OSM, ви можете у такий спосіб підтримати їх.</string>
|
||||
|
||||
<string name="upload_osm_note_description">Ви можете додати Нотатку в OSM анонімно, або скориставшись вашим обліковим записом на OpenStreetMap.org.</string>
|
||||
<string name="upload_osm_note">Надіслати Нотатку OSM</string>
|
||||
<string name="upload_osm_note_description">Ви можете додати нотатку в OSM анонімно, або скориставшись вашим обліковим записом на OpenStreetMap.org.</string>
|
||||
<string name="upload_osm_note">Надіслати нотатку в OSM</string>
|
||||
<string name="file_name_containes_illegal_char">Назва файлу містить неприпустимі символи</string>
|
||||
<string name="follow_us">Слідуйте за нами</string>
|
||||
<string name="access_direction_audio_feedback">Звукова ідентифікація напрямку</string>
|
||||
|
@ -2604,7 +2604,7 @@ Facebook: https://www.facebook.com/osmandapp
|
|||
<string name="rendering_attr_contourColorScheme_description">Колірна схема горизонталей</string>
|
||||
<string name="save_track_min_speed">Мінімальна швидкість для запису</string>
|
||||
<string name="save_track_min_speed_descr">Виберіть мінімальну швидкість, при перевищенні якої точка буде записана в трек</string>
|
||||
<string name="save_track_min_distance">Мінімальна дистанція для запису</string>
|
||||
<string name="save_track_min_distance">Мінімальне зміщення для запису</string>
|
||||
<string name="save_track_min_distance_descr">Виберіть відстань, при перевищенні якого точка буде записана в трек</string>
|
||||
<string name="save_track_precision">Мінімальна точність запису</string>
|
||||
<string name="save_track_precision_descr">Виберіть мінімально допустиму точність для точки, щоб бути зажурнальованою</string>
|
||||
|
@ -3095,4 +3095,16 @@ Facebook: https://www.facebook.com/osmandapp
|
|||
<string name="import_gpx_failed_descr">OsmAnd не може імпортувати файл. Будь ласка, перевірте, чи OsmAnd має дозвіл на читання файлу з його місця розташування.</string>
|
||||
<string name="map_widget_ruler_control_first_mode">Двоточкова лінійка</string>
|
||||
<string name="map_widget_ruler_control_second_mode">Радіусна лінійка</string>
|
||||
<string name="shared_string_reload">Перезавантажити</string>
|
||||
<string name="mapillary_menu_descr_tile_cache">Перезавантажити тайли, щоб переглянути актуальні дані.</string>
|
||||
<string name="mapillary_menu_title_tile_cache">Тайловий кеш</string>
|
||||
<string name="wrong_user_name">Невірне ім\'я користувача!</string>
|
||||
<string name="shared_string_to">до</string>
|
||||
<string name="mapillary_menu_date_from">від</string>
|
||||
<string name="mapillary_menu_descr_dates">Переглядайте зображення, додані за певний період.</string>
|
||||
<string name="mapillary_menu_title_dates">Дати</string>
|
||||
<string name="mapillary_menu_edit_text_hint">Введіть ім\'я користувача</string>
|
||||
<string name="mapillary_menu_descr_username">Переглянути зображення, додані певним користувачем.</string>
|
||||
<string name="mapillary_menu_title_username">Ім\'я користувача</string>
|
||||
<string name="mapillary_menu_filter_description">Ви можете відфільтрувати зображення за подавачем чи за датою. Фільтри застосовуються лише для масштабування крупним планом.</string>
|
||||
</resources>
|
||||
|
|
|
@ -3266,4 +3266,119 @@
|
|||
<string name="poi_cuisine_gyros">希臘旋轉烤肉</string>
|
||||
<string name="poi_cuisine_empanada">拉丁餡餅</string>
|
||||
<string name="poi_cuisine_crepes">可麗餅</string>
|
||||
<string name="poi_cuisine_yakiniku">烤肉</string>
|
||||
<string name="poi_cuisine_suki">泰式火鍋</string>
|
||||
<string name="poi_cuisine_udon">烏龍麵</string>
|
||||
<string name="poi_cuisine_brasserie">啤酒店</string>
|
||||
<string name="poi_cuisine_bubble_tea">珍珠奶茶</string>
|
||||
<string name="poi_cuisine_yakitori">日式烤雞肉串</string>
|
||||
<string name="poi_cuisine_sagardotegia">蘋果酒</string>
|
||||
<string name="poi_cuisine_meat">肉類食物</string>
|
||||
<string name="poi_cuisine_wings">雞翅膀</string>
|
||||
<string name="poi_cuisine_waffle">格子鬆餅</string>
|
||||
<string name="poi_cuisine_chocolate">巧克力</string>
|
||||
<string name="poi_cuisine_wine">葡萄酒</string>
|
||||
<string name="poi_cuisine_potato">馬鈴薯</string>
|
||||
<string name="poi_cuisine_brunch">早午餐</string>
|
||||
<string name="poi_cuisine_sub">潛艇三明治</string>
|
||||
<string name="poi_cuisine_pita">口袋餅</string>
|
||||
<string name="poi_cuisine_pastel">葡式蛋塔</string>
|
||||
<string name="poi_cuisine_burrito">墨西哥捲餅</string>
|
||||
<string name="poi_cuisine_teriyaki">照燒</string>
|
||||
<string name="poi_cuisine_shawarma">沙威瑪</string>
|
||||
|
||||
<string name="poi_cuisine_regional">區域性的</string>
|
||||
<string name="poi_cuisine_italian">意大利料理</string>
|
||||
<string name="poi_cuisine_chinese">中式料理</string>
|
||||
<string name="poi_cuisine_mexican">墨西哥料理</string>
|
||||
<string name="poi_cuisine_japanese">日本料理</string>
|
||||
<string name="poi_cuisine_german">德國料理</string>
|
||||
<string name="poi_cuisine_indian">印度料理</string>
|
||||
<string name="poi_cuisine_american">美式料理</string>
|
||||
<string name="poi_cuisine_asian">亞洲料理</string>
|
||||
<string name="poi_cuisine_french">法式料理</string>
|
||||
<string name="poi_cuisine_greek">希臘料理</string>
|
||||
<string name="poi_cuisine_thai">泰式料理</string>
|
||||
<string name="poi_cuisine_international">多國式料理</string>
|
||||
<string name="poi_cuisine_turkish">土耳其料理</string>
|
||||
<string name="poi_cuisine_spanish">西班牙料理</string>
|
||||
<string name="poi_cuisine_vietnamese">越南料理</string>
|
||||
<string name="poi_cuisine_korean">韓國料理</string>
|
||||
<string name="poi_cuisine_mediterranean">地中海料理</string>
|
||||
<string name="poi_cuisine_bavarian">巴伐利亞料理</string>
|
||||
<string name="poi_cuisine_lebanese">黎巴嫩料理</string>
|
||||
<string name="poi_cuisine_russian">俄式料理</string>
|
||||
<string name="poi_cuisine_filipino">菲律賓料理</string>
|
||||
<string name="poi_cuisine_portuguese">葡萄牙料理</string>
|
||||
<string name="poi_cuisine_georgian">喬治亞料理</string>
|
||||
<string name="poi_cuisine_polish">波蘭料理</string>
|
||||
<string name="poi_cuisine_brazilian">巴西料理</string>
|
||||
<string name="poi_cuisine_arab">阿拉伯料理</string>
|
||||
<string name="poi_cuisine_danish">丹麥料理</string>
|
||||
<string name="poi_cuisine_indonesian">印尼料理</string>
|
||||
<string name="poi_cuisine_african">非洲料理</string>
|
||||
<string name="poi_cuisine_caribbean">加勒比海料理</string>
|
||||
<string name="poi_cuisine_argentinian">阿根廷料理</string>
|
||||
<string name="poi_cuisine_balkan">巴爾幹料理</string>
|
||||
<string name="poi_cuisine_peruvian">秘魯料理</string>
|
||||
<string name="poi_cuisine_croatian">克羅埃西亞料理</string>
|
||||
<string name="poi_cuisine_bolivian">玻利維亞料理</string>
|
||||
<string name="poi_cuisine_malagasy">馬拉加斯料理</string>
|
||||
<string name="poi_cuisine_persian">波斯料理</string>
|
||||
<string name="poi_cuisine_moroccan">摩洛哥料理</string>
|
||||
<string name="poi_cuisine_austrian">奧地利料理</string>
|
||||
<string name="poi_cuisine_malaysian">馬來西亞料理</string>
|
||||
<string name="poi_cuisine_irish">愛爾蘭料理</string>
|
||||
<string name="poi_cuisine_buschenschank">餐酒吧</string>
|
||||
<string name="poi_cuisine_ethiopian">衣索比亞料理</string>
|
||||
<string name="poi_cuisine_hungarian">匈牙利料理</string>
|
||||
<string name="poi_cuisine_lao">寮國料理</string>
|
||||
<string name="poi_cuisine_european">歐洲料理</string>
|
||||
<string name="poi_cuisine_uzbek">烏玆別克料理</string>
|
||||
<string name="poi_cuisine_czech">捷克料理</string>
|
||||
<string name="poi_cuisine_cuban">古巴料理</string>
|
||||
<string name="poi_cuisine_british">英國料理</string>
|
||||
<string name="poi_cuisine_latin_american">拉丁美洲料理</string>
|
||||
<string name="poi_cuisine_nepalese">尼泊爾料理</string>
|
||||
<string name="poi_cuisine_mongolian">蒙古料理</string>
|
||||
<string name="poi_cuisine_middle_eastern">中東料理</string>
|
||||
<string name="poi_cuisine_ukrainian">烏克蘭料理</string>
|
||||
<string name="poi_cuisine_afghan">阿富汗料理</string>
|
||||
<string name="poi_cuisine_belgian">比利時料理</string>
|
||||
<string name="poi_cuisine_basque">巴斯克料理</string>
|
||||
<string name="poi_cuisine_swiss">瑞士料理</string>
|
||||
<string name="poi_cuisine_cantonese">廣式料理</string>
|
||||
<string name="poi_cuisine_swedish">瑞典料理</string>
|
||||
<string name="poi_cuisine_jamaican">牙買加料理</string>
|
||||
<string name="poi_cuisine_armenian">亞美尼亞料理</string>
|
||||
<string name="poi_cuisine_hawaiian">夏威夷料理</string>
|
||||
<string name="poi_cuisine_pakistani">巴基斯坦料理</string>
|
||||
<string name="poi_cuisine_taiwanese">臺灣料理</string>
|
||||
<string name="poi_cuisine_english">英格蘭料理</string>
|
||||
<string name="poi_cuisine_tex_mex">德-墨料理</string>
|
||||
<string name="poi_cuisine_dutch">荷蘭料理</string>
|
||||
<string name="poi_cuisine_syrian">敘利亞料理</string>
|
||||
<string name="poi_cuisine_australian">澳洲料理</string>
|
||||
<string name="poi_cuisine_cajun">卡郡料理</string>
|
||||
<string name="poi_cuisine_egyptian">埃及料理</string>
|
||||
<string name="poi_cuisine_senegalese">塞內加爾料理</string>
|
||||
<string name="poi_cuisine_jewish">猶太料理</string>
|
||||
<string name="poi_cuisine_bulgarian">保加利亞料理</string>
|
||||
<string name="poi_cuisine_tibetan">西藏料理</string>
|
||||
|
||||
<string name="poi_party">派對用品</string>
|
||||
<string name="poi_electrical">電器產品店</string>
|
||||
<string name="poi_locksmith">鎖匠店</string>
|
||||
<string name="poi_lighting">照明燈具</string>
|
||||
<string name="poi_lottery">樂透彩票</string>
|
||||
<string name="poi_gambling">賭博場地</string>
|
||||
|
||||
<string name="poi_gambling_lottery">樂透</string>
|
||||
<string name="poi_gambling_pachinko">小鋼珠</string>
|
||||
<string name="poi_gambling_slot_machines">吃角子老虎</string>
|
||||
<string name="poi_gambling_betting">投注</string>
|
||||
<string name="poi_gambling_bingo">賓果</string>
|
||||
|
||||
<string name="poi_locomotive">鐵路機車</string>
|
||||
|
||||
</resources>
|
||||
|
|
|
@ -2882,4 +2882,5 @@ Facebook:https://www.facebook.com/osmandapp
|
|||
<string name="shared_string_reload">重新載入</string>
|
||||
<string name="mapillary_menu_descr_tile_cache">請重新載入圖磚,以查看最新的資料。</string>
|
||||
<string name="mapillary_menu_title_tile_cache">圖磚快取</string>
|
||||
<string name="shared_string_reset">重置</string>
|
||||
</resources>
|
||||
|
|
|
@ -47,6 +47,7 @@ import net.osmand.core.android.AtlasMapRendererView;
|
|||
import net.osmand.data.LatLon;
|
||||
import net.osmand.data.PointDescription;
|
||||
import net.osmand.data.QuadPoint;
|
||||
import net.osmand.data.QuadRect;
|
||||
import net.osmand.data.RotatedTileBox;
|
||||
import net.osmand.map.MapTileDownloader.DownloadRequest;
|
||||
import net.osmand.map.MapTileDownloader.IMapDownloaderCallback;
|
||||
|
@ -187,8 +188,6 @@ public class MapActivity extends OsmandActionBarActivity implements DownloadEven
|
|||
private boolean mIsDestroyed = false;
|
||||
private InAppHelper inAppHelper;
|
||||
|
||||
private DrawerLayout.DrawerListener drawerListener;
|
||||
|
||||
@Override
|
||||
public void onCreate(Bundle savedInstanceState) {
|
||||
long tm = System.currentTimeMillis();
|
||||
|
@ -290,30 +289,6 @@ public class MapActivity extends OsmandActionBarActivity implements DownloadEven
|
|||
|
||||
mapActions.updateDrawerMenu();
|
||||
drawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
|
||||
drawerListener = new DrawerLayout.DrawerListener() {
|
||||
@Override
|
||||
public void onDrawerSlide(View drawerView, float slideOffset) {
|
||||
mapView.setMultiTouch(false);
|
||||
mapView.setMultiTouchEndTime(0);
|
||||
mapView.getLayerByClass(RulerControlLayer.class).refreshMapDelayed();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDrawerOpened(View drawerView) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDrawerClosed(View drawerView) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDrawerStateChanged(int newState) {
|
||||
|
||||
}
|
||||
};
|
||||
drawerLayout.addDrawerListener(drawerListener);
|
||||
|
||||
IntentFilter filter = new IntentFilter(Intent.ACTION_SCREEN_OFF);
|
||||
screenOffReceiver = new ScreenOffReceiver();
|
||||
|
@ -868,6 +843,9 @@ public class MapActivity extends OsmandActionBarActivity implements DownloadEven
|
|||
mapContextMenu.showMinimized(latLonToShow, mapLabelToShow, toShow);
|
||||
mapLayers.getMapControlsLayer().getMapRouteInfoMenu().updateMenu();
|
||||
MapRouteInfoMenu.showLocationOnMap(this, latLonToShow.getLatitude(), latLonToShow.getLongitude());
|
||||
} else if (toShow instanceof QuadRect) {
|
||||
QuadRect qr = (QuadRect) toShow;
|
||||
mapView.fitRectToMap(qr.left, qr.right, qr.top, qr.bottom, (int) qr.width(), (int) qr.height(), 0);
|
||||
} else {
|
||||
mapContextMenu.show(latLonToShow, mapLabelToShow, toShow);
|
||||
}
|
||||
|
@ -1005,9 +983,6 @@ public class MapActivity extends OsmandActionBarActivity implements DownloadEven
|
|||
if (inAppHelper != null) {
|
||||
inAppHelper.stop();
|
||||
}
|
||||
if (drawerLayout != null) {
|
||||
drawerLayout.removeDrawerListener(drawerListener);
|
||||
}
|
||||
mIsDestroyed = true;
|
||||
}
|
||||
|
||||
|
|
|
@ -274,18 +274,23 @@ public class TrackSegmentFragment extends OsmAndListFragment {
|
|||
}
|
||||
|
||||
private void updateHeader() {
|
||||
headerView.setOnClickListener(new View.OnClickListener() {
|
||||
imageView = (ImageView) headerView.findViewById(R.id.imageView);
|
||||
imageView.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
LatLon location = new LatLon(generalDisplayItem.locationStart.lat, generalDisplayItem.locationStart.lon);
|
||||
LatLon location = new LatLon(generalDisplayItem.locationStart.lat,
|
||||
generalDisplayItem.locationStart.lon);
|
||||
final OsmandSettings settings = app.getSettings();
|
||||
settings.setMapLocationToShow(location.getLatitude(), location.getLongitude(),
|
||||
settings.getLastKnownMapZoom());
|
||||
settings.getLastKnownMapZoom(),
|
||||
new PointDescription(PointDescription.POINT_TYPE_WPT, generalDisplayItem.name),
|
||||
false,
|
||||
getRect()
|
||||
);
|
||||
|
||||
MapActivity.launchMapActivityMoveToTop(getActivity());
|
||||
}
|
||||
});
|
||||
imageView = (ImageView) headerView.findViewById(R.id.imageView);
|
||||
final View splitColorView = headerView.findViewById(R.id.split_color_view);
|
||||
final View divider = headerView.findViewById(R.id.divider);
|
||||
final View splitIntervalView = headerView.findViewById(R.id.split_interval_view);
|
||||
|
|
|
@ -33,9 +33,9 @@ public class MultiTouchSupport {
|
|||
|
||||
public void onGestureInit(float x1, float y1, float x2, float y2);
|
||||
|
||||
public void onActionPointerDownOrMove(float x1, float y1, float x2, float y2);
|
||||
|
||||
public void onActionPointerUp();
|
||||
|
||||
public void onActionCancel();
|
||||
}
|
||||
|
||||
private boolean multiTouchAPISupported = false;
|
||||
|
@ -86,6 +86,9 @@ public class MultiTouchSupport {
|
|||
}
|
||||
int actionCode = event.getAction() & ACTION_MASK;
|
||||
try {
|
||||
if (actionCode == MotionEvent.ACTION_CANCEL) {
|
||||
listener.onActionCancel();
|
||||
}
|
||||
Integer pointCount = (Integer) getPointerCount.invoke(event);
|
||||
if(pointCount < 2){
|
||||
if(inZoomMode){
|
||||
|
@ -106,9 +109,7 @@ public class MultiTouchSupport {
|
|||
angleDefined = true;
|
||||
angle = (float) (Math.atan2(y2 - y1, x2 -x1) * 180 / Math.PI);
|
||||
}
|
||||
if (actionCode == MotionEvent.ACTION_DOWN || actionCode == MotionEvent.ACTION_MOVE) {
|
||||
listener.onActionPointerDownOrMove(x1, y1, x2, y2);
|
||||
} else if (actionCode == MotionEvent.ACTION_UP || actionCode == MotionEvent.ACTION_POINTER_UP) {
|
||||
if (actionCode == MotionEvent.ACTION_UP || actionCode == MotionEvent.ACTION_POINTER_UP) {
|
||||
listener.onActionPointerUp();
|
||||
}
|
||||
if (actionCode == ACTION_POINTER_DOWN) {
|
||||
|
|
|
@ -161,12 +161,11 @@ public class OsmandMapTileView implements IMapDownloaderCallback {
|
|||
private boolean afterDoubleTap = false;
|
||||
private boolean wasMapLinkedBeforeGesture = false;
|
||||
|
||||
private float firstTouchPointX;
|
||||
private float firstTouchPointY;
|
||||
private float secondTouchPointX;
|
||||
private float secondTouchPointY;
|
||||
private LatLon firstTouchPointLatLon;
|
||||
private LatLon secondTouchPointLatLon;
|
||||
private boolean multiTouch;
|
||||
private long multiTouchEndTime;
|
||||
private boolean wasZoomInMultiTouch;
|
||||
|
||||
public OsmandMapTileView(MapActivity activity, int w, int h) {
|
||||
this.activity = activity;
|
||||
|
@ -312,36 +311,28 @@ public class OsmandMapTileView implements IMapDownloaderCallback {
|
|||
}
|
||||
|
||||
// ///////////////////////// NON UI PART (could be extracted in common) /////////////////////////////
|
||||
public float getFirstTouchPointX() {
|
||||
return firstTouchPointX;
|
||||
public LatLon getFirstTouchPointLatLon() {
|
||||
return firstTouchPointLatLon;
|
||||
}
|
||||
|
||||
public float getFirstTouchPointY() {
|
||||
return firstTouchPointY;
|
||||
}
|
||||
|
||||
public float getSecondTouchPointX() {
|
||||
return secondTouchPointX;
|
||||
}
|
||||
|
||||
public float getSecondTouchPointY() {
|
||||
return secondTouchPointY;
|
||||
public LatLon getSecondTouchPointLatLon() {
|
||||
return secondTouchPointLatLon;
|
||||
}
|
||||
|
||||
public boolean isMultiTouch() {
|
||||
return multiTouch;
|
||||
}
|
||||
|
||||
public void setMultiTouch(boolean multiTouch) {
|
||||
this.multiTouch = multiTouch;
|
||||
}
|
||||
|
||||
public long getMultiTouchEndTime() {
|
||||
return multiTouchEndTime;
|
||||
}
|
||||
|
||||
public void setMultiTouchEndTime(long multiTouchEndTime) {
|
||||
this.multiTouchEndTime = multiTouchEndTime;
|
||||
public boolean isWasZoomInMultiTouch() {
|
||||
return wasZoomInMultiTouch;
|
||||
}
|
||||
|
||||
public void setWasZoomInMultiTouch(boolean wasZoomInMultiTouch) {
|
||||
this.wasZoomInMultiTouch = wasZoomInMultiTouch;
|
||||
}
|
||||
|
||||
public void setIntZoom(int zoom) {
|
||||
|
@ -999,8 +990,6 @@ public class OsmandMapTileView implements IMapDownloaderCallback {
|
|||
private LatLon initialCenterLatLon;
|
||||
private boolean startRotating = false;
|
||||
private static final float ANGLE_THRESHOLD = 30;
|
||||
private int cacheIntZoom = getZoom();
|
||||
private double cacheFractionalZoom = getZoomFractionalPart();
|
||||
|
||||
@Override
|
||||
public void onZoomOrRotationEnded(double relativeToStart, float angleRelative) {
|
||||
|
@ -1049,35 +1038,29 @@ public class OsmandMapTileView implements IMapDownloaderCallback {
|
|||
this.x2 = x2;
|
||||
this.y2 = y2;
|
||||
if (x1 != x2 || y1 != y2) {
|
||||
firstTouchPointX = x1;
|
||||
firstTouchPointY = y1;
|
||||
secondTouchPointX = x2;
|
||||
secondTouchPointY = y2;
|
||||
firstTouchPointLatLon = currentViewport.getLatLonFromPixel(x1, y1);
|
||||
secondTouchPointLatLon = currentViewport.getLatLonFromPixel(x2, y2);
|
||||
multiTouch = true;
|
||||
wasZoomInMultiTouch = false;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onActionPointerDownOrMove(float x1, float y1, float x2, float y2) {
|
||||
firstTouchPointX = x1;
|
||||
firstTouchPointY = y1;
|
||||
secondTouchPointX = x2;
|
||||
secondTouchPointY = y2;
|
||||
multiTouch = true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onActionPointerUp() {
|
||||
multiTouch = false;
|
||||
if (cacheIntZoom != getZoom() || cacheFractionalZoom != getZoomFractionalPart()) {
|
||||
cacheIntZoom = getZoom();
|
||||
cacheFractionalZoom = getZoomFractionalPart();
|
||||
multiTouchEndTime = 0;
|
||||
if (isZooming()) {
|
||||
wasZoomInMultiTouch = true;
|
||||
} else {
|
||||
multiTouchEndTime = System.currentTimeMillis();
|
||||
wasZoomInMultiTouch = false;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onActionCancel() {
|
||||
multiTouch = false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onZoomStarted(PointF centerPoint) {
|
||||
initialMultiTouchCenterPoint = centerPoint;
|
||||
|
|
|
@ -13,6 +13,7 @@ import android.os.Message;
|
|||
import android.view.View;
|
||||
|
||||
import net.osmand.Location;
|
||||
import net.osmand.data.LatLon;
|
||||
import net.osmand.data.QuadPoint;
|
||||
import net.osmand.data.RotatedTileBox;
|
||||
import net.osmand.plus.OsmAndFormatter;
|
||||
|
@ -27,7 +28,7 @@ import gnu.trove.list.array.TIntArrayList;
|
|||
|
||||
public class RulerControlLayer extends OsmandMapLayer {
|
||||
|
||||
public static final long DELAY = 1500;
|
||||
public static final long DELAY = 2000;
|
||||
private static final int TEXT_SIZE = 14;
|
||||
|
||||
private final MapActivity mapActivity;
|
||||
|
@ -40,10 +41,10 @@ public class RulerControlLayer extends OsmandMapLayer {
|
|||
private float maxRadius;
|
||||
private int radius;
|
||||
private double roundedDist;
|
||||
private boolean showTwoFingersDistance;
|
||||
|
||||
private QuadPoint cacheCenter;
|
||||
private int cacheIntZoom;
|
||||
private double cacheFractionalZoom;
|
||||
private double cacheTileX;
|
||||
private double cacheTileY;
|
||||
private long cacheMultiTouchEndTime;
|
||||
|
@ -64,6 +65,10 @@ public class RulerControlLayer extends OsmandMapLayer {
|
|||
this.mapActivity = mapActivity;
|
||||
}
|
||||
|
||||
public boolean isShowTwoFingersDistance() {
|
||||
return showTwoFingersDistance;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void initLayer(final OsmandMapTileView view) {
|
||||
app = mapActivity.getMyApplication();
|
||||
|
@ -113,21 +118,21 @@ public class RulerControlLayer extends OsmandMapLayer {
|
|||
final QuadPoint center = tb.getCenterPixelPoint();
|
||||
final RulerMode mode = app.getSettings().RULER_MODE.get();
|
||||
|
||||
if (cacheIntZoom != view.getZoom() || cacheFractionalZoom != view.getZoomFractionalPart()) {
|
||||
cacheIntZoom = view.getZoom();
|
||||
cacheFractionalZoom = view.getZoomFractionalPart();
|
||||
view.setMultiTouchEndTime(0);
|
||||
cacheMultiTouchEndTime = 0;
|
||||
if (view.isMultiTouch() && view.isZooming()) {
|
||||
view.setWasZoomInMultiTouch(true);
|
||||
} else if (cacheMultiTouchEndTime != view.getMultiTouchEndTime()) {
|
||||
cacheMultiTouchEndTime = view.getMultiTouchEndTime();
|
||||
refreshMapDelayed();
|
||||
}
|
||||
if (!view.isZooming() && view.isMultiTouch() || System.currentTimeMillis() - cacheMultiTouchEndTime < DELAY) {
|
||||
float x1 = view.getFirstTouchPointX();
|
||||
float y1 = view.getFirstTouchPointY();
|
||||
float x2 = view.getSecondTouchPointX();
|
||||
float y2 = view.getSecondTouchPointY();
|
||||
drawFingerDistance(canvas, tb, center, x1, y1, x2, y2, settings.isNightMode());
|
||||
showTwoFingersDistance = !view.isWasZoomInMultiTouch() && !view.isZooming() && (view.isMultiTouch() || System.currentTimeMillis() - cacheMultiTouchEndTime < DELAY);
|
||||
if (showTwoFingersDistance) {
|
||||
LatLon firstTouchPoint = view.getFirstTouchPointLatLon();
|
||||
LatLon secondTouchPoint = view.getSecondTouchPointLatLon();
|
||||
float x1 = tb.getPixXFromLonNoRot(firstTouchPoint.getLongitude());
|
||||
float y1 = tb.getPixYFromLatNoRot(firstTouchPoint.getLatitude());
|
||||
float x2 = tb.getPixXFromLonNoRot(secondTouchPoint.getLongitude());
|
||||
float y2 = tb.getPixYFromLatNoRot(secondTouchPoint.getLatitude());
|
||||
drawFingerDistance(canvas, x1, y1, x2, y2, settings.isNightMode());
|
||||
} else if (mode == RulerMode.FIRST) {
|
||||
drawCenterIcon(canvas, tb, center, settings.isNightMode());
|
||||
Location currentLoc = app.getLocationProvider().getLastKnownLocation();
|
||||
|
@ -149,12 +154,10 @@ public class RulerControlLayer extends OsmandMapLayer {
|
|||
handler.sendEmptyMessageDelayed(0, DELAY + 50);
|
||||
}
|
||||
|
||||
private void drawFingerDistance(Canvas canvas, RotatedTileBox tb, QuadPoint center, float x1, float y1, float x2, float y2, boolean nightMode) {
|
||||
canvas.rotate(-tb.getRotate(), center.x, center.y);
|
||||
private void drawFingerDistance(Canvas canvas, float x1, float y1, float x2, float y2, boolean nightMode) {
|
||||
canvas.drawLine(x1, y1, x2, y2, lineAttrs.paint);
|
||||
drawFingerTouchIcon(canvas, x1, y1, nightMode);
|
||||
drawFingerTouchIcon(canvas, x2, y2, nightMode);
|
||||
canvas.rotate(tb.getRotate(), center.x, center.y);
|
||||
}
|
||||
|
||||
private void drawFingerTouchIcon(Canvas canvas, float x, float y, boolean nightMode) {
|
||||
|
|
|
@ -150,7 +150,7 @@ public class MapInfoWidgetsFactory {
|
|||
RulerMode mode = rulerMode.get();
|
||||
if (mode == RulerMode.FIRST) {
|
||||
return RULER_CONTROL_WIDGET_STATE_FIRST_MODE;
|
||||
} else if (mode == RulerMode.SECOND){
|
||||
} else if (mode == RulerMode.SECOND) {
|
||||
return RULER_CONTROL_WIDGET_STATE_SECOND_MODE;
|
||||
} else {
|
||||
return RULER_CONTROL_WIDGET_STATE_EMPTY_MODE;
|
||||
|
@ -184,30 +184,23 @@ public class MapInfoWidgetsFactory {
|
|||
|
||||
public TextInfoWidget createRulerControl(final MapActivity map) {
|
||||
final String title = map.getResources().getString(R.string.map_widget_show_ruler);
|
||||
final TextInfoWidget rulerControl = new TextInfoWidget(map) {
|
||||
boolean needNewLatLon;
|
||||
long cacheMultiTouchEndTime;
|
||||
final TextInfoWidget rulerControl = new TextInfoWidget(map) {
|
||||
RulerControlLayer rulerLayer = map.getMapLayers().getRulerControlLayer();
|
||||
LatLon cacheFirstTouchPoint = new LatLon(0, 0);
|
||||
LatLon cacheSecondTouchPoint = new LatLon(0, 0);
|
||||
|
||||
@Override
|
||||
public boolean updateInfo(DrawSettings drawSettings) {
|
||||
RulerMode mode = map.getMyApplication().getSettings().RULER_MODE.get();
|
||||
OsmandMapTileView view = map.getMapView();
|
||||
|
||||
if (cacheMultiTouchEndTime != view.getMultiTouchEndTime()) {
|
||||
cacheMultiTouchEndTime = view.getMultiTouchEndTime();
|
||||
needNewLatLon = true;
|
||||
}
|
||||
if (!view.isZooming() && view.isMultiTouch() || System.currentTimeMillis() - cacheMultiTouchEndTime < RulerControlLayer.DELAY) {
|
||||
if (needNewLatLon) {
|
||||
float x1 = view.getFirstTouchPointX();
|
||||
float y1 = view.getFirstTouchPointY();
|
||||
float x2 = view.getSecondTouchPointX();
|
||||
float y2 = view.getSecondTouchPointY();
|
||||
LatLon firstFinger = view.getCurrentRotatedTileBox().getLatLonFromPixel(x1, y1);
|
||||
LatLon secondFinger = view.getCurrentRotatedTileBox().getLatLonFromPixel(x2, y2);
|
||||
setDistanceText(firstFinger.getLatitude(), firstFinger.getLongitude(),
|
||||
secondFinger.getLatitude(), secondFinger.getLongitude());
|
||||
needNewLatLon = false;
|
||||
if (rulerLayer.isShowTwoFingersDistance()) {
|
||||
if (!cacheFirstTouchPoint.equals(view.getFirstTouchPointLatLon()) ||
|
||||
!cacheSecondTouchPoint.equals(view.getSecondTouchPointLatLon())) {
|
||||
cacheFirstTouchPoint = view.getFirstTouchPointLatLon();
|
||||
cacheSecondTouchPoint = view.getSecondTouchPointLatLon();
|
||||
setDistanceText(cacheFirstTouchPoint.getLatitude(), cacheFirstTouchPoint.getLongitude(),
|
||||
cacheSecondTouchPoint.getLatitude(), cacheSecondTouchPoint.getLongitude());
|
||||
}
|
||||
} else if (mode == RulerMode.FIRST || mode == RulerMode.SECOND) {
|
||||
Location currentLoc = map.getMyApplication().getLocationProvider().getLastKnownLocation();
|
||||
|
@ -217,10 +210,8 @@ public class MapInfoWidgetsFactory {
|
|||
setDistanceText(currentLoc.getLatitude(), currentLoc.getLongitude(),
|
||||
centerLoc.getLatitude(), centerLoc.getLongitude());
|
||||
}
|
||||
needNewLatLon = true;
|
||||
} else {
|
||||
setText(title, null);
|
||||
needNewLatLon = true;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
|