Compare commits

..

5 Commits

Author SHA1 Message Date
Harry Bond
c287dde93f Merge remote-tracking branch 'origin/yannikbloscheck-greenery' into test/2025.07.10
# Conflicts:
#    data/drules_proto.bin
#    data/drules_proto_default_dark.bin
#    data/drules_proto_default_light.bin
#    data/drules_proto_outdoors_dark.bin
#    data/drules_proto_outdoors_light.bin


Signed-off-by: Harry Bond <me@hbond.xyz>
2025-07-10 21:47:23 +01:00
Harry Bond
f7e4fdad6a [Android] Add current opening hours status to placepage preview
And refresh it every 45s

Signed-off-by: Harry Bond <me@hbond.xyz>


Signed-off-by: Harry Bond <me@hbond.xyz>

Signed-off-by: Harry Bond <me@hbond.xyz>

Signed-off-by: Harry Bond <me@hbond.xyz>

Signed-off-by: Harry Bond <me@hbond.xyz>

Signed-off-by: Harry Bond <me@hbond.xyz>

Signed-off-by: Harry Bond <me@hbond.xyz>

Signed-off-by: Harry Bond <me@hbond.xyz>

Signed-off-by: Harry Bond <me@hbond.xyz>
2025-07-10 19:41:51 +01:00
Harry Bond
f59fb509c9 [core] Remove legacy opening_hours stuff
Signed-off-by: Harry Bond <me@hbond.xyz>
2025-07-10 19:41:50 +01:00
Yannik Bloscheck
fae8849869 [styles] Regenerated files for changed how the greenery system works
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-07-05 10:18:15 +02:00
Yannik Bloscheck
3585bd4fad [styles] Changed how the greenery system works
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-07-05 10:17:11 +02:00
1621 changed files with 17535 additions and 46335 deletions

1
.gitignore vendored
View File

@@ -9,7 +9,6 @@ Makefile.Release
object_script.*.Debug
object_script.*.Release
compile_commands.json
*.local.*
stxxl.errlog
stxxl.log

View File

@@ -103,29 +103,12 @@ if (${CMAKE_BUILD_TYPE} STREQUAL "Debug")
elseif (${CMAKE_BUILD_TYPE} MATCHES "Rel")
add_definitions(-DRELEASE)
if (NOT MSVC)
add_compile_options(-Ofast $<$<CXX_COMPILER_ID:GNU>:-flto=auto>) # Also enables -ffast-math
add_compile_options(-Ofast) # Also enables -ffast-math
endif()
else()
message(FATAL_ERROR "Unknown build type: " ${CMAKE_BUILD_TYPE})
endif()
if (${CMAKE_BUILD_TYPE} STREQUAL "RelWithDebInfo")
add_compile_options(-fno-omit-frame-pointer)
endif()
# Linux GCC LTO plugin fix.
if (PLATFORM_LINUX AND (CMAKE_CXX_COMPILER_ID STREQUAL "GNU") AND (CMAKE_BUILD_TYPE MATCHES "^Rel"))
# To force errors if LTO was not enabled.
add_compile_options(-fno-fat-lto-objects)
# To fix ar and ranlib "plugin needed to handle lto object".
string(REGEX MATCH "[0-9]+" GCC_MAJOR_VERSION ${CMAKE_CXX_COMPILER_VERSION})
file(GLOB_RECURSE plugin /usr/lib/gcc/*/${GCC_MAJOR_VERSION}/liblto_plugin.so)
set(CMAKE_C_ARCHIVE_CREATE "<CMAKE_AR> --plugin ${plugin} qcs <TARGET> <OBJECTS>")
set(CMAKE_C_ARCHIVE_FINISH "<CMAKE_RANLIB> --plugin ${plugin} <TARGET>")
set(CMAKE_CXX_ARCHIVE_CREATE "<CMAKE_AR> --plugin ${plugin} qcs <TARGET> <OBJECTS>")
set(CMAKE_CXX_ARCHIVE_FINISH "<CMAKE_RANLIB> --plugin ${plugin} <TARGET>")
endif()
message(STATUS "Build type: " ${CMAKE_BUILD_TYPE})
if (PLATFORM_LINUX OR PLATFORM_ANDROID)
@@ -259,10 +242,6 @@ if (PLATFORM_DESKTOP)
add_subdirectory(qt)
omim_add_tool_subdirectory(skin_generator)
endif()
if (GENERATOR_TOOL)
add_compile_options(-march=native -mtune=native)
message(STATUS "target CPU optimizations enabled, produced binaries will NOT work on a different CPU")
endif()
add_subdirectory(dev_sandbox)
endif()

View File

@@ -8,9 +8,6 @@
<a href="https://codeberg.org/comaps#keep-connected">Keep Connected</a>
</p>
<div align="center" >
<img src="docs/badges/logo.svg" width="150">
</div>
<div align="center">
@@ -147,14 +144,8 @@ The project's financial information is completely open and transparent at [our O
## 🔒 Privacy
The Android app has been reviewed by [Exodus Privacy](https://reports.exodus-privacy.eu.org/en/reports/app.comaps.google/latest/).
The Android app has been reviewed by [Exodus Privacy](https://reports.exodus-privacy.eu.org/fr/reports/app.comaps.google/latest/).
To [verify](https://developer.android.com/studio/command-line/apksigner#usage-verify) the APK, use the following signing certificate fingerprints:
```
SHA-256: 4894e8e6963627ef660031d8593fe77297f835acb4e23810003e926135023b4c
SHA-1: 8b7b5739f917e9f7c681671ced0c9c8562123ade
MD5: 9cce0ffea281dc2f0e0a154d6d2e281e
```
---
## ⚖️ License

View File

@@ -1,4 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" width="64pt" height="64pt" viewBox="0 0 835 835">
<path d="M698.5 141.1a20 20 0 0 1 30.8-1.3A416 416 0 0 1 835 417.4a416 416 0 0 1-93.3 263 20 20 0 0 1-31.3-.6l-43-56.6a20 20 0 0 1-.2-24 307 307 0 0 0 59.3-181.8c0-74.2-26.2-142.3-69.9-195.6a20 20 0 0 1-.5-24.8zM260.7 456.4a20 20 0 0 1-7.7-36.7l282-177.4a20 20 0 0 1 29.9 22.7l-97 318.9a20 20 0 0 1-37.5 2.2l-49.2-111.5z" style="fill:#ccdfca"/>
<path d="M626.3 753a20 20 0 0 1-6.2 29.6A416 416 0 0 1 417.5 835 417.7 417.7 0 0 1 0 417.4 417.7 417.7 0 0 1 603.3 43.5a20 20 0 0 1 7 30l-42.4 55.8a20 20 0 0 1-24.2 6.1 307 307 0 0 0-126.2-27 309 309 0 0 0-309 309c0 170.6 138.5 309 309 309a307 307 0 0 0 141.6-34.3 20 20 0 0 1 25.1 5.6z" style="fill:#fefdf6"/>
</svg>

Before

Width:  |  Height:  |  Size: 753 B

View File

@@ -15,6 +15,12 @@ buildscript {
}
}
repositories {
google()
mavenCentral()
maven { url 'https://www.jitpack.io' } // MPAndroidChart
}
apply plugin: 'com.android.application'
apply plugin: 'com.github.triplet.play'
apply plugin: 'ru.cian.huawei-publish-gradle-plugin'
@@ -59,29 +65,14 @@ project.ext.appName = 'CoMaps'
android {
namespace 'app.organicmaps'
dependenciesInfo {
// Disables dependency metadata when building APKs (for IzzyOnDroid/F-Droid)
includeInApk = false
// Disables dependency metadata when building Android App Bundles (for Google Play)
includeInBundle = false
}
buildFeatures {
dataBinding = true
buildConfig = true
}
// Users are complaining that the app should be re-downloaded from the Play Store after changing the language.
bundle {
language {
enableSplit = false
}
}
// All properties are read from gradle.properties file
compileSdk propCompileSdkVersion.toInteger()
ndkVersion '28.2.13676358'
ndkVersion '27.2.12479018'
defaultConfig {
// Default package name is taken from the manifest and should be app.comaps
@@ -406,8 +397,6 @@ android {
}
dependencies {
implementation project(':sdk')
coreLibraryDesugaring libs.android.tools.desugar
// Google Play Location Services

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

View File

@@ -0,0 +1 @@
../../../../google/java/app/organicmaps/location

View File

@@ -1 +0,0 @@
../../../../../google/java/app/organicmaps/sdk/location

View File

@@ -6,12 +6,12 @@ Můžete se zde také připojit ke komunitě pomáhat s vytvářením nejlepší
• Poskytujte zpětnou vazbu a nahlašujte problémy
• Aktualizujte mapová data v aplikaci nebo na webu OpenStreetMap
<b>Zaměřené na offline použití</b>: Plánujte a navigujte své cesty do zahraničí bez nutnosti mobilních dat, hledejte body na vzdálených túrách apod. Všechny funkce aplikace jsou navrženy tak, aby fungovaly offline.
<b>S ohledem na soukromí</b>: Aplikace je navržená s důrazem na soukromí neidentifikuje lidi, nesleduje vás a nesbírá osobní údaje. Bez reklam.
<b>Jednoduché a vyladěné</b>: Základní, snadno použitelné funkce, které prostě fungují.
<b>Šetří vaši baterii a místo</b>: Nevybíjí vaší baterii, jako ostatní navigační aplikace. Kompaktní mapy šetří cenné místo ve vašem telefonu.
<b>Bezplatné a vytvořené komunitou</b>: S vytvářením aplikace pomáhají lidé, jako jste vy, přidáváním míst do projektu OpenStreetMap, testováním a poskytováním zpětné vazby k funkcím a přispíváním svými vývojářskými schopnostmi a penězi.
<b>Otevřené a transparentní rozhodování a nakládání s financemi, neziskovost a plně otevřený zdrojový kód.</b>
<b>Zaměřené na offline použití</b>: Plánujte a navigujte své cesty do zahraničí bez nutnosti mobilních dat, hledejte body na vzdálených túrách apod. Všechny funkce aplikace jsou navrženy tak, aby fungovaly offline.
<b>S ohledem na soukromí</b>: Aplikace je navržená s důrazem na soukromí neidentifikuje lidi, nesleduje vás a nesbírá osobní údaje. Bez reklam.
<b>Jednoduché a vyladěné</b>: Základní, snadno použitelné funkce, které prostě fungují.
<b>Šetří vaši baterii a místo</b>: Nevybíjí vaší baterii, jako ostatní navigační aplikace. Kompaktní mapy šetří cenné místo ve vašem telefonu.
<b>Bezplatné a vytvořené komunitou</b>: S vytvářením aplikace pomáhají lidé, jako jste vy, přidáváním míst do projektu OpenStreetMap, testováním a poskytováním zpětné vazby k funkcím a přispíváním svými vývojářskými schopnostmi a penězi.
<b>Otevřené a transparentní rozhodování a nakládání s financemi, neziskovost a plně otevřený zdrojový kód.</b>
<b>Hlavní funkce</b>:
• Stahovatelné podrobné mapy s místy, která nenajdete ani v Mapách Google

View File

@@ -1 +0,0 @@
Nem kortnavigation - Oplev mere af din rejse - Drevet af fællesskabet

View File

@@ -1 +0,0 @@
CoMaps - vandr, cykl og kør offline med privatliv

View File

@@ -1,4 +1,4 @@
Eine von der Community betriebene, kostenlose Open-Source Karten-App, die auf OpenStreetMap Daten basiert. Transparent und nicht gewinnorientiert. CoMaps ist ein Fork/Abspaltung von Organic Maps, die wiederum ein Fork/Abspaltung von Maps.Me ist.
Eine von der Community betriebene, kostenlose Open-Source Karten-App, die auf OpenStreetMap Daten basiert. Transparent, datensparsam und nicht gewinnorientiert. CoMaps ist ein Fork/Abspaltung von Organic Maps, die wiederum ein Fork/Abspaltung von Maps.Me ist.
Lese mehr über die Gründe und Ziele des Projektes unter <b><i>codeberg.org/comaps</i></b>.
Werde Teil der Community und hilf mit, die beste Karten-App zu entwickeln
@@ -28,5 +28,5 @@ Werde Teil der Community und hilf mit, die beste Karten-App zu entwickeln
• Dunkler Modus für die Nutzung bei Nacht
• Kartenbearbeitung direkt in der App mit einem einfachen Editor
<b>Entdecke die Unabhängigkeit</b>
<b>Freiheit beginnt hier</b>
Entdecke deine Reise navigiere in der Welt mit Datenschutz!

View File

@@ -1,9 +1,6 @@
Wir stellen vor: Das neue CoMaps-Logo!
Verbesserte Höhenlinien in vielen Regionen (Stufen von 20/50 m)
Links zu Panoramax-Bildern für ausgewählte POIs
OpenStreetMap-Daten vom 13. Juli
Neue Farben für viele Objekte und Farben werden früher angezeigt
Öffnungszeiten werden beim Antippen eines POI angezeigt
• Verschiedene Arten von Feuchtgebieten
• Neue Farben für Vegetation und andere Features; einige neue Icons
• Wandern: bessere Darstellung der Höhenlinien
• OpenStreetMap-Daten vom 22. Juni
Optionale automatische Backups von Lesezeichen & Tracks
Neue 100m-Höhenlinien für Regionen die vorher gröbere/keine Isolinien hatten
Vegetation & Spielplätze werden früher angezeigt, neue Farben für Campingplätze & andere Einrichtungen
Pfade & Tracks werden standardmäßig bei höherem Zoom angezeigt, Outdoor-Stil für Detailübersicht
Aktion des linken Button nichtm mehr im Hamburger-Menü, stattdessen werden "Über & Hilfe" dort angezeigt

Binary file not shown.

Before

Width:  |  Height:  |  Size: 249 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

View File

@@ -1,10 +1,7 @@
Introducing CoMaps logo!
upgrade altitude contour lines for many regions to 20 or 50 meters step
add Panoramax Picture links to selected POIs
OpenStreetMap data as of July 13
add color fills to many features and display fills earlier for existing features
display opening hours state when selecting a POI
• split all wetlands into several distinct types
• update vegetation and other map colors, update some map icons
• outdoors: bolder altitude contour lines
• OpenStreetMap data as of June 22
• a setting for automatic bookmarks and tracks backup
added 100m-step altitude isolines to all regions that had worse or no isolines
display vegetation and playground color fills earlier, add fills to camp sites and some amenities
paths & tracks appear on the map later by default - still appear earlier in the outdoor style
hide active custom button action from the hamburger menu, move there About & Help from the settings
update map transport icons

View File

@@ -1,9 +1,6 @@
¡Presentamos el logo de CoMaps!
mejora de isolíneas con más detalle para muchas regiones
• añade enlaces de imágenes de Panoramax a POIs seleccionados
datos de OpenStreetMap a 13 de julio
añadidos rellenos de color a muchas características
• se muestra el estado de horarios de apertura al seleccionar un POI
• se dividen los humedales en tipos distintos
• se actualiza la vegetación y otros colores del mapa, así como otros iconos
• exteriores: líneas de contorno de altitud más gruesas
• datos de OpenStreetMap a 22 de junio
añadido ajuste para la copia de seguridad automática de marcadores y trazas
• añadidas isolíneas de 100 m a las regiones que tenían isolíneas peores o no tenían isolíneas
se muestra antes la vegetación y zonas de juego, añadidas áreas a campings y otros servicios
los senderos y pistas aparecen más tarde - siguen igual en estilo de outdoors
• se oculta botón personalizado del menú y se mueve allí Acerca de y Ayuda desde los ajustes

View File

@@ -1,7 +1,6 @@
Présentation du logo CoMaps !
Amélioration des courbes daltitude à une précision de 20 ou 50 mètres pour de nombreuses régions
• Ajout d'un lien vers les images Panoramax des POI
Données OpenStreetMap du 13 juillet
Affichage de létat des heures douverture lors de la sélection dun POI
Mise à jour du style(végétation et zones humides), mise à jour de certaines icônes de la carte
• Outdoors: Améliorations de la visibilité des courbes d'altitude
• Données OpenStreetMap du 22 juin
Sauvegarde automatique des signets et traces GPS en local
• Ajout des courbes d'altitude avec un précision de 100 mètres dans toutes les régions qui avaient peu de courbes ou aucune
Ajustements des styles notamment sur la végétation, les aires de jeu et les chemins
Masque laction active du bouton personnalisé dans le menu hamburger
Correction de certains plantages et bugs

View File

@@ -1 +1 @@
Navigation cartographique facile - Découvrez davantage de votre voyage - Propulsé par la communauté
Navigation facile - Découvrez plus lors de votre voyage - Fait par la communauté

View File

@@ -1 +0,0 @@
CoMaps - Túra, Bicikli, Vezetés offline diszkréten

View File

@@ -1,9 +0,0 @@
Wprowadzamy logo CoMaps!
• zwiększenie dokładności izolinii w wielu regionach w krokach 20 do 50 metrów
• dodanie linków do zdjęć z Panoramax do wybranych POI
• aktualizacja danych OpenStreetMap z 13 lipca
• dodanie wypełnienia kolorem dla wielu typów obiektów
• wyświetlanie stanu godzin otwarcia przy wyborze POI
• podział mokradeł na kilka typów
• aktualizacja koloru roślinności i innych kolorów, aktualizacja części ikon na mapie
• tryb outdoorowy: pogrubione warstwice wysokości

View File

@@ -8,6 +8,7 @@ Junte-se à comunidade e ajude a criar o melhor aplicativo de mapas.
‣ <b>Foco offline</b>: Planeje e navegue em sua viagem ao exterior sem a necessidade de sinal de celular, pesquise pontos de referência durante uma caminhada distante, etc. Todas as funções do aplicativo foram projetadas para funcionar offline.
‣ <b>Respeito à privacidade</b>: O aplicativo foi projetado com a privacidade em mente - não identifica pessoas, não rastreia e não coleta informações pessoais. Livre de anúncios.
‣ <b>Simples e sofisticado</b>: recursos essenciais e fáceis de usar que simplesmente funcionam.
‣ <b>Economiza bateria e espaço</b>: Não esgota a bateria como outros aplicativos de navegação. Mapas compactos economizam espaço precioso no seu celular.
‣ <b>Gratuito e desenvolvido pela comunidade</b>: Pessoas como você ajudaram a desenvolver o aplicativo adicionando lugares ao OpenStreetMap, testando e dando feedback sobre os recursos e contribuindo com suas habilidades de desenvolvimento e dinheiro.

View File

@@ -1,9 +0,0 @@
Apresentamos o logo do CoMaps!
• Curvas de nível mais detalhadas em muitas regiões
• Adicionados links de imagens do Panoramax para pontos de interesse selecionados
• Dados OSM de 13/07
• Adicionados preenchimentos de cor a muitos elementos
• Exibição de horário de funcionamento ao selecionar um ponto de interesse
• Divididas áreas úmidas em vários tipos distintos
• Atualizada cores/ícones para vegetação e outros elementos
• Ar livre: curvas de nível de altitude mais destacadas

View File

@@ -1 +0,0 @@
CoMaps - Drumeții, Ciclism, Condus Offline în confidențialitate

View File

@@ -1,9 +1,6 @@
Представляем логотип CoMaps!
Линии высот для многих регионов с шагом 20м или 50м
Ссылки на изображения Panoramax к выбранным POI
Карты OpenStreetMap от 13 июля
Заливки цветом ко многим объектам и более ранняя заливка для существующих объектов
Показ часов работы при выборе POI
• Разные водно-болотные угодья отличаются цветом
• Обновлены цвета растительности и другие цвета на карте, изменены некоторые иконки
В стиле "Активный отдых" более четкие линии высот
• карты OpenStreetMap от 22 июня
автоматическое резервное копирование меток и треков
линии высот с шагом 100м для всех регионов, где линии с этим шагом отсутствовали
цветная заливка растительности и игровых площадок отображается раньше, добавлена заливка для кемпингов и других объектов
тропы и грунтовки отображаются позже в стиле по умолчанию - используйте стиль «Активный отдых» для обзора троп
выбранная функция настраиваемой кнопки больше не дублируется в пунктах меню

View File

@@ -1,9 +0,0 @@
Представљамо CoMaps лого!
• ажуриране изохипсе за многе регионе на кораке од 20 или 50 метара
• додате везе ка Panoramax сликама за изабране тачке интересовања (POI)
• подаци са OpenStreetMap-а од 13. јула
• додате боје за многе елементе и раније приказивање постојећих површина
• приказ стања радног времена при избору POI-ја
• мочваре подељене на неколико различитих типова
• ажуриране боје вегетације и других елемената на мапи, ажуриране поједине иконе
• на отвореном: наглашеније изохипсе

View File

@@ -1 +1 @@
Једноставна навигација - Сазнајте више о свом путовању - Ради на бази заједнице
Једноставна навигација - Сазнајте више о свом путовању - Покреће је заједница

View File

@@ -1 +0,0 @@
Định vị bản đồ dễ dàng - Khám phá thế giới quanh bạn - Đồng hành cùng cộng đồng

View File

@@ -1,8 +1,8 @@
package app.organicmaps.sdk.location;
package app.organicmaps.location;
import static android.Manifest.permission.ACCESS_COARSE_LOCATION;
import static android.Manifest.permission.ACCESS_FINE_LOCATION;
import static app.organicmaps.sdk.util.concurrency.UiThread.runLater;
import static app.organicmaps.util.concurrency.UiThread.runLater;
import android.app.PendingIntent;
import android.content.Context;
@@ -26,8 +26,8 @@ import com.google.android.gms.location.LocationSettingsStatusCodes;
import com.google.android.gms.location.Priority;
import com.google.android.gms.location.SettingsClient;
import app.organicmaps.sdk.util.LocationUtils;
import app.organicmaps.sdk.util.log.Logger;
import app.organicmaps.util.LocationUtils;
import app.organicmaps.util.log.Logger;
class GoogleFusedLocationProvider extends BaseLocationProvider
{

View File

@@ -1,13 +1,12 @@
package app.organicmaps.sdk.location;
package app.organicmaps.location;
import android.content.Context;
import androidx.annotation.NonNull;
import com.google.android.gms.common.ConnectionResult;
import com.google.android.gms.common.GoogleApiAvailability;
import app.organicmaps.sdk.util.Config;
import app.organicmaps.sdk.util.log.Logger;
import app.organicmaps.util.Config;
import app.organicmaps.util.log.Logger;
public class LocationProviderFactory
{

View File

@@ -1,36 +0,0 @@
En fællesskabsdrevet gratis og open source-kortapp baseret på OpenStreetMap-data og forstærket med en forpligtelse til gennemsigtighed, privatliv og non-profit.
Bliv en del af fællesskabet og vær med til at skabe den bedste kortapp
• Brug appen og fortæl andre om den
• Giv feedback og rapporter problemer
• Opdater kortdata i appen eller på OpenStreetMap-webstedet
<i>Din feedback og 5-stjernede anmeldelser er den bedste støtte for os!</i>
‣ <b>Enkel og poleret</b>: væsentlige, brugervenlige funktioner, der bare virker.
‣ <b>Offline-focused</b>: Planlæg og naviger på din rejse i udlandet uden behov for mobilfordbindelse, søg efter rutepunkter, mens du er på en lang vandretur osv. Alle app-funktioner er designet til at fungere offline..
‣ <b>Respekt for privatlivets fred</b>: Appen er designet med fokus på privatlivets fred den identificerer ikke personer, sporer ikke og indsamler ikke personlige oplysninger. Annoncefri.
‣ <b>Sparer på batteriet og plads</b>: Dræner ikke dit batteri som andre navigationsapps. Kompakte kort sparer værdifuld plads på din telefon.
‣ <b>Gratis og udviklet af fællesskabet</b>: Folk som dig har været med til at udvikle appen ved at tilføje steder til OpenStreetMap, teste og give feedback på funktioner samt bidrage med deres udviklingskompetencer og penge.
‣ <b>Åben og gennemsigtig beslutningstagning og økonomi, non-profit og fuldstændig open source.</b>
<b>Vigtigste funktioner</b>:
• Detaljerede kort med steder, der ikke er tilgængelige på Google Maps, kan downloades.
• Udendørstilstand med fremhævede vandreruter, campingpladser, vandkilder, bjergtoppe, højdekurver osv.
• Gang- og cykelstier
• Interessepunkter som restauranter, tankstationer, hoteller, butikker, seværdigheder og meget mere
• Søg efter navn, adresse eller efter interessepunkt-kategori
• Navigation med stemmevejledning til gående, cyklende eller kørende
• Bogmærk dine yndlingssteder med ét enkelt tryk
• Offline Wikipedia-artikler
• Lag med metrolinjer og rutevejledning
• Sporoptagelse
• Eksportér og importér bogmærker og ruter i KML, KMZ, GPX-formater
• En mørk tilstand til brug om natten
• Forbedr kortdata for alle ved hjælp af en simpel, indbygget redigeringsfunktion
• Android Auto-understøttelse
Rapportér app-problemer, kom med forslag og bliv en del af vores fællesskab på <b><i>comaps.app</i></b> webstedet.
<b>Nu med frihed</b>
Udforsk din rejse, og navigér i verden med fokus på privatliv og fællesskab!

View File

@@ -1 +0,0 @@
Nem kortnavigation - Oplev mere af din rejse - Drevet af fællesskabet

View File

@@ -1 +0,0 @@
CoMaps - Naviger med privatliv

View File

@@ -1,4 +1,4 @@
Eine von der Community betriebene, kostenlose Open-Source Karten App, die auf OpenStreetMap-Daten basiert. Ein Gemeinschaftsprojekt mit Fokus auf Transparenz und non-profit.
Eine von der Community betriebene, kostenlose Open-Source Karten App, die auf OpenStreetMap-Daten basiert. Transparent, datensparsam und nicht gewinnorientiert.
Werde Teil der Community und hilf mit, die beste Karten-App zu entwickeln
• Nutze die App und erzähle anderen davon
@@ -8,8 +8,8 @@ Werde Teil der Community und hilf mit, die beste Karten-App zu entwickeln
<i>Dein Feedback und deine 5-Sterne-Bewertung sind die beste Unterstützung für uns!</i>
‣ <b>Einfach und ausgereift</b>: Essenzielle, leicht zu bedienende Funktionen, die einfach funktionieren.
‣ <b>Offlinekarten</b>: Plane und navigiere im Ausland ohne Mobilfunkverbindung, finde Wegpunkte auf abgelegenen Wanderungen usw. Alle Funktionen sind für den Offline-Einsatz konzipiert.
‣ <b>Datenschutz ist uns wichtig!</b>: Die App wurde mit Fokus auf Privatsphäre entwickelt kein Tracking, keine Erfassung persönlicher Daten, keine Werbung.
‣ <b>Offline-orientiert</b>: Plane und navigiere im Ausland ohne Mobilfunkverbindung, finde Wegpunkte auf abgelegenen Wanderungen usw. Alle Funktionen sind für den Offline-Einsatz konzipiert.
‣ <b>Datenschutzfreundlich</b>: Die App wurde mit Fokus auf Privatsphäre entwickelt keine Personenidentifikation, kein Tracking, keine Erfassung persönlicher Daten, keine Werbung.
‣ <b>Spart Akku und Speicherplatz</b>: Verbraucht nicht unnötig Akku wie andere Navi-Apps. Kompakte Karten sparen Speicherplatz auf Deinem Gerät.
‣ <b>Kostenlos und von der Community entwickelt</b>: Menschen wie du haben geholfen, die App zu entwickeln durch das Hinzufügen von Orten zu OpenStreetMap, Testen von neuen Funktionen, Softwareentwicklung oder Spenden.
‣ <b>Offen und transparent bei Entscheidungen und Finanzen, gemeinnützig und vollständig Open Source</b>
@@ -32,5 +32,5 @@ Werde Teil der Community und hilf mit, die beste Karten-App zu entwickeln
Bitte melde Probleme, schlage neue Funktionen vor und werde Teil der Community auf unserer Website: <b><i>comaps.app</i></b>
<b>Entdecke die Unabhängigkeit</b>
<b>Freiheit beginnt hier</b>
Entdecke deine Reise navigiere in der Welt mit Datenschutz!

View File

@@ -1,35 +0,0 @@
Komunitateak gidatutako doako eta kode irekiko aplikazioa OpenStreetMap datuetan oinarrituta, gardentasuna, pribatutasuna eta irabazi asmorik gabeko konpromisoarekin indartua.
Sartu komunitatean eta lagundu mapa aplikaziorik onena egiten
• Erabili aplikazioa eta horri buruzko iritsia zabaldu
• Eman feedbacka eta txostenetako gaiak
• Eguneratu maparen datuak aplikazioan edo OpenStreetMap webgunean
<i> Zure iritzia eta 5 izarreko berrikuspenak dira guretzako laguntza onena! </ i>
‣ <b>Sinplea</b>: oso erraza da ondo funtzionatzen duten funtzioak erabiltzea.
‣ <b> Lineaz kanpo erabiltzeko prest </ b> Planifikatu eta nabigatu atzerrira bidaiatzea, konexio beharrik gabe, bilatu bideak urruneko ibilaldi batean, etab. Aplikazioaren funtzio guztiak lineaz kanpo lan egiteko diseinatuta daude.
‣ <b> Pribatutasuna errespetatzea </ b>: aplikazioa pribatutasunarekin diseinatuta dago, ez du pertsonak identifikatzen, ez du jarraipena egiten, eta ez du informazio pertsonala biltzen. Iragarkirik gabe.
‣ <b> Zure bateria eta espazioa gordetzen ditu </ b>: ez du bateria xukatu beste nabigazio aplikazioak bezala. Mapa trinkoek espazioa aurrezten dute zure telefonoan.
‣ <b> Libre eta komunitateak eraikitakoa: Zu bezalako jendeak aplikazioa eraikitzen lagundu du tokiak gehituz OpenStreetMapen, probatuz eta funtzioei buruzko iritzia emanez eta iritsiz eta diruz lagunduz.
‣ <b> Erabakiak hartzea eta finantza gardenak, irabazi asmorik gabekoa eta guztiz iturburu irekikoa. </ B>
<b> Ezaugarri nagusiak </ b>:
• Deskargatu mapa zehatzak Google Maps-ekin eskuragarri ez dauden lekuekin
• Landa eremua moduan nabarmendutako mendi ibilbideak, kanpinak, ur iturriak, gailurrak, sestra-lerroak, etab
• Bideak eta bidegorriak
• Jatetxe, gasolindegiak, hotelak, dendak, bisitak eta bestelako interesguneak
• Bilatu izenaren edo helbide baten arabera, edo kategoriaren arabera
• Oinez, txirrindularitzarako edo gidatzeko ahots-oharrak dituen nabigazioa
• Markatu zure gogoko lekuak ikutu bakarrarekin
• Lineaz kanpoko Wikipedia artikuluak
• Metroaren garraio geruza eta jarraibideak
• Arrastoen grabazioa
• Laster-markak eta ibilbideak esportatu eta inportatu KML, KMZ, GPX formatuetan
• Gauean erabiltzeko modu iluna
• Hobetu mapako datuak oinarrizko editore integratua erabiliz
• Android Auto laguntza
Mesedez, jakinarazi aplikazioaren gorabeherak, ideiak proposatu eta sartu gure komunitatean <b> <i> comaps.app </ i> </ b> webgunean.
<b> Askatasuna hemen </ b> da
Ezagutu zure bidaia, nabigatu munduan pribatutasunarekin eta komunitatearen abangoardian!

View File

@@ -1 +0,0 @@
Comaps - Pribatuki nabigatu

View File

@@ -1 +1 @@
Navigation cartographique facile - Découvrez davantage de votre voyage - Propulsé par la communauté
Navigation facile - Découvrez plus lors de votre voyage - Fait par la communauté

View File

@@ -1 +0,0 @@
CoMaps - Navighează liniștit

View File

@@ -1,6 +1,6 @@
Бесплатна апликација за мапе отвореног кода коју води заједница заснована на OpenStreetMap подацима и ојачана посвећеношћу транспарентности, приватности и непрофитности.
Придружите се заједници и помозите да направите најбољу навигацију
Придружите се заједници и помозите да направимо најбољу навигацију
• Користите апликацију и ширите информације о њој
• Оставите повратне информације и пријавите проблеме
• Ажурирајте мапе из апликације или на сајту OpenStreetMap
@@ -11,26 +11,26 @@
‣ <b>Офлајн фокусирана</b>: Планирајте путовање у иностранство без употребе мобилне телефоније, потражите правац тачке током дугог путовања, итд . Све функције апликације су дизајниране за рад у режиму без интернета.
‣ <b>Поштовање приватности</b>: Апликација је развијена с обзиром на приватност - не идентификује људе, не прати и не прикупља личне информације. Без реклама.
‣ <b>Штеди батерију и простор</b>: Не празни батерију, као остале навигациje. Компактне mape штедe драгоценi prostor на вашем телефону..
‣ <b>Бесплатно и изграђено од стране заједнице</b>: Људи попут вас помогли су у изради апликације додавањем места на OpenStreetMap, тестирањем и давањем повратних информација о функцијама и доприносом својим развојним вештинама и новцем.
‣ <b>Отворено и транспарентно доношење одлука и финансије, непрофитне и потпуно отвореног кода.</b>
‣ <b>Free and Built by the Community</b>: Такви људи, као што сте помогли да креирате апликацију, додајући места у OpenStreetMap, тестира и остављајући повратне информације о функцијама, као и стављајући своје вештине развоја и новац.
‣ <b>Отворено и транспарентно доношење одлука и финансија, непрофитни и потпуно отворени кода.</b>
<b>Главне карактеристике</b>:
<li>Преузимање детаљних мапа са локацијама које нису доступне у Google Maps</li>
<li>Режим на отвореном са истакнутим планинарским стазама, кампови, извори воде, врхови, контурне линије, итд</li>
<li>Пешачке и бициклистичке стазе</li>
<li>Тачке интереса попут ресторана, бензинских станица, хотели, продавнице, разгледање и још много тога</li>
<li>Претрага по имену, адреси или по ТОИ категоријама</li>
<li>Навигација са гласовним упутима за планинарење, бициклизам или вожњу аутомобилом</li>
<li>Обележите своја омиљена места једним додиром</li>
<li>Википедија чланци без интернета</li>
<li>Нивои транзита у метроа и смер кретања</li>
<li>Снимање траса</li>
<li>Извоз и увоз маркера и траса у форматима KML, KMZ, GPX</li>
<li>Тамни режим за употребу ноћу</li>
<li>Побољшавање картографских података за све, користећи основни едитор за уређивање</li>
<li>Подршка за Андроид Ауто</li>
Преузимање детаљне мапе са локацијама које нису доступне у Google Maps
• Истакнуте планинарске стазе, кампови, изворима воде, врхове, контуре линије итд
Пешачке и бициклистичке стазе
Тачке од интереса као што су ресторани, бензинске станице, хотели, атракције, шопинг и још много тога
Претрага по имену или адреси или по категорији интересних места
Навигација са гласовним огласима за планинарење, бициклизам или вожње аутомобила
• Означи своја омиљене места са једним додиром
• Офлајн Википедиа чланци
• Транзитни слој метроа и упутства
• Track recording
• Export and import bookmarks and tracks in KML, KMZ, GPX formats
• A dark mode to use during the night
• Improve map data for everyone using a basic built-in editor
Подршка за Андроид Ауто
Молимо Вас да пријавите проблеме са апликацијом, предложите идеје и придружите се нашој заједници на <b><i>comaps.app</i></b> страни.
<b>Сад је слободно</b>
<b>Сад је слободна</b>
Откријте своје путовање, путујте светом с приватношћу и заједницом на челу!

View File

@@ -1 +1 @@
Једноставна навигација - Сазнајте више о свом путовању - Ради на бази заједнице
Једноставна навигација - Сазнајте више о свом путовању - Покреће је заједница

View File

@@ -1,36 +0,0 @@
Một ứng dụng bản đồ miễn phí & mã nguồn mở do cộng đồng phát triển, dựa trên dữ liệu OpenStreetMap và cam kết mạnh mẽ về minh bạch, quyền riêng tư và phi lợi nhuận.
Hãy tham gia cộng đồng và cùng chúng tôi xây dựng ứng dụng bản đồ tốt nhất!
• Sử dụng ứng dụng và chia sẻ với mọi người
• Đóng góp ý kiến và báo cáo lỗi
• Cập nhật dữ liệu bản đồ trong ứng dụng hoặc trên trang web OpenStreetMap
<i>Đánh giá 5 sao và phản hồi của bạn là sự ủng hộ quý giá nhất!</i>
‣ <b>Đơn giản và tinh tế</b>: Những tính năng cần thiết, dễ sử dụng và hoạt động mượt mà.
‣ <b>Hoạt động offline</b>: Lên kế hoạch và điều hướng chuyến đi ở nước ngoài mà không cần kết nối mạng, tìm kiếm địa điểm khi đi bộ đường dài... Tất cả chức năng đều hoạt động offline.
‣ <b>Tôn trọng quyền riêng tư</b>: Ứng dụng được thiết kế để bảo vệ sự riêng tư - không định danh người dùng, không theo dõi và không thu thập thông tin cá nhân. Hoàn toàn không có quảng cáo.
‣ <b>Tiết kiệm pin và dung lượng</b>: Không ngốn pin như các ứng dụng bản đồ khác. Bản đồ nhỏ gọn giúp tiết kiệm dung lượng điện thoại.
‣ <b>Miễn phí và được xây dựng bởi cộng đồng</b>: Chính những người như bạn đã góp phần phát triển ứng dụng bằng cách thêm địa điểm vào OpenStreetMap, kiểm thử tính năng, đóng góp ý kiến, kỹ năng lập trình và tài chính.
‣ <b>Minh bạch trong quyết định & tài chính, phi lợi nhuận và mã nguồn mở hoàn toàn.</b>
<b>Tính năng chính</b>:
• Tải bản đồ chi tiết với nhiều địa điểm không có trên Google Maps
• Chế độ ngoài trời với các tuyến đi bộ, khu cắm trại, nguồn nước, đỉnh núi, đường đồng mức... được đánh dấu rõ ràng
• Đường đi bộ và đường dành cho xe đạp
• Địa điểm quan tâm như nhà hàng, trạm xăng, khách sạn, cửa hàng, điểm tham quan...
• Tìm kiếm theo tên, địa chỉ hoặc danh mục địa điểm
• Dẫn đường với thông báo bằng giọng nói cho đi bộ, đạp xe hoặc lái xe
• Đánh dấu địa điểm yêu thích chỉ với một lần chạm
• Đọc bài viết Wikipedia offline
• Lớp bản đồ tàu điện ngầm và chỉ dẫn di chuyển
• Ghi lại lộ trình
• Xuất/nhập bookmark và lộ trình dưới dạng KML, KMZ, GPX
• Chế độ tối để sử dụng ban đêm
• Chỉnh sửa bản đồ cơ bản ngay trong ứng dụng để cải thiện dữ liệu cho mọi người
• Hỗ trợ Android Auto
Hãy báo cáo lỗi, đề xuất ý tưởng và tham gia cộng đồng của chúng tôi tại trang web <i><b>comaps.app</b></i>.
<b>Tự do ngay trong tay bạn!</b>
Khám phá hành trình, điều hướng thế giới với sự riêng tư và tinh thần cộng đồng!

View File

@@ -1 +0,0 @@
Định vị bản đồ dễ dàng - Khám phá thế giới quanh bạn - Đồng hành cùng cộng đồng

View File

@@ -1 +0,0 @@
CoMaps - Định vị riêng tư

View File

@@ -0,0 +1 @@
../../../../google/java/app/organicmaps/location

View File

@@ -1 +0,0 @@
../../../../../google/java/app/organicmaps/sdk/location

View File

@@ -5,21 +5,21 @@ project(organicmaps C CXX)
set(SRC
# JNI headers
../../../../../private.h
app/organicmaps/sdk/core/jni_helper.hpp
app/organicmaps/sdk/core/jni_java_methods.hpp
app/organicmaps/sdk/core/logging.hpp
app/organicmaps/sdk/core/ScopedEnv.hpp
app/organicmaps/sdk/core/ScopedLocalRef.hpp
app/organicmaps/sdk/Framework.hpp
app/organicmaps/sdk/opengl/android_gl_utils.hpp
app/organicmaps/sdk/opengl/androidoglcontext.hpp
app/organicmaps/sdk/opengl/androidoglcontextfactory.hpp
app/organicmaps/sdk/opengl/gl3stub.h
app/organicmaps/sdk/platform/GuiThread.hpp
app/organicmaps/sdk/platform/AndroidPlatform.hpp
app/organicmaps/sdk/util/Distance.hpp
app/organicmaps/sdk/util/FeatureIdBuilder.hpp
app/organicmaps/sdk/vulkan/android_vulkan_context_factory.hpp
app/organicmaps/core/jni_helper.hpp
app/organicmaps/core/jni_java_methods.hpp
app/organicmaps/core/logging.hpp
app/organicmaps/core/ScopedEnv.hpp
app/organicmaps/core/ScopedLocalRef.hpp
app/organicmaps/Framework.hpp
app/organicmaps/opengl/android_gl_utils.hpp
app/organicmaps/opengl/androidoglcontext.hpp
app/organicmaps/opengl/androidoglcontextfactory.hpp
app/organicmaps/opengl/gl3stub.h
app/organicmaps/platform/GuiThread.hpp
app/organicmaps/platform/AndroidPlatform.hpp
app/organicmaps/util/Distance.hpp
app/organicmaps/util/FeatureIdBuilder.hpp
app/organicmaps/vulkan/android_vulkan_context_factory.hpp
# JNI sources
app/organicmaps/sdk/search/DisplayedCategories.cpp
@@ -39,47 +39,47 @@ set(SRC
app/organicmaps/sdk/MapStyle.cpp
app/organicmaps/sdk/OrganicMaps.cpp
app/organicmaps/sdk/Router.cpp
app/organicmaps/sdk/core/jni_helper.cpp
app/organicmaps/sdk/core/jni_java_methods.cpp
app/organicmaps/sdk/core/logging.cpp
app/organicmaps/sdk/bookmarks/data/BookmarkManager.cpp
app/organicmaps/sdk/DownloadResourcesLegacyActivity.cpp
app/organicmaps/sdk/editor/Editor.cpp
app/organicmaps/sdk/editor/OpeningHours.cpp
app/organicmaps/sdk/editor/OsmOAuth.cpp
app/organicmaps/sdk/Framework.cpp
app/organicmaps/sdk/isolines/IsolinesManager.cpp
app/organicmaps/sdk/LocationState.cpp
app/organicmaps/sdk/Map.cpp
app/organicmaps/sdk/MapManager.cpp
app/organicmaps/sdk/settings/UnitLocale.cpp
app/organicmaps/sdk/settings/MapLanguageCode.cpp
app/organicmaps/sdk/sound/tts.cpp
app/organicmaps/sdk/subway/SubwayManager.cpp
app/organicmaps/sdk/TrackRecorder.cpp
app/organicmaps/sdk/TrafficState.cpp
app/organicmaps/sdk/UserMarkHelper.cpp
app/organicmaps/sdk/opengl/android_gl_utils.cpp
app/organicmaps/sdk/opengl/androidoglcontext.cpp
app/organicmaps/sdk/opengl/androidoglcontextfactory.cpp
app/organicmaps/sdk/opengl/gl3stub.cpp
app/organicmaps/sdk/platform/GuiThread.cpp
app/organicmaps/sdk/platform/HttpThread.cpp
app/organicmaps/sdk/platform/Language.cpp
app/organicmaps/sdk/platform/Localization.cpp
app/organicmaps/sdk/platform/AndroidPlatform.cpp
app/organicmaps/sdk/platform/PThreadImpl.cpp
app/organicmaps/sdk/platform/SecureStorage.cpp
app/organicmaps/sdk/platform/SocketImpl.cpp
app/organicmaps/sdk/util/Config.cpp
app/organicmaps/sdk/util/GeoUtils.cpp
app/organicmaps/sdk/util/HttpClient.cpp
app/organicmaps/sdk/util/Language.cpp
app/organicmaps/sdk/util/LogsManager.cpp
app/organicmaps/sdk/util/NetworkPolicy.cpp
app/organicmaps/sdk/util/StringUtils.cpp
app/organicmaps/sdk/util/UiThread.cpp
app/organicmaps/sdk/vulkan/android_vulkan_context_factory.cpp
app/organicmaps/core/jni_helper.cpp
app/organicmaps/core/jni_java_methods.cpp
app/organicmaps/core/logging.cpp
app/organicmaps/bookmarks/data/BookmarkManager.cpp
app/organicmaps/DownloadResourcesLegacyActivity.cpp
app/organicmaps/editor/Editor.cpp
app/organicmaps/editor/OpeningHours.cpp
app/organicmaps/editor/OsmOAuth.cpp
app/organicmaps/Framework.cpp
app/organicmaps/isolines/IsolinesManager.cpp
app/organicmaps/LocationState.cpp
app/organicmaps/Map.cpp
app/organicmaps/MapManager.cpp
app/organicmaps/settings/UnitLocale.cpp
app/organicmaps/settings/MapLanguageCode.cpp
app/organicmaps/sound/tts.cpp
app/organicmaps/subway/SubwayManager.cpp
app/organicmaps/TrackRecorder.cpp
app/organicmaps/TrafficState.cpp
app/organicmaps/UserMarkHelper.cpp
app/organicmaps/opengl/android_gl_utils.cpp
app/organicmaps/opengl/androidoglcontext.cpp
app/organicmaps/opengl/androidoglcontextfactory.cpp
app/organicmaps/opengl/gl3stub.cpp
app/organicmaps/platform/GuiThread.cpp
app/organicmaps/platform/HttpThread.cpp
app/organicmaps/platform/Language.cpp
app/organicmaps/platform/Localization.cpp
app/organicmaps/platform/AndroidPlatform.cpp
app/organicmaps/platform/PThreadImpl.cpp
app/organicmaps/platform/SecureStorage.cpp
app/organicmaps/platform/SocketImpl.cpp
app/organicmaps/util/Config.cpp
app/organicmaps/util/GeoUtils.cpp
app/organicmaps/util/HttpClient.cpp
app/organicmaps/util/Language.cpp
app/organicmaps/util/LogsManager.cpp
app/organicmaps/util/NetworkPolicy.cpp
app/organicmaps/util/StringUtils.cpp
app/organicmaps/util/UiThread.cpp
app/organicmaps/vulkan/android_vulkan_context_factory.cpp
)
omim_add_library(${PROJECT_NAME} SHARED ${SRC})

View File

@@ -16,7 +16,7 @@
#include "base/logging.hpp"
#include "base/string_utils.hpp"
#include "app/organicmaps/sdk/core/jni_helper.hpp"
#include "app/organicmaps/core/jni_helper.hpp"
#include <functional>
#include <iostream>
@@ -70,7 +70,7 @@ extern "C"
}
JNIEXPORT jint JNICALL
Java_app_organicmaps_sdk_DownloadResourcesLegacyActivity_nativeGetBytesToDownload(JNIEnv * env, jclass clazz)
Java_app_organicmaps_DownloadResourcesLegacyActivity_nativeGetBytesToDownload(JNIEnv * env, jclass clazz)
{
// clear all
g_filesToDownload.clear();
@@ -149,7 +149,7 @@ extern "C"
}
JNIEXPORT jint JNICALL
Java_app_organicmaps_sdk_DownloadResourcesLegacyActivity_nativeStartNextFileDownload(JNIEnv * env, jclass clazz, jobject listener)
Java_app_organicmaps_DownloadResourcesLegacyActivity_nativeStartNextFileDownload(JNIEnv * env, jclass clazz, jobject listener)
{
if (g_filesToDownload.empty())
return ERR_NO_MORE_FILES;
@@ -178,7 +178,7 @@ extern "C"
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_DownloadResourcesLegacyActivity_nativeCancelCurrentFile(JNIEnv * env, jclass clazz)
Java_app_organicmaps_DownloadResourcesLegacyActivity_nativeCancelCurrentFile(JNIEnv * env, jclass clazz)
{
LOG(LDEBUG, ("cancelCurrentFile, currentRequest=", g_currentRequest));
g_currentRequest.reset();

View File

@@ -1,19 +1,19 @@
#include "app/organicmaps/sdk/Framework.hpp"
#include "app/organicmaps/Framework.hpp"
#include "app/organicmaps/sdk/core/jni_helper.hpp"
#include "app/organicmaps/sdk/UserMarkHelper.hpp"
#include "app/organicmaps/sdk/opengl/androidoglcontextfactory.hpp"
#include "app/organicmaps/sdk/platform/AndroidPlatform.hpp"
#include "app/organicmaps/core/jni_helper.hpp"
#include "app/organicmaps/UserMarkHelper.hpp"
#include "app/organicmaps/opengl/androidoglcontextfactory.hpp"
#include "app/organicmaps/platform/AndroidPlatform.hpp"
#include "app/organicmaps/sdk/routing/JunctionInfo.hpp"
#include "app/organicmaps/sdk/routing/RouteMarkData.hpp"
#include "app/organicmaps/sdk/routing/RouteMarkType.hpp"
#include "app/organicmaps/sdk/routing/RouteRecommendationType.hpp"
#include "app/organicmaps/sdk/routing/RoutingInfo.hpp"
#include "app/organicmaps/sdk/routing/TransitRouteInfo.hpp"
#include "app/organicmaps/sdk/util/Distance.hpp"
#include "app/organicmaps/sdk/util/FeatureIdBuilder.hpp"
#include "app/organicmaps/sdk/util/NetworkPolicy.hpp"
#include "app/organicmaps/sdk/vulkan/android_vulkan_context_factory.hpp"
#include "app/organicmaps/util/Distance.hpp"
#include "app/organicmaps/util/FeatureIdBuilder.hpp"
#include "app/organicmaps/util/NetworkPolicy.hpp"
#include "app/organicmaps/vulkan/android_vulkan_context_factory.hpp"
#include "map/bookmark_helpers.hpp"
#include "map/chart_generator.hpp"
@@ -824,35 +824,35 @@ RoutingManager::LoadRouteHandler g_loadRouteHandler;
/// @name JNI EXPORTS
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetAddress(JNIEnv * env, jclass clazz, jdouble lat, jdouble lon)
Java_app_organicmaps_Framework_nativeGetAddress(JNIEnv * env, jclass clazz, jdouble lat, jdouble lon)
{
auto const info = frm()->GetAddressAtPoint(mercator::FromLatLon(lat, lon));
return jni::ToJavaString(env, info.FormatAddress());
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeClearApiPoints(JNIEnv * env, jclass clazz)
Java_app_organicmaps_Framework_nativeClearApiPoints(JNIEnv * env, jclass clazz)
{
frm()->GetBookmarkManager().GetEditSession().ClearGroup(UserMark::Type::API);
}
JNIEXPORT jint JNICALL
Java_app_organicmaps_sdk_Framework_nativeParseAndSetApiUrl(JNIEnv * env, jclass clazz, jstring url)
Java_app_organicmaps_Framework_nativeParseAndSetApiUrl(JNIEnv * env, jclass clazz, jstring url)
{
return static_cast<jint>(frm()->ParseAndSetApiURL(jni::ToNativeString(env, url)));
}
JNIEXPORT jobject JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetParsedRoutingData(JNIEnv * env, jclass clazz)
Java_app_organicmaps_Framework_nativeGetParsedRoutingData(JNIEnv * env, jclass clazz)
{
using namespace url_scheme;
static jclass const pointClazz = jni::GetGlobalClassRef(env, "app/organicmaps/sdk/api/RoutePoint");
static jclass const pointClazz = jni::GetGlobalClassRef(env, "app/organicmaps/api/RoutePoint");
// Java signature : RoutePoint(double lat, double lon, String name)
static jmethodID const pointConstructor = jni::GetConstructorID(env, pointClazz, "(DDLjava/lang/String;)V");
static jclass const routeDataClazz = jni::GetGlobalClassRef(env, "app/organicmaps/sdk/api/ParsedRoutingData");
static jclass const routeDataClazz = jni::GetGlobalClassRef(env, "app/organicmaps/api/ParsedRoutingData");
// Java signature : ParsedRoutingData(RoutePoint[] points, int routerType) {
static jmethodID const routeDataConstructor = jni::GetConstructorID(env, routeDataClazz, "([Lapp/organicmaps/sdk/api/RoutePoint;I)V");
static jmethodID const routeDataConstructor = jni::GetConstructorID(env, routeDataClazz, "([Lapp/organicmaps/api/RoutePoint;I)V");
auto const & routingData = frm()->GetParsedRoutingData();
jobjectArray points = jni::ToJavaArray(env, pointClazz, routingData.m_points,
@@ -868,10 +868,10 @@ Java_app_organicmaps_sdk_Framework_nativeGetParsedRoutingData(JNIEnv * env, jcla
}
JNIEXPORT jobject JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetParsedSearchRequest(JNIEnv * env, jclass clazz)
Java_app_organicmaps_Framework_nativeGetParsedSearchRequest(JNIEnv * env, jclass clazz)
{
using namespace url_scheme;
static jclass const cl = jni::GetGlobalClassRef(env, "app/organicmaps/sdk/api/ParsedSearchRequest");
static jclass const cl = jni::GetGlobalClassRef(env, "app/organicmaps/api/ParsedSearchRequest");
// Java signature : ParsedSearchRequest(String query, String locale, double lat, double lon, boolean isSearchOnMap)
static jmethodID const ctor = jni::GetConstructorID(env, cl, "(Ljava/lang/String;Ljava/lang/String;DDZ)V");
auto const & r = frm()->GetParsedSearchRequest();
@@ -880,28 +880,28 @@ Java_app_organicmaps_sdk_Framework_nativeGetParsedSearchRequest(JNIEnv * env, jc
}
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetParsedAppName(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeGetParsedAppName(JNIEnv * env, jclass)
{
std::string const & appName = frm()->GetParsedAppName();
return (appName.empty()) ? nullptr : jni::ToJavaString(env, appName);
}
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetParsedOAuth2Code(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeGetParsedOAuth2Code(JNIEnv * env, jclass)
{
std::string const & code = frm()->GetParsedOAuth2Code();
return jni::ToJavaString(env, code);
}
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetParsedBackUrl(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeGetParsedBackUrl(JNIEnv * env, jclass)
{
std::string const & backUrl = frm()->GetParsedBackUrl();
return (backUrl.empty()) ? nullptr : jni::ToJavaString(env, backUrl);
}
JNIEXPORT jdoubleArray JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetParsedCenterLatLon(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeGetParsedCenterLatLon(JNIEnv * env, jclass)
{
ms::LatLon const center = frm()->GetParsedCenterLatLon();
if (!center.IsValid())
@@ -915,14 +915,14 @@ Java_app_organicmaps_sdk_Framework_nativeGetParsedCenterLatLon(JNIEnv * env, jcl
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativePlacePageActivationListener(JNIEnv *env, jclass, jobject jListener)
Java_app_organicmaps_Framework_nativePlacePageActivationListener(JNIEnv *env, jclass, jobject jListener)
{
LOG(LINFO, ("Set global map object listener"));
g_placePageActivationListener = env->NewGlobalRef(jListener);
// void onPlacePageActivated(MapObject object);
jmethodID const activatedId = jni::GetMethodID(env, g_placePageActivationListener,
"onPlacePageActivated",
"(Lapp/organicmaps/sdk/widget/placepage/PlacePageData;)V");
"(Lapp/organicmaps/widget/placepage/PlacePageData;)V");
// void onPlacePageDeactivated();
jmethodID const deactivateId = jni::GetMethodID(env, g_placePageActivationListener,
"onPlacePageDeactivated", "()V");
@@ -962,7 +962,7 @@ Java_app_organicmaps_sdk_Framework_nativePlacePageActivationListener(JNIEnv *env
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeRemovePlacePageActivationListener(JNIEnv *env, jclass, jobject jListener)
Java_app_organicmaps_Framework_nativeRemovePlacePageActivationListener(JNIEnv *env, jclass, jobject jListener)
{
if (g_placePageActivationListener == nullptr)
return;
@@ -977,7 +977,7 @@ Java_app_organicmaps_sdk_Framework_nativeRemovePlacePageActivationListener(JNIEn
}
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetGe0Url(JNIEnv * env, jclass, jdouble lat, jdouble lon, jdouble zoomLevel, jstring name)
Java_app_organicmaps_Framework_nativeGetGe0Url(JNIEnv * env, jclass, jdouble lat, jdouble lon, jdouble zoomLevel, jstring name)
{
::Framework * fr = frm();
double const scale = (zoomLevel > 0 ? zoomLevel : fr->GetDrawScale());
@@ -986,7 +986,7 @@ Java_app_organicmaps_sdk_Framework_nativeGetGe0Url(JNIEnv * env, jclass, jdouble
}
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetGeoUri(JNIEnv * env, jclass, jdouble lat, jdouble lon, jdouble zoomLevel, jstring name)
Java_app_organicmaps_Framework_nativeGetGeoUri(JNIEnv * env, jclass, jdouble lat, jdouble lon, jdouble zoomLevel, jstring name)
{
::Framework * fr = frm();
double const scale = (zoomLevel > 0 ? zoomLevel : fr->GetDrawScale());
@@ -995,16 +995,16 @@ Java_app_organicmaps_sdk_Framework_nativeGetGeoUri(JNIEnv * env, jclass, jdouble
}
JNIEXPORT jobject JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetDistanceAndAzimuth(
Java_app_organicmaps_Framework_nativeGetDistanceAndAzimuth(
JNIEnv * env, jclass, jdouble merX, jdouble merY, jdouble cLat, jdouble cLon, jdouble north)
{
platform::Distance distance;
double azimut = -1.0;
frm()->GetDistanceAndAzimut(m2::PointD(merX, merY), cLat, cLon, north, distance, azimut);
static jclass const daClazz = jni::GetGlobalClassRef(env, "app/organicmaps/sdk/bookmarks/data/DistanceAndAzimut");
static jclass const daClazz = jni::GetGlobalClassRef(env, "app/organicmaps/bookmarks/data/DistanceAndAzimut");
// Java signature : DistanceAndAzimut(Distance distance, double azimuth)
static jmethodID const methodID = jni::GetConstructorID(env, daClazz, "(Lapp/organicmaps/sdk/util/Distance;D)V");
static jmethodID const methodID = jni::GetConstructorID(env, daClazz, "(Lapp/organicmaps/util/Distance;D)V");
return env->NewObject(daClazz, methodID,
ToJavaDistance(env, distance),
@@ -1012,16 +1012,16 @@ Java_app_organicmaps_sdk_Framework_nativeGetDistanceAndAzimuth(
}
JNIEXPORT jobject JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetDistanceAndAzimuthFromLatLon(
Java_app_organicmaps_Framework_nativeGetDistanceAndAzimuthFromLatLon(
JNIEnv * env, jclass clazz, jdouble lat, jdouble lon, jdouble cLat, jdouble cLon, jdouble north)
{
double const merY = mercator::LatToY(lat);
double const merX = mercator::LonToX(lon);
return Java_app_organicmaps_sdk_Framework_nativeGetDistanceAndAzimuth(env, clazz, merX, merY, cLat, cLon, north);
return Java_app_organicmaps_Framework_nativeGetDistanceAndAzimuth(env, clazz, merX, merY, cLat, cLon, north);
}
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_Framework_nativeFormatLatLon(JNIEnv * env, jclass, jdouble lat, jdouble lon, int coordsFormat)
Java_app_organicmaps_Framework_nativeFormatLatLon(JNIEnv * env, jclass, jdouble lat, jdouble lon, int coordsFormat)
{
switch (static_cast<android::CoordinatesFormat>(coordsFormat))
{
@@ -1054,13 +1054,13 @@ Java_app_organicmaps_sdk_Framework_nativeFormatLatLon(JNIEnv * env, jclass, jdou
}
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_Framework_nativeFormatAltitude(JNIEnv * env, jclass, jdouble alt)
Java_app_organicmaps_Framework_nativeFormatAltitude(JNIEnv * env, jclass, jdouble alt)
{
return jni::ToJavaString(env, platform::Distance::FormatAltitude(alt));
}
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_Framework_nativeFormatSpeed(JNIEnv * env, jclass, jdouble speed)
Java_app_organicmaps_Framework_nativeFormatSpeed(JNIEnv * env, jclass, jdouble speed)
{
auto const units = measurement_utils::GetMeasurementUnits();
return jni::ToJavaString(env, measurement_utils::FormatSpeedNumeric(speed, units) + " " +
@@ -1069,13 +1069,13 @@ Java_app_organicmaps_sdk_Framework_nativeFormatSpeed(JNIEnv * env, jclass, jdoub
/*
JNIEXPORT jobject JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetOutdatedCountriesString(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeGetOutdatedCountriesString(JNIEnv * env, jclass)
{
return jni::ToJavaString(env, g_framework->GetOutdatedCountriesString());
}
JNIEXPORT jobjectArray JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetOutdatedCountries(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeGetOutdatedCountries(JNIEnv * env, jclass)
{
vector<Country const *> countries;
Storage const & storage = g_framework->GetStorage();
@@ -1089,44 +1089,44 @@ Java_app_organicmaps_sdk_Framework_nativeGetOutdatedCountries(JNIEnv * env, jcla
}
JNIEXPORT jint JNICALL
Java_app_organicmaps_sdk_Framework_nativeToDoAfterUpdate(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeToDoAfterUpdate(JNIEnv * env, jclass)
{
return g_framework->ToDoAfterUpdate();
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_Framework_nativeIsDataVersionChanged(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeIsDataVersionChanged(JNIEnv * env, jclass)
{
return frm()->IsDataVersionUpdated() ? JNI_TRUE : JNI_FALSE;
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeUpdateSavedDataVersion(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeUpdateSavedDataVersion(JNIEnv * env, jclass)
{
frm()->UpdateSavedDataVersion();
}
*/
JNIEXPORT jlong JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetDataVersion(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeGetDataVersion(JNIEnv * env, jclass)
{
return frm()->GetCurrentDataVersion();
}
JNIEXPORT jint JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetDrawScale(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeGetDrawScale(JNIEnv * env, jclass)
{
return static_cast<jint>(frm()->GetDrawScale());
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativePokeSearchInViewport(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativePokeSearchInViewport(JNIEnv * env, jclass)
{
frm()->GetSearchAPI().PokeSearchInViewport();
}
JNIEXPORT jdoubleArray JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetScreenRectCenter(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeGetScreenRectCenter(JNIEnv * env, jclass)
{
m2::PointD const center = frm()->GetViewportCenter();
@@ -1138,43 +1138,43 @@ Java_app_organicmaps_sdk_Framework_nativeGetScreenRectCenter(JNIEnv * env, jclas
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeShowTrackRect(JNIEnv * env, jclass, jlong track)
Java_app_organicmaps_Framework_nativeShowTrackRect(JNIEnv * env, jclass, jlong track)
{
frm()->ShowTrack(static_cast<kml::TrackId>(track));
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeSaveRoute(JNIEnv *, jclass)
Java_app_organicmaps_Framework_nativeSaveRoute(JNIEnv *, jclass)
{
frm()->SaveRoute();
}
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetBookmarkDir(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeGetBookmarkDir(JNIEnv * env, jclass)
{
return jni::ToJavaString(env, GetPlatform().SettingsDir().c_str());
}
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetWritableDir(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeGetWritableDir(JNIEnv * env, jclass)
{
return jni::ToJavaString(env, GetPlatform().WritableDir().c_str());
}
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetSettingsDir(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeGetSettingsDir(JNIEnv * env, jclass)
{
return jni::ToJavaString(env, GetPlatform().SettingsDir().c_str());
}
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetDataFileExt(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeGetDataFileExt(JNIEnv * env, jclass)
{
return jni::ToJavaString(env, DATA_FILE_EXTENSION);
}
JNIEXPORT jobjectArray JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetMovableFilesExts(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeGetMovableFilesExts(JNIEnv * env, jclass)
{
vector<string> exts = { DATA_FILE_EXTENSION, FONT_FILE_EXTENSION };
platform::CountryIndexes::GetIndexesExts(exts);
@@ -1182,7 +1182,7 @@ Java_app_organicmaps_sdk_Framework_nativeGetMovableFilesExts(JNIEnv * env, jclas
}
JNIEXPORT jobjectArray JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetBookmarksFilesExts(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeGetBookmarksFilesExts(JNIEnv * env, jclass)
{
static std::array<std::string, 4> const kBookmarkExtensions = {
std::string{kKmzExtension},
@@ -1195,7 +1195,7 @@ Java_app_organicmaps_sdk_Framework_nativeGetBookmarksFilesExts(JNIEnv * env, jcl
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeChangeWritableDir(JNIEnv * env, jclass, jstring jNewPath)
Java_app_organicmaps_Framework_nativeChangeWritableDir(JNIEnv * env, jclass, jstring jNewPath)
{
string newPath = jni::ToNativeString(env, jNewPath);
g_framework->RemoveLocalMaps();
@@ -1204,55 +1204,55 @@ Java_app_organicmaps_sdk_Framework_nativeChangeWritableDir(JNIEnv * env, jclass,
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_Framework_nativeIsRoutingActive(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeIsRoutingActive(JNIEnv * env, jclass)
{
return frm()->GetRoutingManager().IsRoutingActive();
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_Framework_nativeIsRouteBuilding(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeIsRouteBuilding(JNIEnv * env, jclass)
{
return frm()->GetRoutingManager().IsRouteBuilding();
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_Framework_nativeIsRouteBuilt(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeIsRouteBuilt(JNIEnv * env, jclass)
{
return frm()->GetRoutingManager().IsRouteBuilt();
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeCloseRouting(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeCloseRouting(JNIEnv * env, jclass)
{
frm()->GetRoutingManager().CloseRouting(true /* remove route points */);
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeBuildRoute(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeBuildRoute(JNIEnv * env, jclass)
{
frm()->GetRoutingManager().BuildRoute();
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeRemoveRoute(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeRemoveRoute(JNIEnv * env, jclass)
{
frm()->GetRoutingManager().RemoveRoute(false /* deactivateFollowing */);
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeFollowRoute(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeFollowRoute(JNIEnv * env, jclass)
{
frm()->GetRoutingManager().FollowRoute();
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeDisableFollowing(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeDisableFollowing(JNIEnv * env, jclass)
{
frm()->GetRoutingManager().DisableFollowMode();
}
JNIEXPORT jobjectArray JNICALL
Java_app_organicmaps_sdk_Framework_nativeGenerateNotifications(JNIEnv * env, jclass, jboolean announceStreets)
Java_app_organicmaps_Framework_nativeGenerateNotifications(JNIEnv * env, jclass, jboolean announceStreets)
{
::Framework * fr = frm();
if (!fr->GetRoutingManager().IsRoutingActive())
@@ -1267,20 +1267,20 @@ Java_app_organicmaps_sdk_Framework_nativeGenerateNotifications(JNIEnv * env, jcl
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeSetSpeedCamManagerMode(JNIEnv * env, jclass, jint mode)
Java_app_organicmaps_Framework_nativeSetSpeedCamManagerMode(JNIEnv * env, jclass, jint mode)
{
frm()->GetRoutingManager().GetSpeedCamManager().SetMode(
static_cast<routing::SpeedCameraManagerMode>(mode));
}
JNIEXPORT jint JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetSpeedCamManagerMode(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeGetSpeedCamManagerMode(JNIEnv * env, jclass)
{
return static_cast<jint>(frm()->GetRoutingManager().GetSpeedCamManager().GetMode());
}
JNIEXPORT jobject JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetRouteFollowingInfo(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeGetRouteFollowingInfo(JNIEnv * env, jclass)
{
RoutingManager & rm = frm()->GetRoutingManager();
if (!rm.IsRoutingActive())
@@ -1295,9 +1295,9 @@ Java_app_organicmaps_sdk_Framework_nativeGetRouteFollowingInfo(JNIEnv * env, jcl
}
JNIEXPORT jobjectArray JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetRouteJunctionPoints(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeGetRouteJunctionPoints(JNIEnv * env, jclass)
{
vector<geometry::PointWithAltitude> junctionPoints;
vector<m2::PointD> junctionPoints;
if (!frm()->GetRoutingManager().RoutingSession().GetRouteJunctionPoints(junctionPoints))
{
LOG(LWARNING, ("Can't get the route junction points"));
@@ -1308,7 +1308,7 @@ Java_app_organicmaps_sdk_Framework_nativeGetRouteJunctionPoints(JNIEnv * env, jc
}
JNIEXPORT jintArray JNICALL
Java_app_organicmaps_sdk_Framework_nativeGenerateRouteAltitudeChartBits(JNIEnv * env, jclass, jint width, jint height, jobject routeAltitudeLimits)
Java_app_organicmaps_Framework_nativeGenerateRouteAltitudeChartBits(JNIEnv * env, jclass, jint width, jint height, jobject routeAltitudeLimits)
{
RoutingManager::DistanceAltitude altitudes;
if (!frm()->GetRoutingManager().GetRouteAltitudesAndDistancesM(altitudes))
@@ -1398,13 +1398,13 @@ Java_app_organicmaps_sdk_Framework_nativeGenerateRouteAltitudeChartBits(JNIEnv *
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeShowCountry(JNIEnv * env, jclass, jstring countryId, jboolean zoomToDownloadButton)
Java_app_organicmaps_Framework_nativeShowCountry(JNIEnv * env, jclass, jstring countryId, jboolean zoomToDownloadButton)
{
g_framework->ShowNode(jni::ToNativeString(env, countryId), (bool) zoomToDownloadButton);
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeSetRoutingListener(JNIEnv * env, jclass, jobject listener)
Java_app_organicmaps_Framework_nativeSetRoutingListener(JNIEnv * env, jclass, jobject listener)
{
CHECK(g_framework, ("Framework isn't created yet!"));
frm()->GetRoutingManager().SetRouteBuildingListener(
@@ -1414,7 +1414,7 @@ Java_app_organicmaps_sdk_Framework_nativeSetRoutingListener(JNIEnv * env, jclass
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeSetRouteProgressListener(JNIEnv * env, jclass, jobject listener)
Java_app_organicmaps_Framework_nativeSetRouteProgressListener(JNIEnv * env, jclass, jobject listener)
{
CHECK(g_framework, ("Framework isn't created yet!"));
frm()->GetRoutingManager().SetRouteProgressListener(
@@ -1422,7 +1422,7 @@ Java_app_organicmaps_sdk_Framework_nativeSetRouteProgressListener(JNIEnv * env,
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeSetRoutingRecommendationListener(JNIEnv * env, jclass,
Java_app_organicmaps_Framework_nativeSetRoutingRecommendationListener(JNIEnv * env, jclass,
jobject listener)
{
CHECK(g_framework, ("Framework isn't created yet!"));
@@ -1431,7 +1431,7 @@ Java_app_organicmaps_sdk_Framework_nativeSetRoutingRecommendationListener(JNIEnv
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeSetRoutingLoadPointsListener(
Java_app_organicmaps_Framework_nativeSetRoutingLoadPointsListener(
JNIEnv *, jclass, jobject listener)
{
CHECK(g_framework, ("Framework isn't created yet!"));
@@ -1442,19 +1442,19 @@ Java_app_organicmaps_sdk_Framework_nativeSetRoutingLoadPointsListener(
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeDeactivatePopup(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeDeactivatePopup(JNIEnv * env, jclass)
{
return g_framework->DeactivatePopup();
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeDeactivateMapSelectionCircle(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeDeactivateMapSelectionCircle(JNIEnv * env, jclass)
{
return g_framework->DeactivateMapSelectionCircle();
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeAddRoutePoint(JNIEnv * env, jclass, jstring title,
Java_app_organicmaps_Framework_nativeAddRoutePoint(JNIEnv * env, jclass, jstring title,
jstring subtitle, jobject markType,
jint intermediateIndex,
jboolean isMyPosition,
@@ -1473,64 +1473,64 @@ Java_app_organicmaps_sdk_Framework_nativeAddRoutePoint(JNIEnv * env, jclass, jst
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeRemoveRoutePoints(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeRemoveRoutePoints(JNIEnv * env, jclass)
{
frm()->GetRoutingManager().RemoveRoutePoints();
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeRemoveRoutePoint(JNIEnv * env, jclass, jobject markType, jint intermediateIndex)
Java_app_organicmaps_Framework_nativeRemoveRoutePoint(JNIEnv * env, jclass, jobject markType, jint intermediateIndex)
{
frm()->GetRoutingManager().RemoveRoutePoint(GetRouteMarkType(env, markType),
static_cast<size_t>(intermediateIndex));
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeRemoveIntermediateRoutePoints(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeRemoveIntermediateRoutePoints(JNIEnv * env, jclass)
{
frm()->GetRoutingManager().RemoveIntermediateRoutePoints();
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_Framework_nativeCouldAddIntermediatePoint(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeCouldAddIntermediatePoint(JNIEnv * env, jclass)
{
return frm()->GetRoutingManager().CouldAddIntermediatePoint();
}
JNIEXPORT jobjectArray JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetRoutePoints(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeGetRoutePoints(JNIEnv * env, jclass)
{
return CreateRouteMarkDataArray(env, frm()->GetRoutingManager().GetRoutePoints());
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeMoveRoutePoint(JNIEnv * env, jclass,
Java_app_organicmaps_Framework_nativeMoveRoutePoint(JNIEnv * env, jclass,
jint currentIndex, jint targetIndex)
{
frm()->GetRoutingManager().MoveRoutePoint(currentIndex, targetIndex);
}
JNIEXPORT jobject JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetTransitRouteInfo(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeGetTransitRouteInfo(JNIEnv * env, jclass)
{
return CreateTransitRouteInfo(env, frm()->GetRoutingManager().GetTransitRouteInfo());
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeReloadWorldMaps(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeReloadWorldMaps(JNIEnv * env, jclass)
{
g_framework->ReloadWorldMaps();
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_Framework_nativeIsDayTime(JNIEnv * env, jclass, jlong utcTimeSeconds, jdouble lat, jdouble lon)
Java_app_organicmaps_Framework_nativeIsDayTime(JNIEnv * env, jclass, jlong utcTimeSeconds, jdouble lat, jdouble lon)
{
DayTimeType const dt = GetDayTime(static_cast<time_t>(utcTimeSeconds), lat, lon);
return (dt == DayTimeType::Day || dt == DayTimeType::PolarDay);
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeSet3dMode(JNIEnv * env, jclass, jboolean allow, jboolean allowBuildings)
Java_app_organicmaps_Framework_nativeSet3dMode(JNIEnv * env, jclass, jboolean allow, jboolean allowBuildings)
{
bool const allow3d = static_cast<bool>(allow);
bool const allow3dBuildings = static_cast<bool>(allowBuildings);
@@ -1540,7 +1540,7 @@ Java_app_organicmaps_sdk_Framework_nativeSet3dMode(JNIEnv * env, jclass, jboolea
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeGet3dMode(JNIEnv * env, jclass, jobject result)
Java_app_organicmaps_Framework_nativeGet3dMode(JNIEnv * env, jclass, jobject result)
{
bool enabled;
bool buildings;
@@ -1556,7 +1556,7 @@ Java_app_organicmaps_sdk_Framework_nativeGet3dMode(JNIEnv * env, jclass, jobject
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeSetAutoZoomEnabled(JNIEnv * env, jclass, jboolean enabled)
Java_app_organicmaps_Framework_nativeSetAutoZoomEnabled(JNIEnv * env, jclass, jboolean enabled)
{
bool const autoZoomEnabled = static_cast<bool>(enabled);
frm()->SaveAutoZoom(autoZoomEnabled);
@@ -1564,19 +1564,19 @@ Java_app_organicmaps_sdk_Framework_nativeSetAutoZoomEnabled(JNIEnv * env, jclass
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeSetTransitSchemeEnabled(JNIEnv * env, jclass, jboolean enabled)
Java_app_organicmaps_Framework_nativeSetTransitSchemeEnabled(JNIEnv * env, jclass, jboolean enabled)
{
frm()->GetTransitManager().EnableTransitSchemeMode(static_cast<bool>(enabled));
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_Framework_nativeIsTransitSchemeEnabled(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeIsTransitSchemeEnabled(JNIEnv * env, jclass)
{
return static_cast<jboolean>(frm()->LoadTransitSchemeEnabled());
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeSetIsolinesLayerEnabled(JNIEnv * env, jclass, jboolean enabled)
Java_app_organicmaps_Framework_nativeSetIsolinesLayerEnabled(JNIEnv * env, jclass, jboolean enabled)
{
auto const isolinesEnabled = static_cast<bool>(enabled);
frm()->GetIsolinesManager().SetEnabled(isolinesEnabled);
@@ -1584,44 +1584,44 @@ Java_app_organicmaps_sdk_Framework_nativeSetIsolinesLayerEnabled(JNIEnv * env, j
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_Framework_nativeIsIsolinesLayerEnabled(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeIsIsolinesLayerEnabled(JNIEnv * env, jclass)
{
return static_cast<jboolean>(frm()->LoadIsolinesEnabled());
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeSetOutdoorsLayerEnabled(JNIEnv * env, jclass, jboolean enabled)
Java_app_organicmaps_Framework_nativeSetOutdoorsLayerEnabled(JNIEnv * env, jclass, jboolean enabled)
{
frm()->SaveOutdoorsEnabled(enabled);
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_Framework_nativeIsOutdoorsLayerEnabled(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeIsOutdoorsLayerEnabled(JNIEnv * env, jclass)
{
return static_cast<jboolean>(frm()->LoadOutdoorsEnabled());
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeSaveSettingSchemeEnabled(JNIEnv * env, jclass, jboolean enabled)
Java_app_organicmaps_Framework_nativeSaveSettingSchemeEnabled(JNIEnv * env, jclass, jboolean enabled)
{
frm()->SaveTransitSchemeEnabled(static_cast<bool>(enabled));
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetAutoZoomEnabled(JNIEnv *, jclass)
Java_app_organicmaps_Framework_nativeGetAutoZoomEnabled(JNIEnv *, jclass)
{
return frm()->LoadAutoZoom();
}
// static void nativeZoomToPoint(double lat, double lon, int zoom, boolean animate);
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeZoomToPoint(JNIEnv * env, jclass, jdouble lat, jdouble lon, jint zoom, jboolean animate)
Java_app_organicmaps_Framework_nativeZoomToPoint(JNIEnv * env, jclass, jdouble lat, jdouble lon, jint zoom, jboolean animate)
{
g_framework->Scale(m2::PointD(mercator::FromLatLon(lat, lon)), zoom, animate);
}
JNIEXPORT jobject JNICALL
Java_app_organicmaps_sdk_Framework_nativeDeleteBookmarkFromMapObject(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeDeleteBookmarkFromMapObject(JNIEnv * env, jclass)
{
if (!frm()->HasPlacePageInfo())
return nullptr;
@@ -1640,7 +1640,7 @@ Java_app_organicmaps_sdk_Framework_nativeDeleteBookmarkFromMapObject(JNIEnv * en
}
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetPoiContactUrl(JNIEnv *env, jclass, jint id)
Java_app_organicmaps_Framework_nativeGetPoiContactUrl(JNIEnv *env, jclass, jint id)
{
auto const metaID = static_cast<osm::MapObject::MetadataID>(id);
string_view const value = g_framework->GetPlacePageInfo().GetMetadata(metaID);
@@ -1650,14 +1650,14 @@ Java_app_organicmaps_sdk_Framework_nativeGetPoiContactUrl(JNIEnv *env, jclass, j
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_Framework_nativeIsDownloadedMapAtScreenCenter(JNIEnv *, jclass)
Java_app_organicmaps_Framework_nativeIsDownloadedMapAtScreenCenter(JNIEnv *, jclass)
{
::Framework * fr = frm();
return storage::IsPointCoveredByDownloadedMaps(fr->GetViewportCenter(), fr->GetStorage(), fr->GetCountryInfoGetter());
}
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetActiveObjectFormattedCuisine(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeGetActiveObjectFormattedCuisine(JNIEnv * env, jclass)
{
::Framework * frm = g_framework->NativeFramework();
if (!frm->HasPlacePageInfo())
@@ -1667,75 +1667,75 @@ Java_app_organicmaps_sdk_Framework_nativeGetActiveObjectFormattedCuisine(JNIEnv
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeSetVisibleRect(JNIEnv * env, jclass, jint left, jint top, jint right, jint bottom)
Java_app_organicmaps_Framework_nativeSetVisibleRect(JNIEnv * env, jclass, jint left, jint top, jint right, jint bottom)
{
frm()->SetVisibleViewport(m2::RectD(left, top, right, bottom));
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_Framework_nativeIsRouteFinished(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeIsRouteFinished(JNIEnv * env, jclass)
{
return frm()->GetRoutingManager().IsRouteFinished();
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeRunFirstLaunchAnimation(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeRunFirstLaunchAnimation(JNIEnv * env, jclass)
{
frm()->RunFirstLaunchAnimation();
}
JNIEXPORT jint JNICALL
Java_app_organicmaps_sdk_Framework_nativeOpenRoutePointsTransaction(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeOpenRoutePointsTransaction(JNIEnv * env, jclass)
{
return frm()->GetRoutingManager().OpenRoutePointsTransaction();
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeApplyRoutePointsTransaction(JNIEnv * env, jclass,
Java_app_organicmaps_Framework_nativeApplyRoutePointsTransaction(JNIEnv * env, jclass,
jint transactionId)
{
frm()->GetRoutingManager().ApplyRoutePointsTransaction(transactionId);
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeCancelRoutePointsTransaction(JNIEnv * env, jclass,
Java_app_organicmaps_Framework_nativeCancelRoutePointsTransaction(JNIEnv * env, jclass,
jint transactionId)
{
frm()->GetRoutingManager().CancelRoutePointsTransaction(transactionId);
}
JNIEXPORT jint JNICALL
Java_app_organicmaps_sdk_Framework_nativeInvalidRoutePointsTransactionId(JNIEnv * env, jclass)
Java_app_organicmaps_Framework_nativeInvalidRoutePointsTransactionId(JNIEnv * env, jclass)
{
return frm()->GetRoutingManager().InvalidRoutePointsTransactionId();
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_Framework_nativeHasSavedRoutePoints(JNIEnv *, jclass)
Java_app_organicmaps_Framework_nativeHasSavedRoutePoints(JNIEnv *, jclass)
{
return frm()->GetRoutingManager().HasSavedRoutePoints();
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeLoadRoutePoints(JNIEnv *, jclass)
Java_app_organicmaps_Framework_nativeLoadRoutePoints(JNIEnv *, jclass)
{
frm()->GetRoutingManager().LoadRoutePoints(g_loadRouteHandler);
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeSaveRoutePoints(JNIEnv *, jclass)
Java_app_organicmaps_Framework_nativeSaveRoutePoints(JNIEnv *, jclass)
{
frm()->GetRoutingManager().SaveRoutePoints();
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeDeleteSavedRoutePoints(JNIEnv *, jclass)
Java_app_organicmaps_Framework_nativeDeleteSavedRoutePoints(JNIEnv *, jclass)
{
frm()->GetRoutingManager().DeleteSavedRoutePoints();
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeShowFeature(JNIEnv * env, jclass, jobject featureId)
Java_app_organicmaps_Framework_nativeShowFeature(JNIEnv * env, jclass, jobject featureId)
{
auto const f = g_framework->BuildFeatureId(env, featureId);
@@ -1744,13 +1744,13 @@ Java_app_organicmaps_sdk_Framework_nativeShowFeature(JNIEnv * env, jclass, jobje
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeMakeCrash(JNIEnv *env, jclass type)
Java_app_organicmaps_Framework_nativeMakeCrash(JNIEnv *env, jclass type)
{
CHECK(false, ("Diagnostic native crash!"));
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeSetPowerManagerFacility(JNIEnv *, jclass,
Java_app_organicmaps_Framework_nativeSetPowerManagerFacility(JNIEnv *, jclass,
jint facilityType, jboolean state)
{
frm()->GetPowerManager().SetFacility(static_cast<power_management::Facility>(facilityType),
@@ -1758,32 +1758,32 @@ Java_app_organicmaps_sdk_Framework_nativeSetPowerManagerFacility(JNIEnv *, jclas
}
JNIEXPORT jint JNICALL
Java_app_organicmaps_sdk_Framework_nativeGetPowerManagerScheme(JNIEnv *, jclass)
Java_app_organicmaps_Framework_nativeGetPowerManagerScheme(JNIEnv *, jclass)
{
return static_cast<jint>(frm()->GetPowerManager().GetScheme());
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeSetPowerManagerScheme(JNIEnv *, jclass, jint schemeType)
Java_app_organicmaps_Framework_nativeSetPowerManagerScheme(JNIEnv *, jclass, jint schemeType)
{
frm()->GetPowerManager().SetScheme(static_cast<power_management::Scheme>(schemeType));
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeSetViewportCenter(JNIEnv *, jclass, jdouble lat, jdouble lon, jint zoom)
Java_app_organicmaps_Framework_nativeSetViewportCenter(JNIEnv *, jclass, jdouble lat, jdouble lon, jint zoom)
{
// isAnim = true because of previous nativeSetChoosePositionMode animations.
frm()->SetViewportCenter(mercator::FromLatLon(lat, lon), static_cast<int>(zoom), true /* isAnim */);
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeStopLocationFollow(JNIEnv *, jclass)
Java_app_organicmaps_Framework_nativeStopLocationFollow(JNIEnv *, jclass)
{
frm()->StopLocationFollow();
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeSetSearchViewport(JNIEnv *, jclass, jdouble lat,
Java_app_organicmaps_Framework_nativeSetSearchViewport(JNIEnv *, jclass, jdouble lat,
jdouble lon, jint zoom)
{
auto const center = mercator::FromLatLon(static_cast<double>(lat),
@@ -1793,13 +1793,13 @@ Java_app_organicmaps_sdk_Framework_nativeSetSearchViewport(JNIEnv *, jclass, jdo
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_Framework_nativeHasPlacePageInfo(JNIEnv *, jclass)
Java_app_organicmaps_Framework_nativeHasPlacePageInfo(JNIEnv *, jclass)
{
return static_cast<jboolean>(frm()->HasPlacePageInfo());
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Framework_nativeMemoryWarning(JNIEnv *, jclass)
Java_app_organicmaps_Framework_nativeMemoryWarning(JNIEnv *, jclass)
{
return frm()->MemoryWarning();
}

View File

@@ -1,9 +1,9 @@
#include "Framework.hpp"
#include "map/gps_tracker.hpp"
#include "app/organicmaps/sdk/core/jni_helper.hpp"
#include "app/organicmaps/core/jni_helper.hpp"
#include "app/organicmaps/sdk/platform/AndroidPlatform.hpp"
#include "app/organicmaps/platform/AndroidPlatform.hpp"
extern "C"
{
@@ -18,7 +18,7 @@ static void LocationStateModeChanged(location::EMyPositionMode mode,
// public static void nativeSwitchToNextMode();
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_location_LocationState_nativeSwitchToNextMode(JNIEnv * env, jclass clazz)
Java_app_organicmaps_location_LocationState_nativeSwitchToNextMode(JNIEnv * env, jclass clazz)
{
ASSERT(g_framework, ());
g_framework->SwitchMyPositionNextMode();
@@ -26,7 +26,7 @@ Java_app_organicmaps_sdk_location_LocationState_nativeSwitchToNextMode(JNIEnv *
// private static int nativeGetMode();
JNIEXPORT jint JNICALL
Java_app_organicmaps_sdk_location_LocationState_nativeGetMode(JNIEnv * env, jclass clazz)
Java_app_organicmaps_location_LocationState_nativeGetMode(JNIEnv * env, jclass clazz)
{
// GetMyPositionMode() is initialized only after drape creation.
// https://github.com/organicmaps/organicmaps/issues/1128#issuecomment-1784435190
@@ -36,7 +36,7 @@ Java_app_organicmaps_sdk_location_LocationState_nativeGetMode(JNIEnv * env, jcla
// public static void nativeSetListener(ModeChangeListener listener);
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_location_LocationState_nativeSetListener(JNIEnv * env, jclass clazz,
Java_app_organicmaps_location_LocationState_nativeSetListener(JNIEnv * env, jclass clazz,
jobject listener)
{
ASSERT(g_framework, ());
@@ -46,21 +46,21 @@ Java_app_organicmaps_sdk_location_LocationState_nativeSetListener(JNIEnv * env,
// public static void nativeRemoveListener();
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_location_LocationState_nativeRemoveListener(JNIEnv * env, jclass clazz)
Java_app_organicmaps_location_LocationState_nativeRemoveListener(JNIEnv * env, jclass clazz)
{
ASSERT(g_framework, ());
g_framework->SetMyPositionModeListener(location::TMyPositionModeChanged());
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_location_LocationState_nativeOnLocationError(JNIEnv * env, jclass clazz, int errorCode)
Java_app_organicmaps_location_LocationState_nativeOnLocationError(JNIEnv * env, jclass clazz, int errorCode)
{
ASSERT(g_framework, ());
g_framework->OnLocationError(errorCode);
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_location_LocationState_nativeLocationUpdated(JNIEnv * env, jclass clazz, jlong time,
Java_app_organicmaps_location_LocationState_nativeLocationUpdated(JNIEnv * env, jclass clazz, jlong time,
jdouble lat, jdouble lon, jfloat accuracy,
jdouble altitude, jfloat speed, jfloat bearing)
{

View File

@@ -1,8 +1,8 @@
#include "Framework.hpp"
#include "app/organicmaps/sdk/core/jni_helper.hpp"
#include "app/organicmaps/core/jni_helper.hpp"
#include "app/organicmaps/sdk/platform/AndroidPlatform.hpp"
#include "app/organicmaps/platform/AndroidPlatform.hpp"
#include "storage/storage_defines.hpp"
@@ -23,7 +23,7 @@ void OnRenderingInitializationFinished(std::shared_ptr<jobject> const & listener
extern "C"
{
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_Map_nativeCreateEngine(JNIEnv * env, jclass,
Java_app_organicmaps_Map_nativeCreateEngine(JNIEnv * env, jclass,
jobject surface, jint density,
jboolean firstLaunch,
jboolean isLaunchByDeepLink,
@@ -35,25 +35,25 @@ Java_app_organicmaps_sdk_Map_nativeCreateEngine(JNIEnv * env, jclass,
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_Map_nativeIsEngineCreated(JNIEnv *, jclass)
Java_app_organicmaps_Map_nativeIsEngineCreated(JNIEnv *, jclass)
{
return g_framework->IsDrapeEngineCreated();
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Map_nativeUpdateEngineDpi(JNIEnv *, jclass, jint dpi)
Java_app_organicmaps_Map_nativeUpdateEngineDpi(JNIEnv *, jclass, jint dpi)
{
return g_framework->UpdateDpi(dpi);
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Map_nativeExecuteMapApiRequest(JNIEnv * env, jclass)
Java_app_organicmaps_Map_nativeExecuteMapApiRequest(JNIEnv * env, jclass)
{
return g_framework->ExecuteMapApiRequest();
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Map_nativeSetRenderingInitializationFinishedListener(
Java_app_organicmaps_Map_nativeSetRenderingInitializationFinishedListener(
JNIEnv *, jclass, jobject listener)
{
if (listener)
@@ -68,68 +68,68 @@ Java_app_organicmaps_sdk_Map_nativeSetRenderingInitializationFinishedListener(
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_Map_nativeAttachSurface(JNIEnv * env, jclass, jobject surface)
Java_app_organicmaps_Map_nativeAttachSurface(JNIEnv * env, jclass, jobject surface)
{
return g_framework->AttachSurface(env, surface);
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Map_nativeDetachSurface(JNIEnv *, jclass, jboolean destroySurface)
Java_app_organicmaps_Map_nativeDetachSurface(JNIEnv *, jclass, jboolean destroySurface)
{
g_framework->DetachSurface(destroySurface);
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Map_nativeSurfaceChanged(JNIEnv * env, jclass, jobject surface, jint w, jint h)
Java_app_organicmaps_Map_nativeSurfaceChanged(JNIEnv * env, jclass, jobject surface, jint w, jint h)
{
g_framework->Resize(env, surface, w, h);
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_Map_nativeDestroySurfaceOnDetach(JNIEnv *, jclass)
Java_app_organicmaps_Map_nativeDestroySurfaceOnDetach(JNIEnv *, jclass)
{
return g_framework->DestroySurfaceOnDetach();
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Map_nativePauseSurfaceRendering(JNIEnv *, jclass)
Java_app_organicmaps_Map_nativePauseSurfaceRendering(JNIEnv *, jclass)
{
g_framework->PauseSurfaceRendering();
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Map_nativeResumeSurfaceRendering(JNIEnv *, jclass)
Java_app_organicmaps_Map_nativeResumeSurfaceRendering(JNIEnv *, jclass)
{
g_framework->ResumeSurfaceRendering();
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Map_nativeUpdateMyPositionRoutingOffset(JNIEnv * env, jclass clazz, int offsetY)
Java_app_organicmaps_Map_nativeUpdateMyPositionRoutingOffset(JNIEnv * env, jclass clazz, int offsetY)
{
g_framework->UpdateMyPositionRoutingOffset(offsetY);
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Map_nativeApplyWidgets(JNIEnv *, jclass)
Java_app_organicmaps_Map_nativeApplyWidgets(JNIEnv *, jclass)
{
g_framework->ApplyWidgets();
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Map_nativeCleanWidgets(JNIEnv *, jclass)
Java_app_organicmaps_Map_nativeCleanWidgets(JNIEnv *, jclass)
{
g_framework->CleanWidgets();
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Map_nativeSetupWidget(
Java_app_organicmaps_Map_nativeSetupWidget(
JNIEnv *, jclass, jint widget, jfloat x, jfloat y, jint anchor)
{
g_framework->SetupWidget(static_cast<gui::EWidget>(widget), x, y, static_cast<dp::Anchor>(anchor));
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Map_nativeCompassUpdated(JNIEnv *, jclass, jdouble north, jboolean forceRedraw)
Java_app_organicmaps_Map_nativeCompassUpdated(JNIEnv *, jclass, jdouble north, jboolean forceRedraw)
{
location::CompassInfo info;
info.m_bearing = north;
@@ -138,33 +138,33 @@ Java_app_organicmaps_sdk_Map_nativeCompassUpdated(JNIEnv *, jclass, jdouble nort
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Map_nativeScalePlus(JNIEnv *, jclass)
Java_app_organicmaps_Map_nativeScalePlus(JNIEnv *, jclass)
{
g_framework->Scale(::Framework::SCALE_MAG);
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Map_nativeScaleMinus(JNIEnv *, jclass)
Java_app_organicmaps_Map_nativeScaleMinus(JNIEnv *, jclass)
{
g_framework->Scale(::Framework::SCALE_MIN);
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Map_nativeOnScroll(
Java_app_organicmaps_Map_nativeOnScroll(
JNIEnv *, jclass, jdouble distanceX, jdouble distanceY)
{
g_framework->Scroll(distanceX, distanceY);
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Map_nativeOnScale(
Java_app_organicmaps_Map_nativeOnScale(
JNIEnv *, jclass, jdouble factor, jdouble focusX, jdouble focusY, jboolean isAnim)
{
g_framework->Scale(factor, {focusX, focusY}, isAnim);
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Map_nativeOnTouch(JNIEnv *, jclass, jint action,
Java_app_organicmaps_Map_nativeOnTouch(JNIEnv *, jclass, jint action,
jint id1, jfloat x1, jfloat y1,
jint id2, jfloat x2, jfloat y2,
jint maskedPointer)
@@ -175,14 +175,14 @@ Java_app_organicmaps_sdk_Map_nativeOnTouch(JNIEnv *, jclass, jint action,
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Map_nativeStorageConnected(JNIEnv *, jclass)
Java_app_organicmaps_Map_nativeStorageConnected(JNIEnv *, jclass)
{
android::Platform::Instance().OnExternalStorageStatusChanged(true);
g_framework->AddLocalMaps();
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_Map_nativeStorageDisconnected(JNIEnv *, jclass)
Java_app_organicmaps_Map_nativeStorageDisconnected(JNIEnv *, jclass)
{
android::Platform::Instance().OnExternalStorageStatusChanged(false);
g_framework->RemoveLocalMaps();

View File

@@ -1,7 +1,7 @@
#include "Framework.hpp"
#include "app/organicmaps/sdk/core/jni_helper.hpp"
#include "app/organicmaps/sdk/core/jni_java_methods.hpp"
#include "app/organicmaps/core/jni_helper.hpp"
#include "app/organicmaps/core/jni_java_methods.hpp"
#include "coding/internal/file_data.hpp"
@@ -70,7 +70,7 @@ struct CountryItemBuilder
CountryItemBuilder(JNIEnv *env)
{
m_class = jni::GetGlobalClassRef(env, "app/organicmaps/sdk/downloader/CountryItem");
m_class = jni::GetGlobalClassRef(env, "app/organicmaps/downloader/CountryItem");
m_ctor = jni::GetConstructorID(env, m_class, "(Ljava/lang/String;)V");
m_Id = env->GetFieldID(m_class, "id", "Ljava/lang/String;");
@@ -112,55 +112,55 @@ extern "C"
// static String nativeGetRoot();
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeGetRoot(JNIEnv * env, jclass clazz)
Java_app_organicmaps_downloader_MapManager_nativeGetRoot(JNIEnv * env, jclass clazz)
{
return jni::ToJavaString(env, GetStorage().GetRootId());
}
// static boolean nativeMoveFile(String oldFile, String newFile);
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeMoveFile(JNIEnv * env, jclass clazz, jstring oldFile, jstring newFile)
Java_app_organicmaps_downloader_MapManager_nativeMoveFile(JNIEnv * env, jclass clazz, jstring oldFile, jstring newFile)
{
return base::MoveFileX(jni::ToNativeString(env, oldFile), jni::ToNativeString(env, newFile));
}
// static boolean nativeHasSpaceToDownloadAmount(long bytes);
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeHasSpaceToDownloadAmount(JNIEnv * env, jclass clazz, jlong bytes)
Java_app_organicmaps_downloader_MapManager_nativeHasSpaceToDownloadAmount(JNIEnv * env, jclass clazz, jlong bytes)
{
return storage::IsEnoughSpaceForDownload(bytes);
}
// static boolean nativeHasSpaceToDownloadCountry(String root);
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeHasSpaceToDownloadCountry(JNIEnv * env, jclass clazz, jstring root)
Java_app_organicmaps_downloader_MapManager_nativeHasSpaceToDownloadCountry(JNIEnv * env, jclass clazz, jstring root)
{
return storage::IsEnoughSpaceForDownload(jni::ToNativeString(env, root), GetStorage());
}
// static boolean nativeHasSpaceToUpdate(String root);
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeHasSpaceToUpdate(JNIEnv * env, jclass clazz, jstring root)
Java_app_organicmaps_downloader_MapManager_nativeHasSpaceToUpdate(JNIEnv * env, jclass clazz, jstring root)
{
return IsEnoughSpaceForUpdate(jni::ToNativeString(env, root), GetStorage());
}
// static int nativeGetDownloadedCount();
JNIEXPORT jint JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeGetDownloadedCount(JNIEnv * env, jclass clazz)
Java_app_organicmaps_downloader_MapManager_nativeGetDownloadedCount(JNIEnv * env, jclass clazz)
{
return static_cast<jint>(GetStorage().GetDownloadedFilesCount());
}
// static @Nullable UpdateInfo nativeGetUpdateInfo(@Nullable String root);
JNIEXPORT jobject JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeGetUpdateInfo(JNIEnv * env, jclass clazz, jstring root)
Java_app_organicmaps_downloader_MapManager_nativeGetUpdateInfo(JNIEnv * env, jclass clazz, jstring root)
{
storage::Storage::UpdateInfo info;
if (!GetStorage().GetUpdateInfo(GetRootId(env, root), info))
return nullptr;
static jclass const infoClass = jni::GetGlobalClassRef(env, "app/organicmaps/sdk/downloader/UpdateInfo");
static jclass const infoClass = jni::GetGlobalClassRef(env, "app/organicmaps/downloader/UpdateInfo");
ASSERT(infoClass, (jni::DescribeException()));
static jmethodID const ctor = jni::GetConstructorID(env, infoClass, "(IJ)V");
ASSERT(ctor, (jni::DescribeException()));
@@ -269,7 +269,7 @@ static void PutItemsToList(
// static void nativeListItems(@Nullable String root, double lat, double lon, boolean hasLocation, boolean myMapsMode, List<CountryItem> result);
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeListItems(JNIEnv * env, jclass clazz, jstring parent, jdouble lat, jdouble lon, jboolean hasLocation, jboolean myMapsMode, jobject result)
Java_app_organicmaps_downloader_MapManager_nativeListItems(JNIEnv * env, jclass clazz, jstring parent, jdouble lat, jdouble lon, jboolean hasLocation, jboolean myMapsMode, jobject result)
{
if (hasLocation && !myMapsMode)
{
@@ -292,7 +292,7 @@ Java_app_organicmaps_sdk_downloader_MapManager_nativeListItems(JNIEnv * env, jcl
// static void nativeUpdateItem(CountryItem item);
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeGetAttributes(JNIEnv * env, jclass, jobject item)
Java_app_organicmaps_downloader_MapManager_nativeGetAttributes(JNIEnv * env, jclass, jobject item)
{
auto const & ciBuilder = CountryItemBuilder::Instance(env);
jstring id = static_cast<jstring>(env->GetObjectField(item, ciBuilder.m_Id));
@@ -305,7 +305,7 @@ Java_app_organicmaps_sdk_downloader_MapManager_nativeGetAttributes(JNIEnv * env,
// static void nativeGetStatus(String root);
JNIEXPORT jint JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeGetStatus(JNIEnv * env, jclass clazz, jstring root)
Java_app_organicmaps_downloader_MapManager_nativeGetStatus(JNIEnv * env, jclass clazz, jstring root)
{
storage::NodeStatuses ns;
GetStorage().GetNodeStatuses(jni::ToNativeString(env, root), ns);
@@ -314,7 +314,7 @@ Java_app_organicmaps_sdk_downloader_MapManager_nativeGetStatus(JNIEnv * env, jcl
// static void nativeGetError(String root);
JNIEXPORT jint JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeGetError(JNIEnv * env, jclass clazz, jstring root)
Java_app_organicmaps_downloader_MapManager_nativeGetError(JNIEnv * env, jclass clazz, jstring root)
{
storage::NodeStatuses ns;
GetStorage().GetNodeStatuses(jni::ToNativeString(env, root), ns);
@@ -323,21 +323,21 @@ Java_app_organicmaps_sdk_downloader_MapManager_nativeGetError(JNIEnv * env, jcla
// static String nativeGetName(String root);
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeGetName(JNIEnv * env, jclass clazz, jstring root)
Java_app_organicmaps_downloader_MapManager_nativeGetName(JNIEnv * env, jclass clazz, jstring root)
{
return jni::ToJavaString(env, GetStorage().GetNodeLocalName(jni::ToNativeString(env, root)));
}
// static @Nullable String nativeFindCountry(double lat, double lon);
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeFindCountry(JNIEnv * env, jclass clazz, jdouble lat, jdouble lon)
Java_app_organicmaps_downloader_MapManager_nativeFindCountry(JNIEnv * env, jclass clazz, jdouble lat, jdouble lon)
{
return jni::ToJavaString(env, g_framework->NativeFramework()->GetCountryInfoGetter().GetRegionCountryId(mercator::FromLatLon(lat, lon)));
}
// static boolean nativeIsDownloading();
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeIsDownloading(JNIEnv * env, jclass clazz)
Java_app_organicmaps_downloader_MapManager_nativeIsDownloading(JNIEnv * env, jclass clazz)
{
return static_cast<jboolean>(GetStorage().IsDownloadInProgress());
}
@@ -365,7 +365,7 @@ static void EndBatchingCallbacks(JNIEnv * env)
for (TBatchedData const & dataItem : key.second)
{
// Create StorageCallbackData instance…
static jclass batchDataClass = jni::GetGlobalClassRef(env, "app/organicmaps/sdk/downloader/MapManager$StorageCallbackData");
static jclass batchDataClass = jni::GetGlobalClassRef(env, "app/organicmaps/downloader/MapManager$StorageCallbackData");
static jmethodID batchDataCtor = jni::GetConstructorID(env, batchDataClass, "(Ljava/lang/String;IIZ)V");
jni::TScopedLocalRef const id(env, jni::ToJavaString(env, dataItem.m_countryId));
@@ -388,7 +388,7 @@ static void EndBatchingCallbacks(JNIEnv * env)
// static void nativeDownload(String root);
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeDownload(JNIEnv * env, jclass clazz, jstring root)
Java_app_organicmaps_downloader_MapManager_nativeDownload(JNIEnv * env, jclass clazz, jstring root)
{
StartBatchingCallbacks();
GetStorage().DownloadNode(jni::ToNativeString(env, root));
@@ -397,7 +397,7 @@ Java_app_organicmaps_sdk_downloader_MapManager_nativeDownload(JNIEnv * env, jcla
// static boolean nativeRetry(String root);
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeRetry(JNIEnv * env, jclass clazz, jstring root)
Java_app_organicmaps_downloader_MapManager_nativeRetry(JNIEnv * env, jclass clazz, jstring root)
{
StartBatchingCallbacks();
GetStorage().RetryDownloadNode(jni::ToNativeString(env, root));
@@ -406,7 +406,7 @@ Java_app_organicmaps_sdk_downloader_MapManager_nativeRetry(JNIEnv * env, jclass
// static void nativeUpdate(String root);
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeUpdate(JNIEnv * env, jclass clazz, jstring root)
Java_app_organicmaps_downloader_MapManager_nativeUpdate(JNIEnv * env, jclass clazz, jstring root)
{
StartBatchingCallbacks();
GetStorage().UpdateNode(GetRootId(env, root));
@@ -415,7 +415,7 @@ Java_app_organicmaps_sdk_downloader_MapManager_nativeUpdate(JNIEnv * env, jclass
// static void nativeCancel(String root);
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeCancel(JNIEnv * env, jclass clazz, jstring root)
Java_app_organicmaps_downloader_MapManager_nativeCancel(JNIEnv * env, jclass clazz, jstring root)
{
StartBatchingCallbacks();
GetStorage().CancelDownloadNode(GetRootId(env, root));
@@ -424,7 +424,7 @@ Java_app_organicmaps_sdk_downloader_MapManager_nativeCancel(JNIEnv * env, jclass
// static void nativeDelete(String root);
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeDelete(JNIEnv * env, jclass clazz, jstring root)
Java_app_organicmaps_downloader_MapManager_nativeDelete(JNIEnv * env, jclass clazz, jstring root)
{
StartBatchingCallbacks();
auto const countryId = jni::ToNativeString(env, root);
@@ -457,7 +457,7 @@ static void ProgressChangedCallback(std::shared_ptr<jobject> const & listenerRef
// static int nativeSubscribe(StorageCallback listener);
JNIEXPORT jint JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeSubscribe(JNIEnv * env, jclass clazz, jobject listener)
Java_app_organicmaps_downloader_MapManager_nativeSubscribe(JNIEnv * env, jclass clazz, jobject listener)
{
return GetStorage().Subscribe(std::bind(&StatusChangedCallback, jni::make_global_ref(listener), std::placeholders::_1),
std::bind(&ProgressChangedCallback, jni::make_global_ref(listener), std::placeholders::_1, std::placeholders::_2));
@@ -465,14 +465,14 @@ Java_app_organicmaps_sdk_downloader_MapManager_nativeSubscribe(JNIEnv * env, jcl
// static void nativeUnsubscribe(int slot);
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeUnsubscribe(JNIEnv * env, jclass clazz, jint slot)
Java_app_organicmaps_downloader_MapManager_nativeUnsubscribe(JNIEnv * env, jclass clazz, jint slot)
{
GetStorage().Unsubscribe(slot);
}
// static void nativeSubscribeOnCountryChanged(CurrentCountryChangedListener listener);
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeSubscribeOnCountryChanged(JNIEnv * env, jclass clazz, jobject listener)
Java_app_organicmaps_downloader_MapManager_nativeSubscribeOnCountryChanged(JNIEnv * env, jclass clazz, jobject listener)
{
ASSERT(!g_countryChangedListener, ());
g_countryChangedListener = env->NewGlobalRef(listener);
@@ -492,7 +492,7 @@ Java_app_organicmaps_sdk_downloader_MapManager_nativeSubscribeOnCountryChanged(J
// static void nativeUnsubscribeOnCountryChanged();
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeUnsubscribeOnCountryChanged(JNIEnv * env, jclass clazz)
Java_app_organicmaps_downloader_MapManager_nativeUnsubscribeOnCountryChanged(JNIEnv * env, jclass clazz)
{
g_framework->NativeFramework()->SetCurrentCountryChangedListener(nullptr);
@@ -502,14 +502,14 @@ Java_app_organicmaps_sdk_downloader_MapManager_nativeUnsubscribeOnCountryChanged
// static boolean nativeHasUnsavedEditorChanges(String root);
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeHasUnsavedEditorChanges(JNIEnv * env, jclass clazz, jstring root)
Java_app_organicmaps_downloader_MapManager_nativeHasUnsavedEditorChanges(JNIEnv * env, jclass clazz, jstring root)
{
return g_framework->NativeFramework()->HasUnsavedEdits(jni::ToNativeString(env, root));
}
// static void nativeGetPathTo(String root, List<String> result);
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeGetPathTo(JNIEnv * env, jclass clazz, jstring root, jobject result)
Java_app_organicmaps_downloader_MapManager_nativeGetPathTo(JNIEnv * env, jclass clazz, jstring root, jobject result)
{
auto const listAddMethod = jni::ListBuilder::Instance(env).m_add;
@@ -521,7 +521,7 @@ Java_app_organicmaps_sdk_downloader_MapManager_nativeGetPathTo(JNIEnv * env, jcl
// static int nativeGetOverallProgress(String[] countries);
JNIEXPORT jint JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeGetOverallProgress(JNIEnv * env, jclass clazz, jobjectArray jcountries)
Java_app_organicmaps_downloader_MapManager_nativeGetOverallProgress(JNIEnv * env, jclass clazz, jobjectArray jcountries)
{
int const size = env->GetArrayLength(jcountries);
storage::CountriesVec countries;
@@ -544,28 +544,28 @@ Java_app_organicmaps_sdk_downloader_MapManager_nativeGetOverallProgress(JNIEnv *
// static boolean nativeIsAutoretryFailed();
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeIsAutoretryFailed(JNIEnv * env, jclass clazz)
Java_app_organicmaps_downloader_MapManager_nativeIsAutoretryFailed(JNIEnv * env, jclass clazz)
{
return g_framework->IsAutoRetryDownloadFailed();
}
// static boolean nativeIsDownloadOn3gEnabled();
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeIsDownloadOn3gEnabled(JNIEnv * env, jclass clazz)
Java_app_organicmaps_downloader_MapManager_nativeIsDownloadOn3gEnabled(JNIEnv * env, jclass clazz)
{
return g_framework->IsDownloadOn3gEnabled();
}
// static void nativeEnableDownloadOn3g();
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeEnableDownloadOn3g(JNIEnv * env, jclass clazz)
Java_app_organicmaps_downloader_MapManager_nativeEnableDownloadOn3g(JNIEnv * env, jclass clazz)
{
g_framework->EnableDownloadOn3g();
}
// static @Nullable String nativeGetSelectedCountry();
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_downloader_MapManager_nativeGetSelectedCountry(JNIEnv * env, jclass clazz)
Java_app_organicmaps_downloader_MapManager_nativeGetSelectedCountry(JNIEnv * env, jclass clazz)
{
if (!g_framework->NativeFramework()->HasPlacePageInfo())
return nullptr;

View File

@@ -2,14 +2,14 @@
#include "map/gps_tracker.hpp"
#include "app/organicmaps/sdk/core/jni_helper.hpp"
#include "app/organicmaps/core/jni_helper.hpp"
#include <chrono>
extern "C"
{
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_location_TrackRecorder_nativeSetEnabled(JNIEnv * env, jclass clazz, jboolean enable)
Java_app_organicmaps_location_TrackRecorder_nativeSetEnabled(JNIEnv * env, jclass clazz, jboolean enable)
{
GpsTracker::Instance().SetEnabled(enable);
Framework * const f = frm();
@@ -22,37 +22,37 @@ extern "C"
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_location_TrackRecorder_nativeIsEnabled(JNIEnv * env, jclass clazz)
Java_app_organicmaps_location_TrackRecorder_nativeIsEnabled(JNIEnv * env, jclass clazz)
{
return GpsTracker::Instance().IsEnabled();
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_location_TrackRecorder_nativeStartTrackRecording(JNIEnv * env, jclass clazz)
Java_app_organicmaps_location_TrackRecorder_nativeStartTrackRecording(JNIEnv * env, jclass clazz)
{
frm()->StartTrackRecording();
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_location_TrackRecorder_nativeStopTrackRecording(JNIEnv * env, jclass clazz)
Java_app_organicmaps_location_TrackRecorder_nativeStopTrackRecording(JNIEnv * env, jclass clazz)
{
frm()->StopTrackRecording();
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_location_TrackRecorder_nativeSaveTrackRecordingWithName(JNIEnv * env, jclass clazz, jstring name)
Java_app_organicmaps_location_TrackRecorder_nativeSaveTrackRecordingWithName(JNIEnv * env, jclass clazz, jstring name)
{
frm()->SaveTrackRecordingWithName(jni::ToNativeString(env, name));
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_location_TrackRecorder_nativeIsTrackRecordingEmpty(JNIEnv * env, jclass clazz)
Java_app_organicmaps_location_TrackRecorder_nativeIsTrackRecordingEmpty(JNIEnv * env, jclass clazz)
{
return frm()->IsTrackRecordingEmpty();
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_location_TrackRecorder_nativeIsTrackRecordingEnabled(JNIEnv * env, jclass clazz)
Java_app_organicmaps_location_TrackRecorder_nativeIsTrackRecordingEnabled(JNIEnv * env, jclass clazz)
{
return frm()->IsTrackRecordingEnabled();
}

View File

@@ -1,8 +1,8 @@
#include "Framework.hpp"
#include "app/organicmaps/sdk/core/jni_helper.hpp"
#include "app/organicmaps/core/jni_helper.hpp"
#include "app/organicmaps/sdk/platform/AndroidPlatform.hpp"
#include "app/organicmaps/platform/AndroidPlatform.hpp"
extern "C"
{
@@ -13,35 +13,35 @@ static void TrafficStateChanged(TrafficManager::TrafficState state, std::shared_
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_maplayer_traffic_TrafficState_nativeSetListener(JNIEnv * env, jclass clazz, jobject listener)
Java_app_organicmaps_maplayer_traffic_TrafficState_nativeSetListener(JNIEnv * env, jclass clazz, jobject listener)
{
CHECK(g_framework, ("Framework isn't created yet!"));
g_framework->SetTrafficStateListener(std::bind(&TrafficStateChanged, std::placeholders::_1, jni::make_global_ref(listener)));
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_maplayer_traffic_TrafficState_nativeRemoveListener(JNIEnv * env, jclass clazz)
Java_app_organicmaps_maplayer_traffic_TrafficState_nativeRemoveListener(JNIEnv * env, jclass clazz)
{
CHECK(g_framework, ("Framework isn't created yet!"));
g_framework->SetTrafficStateListener(TrafficManager::TrafficStateChangedFn());
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_maplayer_traffic_TrafficState_nativeEnable(JNIEnv * env, jclass clazz)
Java_app_organicmaps_maplayer_traffic_TrafficState_nativeEnable(JNIEnv * env, jclass clazz)
{
CHECK(g_framework, ("Framework isn't created yet!"));
g_framework->EnableTraffic();
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_maplayer_traffic_TrafficState_nativeIsEnabled(JNIEnv * env, jclass clazz)
Java_app_organicmaps_maplayer_traffic_TrafficState_nativeIsEnabled(JNIEnv * env, jclass clazz)
{
CHECK(g_framework, ("Framework isn't created yet!"));
return static_cast<jboolean>(g_framework->IsTrafficEnabled());
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_maplayer_traffic_TrafficState_nativeDisable(JNIEnv * env, jclass clazz)
Java_app_organicmaps_maplayer_traffic_TrafficState_nativeDisable(JNIEnv * env, jclass clazz)
{
CHECK(g_framework, ("Framework isn't created yet!"));
g_framework->DisableTraffic();

View File

@@ -49,7 +49,7 @@ jobject CreateMapObject(JNIEnv * env, place_page::Info const & info, int mapObje
static jmethodID const ctorId = jni::GetConstructorID(
env, g_mapObjectClazz,
"("
"Lapp/organicmaps/sdk/bookmarks/data/FeatureId;" // featureId
"Lapp/organicmaps/bookmarks/data/FeatureId;" // featureId
"I" // mapObjectType
"Ljava/lang/String;" // title
"Ljava/lang/String;" // secondaryTitle
@@ -104,7 +104,7 @@ jobject CreateBookmark(JNIEnv *env, const place_page::Info &info,
// @Nullable String[] rawTypes)
static jmethodID const ctorId =
jni::GetConstructorID(env, g_bookmarkClazz,
"(Lapp/organicmaps/sdk/bookmarks/data/FeatureId;JJLjava/lang/String;"
"(Lapp/organicmaps/bookmarks/data/FeatureId;JJLjava/lang/String;"
"Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;"
"Lapp/organicmaps/sdk/routing/RoutePointInfo;"
"ILapp/organicmaps/sdk/search/Popularity;Ljava/lang/String;"
@@ -137,7 +137,7 @@ jobject CreateBookmark(JNIEnv *env, const place_page::Info &info,
jobject CreateElevationPoint(JNIEnv * env, ElevationInfo::Point const & point)
{
static jclass const pointClass =
jni::GetGlobalClassRef(env, "app/organicmaps/sdk/bookmarks/data/ElevationInfo$Point");
jni::GetGlobalClassRef(env, "app/organicmaps/bookmarks/data/ElevationInfo$Point");
// public Point(double distance, int altitude)
static jmethodID const pointCtorId =
jni::GetConstructorID(env, pointClass, "(DI)V");
@@ -149,7 +149,7 @@ jobjectArray ToElevationPointArray(JNIEnv * env, ElevationInfo::Points const & p
{
CHECK(!points.empty(), ("Elevation points must be non empty!"));
static jclass const pointClass =
jni::GetGlobalClassRef(env, "app/organicmaps/sdk/bookmarks/data/ElevationInfo$Point");
jni::GetGlobalClassRef(env, "app/organicmaps/bookmarks/data/ElevationInfo$Point");
return jni::ToJavaArray(env, pointClass, points,
[](JNIEnv * env, ElevationInfo::Point const & item)
{
@@ -164,7 +164,7 @@ jobject CreateElevationInfo(JNIEnv * env, ElevationInfo const & info)
// long m_duration)
static jmethodID const ctorId =
jni::GetConstructorID(env, g_elevationInfoClazz, "(JLjava/lang/String;Ljava/lang/String;"
"[Lapp/organicmaps/sdk/bookmarks/data/ElevationInfo$Point;"
"[Lapp/organicmaps/bookmarks/data/ElevationInfo$Point;"
"IIIIIJ)V");
jni::TScopedLocalObjectArrayRef jPoints(env, ToElevationPointArray(env, info.GetPoints()));
// TODO (KK): elevation info should have only the elevation data - see the https://github.com/organicmaps/organicmaps/pull/10063

View File

@@ -2,8 +2,8 @@
#include <jni.h>
#include "app/organicmaps/sdk/core/jni_helper.hpp"
#include "app/organicmaps/sdk/Framework.hpp"
#include "app/organicmaps/core/jni_helper.hpp"
#include "app/organicmaps/Framework.hpp"
#include <vector>

View File

@@ -1,7 +1,7 @@
#include "app/organicmaps/sdk/core/jni_helper.hpp"
#include "app/organicmaps/sdk/Framework.hpp"
#include "app/organicmaps/sdk/UserMarkHelper.hpp"
#include "app/organicmaps/sdk/util/Distance.hpp"
#include "app/organicmaps/core/jni_helper.hpp"
#include "app/organicmaps/Framework.hpp"
#include "app/organicmaps/UserMarkHelper.hpp"
#include "app/organicmaps/util/Distance.hpp"
#include "map/bookmark_helpers.hpp"
#include "map/place_page_info.hpp"
@@ -51,9 +51,9 @@ void PrepareClassRefs(JNIEnv * env)
return;
g_bookmarkManagerClass =
jni::GetGlobalClassRef(env, "app/organicmaps/sdk/bookmarks/data/BookmarkManager");
jni::GetGlobalClassRef(env, "app/organicmaps/bookmarks/data/BookmarkManager");
g_bookmarkManagerInstanceField = jni::GetStaticFieldID(env, g_bookmarkManagerClass, "INSTANCE",
"Lapp/organicmaps/sdk/bookmarks/data/BookmarkManager;");
"Lapp/organicmaps/bookmarks/data/BookmarkManager;");
jobject bookmarkManagerInstance = env->GetStaticObjectField(g_bookmarkManagerClass,
g_bookmarkManagerInstanceField);
@@ -68,27 +68,27 @@ void PrepareClassRefs(JNIEnv * env)
"(ZLjava/lang/String;Z)V");
g_onPreparedFileForSharingMethod =
jni::GetMethodID(env, bookmarkManagerInstance, "onPreparedFileForSharing",
"(Lapp/organicmaps/sdk/bookmarks/data/BookmarkSharingResult;)V");
"(Lapp/organicmaps/bookmarks/data/BookmarkSharingResult;)V");
g_longClass = jni::GetGlobalClassRef(env,"java/lang/Long");
g_longConstructor = jni::GetConstructorID(env, g_longClass, "(J)V");
g_sortedBlockClass =
jni::GetGlobalClassRef(env, "app/organicmaps/sdk/bookmarks/data/SortedBlock");
jni::GetGlobalClassRef(env, "app/organicmaps/bookmarks/data/SortedBlock");
g_sortedBlockConstructor =
jni::GetConstructorID(env, g_sortedBlockClass,
"(Ljava/lang/String;[Ljava/lang/Long;[Ljava/lang/Long;)V");
g_onBookmarksSortingCompleted = jni::GetMethodID(env, bookmarkManagerInstance,
"onBookmarksSortingCompleted", "([Lapp/organicmaps/sdk/bookmarks/data/SortedBlock;J)V");
"onBookmarksSortingCompleted", "([Lapp/organicmaps/bookmarks/data/SortedBlock;J)V");
g_onBookmarksSortingCancelled = jni::GetMethodID(env, bookmarkManagerInstance,
"onBookmarksSortingCancelled", "(J)V");
g_bookmarkInfoClass =
jni::GetGlobalClassRef(env, "app/organicmaps/sdk/bookmarks/data/BookmarkInfo");
jni::GetGlobalClassRef(env, "app/organicmaps/bookmarks/data/BookmarkInfo");
g_bookmarkInfoConstructor =
jni::GetConstructorID(env, g_bookmarkInfoClass, "(JJ)V" );
g_bookmarkCategoryClass =
jni::GetGlobalClassRef(env, "app/organicmaps/sdk/bookmarks/data/BookmarkCategory");
jni::GetGlobalClassRef(env, "app/organicmaps/bookmarks/data/BookmarkCategory");
//public BookmarkCategory(long id,
// String name,
@@ -183,7 +183,7 @@ void OnAsyncLoadingFileError(JNIEnv * env, std::string const & fileName, bool is
void OnPreparedFileForSharing(JNIEnv * env, BookmarkManager::SharingResult const & result)
{
static jclass const classBookmarkSharingResult = jni::GetGlobalClassRef(env, "app/organicmaps/sdk/bookmarks/data/BookmarkSharingResult");
static jclass const classBookmarkSharingResult = jni::GetGlobalClassRef(env, "app/organicmaps/bookmarks/data/BookmarkSharingResult");
// BookmarkSharingResult(long[] categoriesIds, @Code int code, @NonNull String sharingPath, @NonNull String mimeType, @NonNull String errorString)
static jmethodID const ctorBookmarkSharingResult = jni::GetConstructorID(env, classBookmarkSharingResult, "([JILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V");
@@ -297,21 +297,21 @@ jobjectArray MakeCategories(JNIEnv * env, kml::GroupIdCollection const & ids)
extern "C"
{
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeShowBookmarkOnMap(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeShowBookmarkOnMap(
JNIEnv *, jobject, jlong bmkId)
{
frm()->ShowBookmark(static_cast<kml::MarkId>(bmkId));
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeShowBookmarkCategoryOnMap(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeShowBookmarkCategoryOnMap(
JNIEnv *, jobject, jlong catId)
{
frm()->ShowBookmarkCategory(static_cast<kml::MarkGroupId>(catId), true /* animated */);
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeLoadBookmarks(JNIEnv * env, jclass)
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeLoadBookmarks(JNIEnv * env, jclass)
{
PrepareClassRefs(env);
BookmarkManager::AsyncLoadingCallbacks callbacks;
@@ -327,7 +327,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeLoadBookmarks(JNIE
}
JNIEXPORT jlong JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeCreateCategory(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeCreateCategory(
JNIEnv * env, jobject, jstring name)
{
auto const categoryId = frm()->GetBookmarkManager().CreateBookmarkCategory(ToNativeString(env, name));
@@ -336,7 +336,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeCreateCategory(
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeDeleteCategory(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeDeleteCategory(
JNIEnv *, jobject, jlong catId)
{
auto const categoryId = static_cast<kml::MarkGroupId>(catId);
@@ -345,20 +345,20 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeDeleteCategory(
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeDeleteBookmark(JNIEnv *, jobject, jlong bmkId)
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeDeleteBookmark(JNIEnv *, jobject, jlong bmkId)
{
frm()->GetBookmarkManager().GetEditSession().DeleteBookmark(static_cast<kml::MarkId>(bmkId));
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeDeleteTrack(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeDeleteTrack(
JNIEnv *, jobject, jlong trkId)
{
frm()->GetBookmarkManager().GetEditSession().DeleteTrack(static_cast<kml::TrackId>(trkId));
}
JNIEXPORT jobject JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeAddBookmarkToLastEditedCategory(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeAddBookmarkToLastEditedCategory(
JNIEnv * env, jobject, double lat, double lon)
{
if (!frm()->HasPlacePageInfo())
@@ -389,48 +389,48 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeAddBookmarkToLastE
}
JNIEXPORT jlong JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetLastEditedCategory(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeGetLastEditedCategory(
JNIEnv *, jobject)
{
return static_cast<jlong>(frm()->LastEditedBMCategory());
}
JNIEXPORT jint JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetLastEditedColor(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeGetLastEditedColor(
JNIEnv *, jobject)
{
return static_cast<jint>(frm()->LastEditedBMColor());
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeLoadBookmarksFile(JNIEnv * env, jclass,
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeLoadBookmarksFile(JNIEnv * env, jclass,
jstring path, jboolean isTemporaryFile)
{
frm()->AddBookmarksFile(ToNativeString(env, path), isTemporaryFile);
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeIsAsyncBookmarksLoadingInProgress(JNIEnv *, jclass)
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeIsAsyncBookmarksLoadingInProgress(JNIEnv *, jclass)
{
return static_cast<jboolean>(frm()->GetBookmarkManager().IsAsyncLoadingInProgress());
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeIsVisible(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeIsVisible(
JNIEnv *, jobject, jlong catId)
{
return static_cast<jboolean>(frm()->GetBookmarkManager().IsVisible(static_cast<kml::MarkGroupId>(catId)));
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeSetVisibility(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeSetVisibility(
JNIEnv *, jobject, jlong catId, jboolean isVisible)
{
frm()->GetBookmarkManager().GetEditSession().SetIsVisible(static_cast<kml::MarkGroupId>(catId), isVisible);
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeSetCategoryName(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeSetCategoryName(
JNIEnv * env, jobject, jlong catId, jstring name)
{
frm()->GetBookmarkManager().GetEditSession().SetCategoryName(static_cast<kml::MarkGroupId>(catId),
@@ -438,7 +438,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeSetCategoryName(
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeSetCategoryDescription(JNIEnv * env,
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeSetCategoryDescription(JNIEnv * env,
jobject,
jlong catId,
jstring desc)
@@ -448,7 +448,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeSetCategoryDescrip
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeSetCategoryTags(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeSetCategoryTags(
JNIEnv * env, jobject, jlong catId, jobjectArray tagsIds)
{
auto const size = env->GetArrayLength(tagsIds);
@@ -465,7 +465,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeSetCategoryTags(
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeSetCategoryAccessRules(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeSetCategoryAccessRules(
JNIEnv *, jobject, jlong catId, jint accessRules)
{
frm()->GetBookmarkManager().GetEditSession().SetCategoryAccessRules(
@@ -473,7 +473,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeSetCategoryAccessR
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeSetCategoryCustomProperty(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeSetCategoryCustomProperty(
JNIEnv * env, jobject, jlong catId, jstring key, jstring value)
{
frm()->GetBookmarkManager().GetEditSession().SetCategoryCustomProperty(
@@ -481,7 +481,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeSetCategoryCustomP
}
JNIEXPORT jobject JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeUpdateBookmarkPlacePage(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeUpdateBookmarkPlacePage(
JNIEnv * env, jobject, jlong bmkId)
{
if (!frm()->HasPlacePageInfo())
@@ -496,7 +496,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeUpdateBookmarkPlac
}
JNIEXPORT jobject JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetBookmarkInfo(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeGetBookmarkInfo(
JNIEnv * env, jobject, jlong bmkId)
{
auto const bookmark = frm()->GetBookmarkManager().GetBookmark(static_cast<kml::MarkId>(bmkId));
@@ -508,7 +508,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetBookmarkInfo(
}
JNIEXPORT jlong JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetBookmarkIdByPosition(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeGetBookmarkIdByPosition(
JNIEnv *, jobject, jlong catId, jint positionInCategory)
{
auto const & ids = frm()->GetBookmarkManager().GetUserMarkIds(static_cast<kml::MarkGroupId>(catId));
@@ -522,12 +522,12 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetBookmarkIdByPos
static uint32_t shift(uint32_t v, uint8_t bitCount) { return v << bitCount; }
JNIEXPORT jobject JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetTrack(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeGetTrack(
JNIEnv * env, jobject, jlong trackId, jclass trackClazz)
{
// Track(long trackId, long categoryId, String name, String lengthString, int color)
static jmethodID const cId = jni::GetConstructorID(env, trackClazz,
"(JJLjava/lang/String;Lapp/organicmaps/sdk/util/Distance;I)V");
"(JJLjava/lang/String;Lapp/organicmaps/util/Distance;I)V");
auto const * nTrack = frm()->GetBookmarkManager().GetTrack(static_cast<kml::TrackId>(trackId));
ASSERT(nTrack, ("Track must not be null with id:)", trackId));
@@ -545,7 +545,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetTrack(
}
JNIEXPORT jlong JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetTrackIdByPosition(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeGetTrackIdByPosition(
JNIEnv *, jobject, jlong catId, jint positionInCategory)
{
auto const & ids = frm()->GetBookmarkManager().GetTrackIds(static_cast<kml::MarkGroupId>(catId));
@@ -557,42 +557,42 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetTrackIdByPositi
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeIsUsedCategoryName(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeIsUsedCategoryName(
JNIEnv * env, jclass, jstring name)
{
return static_cast<jboolean>(frm()->GetBookmarkManager().IsUsedCategoryName(ToNativeString(env, name)));
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativePrepareForSearch(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativePrepareForSearch(
JNIEnv *, jclass, jlong catId)
{
frm()->GetBookmarkManager().PrepareForSearch(static_cast<kml::MarkGroupId>(catId));
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeAreAllCategoriesInvisible(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeAreAllCategoriesInvisible(
JNIEnv *, jclass)
{
return static_cast<jboolean>(frm()->GetBookmarkManager().AreAllCategoriesInvisible());
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeAreAllCategoriesVisible(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeAreAllCategoriesVisible(
JNIEnv *, jclass)
{
return static_cast<jboolean>(frm()->GetBookmarkManager().AreAllCategoriesVisible());
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeSetAllCategoriesVisibility(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeSetAllCategoriesVisibility(
JNIEnv *, jclass, jboolean visible)
{
frm()->GetBookmarkManager().SetAllCategoriesVisibility(static_cast<bool>(visible));
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativePrepareTrackFileForSharing(JNIEnv * env, jclass, jlong trackId, jint kmlFileType)
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativePrepareTrackFileForSharing(JNIEnv * env, jclass, jlong trackId, jint kmlFileType)
{
frm()->GetBookmarkManager().PrepareTrackFileForSharing(static_cast<kml::TrackId>(trackId), [env](BookmarkManager::SharingResult const & result)
{
@@ -601,7 +601,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativePrepareTrackFileFo
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativePrepareFileForSharing(JNIEnv * env, jclass, jlongArray catIds, jint kmlFileType)
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativePrepareFileForSharing(JNIEnv * env, jclass, jlongArray catIds, jint kmlFileType)
{
auto const size = env->GetArrayLength(catIds);
kml::GroupIdCollection catIdsVector(size);
@@ -614,7 +614,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativePrepareFileForShar
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeIsCategoryEmpty(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeIsCategoryEmpty(
JNIEnv *, jclass, jlong catId)
{
return static_cast<jboolean>(frm()->GetBookmarkManager().IsCategoryEmpty(
@@ -622,27 +622,27 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeIsCategoryEmpty(
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeSetNotificationsEnabled(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeSetNotificationsEnabled(
JNIEnv *, jclass, jboolean enabled)
{
frm()->GetBookmarkManager().SetNotificationsEnabled(static_cast<bool>(enabled));
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeAreNotificationsEnabled(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeAreNotificationsEnabled(
JNIEnv *, jclass)
{
return static_cast<jboolean>(frm()->GetBookmarkManager().AreNotificationsEnabled());
}
JNIEXPORT jobject JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetBookmarkCategory(JNIEnv *env, jobject, jlong id)
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeGetBookmarkCategory(JNIEnv *env, jobject, jlong id)
{
return MakeCategory(env, static_cast<kml::MarkGroupId>(id));
}
JNIEXPORT jobjectArray JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetBookmarkCategories(JNIEnv *env, jobject)
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeGetBookmarkCategories(JNIEnv *env, jobject)
{
auto const & bm = frm()->GetBookmarkManager();
auto const & ids = bm.GetSortedBmGroupIdList();
@@ -651,7 +651,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetBookmarkCategor
}
JNIEXPORT jint JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetBookmarkCategoriesCount(JNIEnv *env, jobject)
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeGetBookmarkCategoriesCount(JNIEnv *env, jobject)
{
auto const & bm = frm()->GetBookmarkManager();
auto const count = bm.GetBmGroupsCount();
@@ -660,7 +660,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetBookmarkCategor
}
JNIEXPORT jobjectArray JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetChildrenCategories(JNIEnv *env, jobject, jlong parentId)
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeGetChildrenCategories(JNIEnv *env, jobject, jlong parentId)
{
auto const & bm = frm()->GetBookmarkManager();
auto const ids = bm.GetChildrenCategories(static_cast<kml::MarkGroupId>(parentId));
@@ -669,7 +669,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetChildrenCategor
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeHasLastSortingType(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeHasLastSortingType(
JNIEnv *, jobject, jlong catId)
{
auto const & bm = frm()->GetBookmarkManager();
@@ -678,7 +678,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeHasLastSortingType
}
JNIEXPORT jint JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetLastSortingType(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeGetLastSortingType(
JNIEnv *, jobject, jlong catId)
{
auto const & bm = frm()->GetBookmarkManager();
@@ -690,7 +690,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetLastSortingType
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeSetLastSortingType(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeSetLastSortingType(
JNIEnv *, jobject, jlong catId, jint type)
{
auto & bm = frm()->GetBookmarkManager();
@@ -699,7 +699,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeSetLastSortingType
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeResetLastSortingType(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeResetLastSortingType(
JNIEnv *, jobject, jlong catId)
{
auto & bm = frm()->GetBookmarkManager();
@@ -707,7 +707,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeResetLastSortingTy
}
JNIEXPORT jintArray JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetAvailableSortingTypes(JNIEnv *env,
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeGetAvailableSortingTypes(JNIEnv *env,
jobject, jlong catId, jboolean hasMyPosition)
{
auto const & bm = frm()->GetBookmarkManager();
@@ -724,7 +724,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetAvailableSortin
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetSortedCategory(JNIEnv *env,
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeGetSortedCategory(JNIEnv *env,
jobject, jlong catId, jint sortingType, jboolean hasMyPosition, jdouble lat, jdouble lon,
jlong timestamp)
{
@@ -741,14 +741,14 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetSortedCategory(
}
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetBookmarkName(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeGetBookmarkName(
JNIEnv * env, jclass, jlong bmk)
{
return jni::ToJavaString(env, getBookmark(bmk)->GetPreferredName());
}
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetBookmarkFeatureType(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeGetBookmarkFeatureType(
JNIEnv * env, jclass, jlong bmk)
{
return jni::ToJavaString(env,
@@ -756,14 +756,14 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetBookmarkFeature
}
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetBookmarkDescription(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeGetBookmarkDescription(
JNIEnv * env, jclass, jlong bmk)
{
return jni::ToJavaString(env, getBookmark(bmk)->GetDescription());
}
JNIEXPORT jint JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetBookmarkColor(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeGetBookmarkColor(
JNIEnv *, jclass, jlong bmk)
{
auto const * mark = getBookmark(bmk);
@@ -772,7 +772,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetBookmarkColor(
}
JNIEXPORT jint JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetBookmarkIcon(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeGetBookmarkIcon(
JNIEnv *, jclass, jlong bmk)
{
auto const * mark = getBookmark(bmk);
@@ -781,7 +781,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetBookmarkIcon(
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeSetBookmarkParams(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeSetBookmarkParams(
JNIEnv * env, jclass, jlong bmk,
jstring name, jint color, jstring descr)
{
@@ -802,7 +802,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeSetBookmarkParams(
constexpr static uint8_t ExtractByte(uint32_t number, uint8_t byteIdx) { return (number >> (8 * byteIdx)) & 0xFF; }
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeSetTrackParams(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeSetTrackParams(
JNIEnv * env, jclass, jlong trackId,
jstring name, jint color, jstring descr)
{
@@ -821,14 +821,14 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeSetTrackParams(
}
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetTrackDescription(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeGetTrackDescription(
JNIEnv * env, jclass, jlong trackId)
{
return jni::ToJavaString(env, frm()->GetBookmarkManager().GetTrack(static_cast<kml::TrackId>(trackId))->GetDescription());
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeChangeBookmarkCategory(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeChangeBookmarkCategory(
JNIEnv *, jclass, jlong oldCat, jlong newCat, jlong bmk)
{
g_framework->MoveBookmark(static_cast<kml::MarkId>(bmk), static_cast<kml::MarkGroupId>(oldCat),
@@ -836,7 +836,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeChangeBookmarkCate
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeChangeTrackCategory(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeChangeTrackCategory(
JNIEnv *, jclass, jlong oldCat, jlong newCat, jlong trackId)
{
g_framework->MoveTrack(static_cast<kml::TrackId>(trackId), static_cast<kml::MarkGroupId>(oldCat),
@@ -844,7 +844,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeChangeTrackCategor
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeChangeTrackColor(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeChangeTrackColor(
JNIEnv *, jclass, jlong trackId, jint color)
{
uint8_t alpha = ExtractByte(color, 3);
@@ -852,28 +852,28 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeChangeTrackColor(
}
JNIEXPORT jobject JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetBookmarkXY(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeGetBookmarkXY(
JNIEnv * env, jclass, jlong bmk)
{
return jni::GetNewParcelablePointD(env, getBookmark(bmk)->GetPivot());
}
JNIEXPORT jdouble JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetBookmarkScale(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeGetBookmarkScale(
JNIEnv *, jclass, jlong bmk)
{
return getBookmark(bmk)->GetScale();
}
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeEncode2Ge0Url(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeEncode2Ge0Url(
JNIEnv * env, jclass, jlong bmk, jboolean addName)
{
return jni::ToJavaString(env, frm()->CodeGe0url(getBookmark(bmk), addName));
}
JNIEXPORT jstring JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetBookmarkAddress(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeGetBookmarkAddress(
JNIEnv * env, jclass, jlong bmkId)
{
auto const address = frm()->GetAddressAtPoint(getBookmark(bmkId)->GetPivot()).FormatAddress();
@@ -881,7 +881,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetBookmarkAddress
}
JNIEXPORT jdouble JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetElevationCurPositionDistance(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeGetElevationCurPositionDistance(
JNIEnv *, jclass, jlong trackId)
{
auto const & bm = frm()->GetBookmarkManager();
@@ -889,7 +889,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetElevationCurPos
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeSetElevationCurrentPositionChangedListener(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeSetElevationCurrentPositionChangedListener(
JNIEnv * env, jclass)
{
frm()->GetBookmarkManager().SetElevationMyPositionChangedCallback(
@@ -897,14 +897,14 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeSetElevationCurren
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeRemoveElevationCurrentPositionChangedListener(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeRemoveElevationCurrentPositionChangedListener(
JNIEnv *, jclass)
{
frm()->GetBookmarkManager().SetElevationMyPositionChangedCallback(nullptr);
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeSetElevationActivePoint(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeSetElevationActivePoint(
JNIEnv *, jclass, jlong trackId, jdouble distanceInMeters)
{
auto & bm = frm()->GetBookmarkManager();
@@ -914,7 +914,7 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeSetElevationActive
}
JNIEXPORT jdouble JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetElevationActivePointDistance(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeGetElevationActivePointDistance(
JNIEnv *, jclass, jlong trackId)
{
auto & bm = frm()->GetBookmarkManager();
@@ -922,21 +922,21 @@ Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeGetElevationActive
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeSetElevationActiveChangedListener(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeSetElevationActiveChangedListener(
JNIEnv *env, jclass)
{
frm()->GetBookmarkManager().SetElevationActivePointChangedCallback(std::bind(&OnElevationActivePointChanged, env));
}
JNIEXPORT void JNICALL
Java_app_organicmaps_sdk_bookmarks_data_BookmarkManager_nativeRemoveElevationActiveChangedListener(
Java_app_organicmaps_bookmarks_data_BookmarkManager_nativeRemoveElevationActiveChangedListener(
JNIEnv *, jclass)
{
frm()->GetBookmarkManager().SetElevationActivePointChangedCallback(nullptr);
}
JNIEXPORT jboolean JNICALL
Java_app_organicmaps_sdk_widget_placepage_PlacePageButtonFactory_nativeHasRecentlyDeletedBookmark(JNIEnv *, jclass)
Java_app_organicmaps_widget_placepage_PlacePageButtonFactory_nativeHasRecentlyDeletedBookmark(JNIEnv *, jclass)
{
return frm()->GetBookmarkManager().HasRecentlyDeletedBookmark();
}

View File

@@ -52,17 +52,17 @@ JNI_OnLoad(JavaVM * jvm, void *)
jni::InitAssertLog();
JNIEnv * env = jni::GetEnv();
g_mapObjectClazz = jni::GetGlobalClassRef(env, "app/organicmaps/sdk/bookmarks/data/MapObject");
g_featureIdClazz = jni::GetGlobalClassRef(env, "app/organicmaps/sdk/bookmarks/data/FeatureId");
g_bookmarkClazz = jni::GetGlobalClassRef(env, "app/organicmaps/sdk/bookmarks/data/Bookmark");
g_httpClientClazz = jni::GetGlobalClassRef(env, "app/organicmaps/sdk/util/HttpClient");
g_httpParamsClazz = jni::GetGlobalClassRef(env, "app/organicmaps/sdk/util/HttpClient$Params");
g_platformSocketClazz = jni::GetGlobalClassRef(env, "app/organicmaps/sdk/location/PlatformSocket");
g_utilsClazz = jni::GetGlobalClassRef(env, "app/organicmaps/sdk/util/Utils");
g_loggerClazz = jni::GetGlobalClassRef(env, "app/organicmaps/sdk/util/log/Logger");
g_keyValueClazz = jni::GetGlobalClassRef(env, "app/organicmaps/sdk/util/KeyValue");
g_networkPolicyClazz = jni::GetGlobalClassRef(env, "app/organicmaps/sdk/util/NetworkPolicy");
g_elevationInfoClazz = jni::GetGlobalClassRef(env, "app/organicmaps/sdk/bookmarks/data/ElevationInfo");
g_mapObjectClazz = jni::GetGlobalClassRef(env, "app/organicmaps/bookmarks/data/MapObject");
g_featureIdClazz = jni::GetGlobalClassRef(env, "app/organicmaps/bookmarks/data/FeatureId");
g_bookmarkClazz = jni::GetGlobalClassRef(env, "app/organicmaps/bookmarks/data/Bookmark");
g_httpClientClazz = jni::GetGlobalClassRef(env, "app/organicmaps/util/HttpClient");
g_httpParamsClazz = jni::GetGlobalClassRef(env, "app/organicmaps/util/HttpClient$Params");
g_platformSocketClazz = jni::GetGlobalClassRef(env, "app/organicmaps/location/PlatformSocket");
g_utilsClazz = jni::GetGlobalClassRef(env, "app/organicmaps/util/Utils");
g_loggerClazz = jni::GetGlobalClassRef(env, "app/organicmaps/util/log/Logger");
g_keyValueClazz = jni::GetGlobalClassRef(env, "app/organicmaps/util/KeyValue");
g_networkPolicyClazz = jni::GetGlobalClassRef(env, "app/organicmaps/util/NetworkPolicy");
g_elevationInfoClazz = jni::GetGlobalClassRef(env, "app/organicmaps/bookmarks/data/ElevationInfo");
return JNI_VERSION_1_6;
}
@@ -269,7 +269,7 @@ std::string DescribeException()
jobject GetNewParcelablePointD(JNIEnv * env, m2::PointD const & point)
{
jclass klass = env->FindClass("app/organicmaps/sdk/bookmarks/data/ParcelablePointD");
jclass klass = env->FindClass("app/organicmaps/bookmarks/data/ParcelablePointD");
ASSERT ( klass, () );
jmethodID methodID = GetConstructorID(env, klass, "(DD)V");

Some files were not shown because too many files have changed in this diff Show More