This commit is contained in:
GaidamakUA 2015-11-19 10:05:49 +02:00
commit 909f16b1ff
37 changed files with 330 additions and 257 deletions

View file

@ -146,6 +146,9 @@ public class MapPoiTypes {
public Map<String, PoiType> getAllTranslatedNames(boolean skipNonEditable) {
Map<String, PoiType> translation = new HashMap<String, PoiType>();
for(PoiCategory pc : categories) {
if(skipNonEditable && pc.isNotEditableOsm()) {
continue;
}
for(PoiType pt : pc.getPoiTypes()) {
if(pt.isReference() ) {
continue;

View file

@ -133,6 +133,7 @@
android:layout_height="fill_parent"
android:layout_gravity="bottom"
android:gravity="center_horizontal"
android:lineSpacingMultiplier="0.9"
android:text="100 m"
android:textSize="@dimen/map_widget_text_size_small" />
@ -142,6 +143,7 @@
android:layout_height="fill_parent"
android:layout_gravity="bottom"
android:gravity="center_horizontal"
android:lineSpacingMultiplier="0.9"
android:text="100 m"
android:textSize="@dimen/map_widget_text_size_small" />
</FrameLayout>

View file

@ -125,6 +125,7 @@
android:layout_height="fill_parent"
android:layout_gravity="bottom"
android:gravity="center_horizontal"
android:lineSpacingMultiplier="0.9"
android:text="100 m"
android:textSize="@dimen/map_widget_text_size_small" />
@ -134,6 +135,7 @@
android:layout_height="fill_parent"
android:layout_gravity="bottom"
android:gravity="center_horizontal"
android:lineSpacingMultiplier="0.9"
android:text="100 m"
android:textSize="@dimen/map_widget_text_size_small" />

View file

@ -1,4 +1,5 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?><resources>
<?xml version='1.0' encoding='utf-8'?>
<resources>
<string name="osb_author_or_password_not_specified">Моля, въведете потребителско име и парола за сайта на OSM</string>
<string name="clear_intermediate_points">Изчистване на междинните точки</string>
<string name="keep_intermediate_points">Запази междинните точки</string>
@ -2020,4 +2021,11 @@ OsmAnd е с отворен код и активно да се развива.
<string name="shared_string_navigation">Навигация</string>
<string name="osmand_running_in_background">Работи във фонов режим</string>
<string name="favourites_edit_dialog_title">Предпочитана информация</string>
<string name="show_on_start">Да се показва при стартиране</string>
<string name="copied_to_clipboard">Копирано</string>
<string name="release_2_2">" • Нов контекстно-ориентиран интерфейс\n\n • При стартиране на приложението се извежда картата, освен ако не е избрано \'Показване на таблото при стартиране\'\n\n • Настройване на контролите върху таблото за управление\n\n • Пропускане на таблото, ако предпочитате приложение с меню\n\n • To download maps, regions can be directly selected by tapping on the world map\n\n • POI Search now supports more specific queries\n\n • Improved POI and OSM editing functionality\n\n • Map data download structure and interface reworked\n\n и още... "</string>
<string name="osm_save_offline">Запази офлайн</string>
<string name="osm_edit_modified_poi">Модифицирани OSM POI</string>
<string name="osm_edit_deleted_poi">Изтрити OSM POI</string>
<string name="context_menu_item_open_note">Отвори OSM бележка</string>
</resources>

View file

@ -237,7 +237,7 @@
<string name="osmand_parking_position_description_add">Afhent bilen:</string>
<string name="osmand_parking_am">AM</string>
<string name="osmand_parking_position_name">Parkeringssted</string>
<string name="osmand_parking_plugin_description">Parkeringsplads udvidelsen kan huske hvor bilen er parkeret, og hvor meget parkeringstid der er tilbage (hvis der er en tidsfrist).\nBåde placering og tid er synlige på oversigtspanelet samt i modul på kortskærmen. En alarm kan tilføjes til Android kalenderen, som en påmindelse.</string>
<string name="osmand_parking_plugin_description">Parkeringsplads udvidelsen kan huske hvor bilen er parkeret, og hvor meget parkeringstid der er tilbage (hvis der er en tidsfrist).\nBåde placering og tid er synlige på betjeningspanel samt i modul på kortskærmen. En alarm kan tilføjes til Android kalenderen, som en påmindelse.</string>
<string name="osmand_parking_plugin_name">Parkering</string>
<string name="context_menu_item_add_parking_point">Marker som parkeringsplads</string>
<string name="context_menu_item_delete_parking_point">Slet en parkeringsmarkør</string>
@ -1484,7 +1484,7 @@
<string name="lang_sw">Swahili</string>
<string name="lang_he">Hebræisk</string>
<string name="forward">Frem</string>
<string name="home">Oversigtspanel</string>
<string name="home">Betjeningspanel</string>
<string name="live_monitoring_m_descr">Send sporing til en bestemt webtjeneste, hvis GPX logning er aktiveret.</string>
<string name="live_monitoring_m">Online sporing (GPX nødvendig)</string>
<string name="live_monitoring_start">Start online sporing</string>
@ -1925,7 +1925,7 @@
<string name="we_really_care_about_your_opinion">Vi er meget interesseret i din mening, og det er vigtigt for os at høre fra dig.</string>
<string name="rendering_value_boldOutline_name">Fed kontur</string>
<string name="traffic_warning_hazard">Fare</string>
<string name="dahboard_options_dialog_title">Konfigurer oversigtspanel</string>
<string name="dahboard_options_dialog_title">Konfigurer betjeningspanel</string>
<string name="shared_string_card_was_hidden">Kortet blev skjult</string>
<string name="shared_string_undo">FORTRYD</string>
<string name="shared_string_skip">Spring over</string>
@ -2095,7 +2095,7 @@
<string name="osn_close_dialog_success">Note lukket</string>
<string name="osm_edit_modified_poi">Ændret OSM IP</string>
<string name="osm_edit_deleted_poi">Slettet OSM IP</string>
<string name="release_2_2">" • Ny kontekstafhængig brugergrænseflade når der vælges lokationer på kortet og på andre skærme\n\n • Kortskærmen vises direkte, medmindre \'Vis oversigtpanel ved start\' er valgt\n\n • Konfigurer hvordan og hvilket indhold der vises på oversigtspanelet\n\n • Hent kort, regioner ved at trykke direkte på verdenskortet\n\n • IP søgning understøtter nu mere specifikke forespørgsler\n\n • Forbedret IP og OSM redigeringsfunktionalitet\n\n • Administration af kortfiler struktur og grænseflade er omarbejdet\n\n og mere... "</string>
<string name="release_2_2">" • Ny kontekstafhængig brugergrænseflade når der vælges lokationer på kortet og på andre skærme\n\n • Kortskærmen vises direkte, medmindre \'Vis betjeningspanel ved start\' er valgt\n\n • Konfigurer hvordan og hvilket indhold der vises på betjeningspanelet\n\n • Forbigå betjeningspanel hvis der ønskes menuen-baserede app-kontrol\n\n • Hent kort, regioner ved at trykke direkte på verdenskortet\n\n • IP søgning understøtter nu mere specifikke forespørgsler\n\n • Forbedret IP og OSM redigeringsfunktionalitet\n\n • Administration af kortfiler struktur og grænseflade er omarbejdet\n\n og mere... "</string>
<string name="osm_save_offline">Gem offline</string>
<string name="rendering_attr_currentTrackColor_description">GPX-farve</string>
<string name="rendering_attr_currentTrackWidth_description">GPX-bredde</string>
@ -2103,10 +2103,10 @@
<string name="copied_to_clipboard">Kopieret til udklipsholder</string>
<string name="dashboard_or_drawer_title">Nyt valg for opstart</string>
<string name="dashboard_or_drawer_description">Vælg om programmet starter med at vise korter eller oversigtspanel først. Kan ændres i indstillinger for oversigtspanel.</string>
<string name="use_dashboard_btn">Start altid med oversigtspanel</string>
<string name="use_drawer_btn">Start altid med kortet</string>
<string name="access_from_map_description">Placerer en knap til oversigtspanelet på kortskærmen</string>
<string name="dashboard_or_drawer_title">Betjeningspanel eller menu kontrol</string>
<string name="dashboard_or_drawer_description">Der er et nyt valg til at betjene app via det fleksibel betjeningspanel eller en statisk menu. Kan ændres i indstillinger for betjeningspanel .</string>
<string name="use_dashboard_btn">Brug betjeningspanel</string>
<string name="use_drawer_btn">Brug menuen</string>
<string name="access_from_map_description">Menuknappen viser betjeningspanel, ikke menuen</string>
<string name="access_from_map">Adgang fra kort</string>
</resources>

View file

@ -19,8 +19,8 @@
<string name="traffic_warning_calming">Verkehrsberuhigung</string>
<string name="traffic_warning_speed_camera">Geschwindigkeitskontrolle</string>
<string name="traffic_warning">Verkehrswarnung</string>
<string name="speak_favorites">Nahegelegene Favoriten ankündigen</string>
<string name="speak_poi">Nahegelegene POI ankündigen</string>
<string name="speak_favorites">Nahegelegene Favoriten</string>
<string name="speak_poi">Nahegelegene POI</string>
@ -286,10 +286,10 @@
<string name="index_name_europe">Europa</string>
<string name="index_name_france">Europa - Frankreich</string>
<string name="index_name_germany">Europa - Deutschland</string>
<string name="index_name_russia">Europa/Asien - Russland</string>
<string name="index_name_russia">Russland</string>
<string name="index_name_africa">Afrika</string>
<string name="index_name_asia">Asien</string>
<string name="index_name_oceania">Ozeanien</string>
<string name="index_name_oceania">Australien und Ozeanien</string>
<string name="index_name_other">Weltweite und thematische Karten</string>
<string name="index_name_wiki">Weltweite Wikipedia POIs</string>
<string name="index_name_voice">Sprachpakete (Aufnahmen - begrenzte Funktionalität)</string>
@ -328,7 +328,7 @@
<string name="user_password">OSM-Kennwort</string>
<string name="user_password_descr">Nötig für openstreetmap.org-Beiträge</string>
<string name="osmand_service">Hintergrunddienst</string>
<string name="osmand_service_descr">Für Verwendung von OsmAnd bei ausgeschalteter Anzeige</string>
<string name="osmand_service_descr">OsmAnd läuft bei ausgeschalteter Anzeige im Hintergrund</string>
@ -687,7 +687,7 @@
<string name="int_min">Min.</string>
<string name="background_service_provider_descr">Art der Standortbestimmung beim Hintergrunddienst</string>
<string name="background_service_provider">Standortbestimmung</string>
<string name="off_router_service_no_gps_available">Die Hintergrundnavigation erfordert aktiviertes GPS.</string>
<string name="off_router_service_no_gps_available">Die Hintergrundnavigation erfordert aktivierte Standortdienste.</string>
<string name="hide_poi_filter">Filter verstecken</string>
<string name="show_poi_filter">Filter zeigen</string>
<string name="search_poi_filter">Filter</string>
@ -1166,7 +1166,7 @@
<string name="access_arrival_time">Ankunftszeit</string>
<string name="map_widget_gps_info">GPS-Info</string>
<string name="street_name">Straße</string>
<string name="street_name">Straßenname</string>
<string name="hno">Hausnummer</string>
@ -1225,9 +1225,9 @@
<string name="av_photo_play_sound">Ton bei Auslösung abspielen</string>
<string name="av_photo_play_sound_descr">Auswählen, ob beim Aufnehmen eines Fotos ein Ton abgespielt werden soll</string>
<string name="speak_speed_limit">Höchstgeschwindigkeit ansagen</string>
<string name="speak_cameras">Blitzer ansagen</string>
<string name="speak_traffic_warnings">Verkehrswarnungen ansagen</string>
<string name="speak_speed_limit">Tempolimit</string>
<string name="speak_cameras">Blitzer</string>
<string name="speak_traffic_warnings">Verkehrswarnungen</string>
<string name="osb_author_or_password_not_specified">Bitte OSM-Nutzername und Passwort in den Einstellungen eingeben</string>
<string name="clear_intermediate_points">Zwischenziele löschen</string>
<string name="keep_intermediate_points">Zwischenziele behalten</string>
@ -1252,7 +1252,7 @@
<string name="driving_region_canada">Kanada</string>
<string name="driving_region_europe_asia">Europa und Asien</string>
<string name="driving_region_uk">GB, Indien, Australien u.a.</string>
<string name="announce_gpx_waypoints">GPX-Wegpunkte ansagen</string>
<string name="announce_gpx_waypoints">GPX-Wegpunkte</string>
<string name="driving_region">Fahrgebiet</string>
<string name="about_version">Version :</string>
<string name="shared_string_about">Über</string>
@ -1721,7 +1721,7 @@ Afghanistan, Ägypten, Albanien, Algerien, Andorra, Angola, Anguilla, Antigua an
<string name="download_additional_maps">Fehlende Karten herunterladen: %1$s (%2$d MB)?</string>
<string name="shared_string_more">Mehr…</string>
<string name="osmo_specify_tracker_id">Bitte ID eingeben</string>
<string name="home">Übersicht</string>
<string name="home">Dashboard</string>
<string name="rendering_attr_publicTransportMode_name">Bus-, Oberleitungsbus-, Sammeltaxi-Linien</string>
<string name="record_plugin_name">Streckenaufzeichnung</string>
<string name="int_hour">h</string>
@ -1814,7 +1814,7 @@ Afghanistan, Ägypten, Albanien, Algerien, Andorra, Angola, Anguilla, Antigua an
<string name="rendering_value_americanRoadAtlas_name">Amerikanischer Straßenatlas</string>
<string name="routing_attr_no_new_routing_name">Routing-Regeln v1.9 nicht verwenden</string>
<string name="routing_attr_no_new_routing_description">Neuen Routenalgorithmus nicht verwenden</string>
<string name="speak_pedestrian">Fußgängerübergänge ankündigen</string>
<string name="speak_pedestrian">Fußgängerübergänge</string>
<string name="parking_place">Parkplätze</string>
<string name="remove_the_tag">TAG ENTFERNEN</string>
@ -2034,7 +2034,7 @@ Afghanistan, Ägypten, Albanien, Algerien, Andorra, Angola, Anguilla, Antigua an
<string name="successfully_uploaded_pattern">Erfolgreich hochgeladen {0}/{1}</string>
<string name="try_again">Erneut versuchen</string>
<string name="error_message_pattern">Fehler: {0}</string>
<string name="dahboard_options_dialog_title">Übersicht konfigurieren</string>
<string name="dahboard_options_dialog_title">Dashboard konfigurieren</string>
<string name="shared_string_undo">Rückgängig machen</string>
<string name="shared_string_skip">Überspringen</string>
<string name="app_name_osmand">OsmAnd</string>
@ -2047,7 +2047,7 @@ Afghanistan, Ägypten, Albanien, Algerien, Andorra, Angola, Anguilla, Antigua an
<string name="routing_attr_avoid_shuttle_train_name">Pendelzug vermeiden</string>
<string name="routing_attr_avoid_shuttle_train_description">Pendelzug vermeiden</string>
<string name="plugin_settings">Plugins</string>
<string name="building_number">Gebäude-Nummer</string>
<string name="building_number">Hausnummer</string>
<string name="opening_at">geöffnet ab</string>
<string name="closing_at">geschlossen ab</string>
<string name="si_nm">Nautische Meilen</string>
@ -2138,14 +2138,14 @@ Afghanistan, Ägypten, Albanien, Algerien, Andorra, Angola, Anguilla, Antigua an
<string name="feedback">Feedback</string>
<string name="contact_us">Kontakt</string>
<string name="map_legend">Kartenlegende</string>
<string name="access_from_map_description">Plaziert einen Dashboard-Knopf auf dem Bildschirm</string>
<string name="access_from_map_description">Menü-Knopf zeigt Dashboard, nicht Menü</string>
<string name="show_on_start_description">\"Aus\" startet direkt die Kartenansicht.</string>
<string name="copied_to_clipboard">in die Zwischenablage kopiert</string>
<string name="release_2_2">" • Neue Kontext-bezogene Benutzeroberfläche bei Auswahl von Orten auf der Karte und anderen Ansichten\n\n • Kartenansicht wird nun direkt gestartet, außer bei Auswahl von \'Zeige Dashboard bei App-Start\'\n\n • Auswahl der anzuzeigenden Elemente im Dashboard möglich\n\n • Zum Herunterladen von Kartendateien können nun Regionen direkt durch Tippen auf der Weltkarte ausgewählt werden\n\n • Die POI-Suche ermöglicht nun speziellere Abfragen\n\n • Verbesserungen beim Editieren von POI- und OSM-Objekten\n\n • Oberfläche und Struktur zum Herunterladen der Karten wurden überarbeitet\n\n und mehr ... "</string>
<string name="release_2_2">" • Neue Kontext-bezogene Benutzeroberfläche bei Auswahl von Orten auf der Karte und anderen Ansichten\n\n • Kartenansicht wird nun direkt gestartet, außer bei Auswahl von \'Zeige Dashboard bei App-Start\'\n\n • Auswahl der anzuzeigenden Elemente im Dashboard möglich\n\n • Dashboard kann umgangen werden, falls menü-basierte App-Steuerung gewünscht ist\n\n • Zum Herunterladen von Kartendateien können nun Regionen direkt durch Tippen auf der Weltkarte ausgewählt werden\n\n • Die POI-Suche ermöglicht nun speziellere Abfragen\n\n • Verbesserungen beim Editieren von POI- und OSM-Objekten\n\n • Oberfläche und Struktur zum Herunterladen der Karten wurden überarbeitet\n\n und mehr ... "</string>
<string name="osm_save_offline">offline speichern</string>
<string name="osm_edit_modified_poi">geänderter OSM-POI</string>
<string name="osm_edit_deleted_poi">OSM-POI löschen</string>
<string name="context_menu_item_open_note">Offene OSM-Notiz</string>
<string name="context_menu_item_open_note">OSM-Notiz erstellen</string>
<string name="osm_edit_reopened_note">Wiedereröffnete OSM-Notiz</string>
<string name="osm_edit_commented_note">Kommentierte OSM-Notiz</string>
<string name="osm_edit_removed_note">Gelöschte OSM-Notiz</string>
@ -2182,8 +2182,12 @@ Afghanistan, Ägypten, Albanien, Algerien, Andorra, Angola, Anguilla, Antigua an
<string name="enter_country_name">Name des Landes eingeben</string>
<string name="save_poi_without_poi_type_message">Soll der POI wirklich ohne Art des POI gespeichert werden?</string>
<string name="poi_context_menu_modify_osm_change">OSM-Änderung bearbeiten</string>
<string name="use_dashboard_btn">Dashboard immer starten</string>
<string name="use_drawer_btn">Kartenansicht immer starten</string>
<string name="dashboard_or_drawer_title">Neue Auswahl des Startvorgangs</string>
<string name="dashboard_or_drawer_description">Es ist nun auswählbar, ob beim Start der App gleich die Kartenansicht oder das Dashboard angezeigt wird. (Jederzeit in den Dashboard-Einstellungen änderbar)</string>
<string name="use_dashboard_btn">Dashboard verwenden</string>
<string name="use_drawer_btn">Menü verwenden</string>
<string name="dashboard_or_drawer_title">Auswahl der App-Bedienung</string>
<string name="dashboard_or_drawer_description">Es ist nun auswählbar, ob die App primär über das flexible Dashboard oder über ein statisches Menü bedient werden soll. (Jederzeit in den Dashboard-Einstellungen änderbar)</string>
<string name="access_from_map">Aufruf von der Karte aus</string>
<string name="favorite_category_add_new">neu erstellen</string>
<string name="next_proceed">Weiter</string>
<string name="file_size_in_mb">%.1f MB</string>
</resources>

View file

@ -773,7 +773,7 @@
<string name="poi_healthcare">Здоровье</string>
<string name="poi_sustenance">Еда</string>
<string name="poi_lodging">Проживание</string>
<string name="poi_man_made">Инфраструктура</string>
<string name="poi_man_made">Рукотворное</string>
<string name="poi_administrative">Административные объекты</string>
<string name="poi_seamark">Морские объекты</string>
<string name="poi_internet_access_wlan">Доступ в Интернет: беспроводной</string>

View file

@ -1,5 +1,24 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?><resources>
<string name="osm_edit_reopened_note">Заметка OSM открыта снова</string>
<string name="osm_edit_commented_note">К заметке OSM добавлен комментарий</string>
<string name="osm_edit_removed_note">Заметка OSM удалена</string>
<string name="osm_edit_created_note">Заметка OSM создана</string>
<string name="osn_bug_name">Заметка OSM</string>
<string name="osn_add_dialog_title">Создание заметки</string>
<string name="osn_comment_dialog_title">Добавление комментария</string>
<string name="osn_reopen_dialog_title">Повторное открытие заметки</string>
<string name="osn_close_dialog_title">Закрытие заметки</string>
<string name="osn_add_dialog_success">Заметка успешно создана</string>
<string name="osn_add_dialog_error">Ошибка: заметка не была создана</string>
<string name="osn_close_dialog_success">Заметка было успешно закрыта</string>
<string name="osn_close_dialog_error">Ошибка: заметка не была закрыта</string>
<string name="osm_edit_deleted_poi">OSM POI удалена</string>
<string name="osm_edit_modified_poi">OSM POI отредактирована</string>
<string name="osm_save_offline">Сохранить локально</string>
<string name="context_menu_item_open_note">Добавить заметку OSM</string>
<string name="rendering_attr_currentTrackColor_description">Цвет трека GPX</string>
<string name="rendering_attr_currentTrackWidth_description">Толщина трека GPX</string>
<string name="copied_to_clipboard">Скопировано в буфер обмена</string>
<string name="rendering_attr_roadStyle_description">Стиль отображения дорог</string>
<string name="lang_nds">Нижненемецкий</string>

View file

@ -2020,8 +2020,8 @@
<string name="rendering_attr_roadStyle_description">Istile pro sas istradas</string>
<string name="dashboard_or_drawer_title">Issèbera noa de allumìngiu</string>
<string name="dashboard_or_drawer_description">Como podes isseberare sa mègius manera de allumìngiu de s\'aplicatzione, deretamente dae sa mapa o cun su pannellu de controllu in antis. As a pòdere semper cambiare sissèbera tua prus a tardu in sas impostatziones de su pannellu.</string>
<string name="use_dashboard_btn">Ammustra semper su pannellu de controllu</string>
<string name="use_drawer_btn">Ammustra semper sa mapa</string>
<string name="use_dashboard_btn">Allue cun su pannellu de controllu</string>
<string name="use_drawer_btn">Allue cun sa mapa</string>
<string name="access_from_map_description">Pone unu butone pro su pannellu de controllu in sischermu de sa mapa</string>
<string name="access_from_map">Intra dae sa mapa</string>
<string name="release_2_2">" • Interfache impitadore noa pro incarcare positziones in sa mapa e in àteros ischermos\n\n • S\'ischermu de sa mapa est como postu come prima cosa a sallumìngiu de saplicatzione, semper chi \'Ammustra pannellu de controllu in s\'allumìngiu\' no siet ischertadu\n\n • Como podes cunfigurare sas impostatziones pro isseberare cales sunt sas ischedas chi diant dèperèssere ammustradas in su pannellu e comente\n\n • Pro iscarrigare mapas, sas regiones podent èssere ischertadas deretamente incarcande in sa mapa generale de su mundu\n\n • Sa chirca de PDI como suportat chircas prus dislindadas\n\n • Megioradas sas funtzionalidades de modìficas de PDI e OSM\n\n • Istrutura e s\'interfache de iscarrigamentu datos mapas torrada a fàghere\n\n e àteru... "</string>

View file

@ -1931,6 +1931,6 @@ Afganistan, Albánsko, Alžírsko, Andora, Angola, Anguilla, Antigua a Barbuda,
<string name="dashboard_or_drawer_description">Teraz si môžete zvoliť či aplikácia po štarte spustí obrazovku mapy alebo úvodný panel. Toto nastavenie môžete neskôr zmeniť v nastaveniach panela.</string>
<string name="access_from_map_description">Umiestni na obrazovku mapy tlačidlo úvodného panela</string>
<string name="access_from_map">Prístup z mapy</string>
<string name="use_dashboard_btn">Vždy spustiť úvodný panel</string>
<string name="use_drawer_btn">Vždy spustiť mapu</string>
<string name="use_dashboard_btn">Spustiť úvodný panel</string>
<string name="use_drawer_btn">Spustiť mapu</string>
</resources>

View file

@ -2002,8 +2002,8 @@
<string name="rendering_attr_currentTrackWidth_description">GPX-bredd</string>
<string name="release_2_2">" • Nytt kontextkänsligt gränssnitt för att peta på platser på kartan och på andra skärmar\n\n • Kartskärmen startar nu automatiskt om inte \'Visa panelen vid appstart\' är vald\n\n • Konfigurera vilka kort och hur de ska visas i panelen\n\n • För att hämta kartor kan regioner väljas direkt genom att peta på världskartan\n\n • Sökning efter intressepunkter (POI) understöder nu mer specifika frågor\n\n • Förbättrad funktion för POI- och OSM-redigering\n\n • Strukturen för hämtning av kartdata och gränssnittet har omarbetats\n\n och mer ... "</string>
<string name="dashboard_or_drawer_description">Du kan nu välja om appen ska starta direkt med kartskärmen eller alltid visa panelen först. Detta val kan du alltid ändra på under inställningarna i panelen.</string>
<string name="use_dashboard_btn">Starta alltid med panelen</string>
<string name="use_drawer_btn">Starta alltid med kartan</string>
<string name="use_dashboard_btn">Öppna panelen</string>
<string name="use_drawer_btn">Visa kartan</string>
<string name="dashboard_or_drawer_title">Nytt val för uppstarten</string>
<string name="poi_dialog_reopen">Öppna igen</string>
<string name="shared_string_commit">Skicka in</string>

View file

@ -2003,14 +2003,14 @@
<string name="rendering_attr_roadStyle_description">道路樣式</string>
<string name="poi_dialog_reopen">重新開啟</string>
<string name="osm_save_offline">離線儲存</string>
<string name="release_2_2">" •在地圖上和其它螢幕上,為點擊位置做了新的敏捷內容選單使用者界面\n\n•地圖螢幕上現在除了直接啟動外還有\'在應用程式時啟動顯示儀表板\'可選\n\n •組態哪些以及何種卡可以在儀表板上顯示\n\n •要下載地圖可以直接在全球地圖上點選區域\n\n •更好的重新計算路線現在引擎經過反復的嘗試建議一條不同的路線\n\n •興趣點搜尋現在支援更具體的查詢\n\n •改善過的興趣點和 OSM 編輯功能\n\n •地圖資料下載結構和界面重新設計\n\n 還有更多... "</string>
<string name="release_2_2">" •在地圖上和其它螢幕上,為點擊位置做了新的敏捷內容選單使用者界面\n\n•地圖螢幕上現在除了直接啟動外還有\'在應用程式時啟動顯示儀表板\'可選\n\n •組態哪些以及何種卡可以在儀表板上顯示\n\n•如果您喜歡基本選單的應用程式控制,繞過儀表板方式\n\n •要下載地圖,可以直接在全球地圖上點選區域\n\n •更好的重新計算路線現在引擎經過反復的嘗試建議一條不同的路線\n\n •興趣點搜尋現在支援更具體的查詢\n\n •改善過的興趣點和 OSM 編輯功能\n\n •地圖資料下載結構和界面重新設計\n\n 還有更多... "</string>
<string name="copied_to_clipboard">複製到剪貼簿</string>
<string name="dashboard_or_drawer_title">新的起始選擇</string>
<string name="dashboard_or_drawer_description">您現在可以選擇,如果應用程式直接啟動在地圖螢幕或是永遠先顯示儀表板。您稍後也可以在設定中更改</string>
<string name="access_from_map_description">將儀表板按鈕放置在地圖螢幕上</string>
<string name="dashboard_or_drawer_title">儀表板或選單控制</string>
<string name="dashboard_or_drawer_description">還有一種新的選擇,透過具彈性的儀表板或固定的選單優先控制應用程式。在儀表板中也可以更改您的選擇</string>
<string name="access_from_map_description">選單按鈕啟動儀表板,無選單</string>
<string name="access_from_map">從地圖進入</string>
<string name="use_dashboard_btn">開始儀表板</string>
<string name="use_drawer_btn">開始地圖</string>
<string name="use_dashboard_btn">使用儀表板</string>
<string name="use_drawer_btn">使用地圖</string>
</resources>

View file

@ -9,7 +9,7 @@
3. All your modified/created strings are in the top of the file (to make easier find what\'s translated).
PLEASE: Have a look at http://code.google.com/p/osmand/wiki/UIConsistency, it may really improve your and our work :-) Thx - Hardy
-->
<string name="access_from_map_description">Places a dashboard button on the map screen</string>
<string name="access_from_map_description">Menu button launches dashboard, not menu</string>
<string name="access_from_map">Access from map</string>
<string name="show_on_start_description">\'Off\' directly launches the map screen</string>
<string name="show_on_start">Show on start</string>
@ -18,6 +18,7 @@
\u2022 New context-sensitive UI for tapping locations on the map and on other screens\n\n
\u2022 Map screen is now launched directly unless \'Show dashboard on app start\' is selected\n\n
\u2022 Configure which and how cards are displayed on the dashboard\n\n
\u2022 Bypass the dashboard if you like menu-based app control\n\n
\u2022 To download maps, regions can be directly selected by tapping on the world map\n\n
\u2022 POI Search now supports more specific queries\n\n
\u2022 Improved POI and OSM editing functionality\n\n
@ -2091,8 +2092,8 @@ Afghanistan, Albania, Algeria, Andorra, Angola, Anguilla, Antigua and Barbuda, A
<string name="map_legend">Map legend</string>
<string name="save_poi_without_poi_type_message">Do you really want to save poi without POI type?</string>
<string name="poi_context_menu_modify_osm_change">Modify OSM change</string>
<string name="use_dashboard_btn">Launch dashboard</string>
<string name="use_drawer_btn">Launch map</string>
<string name="dashboard_or_drawer_title">New startup choice</string>
<string name="dashboard_or_drawer_description">You can now select if the app directly launches the map screen or always displays the dashboard first. Your choice can always be changed in the dashboard settings.</string>
<string name="use_dashboard_btn">Use dashboard</string>
<string name="use_drawer_btn">Use menu</string>
<string name="dashboard_or_drawer_title">Dashboard or menu control</string>
<string name="dashboard_or_drawer_description">There is a new choice to primarily control the app via the flexible dashboard or a static menu. Your choice can always be changed in the dashboard settings.</string>
</resources>

View file

@ -41,6 +41,7 @@ public class PointDescription {
public static final String POINT_TYPE_OSM_BUG = "bug";
public static final String POINT_TYPE_WORLD_REGION = "world_region";
public static final String POINT_TYPE_GPX_ITEM = "gpx_item";
public static final String POINT_TYPE_WORLD_REGION_SHOW_ON_MAP = "world_region_show_on_map";
public static final PointDescription LOCATION_POINT = new PointDescription(POINT_TYPE_LOCATION, "");
@ -149,6 +150,10 @@ public class PointDescription {
}
}
public boolean contextMenuDisabled() {
return POINT_TYPE_WORLD_REGION_SHOW_ON_MAP.equals(type);
}
public boolean isLocation() {
return POINT_TYPE_LOCATION.equals(type);
}

View file

@ -96,8 +96,6 @@ public class OsmAndAppCustomization {
public void prepareOptionsMenu(MapActivity mapActivity, ContextMenuAdapter optionsMenuHelper) {
}
public void prepareLocationMenu(MapActivity mapActivity, ContextMenuAdapter adapter) {
}
public String getIndexesUrl() {
return "http://"+IndexConstants.INDEX_DOWNLOAD_DOMAIN+"/get_indexes?gzip&" + Version.getVersionAsURLParam(app); //$NON-NLS-1$;

View file

@ -1449,7 +1449,6 @@ public class OsmandSettings {
public final static String POINT_NAVIGATE_LAT = "point_navigate_lat"; //$NON-NLS-1$
public final static String POINT_NAVIGATE_LON = "point_navigate_lon"; //$NON-NLS-1$
public final static String POINT_NAVIGATE_ROUTE = "point_navigate_route_integer"; //$NON-NLS-1$
public final static int NAVIGATE_CURRENT_GPX = 2;
public final static int NAVIGATE = 1;
public final static String POINT_NAVIGATE_DESCRIPTION = "point_navigate_description"; //$NON-NLS-1$
public final static String START_POINT_LAT = "start_point_lat"; //$NON-NLS-1$
@ -1501,6 +1500,9 @@ public class OsmandSettings {
return settingsAPI.edit(globalPreferences).remove(INTERMEDIATE_POINTS).remove(INTERMEDIATE_POINTS_DESCRIPTION).commit();
}
public final CommonPreference<Boolean> USE_INTERMEDIATE_POINTS_NAVIGATION =
new BooleanPreference("use_intermediate_points_navigation", false).makeGlobal().cache();
public List<String> getIntermediatePointDescriptions(int sz) {
List<String> list = new ArrayList<String>();
String ip = settingsAPI.getString(globalPreferences,INTERMEDIATE_POINTS_DESCRIPTION, "");
@ -1604,11 +1606,7 @@ public class OsmandSettings {
}
public boolean navigateDialog() {
return navigateDialog(false);
}
public boolean navigateDialog(boolean gpx) {
return settingsAPI.edit(globalPreferences).putInt(POINT_NAVIGATE_ROUTE, gpx ? NAVIGATE_CURRENT_GPX : NAVIGATE).commit();
return settingsAPI.edit(globalPreferences).putInt(POINT_NAVIGATE_ROUTE, NAVIGATE).commit();
}

View file

@ -123,13 +123,31 @@ public class TargetPointsHelper {
return intermediatePoints;
}
public List<TargetPoint> getIntermediatePointsNavigation() {
List<TargetPoint> intermediatePoints = new ArrayList<>();
if (settings.USE_INTERMEDIATE_POINTS_NAVIGATION.get()) {
for (TargetPoint t : intermediatePoints) {
intermediatePoints.add(t);
}
}
return intermediatePoints;
}
public List<LatLon> getIntermediatePointsLatLon() {
List<LatLon> intermediatePointsLatLon = new ArrayList<LatLon>();
for (TargetPoint t : intermediatePoints) {
intermediatePointsLatLon.add(t.point);
}
return intermediatePointsLatLon;
}
public List<LatLon> getIntermediatePointsLatLonNavigation() {
List<LatLon> intermediatePointsLatLon = new ArrayList<LatLon>();
if (settings.USE_INTERMEDIATE_POINTS_NAVIGATION.get()) {
for (TargetPoint t : intermediatePoints) {
intermediatePointsLatLon.add(t.point);
}
}
return intermediatePointsLatLon;
}
@ -209,13 +227,14 @@ public class TargetPointsHelper {
private void updateRoutingHelper() {
LatLon start = settings.getPointToStart();
Location lastKnownLocation = ctx.getLocationProvider().getLastKnownLocation();
List<LatLon> is = getIntermediatePointsLatLonNavigation();
if((routingHelper.isFollowingMode() && lastKnownLocation != null) || start == null) {
routingHelper.setFinalAndCurrentLocation(settings.getPointToNavigate(),
settings.getIntermediatePoints(), lastKnownLocation);
is, lastKnownLocation);
} else {
Location loc = wrap(start);
routingHelper.setFinalAndCurrentLocation(settings.getPointToNavigate(),
settings.getIntermediatePoints(), loc);
is, loc);
}
}

View file

@ -442,7 +442,7 @@ public class MapActivity extends AccessibleActivity implements DownloadEvents {
RoutingHelper routingHelper = app.getRoutingHelper();
if (routingHelper.isFollowingMode()
&& (!Algorithms.objectEquals(targets.getPointToNavigate().point, routingHelper.getFinalLocation()) || !Algorithms
.objectEquals(targets.getIntermediatePointsLatLon(), routingHelper.getIntermediatePoints()))) {
.objectEquals(targets.getIntermediatePointsLatLonNavigation(), routingHelper.getIntermediatePoints()))) {
targets.updateRouteAndReferesh(true);
}
app.getLocationProvider().resumeAllUpdates();
@ -516,7 +516,7 @@ public class MapActivity extends AccessibleActivity implements DownloadEvents {
getMyApplication().getTargetPointsHelper().navigateToPoint(new LatLon(lat, lon), false,
-1);
getMapActions().enterRoutePlanningMode(null, null, false);
getMapActions().enterRoutePlanningModeGivenGpx(null, null, null, false);
} catch (NumberFormatException e) {
AccessibleToast.makeText(this,
getString(R.string.navigation_intent_invalid, schemeSpecificPart),
@ -541,7 +541,7 @@ public class MapActivity extends AccessibleActivity implements DownloadEvents {
Location loc = new Location("map");
loc.setLatitude(mapView.getLatitude());
loc.setLongitude(mapView.getLongitude());
getMapActions().enterRoutePlanningMode(null, null, status == OsmandSettings.NAVIGATE_CURRENT_GPX);
getMapActions().enterRoutePlanningModeGivenGpx(null, null, null, true);
if (dashboardOnMap.isVisible()) {
dashboardOnMap.hideDashboard();
}
@ -550,7 +550,7 @@ public class MapActivity extends AccessibleActivity implements DownloadEvents {
if (dashboardOnMap.isVisible()) {
dashboardOnMap.hideDashboard();
}
if (mapLabelToShow != null) {
if (mapLabelToShow != null && !mapLabelToShow.contextMenuDisabled()) {
mapContextMenu.setMapCenter(latLonToShow);
mapContextMenu.setMapPosition(mapView.getMapPosition());
mapContextMenu.show(latLonToShow, mapLabelToShow, toShow);

View file

@ -87,64 +87,6 @@ public class MapActivityActions implements DialogProvider {
routingHelper = mapActivity.getMyApplication().getRoutingHelper();
}
public void showNavigationContextMenuPoint(final double latitude, final double longitude) {
final ContextMenuAdapter adapter = new ContextMenuAdapter(mapActivity);
if (!mapActivity.getRoutingHelper().isFollowingMode() && !mapActivity.getRoutingHelper().isRoutePlanningMode()) {
adapter.item(R.string.context_menu_item_directions_to).iconColor(
R.drawable.ic_action_gdirections_dark).reg();
adapter.item(R.string.context_menu_item_directions_from).iconColor(
R.drawable.ic_action_gdirections_dark).reg();
}
final TargetPointsHelper targets = getMyApplication().getTargetPointsHelper();
if (targets.getPointToNavigate() != null) {
adapter.item(R.string.context_menu_item_destination_point).iconColor(R.drawable.ic_action_flag_dark).reg();
adapter.item(R.string.context_menu_item_intermediate_point).iconColor(R.drawable.ic_action_flage_dark).reg();
// For button-less search UI
} else {
adapter.item(R.string.context_menu_item_destination_point).iconColor(R.drawable.ic_action_flag_dark).reg();
}
getMyApplication().getAppCustomization().prepareLocationMenu(mapActivity, adapter);
final AlertDialog.Builder builder = new AlertDialog.Builder(mapActivity);
builder.setTitle(R.string.get_directions);
final ArrayAdapter<?> listAdapter =
adapter.createListAdapter(mapActivity, getMyApplication().getSettings().isLightContent());
builder.setAdapter(listAdapter, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
int standardId = adapter.getElementId(which);
OnContextMenuClick click = adapter.getClickAdapter(which);
if (click != null) {
click.onContextMenuClick(listAdapter, standardId, which, false);
} else if (standardId == R.string.context_menu_item_directions_to) {
targets.navigateToPoint(new LatLon(latitude, longitude), true, -1, null);
enterRoutePlanningMode(null, null, false);
} else if (standardId == R.string.context_menu_item_directions_from) {
enterRoutePlanningMode(new LatLon(latitude, longitude),
mapActivity.getContextMenu().getPointDescription(), false);
} else if (standardId == R.string.context_menu_item_intermediate_point ||
standardId == R.string.context_menu_item_destination_point) {
boolean dest = standardId == R.string.context_menu_item_destination_point;
targets.navigateToPoint(new LatLon(latitude, longitude), true,
dest ? -1 : targets.getIntermediatePoints().size(),
mapActivity.getContextMenu().getPointDescription());
if (targets.getIntermediatePoints().size() > 0) {
openIntermediatePointsDialog();
}
}
}
});
builder.create().show();
}
public void directionTo(double latitude, double longitude, PointDescription pd) {
final TargetPointsHelper targets = getMyApplication().getTargetPointsHelper();
targets.navigateToPoint(new LatLon(latitude, longitude), true, targets.getIntermediatePoints().size() + 1, pd);
enterRoutePlanningMode(null, null, false);
}
public void addAsWaypoint(double latitude, double longitude, PointDescription pd) {
TargetPointsHelper targets = getMyApplication().getTargetPointsHelper();
@ -336,7 +278,6 @@ public class MapActivityActions implements DialogProvider {
R.drawable.ic_action_gdirections_dark).reg();
}
OsmandPlugin.registerMapContextMenu(mapActivity, latitude, longitude, adapter, selectedObj);
getMyApplication().getAppCustomization().prepareLocationMenu(mapActivity, adapter);
final AlertDialog.Builder builder = new AlertDialog.Builder(mapActivity);
final ArrayAdapter<?> listAdapter =
@ -358,7 +299,7 @@ public class MapActivityActions implements DialogProvider {
} else if (standardId == R.string.context_menu_item_directions_from) {
mapActivity.getContextMenu().hide();
enterRoutePlanningMode(new LatLon(latitude, longitude),
mapActivity.getContextMenu().getPointDescription(), false);
mapActivity.getContextMenu().getPointDescription());
}
}
});
@ -395,7 +336,8 @@ public class MapActivityActions implements DialogProvider {
}
}
public void enterRoutePlanningMode(final LatLon from, final PointDescription fromName, boolean useCurrentGPX) {
public void enterRoutePlanningMode(final LatLon from, final PointDescription fromName) {
final boolean useIntermediatePointsByDefault = true;
List<SelectedGpxFile> selectedGPXFiles = mapActivity.getMyApplication().getSelectedGpxHelper()
.getSelectedGPXFiles();
final List<GPXFile> gpxFiles = new ArrayList<GPXFile>();
@ -407,14 +349,14 @@ public class MapActivityActions implements DialogProvider {
}
}
if (gpxFiles.size() > 0 && !useCurrentGPX) {
if (gpxFiles.size() > 0) {
AlertDialog.Builder bld = new AlertDialog.Builder(mapActivity);
if (gpxFiles.size() == 1) {
bld.setMessage(R.string.use_displayed_track_for_navigation);
bld.setPositiveButton(R.string.shared_string_yes, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
enterRoutePlanningModeImpl(gpxFiles.get(0), from, fromName);
enterRoutePlanningModeGivenGpx(gpxFiles.get(0), from, fromName, useIntermediatePointsByDefault);
}
});
} else {
@ -436,7 +378,7 @@ public class MapActivityActions implements DialogProvider {
bld.setAdapter(adapter, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
enterRoutePlanningModeImpl(gpxFiles.get(i), from, fromName);
enterRoutePlanningModeGivenGpx(gpxFiles.get(i), from, fromName, useIntermediatePointsByDefault);
}
});
}
@ -444,17 +386,17 @@ public class MapActivityActions implements DialogProvider {
bld.setNegativeButton(R.string.shared_string_no, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
enterRoutePlanningModeImpl(null, from, fromName);
enterRoutePlanningModeGivenGpx(null, from, fromName, useIntermediatePointsByDefault);
}
});
bld.show();
} else {
enterRoutePlanningModeImpl(useCurrentGPX ? gpxFiles.get(0) : null, from, fromName);
enterRoutePlanningModeGivenGpx(null, from, fromName, useIntermediatePointsByDefault);
}
}
private void enterRoutePlanningModeImpl(GPXFile gpxFile, LatLon from, PointDescription fromName) {
public void enterRoutePlanningModeGivenGpx(GPXFile gpxFile, LatLon from, PointDescription fromName, boolean useIntermediatePointsByDefault) {
settings.USE_INTERMEDIATE_POINTS_NAVIGATION.set(useIntermediatePointsByDefault);
OsmandApplication app = mapActivity.getMyApplication();
TargetPointsHelper targets = app.getTargetPointsHelper();
@ -627,7 +569,7 @@ public class MapActivityActions implements DialogProvider {
@Override
public boolean onContextMenuClick(ArrayAdapter<?> adapter, int itemId, int pos, boolean isChecked) {
if (!routingHelper.isFollowingMode() && !routingHelper.isRoutePlanningMode()) {
enterRoutePlanningMode(null, null, false);
enterRoutePlanningMode(null, null);
} else {
mapActivity.getMapViewTrackingUtilities().switchToRoutePlanningMode();
mapActivity.refreshMap();

View file

@ -292,8 +292,8 @@ public class MapActivityLayers {
private void addFilterToList(final ContextMenuAdapter adapter, final List<PoiUIFilter> list, PoiUIFilter f) {
list.add(f);
Item it = adapter.item(f.getName()).selected(-1);
if (RenderingIcons.containsBigIcon(f.getSimplifiedId())) {
it.icon(RenderingIcons.getBigIconResourceId(f.getSimplifiedId()));
if (RenderingIcons.containsBigIcon(f.getIconId())) {
it.icon(RenderingIcons.getBigIconResourceId(f.getIconId()));
} else {
it.icon(R.drawable.mx_user_defined);
}

View file

@ -200,16 +200,17 @@ public class SettingsNavigationActivity extends SettingsBaseActivity {
category.removePreference(speedLimitExceed);
}
Integer[] delayIntervals = new Integer[] { -1, 3, 5, 7, 10, 15, 20 };
String[] delayIntervalNames = new String[delayIntervals.length];
for (int i = 0; i < delayIntervals.length; i++) {
if (i == 0) {
delayIntervalNames[i] = getString(R.string.auto_follow_route_never);
} else {
delayIntervalNames[i] = delayIntervals[i] + " " + getString(R.string.int_seconds);
}
}
registerListPreference(settings.DELAY_TO_START_NAVIGATION, screen, delayIntervalNames, delayIntervals);
// deprecated 2.2
// Integer[] delayIntervals = new Integer[] { -1, 3, 5, 7, 10, 15, 20 };
// String[] delayIntervalNames = new String[delayIntervals.length];
// for (int i = 0; i < delayIntervals.length; i++) {
// if (i == 0) {
// delayIntervalNames[i] = getString(R.string.auto_follow_route_never);
// } else {
// delayIntervalNames[i] = delayIntervals[i] + " " + getString(R.string.int_seconds);
// }
// }
// registerListPreference(settings.DELAY_TO_START_NAVIGATION, screen, delayIntervalNames, delayIntervals);
if(getIntent() != null && getIntent().hasExtra(INTENT_SKIP_DIALOG)) {

View file

@ -268,8 +268,8 @@ public class SearchPoiFilterFragment extends OsmAndListFragment implements Searc
String name;
if (item instanceof PoiUIFilter) {
final PoiUIFilter model = (PoiUIFilter) item;
if (RenderingIcons.containsBigIcon(model.getSimplifiedId())) {
icon.setImageDrawable(RenderingIcons.getBigIcon(getActivity(), model.getSimplifiedId()));
if (RenderingIcons.containsBigIcon(model.getIconId())) {
icon.setImageDrawable(RenderingIcons.getBigIcon(getActivity(), model.getIconId()));
} else if(PoiUIFilter.BY_NAME_FILTER_ID.equals(model.getFilterId()) ||
model instanceof NominatimPoiFilter){
icon.setImageResource(R.drawable.mx_name_finder);

View file

@ -334,9 +334,13 @@ public class MapViewTrackingUtilities implements OsmAndLocationListener, IMapLoc
bottom = Math.min(bottom, l.getLatitude());
}
RotatedTileBox tb = new RotatedTileBox(rt);
tb.setPixelDimensions(3 * tb.getPixWidth() / 4, 3 * tb.getPixHeight() / 4);
double clat = bottom / 2 + top / 2;
tb.setPixelDimensions(5 * tb.getPixWidth() / 6, 5 * tb.getPixHeight() / 6);
double clat = 5 * bottom / 4 - top / 4;
double clon = left / 2 + right / 2;
// TODO for landscape menu
// double clat = bottom / 2 + top / 2;
// double clon = 5 * left / 4 - right / 4;
tb.setLatLonCenter(clat, clon);
while(tb.getZoom() >= 7 && (!tb.containsLatLon(top, left) || !tb.containsLatLon(bottom, right))) {
tb.setZoom(tb.getZoom() - 1);

View file

@ -603,7 +603,7 @@ public class DashboardOnMap implements ObservableScrollViewCallbacks {
public void navigationAction() {
RoutingHelper routingHelper = mapActivity.getRoutingHelper();
if (!routingHelper.isFollowingMode() && !routingHelper.isRoutePlanningMode()) {
mapActivity.getMapActions().enterRoutePlanningMode(null, null, false);
mapActivity.getMapActions().enterRoutePlanningMode(null, null);
} else {
mapActivity.getRoutingHelper().setRoutePlanningMode(true);
mapActivity.getMapViewTrackingUtilities().switchToRoutePlanningMode();

View file

@ -31,6 +31,7 @@ import net.osmand.IProgress;
import net.osmand.PlatformUtil;
import net.osmand.access.AccessibleToast;
import net.osmand.data.LatLon;
import net.osmand.data.PointDescription;
import net.osmand.map.WorldRegion;
import net.osmand.map.WorldRegion.RegionParams;
import net.osmand.plus.OsmandApplication;
@ -793,7 +794,12 @@ public class DownloadActivity extends ActionBarProgressActivity implements Downl
@Override
public void onClick(View v) {
OsmandApplication app = (OsmandApplication) getActivity().getApplication();
app.getSettings().setMapLocationToShow(regionCenter.getLatitude(), regionCenter.getLongitude(), 5, null);
app.getSettings().setMapLocationToShow(
regionCenter.getLatitude(),
regionCenter.getLongitude(),
5,
new PointDescription(PointDescription.POINT_TYPE_WORLD_REGION_SHOW_ON_MAP, ""));
dismiss();
MapActivity.launchMapActivityMoveToTop(getActivity());
}

View file

@ -182,8 +182,10 @@ public class GpxUiHelper {
}
for (SelectedGpxFile selectedGpx : selectedGpxFiles) {
if (!selectedGpx.getGpxFile().showCurrentTrack) {
list.add(selectedGpx.getGpxFile().path.substring(gpxDirLength + 1));
}
}
final ContextMenuAdapter adapter = createGpxContextMenuAdapter(activity, list, null, false,
showCurrentGpx);

View file

@ -4,12 +4,12 @@ import android.support.v4.app.Fragment;
import android.support.v7.app.AlertDialog;
import android.view.View;
import android.widget.LinearLayout;
import net.osmand.CallbackWithObject;
import net.osmand.data.FavouritePoint;
import net.osmand.data.LatLon;
import net.osmand.data.PointDescription;
import net.osmand.plus.ContextMenuAdapter;
import net.osmand.plus.TargetPointsHelper;
import net.osmand.plus.GPXUtilities.GPXFile;
import net.osmand.plus.GPXUtilities.WptPt;
import net.osmand.plus.GpxSelectionHelper.SelectedGpxFile;
@ -352,9 +352,11 @@ public class MapContextMenu extends MenuTitleController {
}
public void fabPressed() {
mapActivity.getMapActions().directionTo(latLon.getLatitude(), latLon.getLongitude(), getPointDescription());
hide();
mapActivity.getMapLayers().getMapControlsLayer().showRouteInfoControlDialog();
final TargetPointsHelper targets = mapActivity.getMyApplication().getTargetPointsHelper();
targets.navigateToPoint(latLon, true, targets.getIntermediatePoints().size() + 1, getPointDescription());
mapActivity.getMapActions().enterRoutePlanningModeGivenGpx(null, null, null, false);
// mapActivity.getMapLayers().getMapControlsLayer().showRouteInfoControlDialog();
}
public void buttonWaypointPressed() {
@ -406,7 +408,7 @@ public class MapContextMenu extends MenuTitleController {
final List<SelectedGpxFile> list
= mapActivity.getMyApplication().getSelectedGpxHelper().getSelectedGPXFiles();
if (list.isEmpty()) {
if (list.isEmpty() || (list.size() == 1 && list.get(0).getGpxFile().showCurrentTrack)) {
GPXFile gpxFile = mapActivity.getMyApplication().getSavingTrackHelper().getCurrentGpx();
getWptPtPointEditor().add(gpxFile, latLon, title);
} else {

View file

@ -59,6 +59,7 @@ public class MapMultiSelectionMenuFragment extends Fragment implements AdapterVi
@Override
public void onStart() {
super.onStart();
menu.getMapActivity().getMapLayers().getMapControlsLayer().setControlsClickable(false);
menu.getMapActivity().getContextMenu().setBaseFragmentVisibility(false);
}
@ -69,6 +70,7 @@ public class MapMultiSelectionMenuFragment extends Fragment implements AdapterVi
menu.onStop();
}
menu.getMapActivity().getContextMenu().setBaseFragmentVisibility(true);
menu.getMapActivity().getMapLayers().getMapControlsLayer().setControlsClickable(true);
}
public static void showInstance(final MapActivity mapActivity) {

View file

@ -187,6 +187,7 @@ public class EditPoiData {
if(pt != null) {
tagValues.remove(pt.getOsmTag());
tagValues.remove(pt.getOsmTag2());
category = pt.getCategory();
}
notifyDatasetChanged(POI_TYPE_TAG);
}

View file

@ -44,7 +44,6 @@ import android.widget.ImageButton;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;
import net.osmand.CallbackWithObject;
import net.osmand.PlatformUtil;
import net.osmand.access.AccessibleToast;
@ -253,17 +252,35 @@ public class EditPoiDialogFragment extends DialogFragment {
@Override
public void afterTextChanged(Editable s) {
if (!getEditPoiData().isInEdit()) {
PoiType pt = getEditPoiData().getAllTranslatedSubTypes().get(s.toString().toLowerCase());
if(pt != null) {
poiTypeTextInputLayout.setHint(pt.getCategory().getTranslation());
}
getEditPoiData().updateTypeTag(s.toString());
poiTypeTextInputLayout.setHint(editPoiData.getPoiCategory().getTranslation());
}
}
});
poiNameEditText.setOnEditorActionListener(mOnEditorActionListener);
poiTypeEditText.setOnEditorActionListener(mOnEditorActionListener);
poiTypeEditText.setText(editPoiData.getPoiTypeString());
poiTypeEditText.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(final View v, MotionEvent event) {
final EditText editText = (EditText) v;
final int DRAWABLE_RIGHT = 2;
if (event.getAction() == MotionEvent.ACTION_UP) {
if (event.getX() >= (editText.getRight()
- editText.getCompoundDrawables()[DRAWABLE_RIGHT].getBounds().width()
- editText.getPaddingRight())) {
if (editPoiData.getPoiCategory() != null) {
DialogFragment dialogFragment =
PoiSubTypeDialogFragment.createInstance(editPoiData.getPoiCategory());
dialogFragment.show(getChildFragmentManager(), "PoiSubTypeDialogFragment");
}
return true;
}
}
return false;
}
});
Button saveButton = (Button) view.findViewById(R.id.saveButton);
saveButton.setText(mOpenstreetmapUtil instanceof OpenstreetmapRemoteUtil
@ -304,10 +321,12 @@ public class EditPoiDialogFragment extends DialogFragment {
} else {
new SaveWithAdvancedTagsDialogFragment().show(getChildFragmentManager(), "dialog");
}
return;
}
} else if(editPoiData.getPoiCategory() == getMyApplication().getPoiTypes().getOtherPoiCategory()) {
poiTypeEditText.setError(getResources().getString(R.string.please_specify_poi_type));
} else {
save();
}
}
private void save() {
Node original = editPoiData.getEntity();
@ -446,41 +465,26 @@ public class EditPoiDialogFragment extends DialogFragment {
}.execute();
}
public void updateType(PoiCategory type) {
public void setPoiCategory(PoiCategory type) {
editPoiData.updateType(type);
poiTypeEditText.setText(editPoiData.getPoiTypeString());
poiTypeTextInputLayout.setHint(editPoiData.getPoiCategory().getTranslation());
setAdapterForPoiTypeEditText();
poiTypeEditText.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(final View v, MotionEvent event) {
final EditText editText = (EditText) v;
final int DRAWABLE_RIGHT = 2;
if (event.getAction() == MotionEvent.ACTION_UP) {
if (event.getX() >= (editText.getRight()
- editText.getCompoundDrawables()[DRAWABLE_RIGHT].getBounds().width()
- editText.getPaddingRight())) {
if (editPoiData.getPoiCategory() != null) {
DialogFragment dialogFragment =
PoiSubTypeDialogFragment.createInstance(editPoiData.getPoiCategory());
dialogFragment.show(getChildFragmentManager(), "PoiSubTypeDialogFragment");
}
return true;
}
}
return false;
}
});
}
private void setAdapterForPoiTypeEditText() {
final Map<String, PoiType> subCategories = new LinkedHashMap<>();
for (Map.Entry<String, PoiType> s : editPoiData.getAllTranslatedSubTypes().entrySet()) {
if (!subCategories.containsKey(s.getKey())) {
subCategories.put(Algorithms.capitalizeFirstLetterAndLowercase(s.getKey()), s.getValue());
PoiCategory ct = editPoiData.getPoiCategory();
if(ct != null) {
for (PoiType s : ct.getPoiTypes()) {
if(!s.isReference() && !s.isNotEditableOsm() && s.getBaseLangType() == null) {
addMapEntryAdapter(subCategories, s.getTranslation(), s);
addMapEntryAdapter(subCategories, s.getKeyName().replace('_', ' '), s);
}
}
}
for (Map.Entry<String, PoiType> s : editPoiData.getAllTranslatedSubTypes().entrySet()) {
addMapEntryAdapter(subCategories, s.getKey(), s.getValue());
}
final ArrayAdapter<Object> adapter;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
adapter = new ArrayAdapter<>(getActivity(),
@ -513,14 +517,8 @@ public class EditPoiDialogFragment extends DialogFragment {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
Object item = parent.getAdapter().getItem(position);
//noinspection SuspiciousMethodCalls
if (subCategories.containsKey(item.toString().toLowerCase())) {
//noinspection SuspiciousMethodCalls
PoiType pt = subCategories.get(item);
String keyName = pt.getKeyName();
poiTypeTextInputLayout.setHint(pt.getCategory().getTranslation());
poiTypeEditText.setText(keyName);
}
poiTypeEditText.setText(item.toString());
setAdapterForPoiTypeEditText();
}
@Override
@ -530,6 +528,12 @@ public class EditPoiDialogFragment extends DialogFragment {
}
private void addMapEntryAdapter(final Map<String, PoiType> subCategories, String key, PoiType v) {
if (!subCategories.containsKey(key.toLowerCase())) {
subCategories.put(Algorithms.capitalizeFirstLetterAndLowercase(key), v);
}
}
private OsmandApplication getMyApplication() {
return (OsmandApplication) getActivity().getApplication();
}

View file

@ -1,7 +1,7 @@
package net.osmand.plus.osmedit.dialogs;
import java.util.Map;
import java.util.Set;
import java.util.TreeSet;
import net.osmand.osm.MapPoiTypes;
import net.osmand.osm.PoiCategory;
@ -24,8 +24,16 @@ public class PoiSubTypeDialogFragment extends DialogFragment {
MapPoiTypes poiTypes = ((OsmandApplication) getActivity().getApplication()).getPoiTypes();
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
final PoiCategory a = poiTypes.getPoiCategoryByName((String) getArguments().getSerializable(KEY_POI_CATEGORY));
final Map<String, PoiType> allTranslatedNames = poiTypes.getAllTranslatedNames(a, true);
Set<String> strings = allTranslatedNames.keySet();
Set<String> strings = new TreeSet<>();
if(a == poiTypes.getOtherPoiCategory()) {
for (PoiCategory category : poiTypes.getCategories(false)) {
if (!category.isNotEditableOsm()) {
addCategory(category, strings);
}
}
} else {
addCategory(a, strings);
}
final String[] subCats = strings.toArray(new String[strings.size()]);
builder.setItems(subCats, new DialogInterface.OnClickListener() {
@Override
@ -37,6 +45,14 @@ public class PoiSubTypeDialogFragment extends DialogFragment {
return builder.create();
}
private void addCategory(final PoiCategory a, Set<String> strings) {
for (PoiType s : a.getPoiTypes()) {
if (!s.isReference() && !s.isNotEditableOsm() && s.getBaseLangType() == null) {
strings.add(s.getTranslation());
}
}
}
public static PoiSubTypeDialogFragment createInstance(PoiCategory cat) {
PoiSubTypeDialogFragment fragment = new PoiSubTypeDialogFragment();
Bundle args = new Bundle();

View file

@ -21,22 +21,19 @@ public class PoiTypeDialogFragment extends DialogFragment {
public Dialog onCreateDialog(Bundle savedInstanceState) {
MapPoiTypes poiTypes = ((OsmandApplication) getActivity().getApplication()).getPoiTypes();
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
final List<PoiCategory> categories = poiTypes.getCategories(false);
ArrayList<String> vals = new ArrayList<>(categories.size());
ArrayList<PoiCategory> toDelete = new ArrayList<>();
for (PoiCategory category : categories) {
if (category.isNotEditableOsm()) {
toDelete.add(category);
} else {
final List<PoiCategory> categories = new ArrayList<PoiCategory>();
ArrayList<String> vals = new ArrayList<>();
for (PoiCategory category : poiTypes.getCategories(false)) {
if (!category.isNotEditableOsm()) {
vals.add(category.getTranslation());
categories.add(category);
}
}
categories.removeAll(toDelete);
builder.setItems(vals.toArray(new String[vals.size()]), new Dialog.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
PoiCategory aType = categories.get(which);
((EditPoiDialogFragment) getParentFragment()).updateType(aType);
((EditPoiDialogFragment) getParentFragment()).setPoiCategory(aType);
dismiss();
}
});

View file

@ -23,6 +23,7 @@ import net.osmand.plus.R;
import net.osmand.plus.api.SQLiteAPI.SQLiteConnection;
import net.osmand.plus.api.SQLiteAPI.SQLiteCursor;
import net.osmand.plus.api.SQLiteAPI.SQLiteStatement;
import net.osmand.util.Algorithms;
public class PoiFiltersHelper {
private final OsmandApplication application;
@ -33,8 +34,10 @@ public class PoiFiltersHelper {
private PoiUIFilter searchByNamePOIFilter;
private PoiUIFilter customPOIFilter;
private PoiUIFilter showAllPOIFilter;
private PoiUIFilter localWikiPoiFilter;
private List<PoiUIFilter> cacheTopStandardFilters;
private static final String UDF_CAR_AID = "car_aid";
private static final String UDF_FOR_TOURISTS = "for_tourists";
private static final String UDF_FOOD_SHOP = "food_shop";
@ -78,6 +81,8 @@ public class PoiFiltersHelper {
return searchByNamePOIFilter;
}
public PoiUIFilter getCustomPOIFilter() {
if(customPOIFilter == null){
PoiUIFilter filter = new PoiUIFilter(application.getString(R.string.poi_filter_custom_filter),
@ -88,9 +93,23 @@ public class PoiFiltersHelper {
return customPOIFilter;
}
public PoiUIFilter getLocalWikiPOIFilter() {
if(localWikiPoiFilter == null){
PoiType place = application.getPoiTypes().getPoiTypeByKey("wiki_place");
if (place != null && !Algorithms.isEmpty(application.getLanguage())) {
PoiUIFilter filter = new PoiUIFilter(place, application, " " +
application.getLangTranslation(application.getLanguage())); //$NON-NLS-1$
filter.setSavedFilterByName("wiki:lang:"+application.getLanguage());
filter.setStandardFilter(true);
localWikiPoiFilter = filter;
}
}
return localWikiPoiFilter;
}
public PoiUIFilter getShowAllPOIFilter() {
if(showAllPOIFilter == null){
PoiUIFilter filter = new PoiUIFilter(null, application); //$NON-NLS-1$
PoiUIFilter filter = new PoiUIFilter(null, application, ""); //$NON-NLS-1$
filter.setStandardFilter(true);
showAllPOIFilter = filter;
}
@ -117,7 +136,7 @@ public class PoiFiltersHelper {
}
}
PoiUIFilter ff = getFilterById(filterId, getCustomPOIFilter(), getSearchByNamePOIFilter(),
getShowAllPOIFilter(), getNominatimPOIFilter(), getNominatimAddressFilter());
getLocalWikiPOIFilter(), getShowAllPOIFilter(), getNominatimPOIFilter(), getNominatimAddressFilter());
if (ff != null) {
return ff;
}
@ -125,7 +144,7 @@ public class PoiFiltersHelper {
String typeId = filterId.substring(PoiUIFilter.STD_PREFIX.length());
AbstractPoiType tp = application.getPoiTypes().getAnyPoiTypeByKey(typeId);
if(tp != null) {
PoiUIFilter lf = new PoiUIFilter(tp, application);
PoiUIFilter lf = new PoiUIFilter(tp, application, "");
ArrayList<PoiUIFilter> copy = new ArrayList<PoiUIFilter>(cacheTopStandardFilters);
copy.add(lf);
sortListOfFilters(copy);
@ -134,7 +153,7 @@ public class PoiFiltersHelper {
}
AbstractPoiType lt = application.getPoiTypes().getAnyPoiAdditionalTypeByKey(typeId);
if(lt != null) {
PoiUIFilter lf = new PoiUIFilter(lt, application);
PoiUIFilter lf = new PoiUIFilter(lt, application, "");
ArrayList<PoiUIFilter> copy = new ArrayList<PoiUIFilter>(cacheTopStandardFilters);
copy.add(lf);
sortListOfFilters(copy);
@ -182,10 +201,13 @@ public class PoiFiltersHelper {
List<PoiUIFilter> top = new ArrayList<PoiUIFilter>();
// user defined
top.addAll(getUserDefinedPoiFilters());
if(getLocalWikiPOIFilter() != null) {
top.add(getLocalWikiPOIFilter());
}
// default
MapPoiTypes poiTypes = application.getPoiTypes();
for (PoiFilter t : poiTypes.getTopVisibleFilters()) {
top.add(new PoiUIFilter(t, application));
top.add(new PoiUIFilter(t, application, ""));
}
sortListOfFilters(top);
cacheTopStandardFilters = top;

View file

@ -46,6 +46,7 @@ public class PoiUIFilter implements SearchPoiTypeFilter {
private Map<String, PoiType> poiAdditionals = new HashMap<String, PoiType>();
protected String filterId;
protected String standardIconId = "";
protected String name;
protected boolean isStandardFilter;
@ -62,12 +63,14 @@ public class PoiUIFilter implements SearchPoiTypeFilter {
protected List<Amenity> currentSearchResult = null;
// constructor for standard filters
public PoiUIFilter(AbstractPoiType type, OsmandApplication application) {
public PoiUIFilter(AbstractPoiType type, OsmandApplication application, String idSuffix) {
this.app = application;
isStandardFilter = true;
filterId = STD_PREFIX + (type == null ? null : type.getKeyName());
standardIconId = (type == null ? null : type.getKeyName());
filterId = STD_PREFIX + standardIconId + idSuffix;
poiTypes = application.getPoiTypes();
name = type == null ? application.getString(R.string.poi_filter_closest_poi) : type.getTranslation(); //$NON-NLS-1$
name = type == null ? application.getString(R.string.poi_filter_closest_poi) : (type.getTranslation() + idSuffix); //$NON-NLS-1$
if (type == null) {
initSearchAll();
updatePoiAdditionals();
@ -79,6 +82,7 @@ public class PoiUIFilter implements SearchPoiTypeFilter {
}
}
// search by name standard
protected PoiUIFilter(OsmandApplication application) {
this.app = application;
@ -520,9 +524,9 @@ public class PoiUIFilter implements SearchPoiTypeFilter {
return poiAdditionals;
}
public String getSimplifiedId(){
public String getIconId(){
if(filterId.startsWith(STD_PREFIX)) {
return filterId.substring(STD_PREFIX.length()).toLowerCase();
return standardIconId;
} else if(filterId.startsWith(USER_PREFIX)) {
return filterId.substring(USER_PREFIX.length()).toLowerCase();
}

View file

@ -458,21 +458,27 @@ public class RoutingHelper {
if(route.getIntermediatePointsToPass() > 0 && route.getDistanceToNextIntermediate(lastFixedLocation) < POSITION_TOLERANCE * 2) {
showMessage(app.getString(R.string.arrived_at_intermediate_point));
route.passIntermediatePoint();
TargetPointsHelper targets = app.getTargetPointsHelper();
List<TargetPoint> ns = targets.getIntermediatePoints();
int toDel = targets.getIntermediatePoints().size() - route.getIntermediatePointsToPass();
int currentIndex = toDel - 1;
String name = currentIndex < 0 || currentIndex >= ns.size() ||
ns.get(currentIndex ) == null ? "" : ns.get(currentIndex ).getOnlyName();
String name = "";
if(intermediatePoints != null ) {
LatLon rm = intermediatePoints.remove(0);
List<TargetPoint> ll = targets.getIntermediatePointsNavigation();
int ind = -1;
for(int i = 0; i < ll.size(); i++) {
if(ll.get(i).point != null && MapUtils.getDistance(ll.get(i).point, rm) < 5) {
name = ll.get(i).getOnlyName();
ind = i;
break;
}
}
if(ind >= 0) {
targets.removeWayPoint(false, ind);
}
}
if(isFollowingMode) {
voiceRouter.arrivedIntermediatePoint(name);
}
while(toDel > 0) {
targets.removeWayPoint(false, 0);
toDel--;
}
// double check
while(intermediatePoints != null && route.getIntermediatePointsToPass() < intermediatePoints.size()) {
intermediatePoints.remove(0);
}

View file

@ -95,6 +95,7 @@ public class MapControlsLayer extends OsmandMapLayer {
private MapHudButton mapZoomIn;
private MapHudButton layersHud;
private MapHudButton mapDashControl;
private long lastZoom;
public MapControlsLayer(MapActivity activity) {
this.mapActivity = activity;
@ -374,12 +375,13 @@ public class MapControlsLayer extends OsmandMapLayer {
notifyClicked();
mapRouteInfoControlDialog.hideDialog();
optionsRouteControlDialog.hideDialog();
RoutingHelper routingHelper = mapActivity.getMyApplication().getRoutingHelper();
if (!routingHelper.isFollowingMode() && !routingHelper.isRoutePlanningMode()) {
mapActivity.getMapActions().enterRoutePlanningMode(null, null, false);
} else {
// RoutingHelper routingHelper = mapActivity.getMyApplication().getRoutingHelper();
// if (!routingHelper.isFollowingMode() && !routingHelper.isRoutePlanningMode()) {
// never possible
// mapActivity.getMapActions().enterRoutePlanningMode(null, null, false);
// } else {
startNavigation();
}
// }
}
public void showRouteInfoControlDialog() {
@ -446,13 +448,11 @@ public class MapControlsLayer extends OsmandMapLayer {
notifyClicked();
RoutingHelper routingHelper = mapActivity.getRoutingHelper();
if (!routingHelper.isFollowingMode() && !routingHelper.isRoutePlanningMode()) {
mapActivity.getMapActions().enterRoutePlanningMode(null, null, false);
mapActivity.getMapActions().enterRoutePlanningMode(null, null);
} else {
switchToRoutePlanningLayout();
}
}
});
}
@ -537,9 +537,10 @@ public class MapControlsLayer extends OsmandMapLayer {
}
@Deprecated
public void startCounter() {
OsmandSettings settings = mapActivity.getMyApplication().getSettings();
int del = settings.DELAY_TO_START_NAVIGATION.get();
int del = 0; // settings.DELAY_TO_START_NAVIGATION.get();
if (del <= 0) {
return;
}
@ -619,16 +620,20 @@ public class MapControlsLayer extends OsmandMapLayer {
if(routeFollowingMode || routePlanningMode) {
mapAppModeShadow.setVisibility(View.GONE);
} else {
if (mapView.isZooming()) {
lastZoom = System.currentTimeMillis();
}
mapAppModeShadow.setVisibility(View.VISIBLE);
if (!mapView.isZooming() || !OsmandPlugin.isDevelopment()) {
//if (!mapView.isZooming() || !OsmandPlugin.isDevelopment()) {
if ((System.currentTimeMillis()-lastZoom > 1000) || !OsmandPlugin.isDevelopment()) {
zoomText.setVisibility(View.GONE);
appModeIcon.setVisibility(View.VISIBLE);
appModeIcon.setImageDrawable(
app.getIconsCache().getIcon(
settings.getApplicationMode().getSmallIconDark(), !isNight));
} else {
zoomText.setVisibility(View.VISIBLE);
appModeIcon.setVisibility(View.GONE);
zoomText.setVisibility(View.VISIBLE);
zoomText.setText(getZoomLevel(tileBox));
}
}

View file

@ -92,9 +92,9 @@ public class MapRouteInfoControl implements IRouteInformationListener {
public void setVisible(boolean visible) {
if(visible) {
if (showDialog){
if (getTargets().getPointToNavigate() == null){
//if (getTargets().getPointToNavigate() == null){
showDialog();
}
//}
showDialog = false;
}
controlVisible = true;
@ -441,7 +441,7 @@ public class MapRouteInfoControl implements IRouteInformationListener {
public String generateViaDescription() {
TargetPointsHelper targets = getTargets();
String via = "";
List<TargetPoint> points = targets.getIntermediatePoints();
List<TargetPoint> points = targets.getIntermediatePointsNavigation();
if (points.size() == 0) {
return via;
}