Compare commits

...
Sign in to create a new pull request.

27 commits

Author SHA1 Message Date
4f6986aa56
[strings] Update translations
Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Co-authored-by: Armando Bastoni <weblate@sabato.anonaddy.com>
Co-authored-by: Babos Gábor <gabor.babos@gmail.com>
Co-authored-by: DB <denisbatsa@gmail.com>
Co-authored-by: Fjuro <fjuro@users.noreply.hosted.weblate.org>
Co-authored-by: Gari Araolaza <garaolaza@codesyntax.com>
Co-authored-by: Ghost of Sparta <makesocialfoss32@keemail.me>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Jules <jules@j3s.fr>
Co-authored-by: Mads Rumle Nordstrøm <madsrumlenordstrom@icloud.com>
Co-authored-by: Ophiushi <41908476+ishi-sama@users.noreply.github.com>
Co-authored-by: Software In Interlingua <softinterlingua@gmail.com>
Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Co-authored-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Co-authored-by: ZeljkoBG <zeljko.velickovic@gmail.com>
Co-authored-by: map-per <map-per@gmx.de>
Co-authored-by: soshial <soshial@gmail.com>
Co-authored-by: summoner001 <summoner@vivaldi.net>
Signed-off-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Signed-off-by: Armando Bastoni <weblate@sabato.anonaddy.com>
Signed-off-by: Babos Gábor <gabor.babos@gmail.com>
Signed-off-by: DB <denisbatsa@gmail.com>
Signed-off-by: Fjuro <fjuro@users.noreply.hosted.weblate.org>
Signed-off-by: Gari Araolaza <garaolaza@codesyntax.com>
Signed-off-by: Ghost of Sparta <makesocialfoss32@keemail.me>
Signed-off-by: Jules <jules@j3s.fr>
Signed-off-by: Mads Rumle Nordstrøm <madsrumlenordstrom@icloud.com>
Signed-off-by: Ophiushi <41908476+ishi-sama@users.noreply.github.com>
Signed-off-by: Roman Tsisyk <roman@tsisyk.com>
Signed-off-by: Software In Interlingua <softinterlingua@gmail.com>
Signed-off-by: Sveinn í Felli <sv1@fellsnet.is>
Signed-off-by: Weblate <hosted@weblate.org>
Signed-off-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Signed-off-by: ZeljkoBG <zeljko.velickovic@gmail.com>
Signed-off-by: map-per <map-per@gmx.de>
Signed-off-by: soshial <soshial@gmail.com>
Signed-off-by: summoner001 <summoner@vivaldi.net>
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/cs/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/da/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/de/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/eu/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/fr/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/hu/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/is/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/ast/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/de/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/fr/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/hu/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/is/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/it/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/lv/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/ru/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/sr/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/countries/ast/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/countries/ia/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/countries/lt/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plist/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plist/hu/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plist/ia/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/af/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/ar/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/da/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/el/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/fr/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/hi/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/ia/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/ja/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/nb_NO/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/pt/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/ro/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/sv/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/tr/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/zh_Hant/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/cs/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/da/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/de/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/eu/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/fr/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/hu/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/ia/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/is/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/ast/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/de/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/fr/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/hu/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/ia/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/it/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/lv/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/sr/
2025-03-29 03:40:49 +01:00
80d772c2e2 [docs] Some readme fixes 2025-03-27 17:24:40 +00:00
1177842e0f Merge branch 'release/2025.03.02' 2025-03-27 08:26:28 +00:00
1cb880b44a
[strings] Update translations
Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Co-authored-by: Armando Bastoni <weblate@sabato.anonaddy.com>
Co-authored-by: Babos Gábor <gabor.babos@gmail.com>
Co-authored-by: Fjuro <fjuro@users.noreply.hosted.weblate.org>
Co-authored-by: Gari Araolaza <garaolaza@codesyntax.com>
Co-authored-by: Ghost of Sparta <makesocialfoss32@keemail.me>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Mads Rumle Nordstrøm <madsrumlenordstrom@icloud.com>
Co-authored-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Co-authored-by: ZeljkoBG <zeljko.velickovic@gmail.com>
Co-authored-by: summoner001 <summoner@vivaldi.net>
Signed-off-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Signed-off-by: Armando Bastoni <weblate@sabato.anonaddy.com>
Signed-off-by: Babos Gábor <gabor.babos@gmail.com>
Signed-off-by: Fjuro <fjuro@users.noreply.hosted.weblate.org>
Signed-off-by: Gari Araolaza <garaolaza@codesyntax.com>
Signed-off-by: Ghost of Sparta <makesocialfoss32@keemail.me>
Signed-off-by: Mads Rumle Nordstrøm <madsrumlenordstrom@icloud.com>
Signed-off-by: Roman Tsisyk <roman@tsisyk.com>
Signed-off-by: Weblate <hosted@weblate.org>
Signed-off-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Signed-off-by: ZeljkoBG <zeljko.velickovic@gmail.com>
Signed-off-by: summoner001 <summoner@vivaldi.net>
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/cs/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/da/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/eu/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/hu/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/ast/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/hu/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/it/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/sr/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/countries/ast/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/countries/ia/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/countries/lt/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plist/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plist/hu/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/af/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/ar/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/da/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/el/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/fr/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/hi/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/ja/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/nb_NO/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/pt/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/ro/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/sv/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/tr/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/zh_Hant/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/cs/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/da/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/eu/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/hu/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/ast/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/hu/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/it/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/sr/
2025-03-25 15:47:17 +01:00
62701a280f
[strings] Update translations
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Co-authored-by: summoner001 <summoner@vivaldi.net>
Signed-off-by: Roman Tsisyk <roman@tsisyk.com>
Signed-off-by: Weblate <hosted@weblate.org>
Signed-off-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Signed-off-by: summoner001 <summoner@vivaldi.net>
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/hu/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/hu/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/hu/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/hu/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/hu/
2025-03-23 10:17:13 +01:00
f13a8281a7
[strings] Update translations
Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Co-authored-by: Arducode <arducode@gmail.com>
Co-authored-by: Babos Gábor <gabor.babos@gmail.com>
Co-authored-by: Bence Bődi <bodi.bence@protonmail.com>
Co-authored-by: Dan <jonweblin2205@protonmail.com>
Co-authored-by: Gari Araolaza <garaolaza@codesyntax.com>
Co-authored-by: Gonzalo Pesquero <gpesquero@yahoo.es>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Jaume Ros Alonso <jaume.ros.alo@gmail.com>
Co-authored-by: KOIZUMI Satoru <koizumistr@minos.ocn.ne.jp>
Co-authored-by: Matheus Gomes Correia <matheus.gomes03@hotmail.com>
Co-authored-by: Petri Hämäläinen <petri.hamalainen@mailbox.org>
Co-authored-by: Rimas Kudelis <rimas@kudelis.lt>
Co-authored-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Co-authored-by: ZeljkoBG <zeljko.velickovic@gmail.com>
Co-authored-by: soshial <soshial@gmail.com>
Co-authored-by: vikingnope <aidsch0605@outlook.com>
Co-authored-by: संकेत गराडे <garade@proton.me>
Signed-off-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Signed-off-by: Arducode <arducode@gmail.com>
Signed-off-by: Babos Gábor <gabor.babos@gmail.com>
Signed-off-by: Bence Bődi <bodi.bence@protonmail.com>
Signed-off-by: Dan <jonweblin2205@protonmail.com>
Signed-off-by: Gari Araolaza <garaolaza@codesyntax.com>
Signed-off-by: Gonzalo Pesquero <gpesquero@yahoo.es>
Signed-off-by: Jaume Ros Alonso <jaume.ros.alo@gmail.com>
Signed-off-by: KOIZUMI Satoru <koizumistr@minos.ocn.ne.jp>
Signed-off-by: Matheus Gomes Correia <matheus.gomes03@hotmail.com>
Signed-off-by: Petri Hämäläinen <petri.hamalainen@mailbox.org>
Signed-off-by: Rimas Kudelis <rimas@kudelis.lt>
Signed-off-by: Weblate <hosted@weblate.org>
Signed-off-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Signed-off-by: ZeljkoBG <zeljko.velickovic@gmail.com>
Signed-off-by: soshial <soshial@gmail.com>
Signed-off-by: vikingnope <aidsch0605@outlook.com>
Signed-off-by: संकेत गराडे <garade@proton.me>
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/eu/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/fr/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/hu/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/it/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/lt/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/lv/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/uk/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/ast/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/fi/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/hu/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/it/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/ja/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/lt/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/lv/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/mr/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/mt/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/sr/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/countries/ast/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/countries/ia/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/countries/lt/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plist/lt/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plist/mt/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/af/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/ar/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/da/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/el/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/fr/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/hi/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/ja/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/lt/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/nb_NO/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/pt/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/ro/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/sv/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/tr/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/uk/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/zh_Hant/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/eu/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/fr/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/hu/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/it/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/lt/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/lv/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/uk/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/ast/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/hu/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/it/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/ja/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/lt/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/lv/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/mr/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/mt/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/sr/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/uk/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/tts/et/
2025-03-23 00:27:33 +01:00
09d2447535 [3party] Use relative URLs for submodules
Remove explicit dependency on GitHub.com

Signed-off-by: Roman Tsisyk <roman@tsisyk.com>
2025-03-22 23:16:51 +00:00
f4366688b7 [docs] Fix logo in readme
Signed-off-by: RedAuburn <me@hbond.xyz>
2025-03-20 12:17:14 +00:00
90772d66d2 [android] Fix tiny transparent PP edges after it fills the screen
Resolves #9335

Signed-off-by: savsch <119003089+savsch@users.noreply.github.com>
2025-03-13 12:45:42 +03:00
cf00843b0a Hide specific preferences in settings for improved user experience
Signed-off-by: DevarshVasani <vasanidevarsh@gmail.com>
2025-03-13 12:29:22 +03:00
renderexpert
58546f3115 Fixed gamma correction
Signed-off-by: renderexpert <expert@renderconsulting.co.uk>
2025-03-13 07:14:16 +03:00
renderexpert
cddfc2e891 Add developer sandbox desktop app
Signed-off-by: renderexpert <expert@renderconsulting.co.uk>
2025-03-13 07:14:16 +03:00
renderexpert
2bdf6763ce Add glfw, imgui and cmake metal dependencies
Signed-off-by: renderexpert <expert@renderconsulting.co.uk>
2025-03-13 07:14:16 +03:00
renderexpert
a54f5268cd Add imGui shaders
Signed-off-by: renderexpert <expert@renderconsulting.co.uk>
2025-03-13 07:14:16 +03:00
Ferenc Géczi
466b9365f6 Add 2025.03.02 release entry to metainfo.xml
Signed-off-by: Ferenc Géczi <ferenc.gm@gmail.com>
2025-03-09 11:27:49 +03:00
6bf8338cdd [github] Add edits.xml to .gitignore
it's generated when making edits on desktop
Signed-off-by: Harry Bond <me@hbond.xyz>
2025-03-08 17:47:49 +00:00
Kuzey Bilgin
95a2cf3bc5 [github] Add stale bot to close very old PRs
Signed-off-by: Kuzey Bilgin <kuzeybilgin@proton.me>
2025-03-08 17:47:37 +00:00
cf7cce69fa [android][sdk] Search SDK
Signed-off-by: Andrei Shkrob <github@shkrob.dev>
2025-03-08 17:39:52 +00:00
d95bfeb0fd [strings] Update translations
Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Co-authored-by: Am Heu <amanuel.amalio@thefluent.org>
Co-authored-by: Christos Sidiropoulos <dev@csidirop.de>
Co-authored-by: Dan <jonweblin2205@protonmail.com>
Co-authored-by: Dmitry Gribenchuk <dmitrygribenchuk@gmail.com>
Co-authored-by: ERYpTION <eryption.ar9q2@slmail.me>
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Fjuro <fjuro@users.noreply.hosted.weblate.org>
Co-authored-by: Gonzalo Pesquero <gpesquero@yahoo.es>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Lens0021 <lorentz0021@gmail.com>
Co-authored-by: Maschga <delphi@freenet.de>
Co-authored-by: Matheus Gomes Correia <matheus.gomes03@hotmail.com>
Co-authored-by: Priit Jõerüüt <hwlate@joeruut.com>
Co-authored-by: Rihards Olups <richlv@nakts.net>
Co-authored-by: Rimas Kudelis <rimas@kudelis.lt>
Co-authored-by: Roman Tsisyk <roman@organicmaps.app>
Co-authored-by: Software In Interlingua <softinterlingua@gmail.com>
Co-authored-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Co-authored-by: nautilusx <translate@disroot.org>
Co-authored-by: soshial <soshial@gmail.com>
Signed-off-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Signed-off-by: Am Heu <amanuel.amalio@thefluent.org>
Signed-off-by: Christos Sidiropoulos <dev@csidirop.de>
Signed-off-by: Dan <jonweblin2205@protonmail.com>
Signed-off-by: Dmitry Gribenchuk <dmitrygribenchuk@gmail.com>
Signed-off-by: ERYpTION <eryption.ar9q2@slmail.me>
Signed-off-by: Eryk Michalak <gnu.ewm@protonmail.com>
Signed-off-by: Fjuro <fjuro@users.noreply.hosted.weblate.org>
Signed-off-by: Gonzalo Pesquero <gpesquero@yahoo.es>
Signed-off-by: Lens0021 <lorentz0021@gmail.com>
Signed-off-by: Maschga <delphi@freenet.de>
Signed-off-by: Matheus Gomes Correia <matheus.gomes03@hotmail.com>
Signed-off-by: Priit Jõerüüt <hwlate@joeruut.com>
Signed-off-by: Rihards Olups <richlv@nakts.net>
Signed-off-by: Rimas Kudelis <rimas@kudelis.lt>
Signed-off-by: Roman Tsisyk <roman@organicmaps.app>
Signed-off-by: Roman Tsisyk <roman@tsisyk.com>
Signed-off-by: Software In Interlingua <softinterlingua@gmail.com>
Signed-off-by: Weblate <hosted@weblate.org>
Signed-off-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Signed-off-by: nautilusx <translate@disroot.org>
Signed-off-by: soshial <soshial@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/da/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/de/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/et/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/ia/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/pl/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/uk/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/ast/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/be/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/da/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/de/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/el/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/et/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/ia/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/ko/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/lv/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/ru/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/uk/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/countries/ast/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/countries/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/countries/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/countries/ia/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/countries/lt/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plist/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plist/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/af/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/ar/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/da/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/de/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/el/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/fr/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/hi/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/it/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/ja/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/nb_NO/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/pt/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/ro/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/ru/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/sv/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/tr/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/uk/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/zh_Hant/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/da/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/de/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/et/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/pl/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/uk/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/ast/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/da/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/de/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/el/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/et/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/ko/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/lv/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/ru/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/uk/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/tts/cs/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/tts/de/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/tts/et/
Translation: OrganicMaps/Country names for downloader
2025-03-08 09:06:45 +00:00
575e17d63c [strings] Update translations
Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Co-authored-by: Dan <jonweblin2205@protonmail.com>
Co-authored-by: Dmitry Gribenchuk <dmitrygribenchuk@gmail.com>
Co-authored-by: ERYpTION <eryption.ar9q2@slmail.me>
Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Co-authored-by: Fjuro <fjuro@users.noreply.hosted.weblate.org>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Lens0021 <lorentz0021@gmail.com>
Co-authored-by: Maschga <delphi@freenet.de>
Co-authored-by: Priit Jõerüüt <hwlate@joeruut.com>
Co-authored-by: Rihards Olups <richlv@nakts.net>
Co-authored-by: Rimas Kudelis <rimas@kudelis.lt>
Co-authored-by: Roman Tsisyk <roman@organicmaps.app>
Co-authored-by: Software In Interlingua <softinterlingua@gmail.com>
Co-authored-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Co-authored-by: nautilusx <translate@disroot.org>
Co-authored-by: soshial <soshial@gmail.com>
Signed-off-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Signed-off-by: Dan <jonweblin2205@protonmail.com>
Signed-off-by: Dmitry Gribenchuk <dmitrygribenchuk@gmail.com>
Signed-off-by: ERYpTION <eryption.ar9q2@slmail.me>
Signed-off-by: Eryk Michalak <gnu.ewm@protonmail.com>
Signed-off-by: Fjuro <fjuro@users.noreply.hosted.weblate.org>
Signed-off-by: Lens0021 <lorentz0021@gmail.com>
Signed-off-by: Maschga <delphi@freenet.de>
Signed-off-by: Priit Jõerüüt <hwlate@joeruut.com>
Signed-off-by: Rihards Olups <richlv@nakts.net>
Signed-off-by: Rimas Kudelis <rimas@kudelis.lt>
Signed-off-by: Roman Tsisyk <roman@organicmaps.app>
Signed-off-by: Software In Interlingua <softinterlingua@gmail.com>
Signed-off-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Signed-off-by: nautilusx <translate@disroot.org>
Signed-off-by: soshial <soshial@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/da/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/de/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/et/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/ia/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android-typestrings/pl/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/ast/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/be/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/da/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/de/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/et/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/ia/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/ko/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/lv/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/ru/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/android/uk/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/countries/ast/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/countries/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/countries/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/countries/lt/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plist/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plist/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/da/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/de/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-plurals/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/da/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/de/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/et/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios-typestrings/pl/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/ca/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/da/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/de/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/es/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/et/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/ko/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/lv/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/ru/
Translate-URL: https://hosted.weblate.org/projects/organicmaps/ios/uk/
2025-03-06 19:14:28 +00:00
Gideon Wentink
bac9073bcb [strings] Generate Afrikaans (af) from strings.txt
The language was present in strings.txt but was never generated.

Signed-off-by: Roman Tsisyk <roman@tsisyk.com>
2025-03-06 18:24:01 +00:00
Aiden
e2f0b8b258 [strings] Generate Maltese (mt) from strings.txt
The language was present in strings.txt but was never generated.

Signed-off-by: Roman Tsisyk <roman@tsisyk.com>
2025-03-06 18:21:36 +00:00
Ernest King
840fa7d7f7 [strings] Generate Lithuanian (lt) from strings.txt
The language was present in strings.txt but was never generated.

See https://github.com/organicmaps/organicmaps/pull/5163

Signed-off-by: Roman Tsisyk <roman@tsisyk.com>
2025-03-06 18:19:43 +00:00
pastk
41ea6bf4df Bump versions
Signed-off-by: pastk <pastk@users.noreply.github.com>
2025-03-02 17:27:18 +00:00
745f28ea12 March release notes translations
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-03-03 00:07:39 +07:00
bd19de4b9a March release notes
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-03-03 00:07:39 +07:00
ce72ef70da [planet] New data from 250227.
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-03-02 16:13:22 +00:00
296 changed files with 27905 additions and 10237 deletions

View file

@ -61,6 +61,10 @@ jobs:
libgl1-mesa-dev \
libglvnd-dev \
libharfbuzz-dev \
libxrandr-dev \
libxinerama-dev \
libxcursor-dev \
libxi-dev \
qt6-base-dev \
libqt6svg6-dev \
qt6-positioning-dev \
@ -128,6 +132,10 @@ jobs:
libgl1-mesa-dev \
libglvnd-dev \
libharfbuzz-dev \
libxrandr-dev \
libxinerama-dev \
libxcursor-dev \
libxi-dev \
qt6-base-dev \
libqt6svg6-dev \
qt6-positioning-dev \

22
.github/workflows/stale.yml vendored Normal file
View file

@ -0,0 +1,22 @@
name: Close stale PRs
on:
schedule:
- cron: "0 0 * * *" # Runs every day at midnight
jobs:
stale:
runs-on: ubuntu-latest
permissions:
pull-requests: write
steps:
- uses: actions/stale@v9
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
days-before-pr-stale: 180 # 6 months before warning
days-before-pr-close: 365 # Closed after 12 months
stale-pr-label: "stale"
stale-pr-message: "Hi! This PR has been inactive for 6 months. If it's still relevant, please update it to let us know youd like to keep it open 😊"
close-pr-message: "This PR has been automatically closed after 12 months of inactivity."
days-before-issue-stale: -1 # Issues are never stale
days-before-issue-close: -1 # Issues are never closed
remove-stale-when-updated: true

1
.gitignore vendored
View file

@ -20,6 +20,7 @@ data/drules_proto_default_design.bin
data/colors_design.txt
data/patterns_design.txt
data/bookmarks
data/edits.xml
# Compiled Python
*.pyc

45
.gitmodules vendored
View file

@ -1,58 +1,67 @@
[submodule "tools/osmctools"]
path = tools/osmctools
url = https://github.com/organicmaps/osmctools.git
url = ../osmctools.git
[submodule "tools/kothic"]
path = tools/kothic
url = https://github.com/organicmaps/kothic.git
url = ../kothic.git
[submodule "3party/protobuf/protobuf"]
path = 3party/protobuf/protobuf
url = https://github.com/organicmaps/protobuf.git
url = ../protobuf.git
[submodule "3party/Vulkan-Headers"]
path = 3party/Vulkan-Headers
url = https://github.com/KhronosGroup/Vulkan-Headers.git
url = ../Vulkan-Headers.git
[submodule "3party/boost"]
path = 3party/boost
url = https://github.com/boostorg/boost.git
url = ../boost.git
branch = boost-1.76.0
ignore = dirty
[submodule "3party/just_gtfs"]
path = 3party/just_gtfs
url = https://github.com/organicmaps/just_gtfs.git
url = ../just_gtfs.git
branch = for-usage-as-submodule
[submodule "3party/expat"]
path = 3party/expat
url = https://github.com/libexpat/libexpat.git
url = ../libexpat.git
branch = R_2_2_9
[submodule "3party/glm"]
path = 3party/glm
url = https://github.com/g-truc/glm.git
url = ../glm.git
[submodule "3party/icu/icu"]
path = 3party/icu/icu
url = https://github.com/unicode-org/icu.git
url = ../icu.git
[submodule "3party/freetype/freetype"]
path = 3party/freetype/freetype
url = https://github.com/organicmaps/freetype.git
url = ../freetype.git
[submodule "3party/googletest"]
path = 3party/googletest
url = https://github.com/google/googletest.git
url = ../googletest.git
[submodule "3party/fast_double_parser"]
path = 3party/fast_double_parser
url = https://github.com/lemire/fast_double_parser.git
url = ../fast_double_parser.git
[submodule "3party/pugixml/pugixml"]
path = 3party/pugixml/pugixml
url = https://github.com/zeux/pugixml.git
url = ../pugixml.git
[submodule "3party/jansson/jansson"]
path = 3party/jansson/jansson
url = https://github.com/akheron/jansson.git
url = ../jansson.git
[submodule "3party/gflags"]
path = 3party/gflags
url = https://github.com/gflags/gflags
url = ../gflags
[submodule "3party/fast_obj"]
path = 3party/fast_obj
url = https://github.com/thisistherk/fast_obj
url = ../fast_obj
[submodule "3party/harfbuzz/harfbuzz"]
path = 3party/harfbuzz/harfbuzz
url = https://github.com/harfbuzz/harfbuzz.git
url = ../harfbuzz.git
[submodule "3party/utfcpp"]
path = 3party/utfcpp
url = https://github.com/nemtrif/utfcpp.git
url = ../utfcpp.git
[submodule "3party/glfw"]
path = 3party/glfw
url = ../glfw.git
[submodule "3party/CMake-MetalShaderSupport"]
path = 3party/CMake-MetalShaderSupport
url = ../CMake-MetalShaderSupport.git
[submodule "3party/imgui/imgui"]
path = 3party/imgui/imgui
url = ../imgui.git

@ -0,0 +1 @@
Subproject commit 989857d2e5e54869c35ad06fb21a67d12a2dbc67

View file

@ -66,4 +66,19 @@ add_subdirectory(vulkan_wrapper)
if (PLATFORM_DESKTOP)
add_subdirectory(libtess2)
set(GLFW_BUILD_DOCS OFF CACHE BOOL "")
set(GLFW_BUILD_EXAMPLES OFF CACHE BOOL "")
set(GLFW_BUILD_TESTS OFF CACHE BOOL "")
set(GLFW_INSTALL OFF CACHE BOOL "")
set(GLFW_VULKAN_STATIC OFF CACHE BOOL "")
set(GLFW_BUILD_WAYLAND OFF CACHE BOOL "")
# Disable ARC for glfw and re-enable after it because it's globally set in the root CMakeLists.txt
set(CMAKE_OBJC_FLAGS "")
add_subdirectory(glfw)
set_target_properties(glfw PROPERTIES UNITY_BUILD OFF)
set_target_properties(glfw PROPERTIES XCODE_ATTRIBUTE_CLANG_ENABLE_OBJC_ARC NO)
set(CMAKE_OBJC_FLAGS -fobjc-arc)
add_subdirectory(imgui)
endif()

1
3party/glfw Submodule

@ -0,0 +1 @@
Subproject commit 21fea01161e0d6b70c0c5c1f52dc8e7a7df14a50

View file

@ -0,0 +1,16 @@
project(imgui)
set(SRC
imgui/imgui_draw.cpp
imgui/imgui_tables.cpp
imgui/imgui_widgets.cpp
imgui/imgui.cpp
imgui/backends/imgui_impl_glfw.cpp
)
add_library(${PROJECT_NAME} ${SRC})
target_include_directories(${PROJECT_NAME}
PRIVATE ${OMIM_ROOT}/3party/glfw/include
PUBLIC ${OMIM_ROOT}/3party/imgui/imgui
PUBLIC .
)

1
3party/imgui/imgui Submodule

@ -0,0 +1 @@
Subproject commit 6982ce43f5b143c5dce5fab0ce07dd4867b705ae

View file

@ -90,6 +90,19 @@ else()
message(FATAL_ERROR "Unsupported platform: ${CMAKE_SYSTEM_NAME}")
endif()
if(${PLATFORM_MAC})
set(XCODE_ATTRIBUTE_CLANG_ENABLE_OBJC_ARC YES)
# Metal language support
list(APPEND CMAKE_MODULE_PATH ${OMIM_ROOT}/3party/CMake-MetalShaderSupport/cmake)
include(CheckLanguage)
include(MetalShaderSupport)
check_language(Metal)
if(CMAKE_Metal_COMPILER)
enable_language(Metal)
endif()
endif()
# Sanitizer
if (PLATFORM_DESKTOP)
# https://clang.llvm.org/docs/UsersManual.html#controlling-code-generation
@ -384,6 +397,7 @@ if (PLATFORM_DESKTOP)
add_subdirectory(qt)
omim_add_tool_subdirectory(skin_generator)
endif()
add_subdirectory(dev_sandbox)
endif()
omim_add_test_subdirectory(qt_tstfrm)

View file

@ -1,5 +1,5 @@
<div align="center">
<img src="/qt/res/logo.png" height="100"/>
<img src="qt/res/logo.png" height="100"/>
</div>
<h1 align="center"">Organic Maps</h1>
@ -167,9 +167,8 @@ Please join our beta program, suggest your features, and report bugs:
- **Rate us on the [App Store](https://apps.apple.com/app/organic-maps/id1567437057)
and [Google Play](https://play.google.com/store/apps/details?id=app.organicmaps)**.
- **Star us on GitHub**.
- Report bugs or issues to [the issue tracker](https://github.com/organicmaps/organicmaps/issues).
- [Discuss](https://github.com/organicmaps/organicmaps/discussions/categories/ideas) ideas or propose feature requests.
- **Star us on Forgejo**.
- Report bugs or issues to [the issue tracker](https://git.omaps.dev/organicmaps/organicmaps/issues).
- Subscribe to our [Telegram Channel](https://t.me/OrganicMapsApp) or to the [[matrix] space](https://matrix.to/#/#organicmaps:matrix.org) for updates.
- Join our [Telegram Group](https://t.me/OrganicMaps) to discuss with other users.
- Присоединяйтесь к нашей [русскоязычной группе в Telegram](https://t.me/OrganicMapsRu) для обратной связи и помощи.
@ -179,7 +178,7 @@ and [Google Play](https://play.google.com/store/apps/details?id=app.organicmaps)
- Follow our updates in
[Mastodon](https://fosstodon.org/@organicmaps),
[Facebook](https://facebook.com/OrganicMaps),
[Twitter](https://twitter.com/OrganicMapsApp),
[X (Twitter)](https://x.com/OrganicMapsApp),
[Instagram](https://instagram.com/organicmaps.app/).
- Güncellemelerimizi [Instagram](https://instagram.com/organicmapstr/) üzerinden takip edin.

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• Новыя дадзеныя OpenStreetMap ад 21 студзеня
Адлюстраванне абмежавання хуткасці ў рэжыме навігацыі
Android Auto: сартаванне метак, палепшаны запыты на дазвол месцазнаходжання
На карту дададзены вежы
• Дададзена настройка для адключэння спасылак на гатэлі з Kayak.com і магчымасць адмовы пры першым выкарыстанні
• Дададзены сербская (кірыліца) і латышская мовы
• Новыя дадзеныя OpenStreetMap ад 27 лютага
Магчымасць уручную расстаўляць прамежкавыя кропкі маршруту
Экспарт аднаго абранага трэка са спісу
Палепшаная маршрутызацыя для веласіпедыстаў
• Дададзена сістэмнае апавяшчэнне пры загрузцы карт, фонавыя загрузкі больш не перарываюцца
• Дададзены мігатлівы віджэт запісу трэка
…і шматлікае іншае на omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• Neue OpenStreetMap-Daten vom 21. Januar
Anzeige eines Geschwindigkeitsbegrenzungsschildes im Navigationsmodus
Serbische (Kyrillisch) und Lettische Sprachen hinzugefügt
Android Auto: Lesezeichen sortieren, verbessertes Erlebnis bei der Anforderung von Standortberechtigungen
Turm-POIs hinzugefügt
• Eine Einstellung für Kayak.com-Hotellinks und eine Opt-out-Option bei der ersten Nutzung hinzugefügt.
• Neue OpenStreetMap-Daten vom 27. Februar
Möglichkeit, Zwischenroutenpunkte manuell zu arrangieren
Einen einzelnen ausgewählten Track aus der Liste teilen
Verbesserte Routenführung für Fahrräder
Beim Herunterladen von Karten eine Systembenachrichtigung anzeigen und Hintergrunddownloads nicht unterbrechen
• Ein blinkendes Trackaufzeichnungs-Widget hinzugefügt
…weitere Details unter omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a Track Recording indicator on the main screen
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• Nuevos datos de OpenStreetMap del 21 de enero
Límite de velocidad en el modo de navegación
Añadidos idiomas serbio (cirílico) y letón
Android Auto: opción de ordenar marcadores, mejorada la experiencia al solicitar ubicación
Añadidos PDI de torres
• Añadidas opciones para enlaces de hotel de Kayak.com y de exclusión al primer uso
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…más detalles en omaps.org/news
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
Urtarrilaren 21ko OpenStreetMap-eko datu berriak
• Abiadura muga erakusten da nabigazio moduan
• Serbiera (zirilikoa) eta letoniera hizkuntzak gehitu dira
Android Auto: gogokoak ordena daitezke, kokapen permisuaren eskaeraren esperientzia hobetu da
• Dorreen interes puntuak gehitu dira
Kayak.com-eko hotelen estekak eta lehenengo erabileran ez erakusteko aukera gehitu dira
New OpenStreetMap data as of February 27
• Ability to manually arrange intermediate route points
• Share a single selected track from the list
Improved routing for bicycles
• Display a system notification when downloading maps and don't interrupt background downloads
Added a flashing Track Recording widget
zehaztasun gehiago omaps.org/news webgunean
more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• Nouvelles données OpenStreetMap du 21 janvier
Afficher un panneau de limitation de vitesse en mode navigation
Ajout des langues serbe (cyrillique) et lettone
• Android Auto : trier les signets, expérience de demande d'autorisation de localisation améliorée
• Ajout de POI de tour
• Ajout d'un paramètre pour les liens d'hôtel Kayak.com et d'une option de désinscription lors de la première utilisation
• Nouvelles données OpenStreetMap du 27 février
Possibilité d'organiser manuellement les points d'itinéraire intermédiaires
Partager une seule piste sélectionnée dans la liste
• Amélioration du routage pour les vélos
• Afficher une notification système lors du téléchargement de cartes et ne pas interrompre les téléchargements en arrière-plan
• Ajout d'un widget d'enregistrement de piste clignotant
…plus de détails sur omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• Nowe dane OpenStreetMap z 21 stycznia
Wyświetlanie znaku ograniczenia prędkości w trybie nawigacji
Dodano języki serbski (cyrylica) i łotewski
Android Auto: sortowanie zakładek, ulepszono prośbę o pozwolenie na lokalizację
• Dodano POI dla wieży
Dodano ustawienie dla linków do hoteli na Kayak.com oraz możliwość wyłączenia ich przy pierwszym uruchomieniu
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
• Display a system notification when downloading maps and don't interrupt background downloads
Added a flashing Track Recording widget
więcej szczegółów na omaps.org/news
more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• Novos dados do OpenStreetMap de 21 de janeiro
Exibe um sinal de limite de velocidade no modo de navegação
Adicionados os idiomas sérvio (cirílico) e letão
Android Auto: classificar favoritos, experiência aprimorada de solicitação de permissão de localização
Adicionados POIs de torre
• Adicionada uma configuração para links de hotéis Kayak.com e uma opção de cancelamento de primeiro uso
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…mais detalhes em omaps.org/news
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• Novos dados do OpenStreetMap a 21 de janeiro
Exibir um sinal de limite de velocidade no modo de navegação
Adicionados os idiomas sérvio (cirílico) e letão
Android Auto: classificar favoritos, experiência melhorada de pedido de permissão de localização
Adicionados POIs de torre
Foi adicionada uma configuração para o Kayak.com Hotel Links e uma opção de cancelamento de primeira utilização
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
Added a flashing Track Recording widget
…mais detalhes em omaps.org/news
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• Новые данные OpenStreetMap от 21 января
Отображение ограничения скорости в режиме навигации
Android Auto: сортировка меток, улучшены запросы на разрешение местоположения
На карту добавлены башни
• Добавлена ​​настройка для отключения ссылок на отели с Kayak.com и возможность отказа при первом использовании
• Добавлены сербский (кириллица) и латышский языки
• Новые данные OpenStreetMap от 27 февраля
Возможность вручную расставлять промежуточные точки маршрута
Экспорт одного выбранного трека из списка
Улучшенная маршрутизация для велосипедистов
• Добавлено системное уведомление при загрузке карт, фоновые загрузки больше не прерываются
• Добавлен мигающий виджет записи трека
…и многое другое на omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• Нові дані OpenStreetMap від 21 січня
Знак перевищення швидкості підчас навігації
Додано перклади сербською (кирилиця) та латиською мовами
Android Auto: сортування міток, покращено процес запиту на отримання дозволу на розміщення
Вежі відображаються на мапі
• Додано налаштування для посилань до Kayak.com для готелів та демонструється запит при першому використанні
• Нові дані OpenStreetMap від 27 лютого
Можливість вручну розставляти проміжні точки маршруту
Експорт одного вибраного треку зі списку
Покращена маршрутизація для велосипедистів
Додано системне повідомлення під час завантаження карт, фонові завантаження більше не перериваються
• Додано миготливий віджет запису треку
…більше подробиць на omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1,8 +1,8 @@
• New OpenStreetMap data as of January 21
Dispay a speed limit sign in the navigation mode
Added Serbian (Cyrillic) and Latvian languages
Android Auto: sort bookmarks, improved location permission request experience
Added tower POIs
• Added a setting for Kayak.com Hotel Links and a first-use opt-out option
• New OpenStreetMap data as of February 27
Ability to manually arrange intermediate route points
Share a single selected track from the list
Improved routing for bicycles
Display a system notification when downloading maps and don't interrupt background downloads
• Added a flashing Track Recording widget
…more details at omaps.org/news

View file

@ -1 +1 @@
version: 2025.01.26-9-FDroid+25012609
version: 2025.03.02-7-FDroid+25030207

View file

@ -22,11 +22,13 @@ set(SRC
app/organicmaps/vulkan/android_vulkan_context_factory.hpp
# JNI sources
app/organicmaps/sdk/search/DisplayedCategories.cpp
app/organicmaps/sdk/search/SearchEngine.cpp
app/organicmaps/sdk/search/SearchRecents.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/DisplayedCategories.cpp
app/organicmaps/DownloadResourcesLegacyActivity.cpp
app/organicmaps/editor/Editor.cpp
app/organicmaps/editor/OpeningHours.cpp
@ -38,8 +40,6 @@ set(SRC
app/organicmaps/MapManager.cpp
app/organicmaps/MwmApplication.cpp
app/organicmaps/routing/RoutingOptions.cpp
app/organicmaps/SearchEngine.cpp
app/organicmaps/SearchRecents.cpp
app/organicmaps/settings/UnitLocale.cpp
app/organicmaps/settings/MapLanguageCode.cpp
app/organicmaps/sound/tts.cpp

View file

@ -1,40 +0,0 @@
#include "Framework.hpp"
#include "search/result.hpp"
#include "app/organicmaps/core/jni_helper.hpp"
#include "app/organicmaps/core/jni_java_methods.hpp"
using SearchRequest = search::QuerySaver::SearchRequest;
extern "C"
{
JNIEXPORT void JNICALL
Java_app_organicmaps_search_SearchRecents_nativeGetList(JNIEnv * env, jclass thiz, jobject result)
{
auto const & items = g_framework->NativeFramework()->GetSearchAPI().GetLastSearchQueries();
if (items.empty())
return;
auto const listAddMethod = jni::ListBuilder::Instance(env).m_add;
for (SearchRequest const & item : items)
{
jni::TScopedLocalRef str(env, jni::ToJavaString(env, item.second));
env->CallBooleanMethod(result, listAddMethod, str.get());
}
}
JNIEXPORT void JNICALL
Java_app_organicmaps_search_SearchRecents_nativeAdd(JNIEnv * env, jclass thiz, jstring locale, jstring query)
{
SearchRequest const sr(jni::ToNativeString(env, locale), jni::ToNativeString(env, query));
g_framework->NativeFramework()->GetSearchAPI().SaveSearchQuery(sr);
}
JNIEXPORT void JNICALL
Java_app_organicmaps_search_SearchRecents_nativeClear(JNIEnv * env, jclass thiz)
{
g_framework->NativeFramework()->GetSearchAPI().ClearSearchHistory();
}
}

View file

@ -28,7 +28,7 @@ void InjectMetadata(JNIEnv * env, jclass const clazz, jobject const mapObject, o
//jobject CreatePopularity(JNIEnv * env, place_page::Info const & info)
//{
// static jclass const popularityClass =
// jni::GetGlobalClassRef(env, "app/organicmaps/search/Popularity");
// jni::GetGlobalClassRef(env, "app/organicmaps/sdk/search/Popularity");
// static jmethodID const popularityConstructor =
// jni::GetConstructorID(env, popularityClass, "(I)V");
// auto const popularityValue = info.GetPopularity();
@ -57,7 +57,7 @@ jobject CreateMapObject(JNIEnv * env, place_page::Info const & info, int mapObje
"Ljava/lang/String;" // appId
"Lapp/organicmaps/routing/RoutePointInfo;" // routePointInfo
"I" // openingMode
"Lapp/organicmaps/search/Popularity;" // popularity
"Lapp/organicmaps/sdk/search/Popularity;" // popularity
"Ljava/lang/String;" // description
"I" // roadWarnType
"[Ljava/lang/String;" // rawTypes
@ -105,7 +105,7 @@ jobject CreateBookmark(JNIEnv *env, const place_page::Info &info,
"(Lapp/organicmaps/bookmarks/data/FeatureId;JJLjava/lang/String;"
"Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;"
"Lapp/organicmaps/routing/RoutePointInfo;"
"ILapp/organicmaps/search/Popularity;Ljava/lang/String;"
"ILapp/organicmaps/sdk/search/Popularity;Ljava/lang/String;"
"[Ljava/lang/String;)V");
static jmethodID const featureCtorId =
jni::GetConstructorID(env, g_featureIdClazz, "(Ljava/lang/String;JI)V");

View file

@ -5,8 +5,7 @@
extern "C"
{
JNIEXPORT jobjectArray JNICALL
Java_app_organicmaps_search_DisplayedCategories_nativeGetKeys(JNIEnv * env, jclass clazz)
JNIEXPORT jobjectArray JNICALL Java_app_organicmaps_sdk_search_DisplayedCategories_nativeGetKeys(JNIEnv * env, jclass)
{
::Framework * fr = g_framework->NativeFramework();
ASSERT(fr, ());

View file

@ -39,7 +39,7 @@ Results g_results;
// Timestamp of last search query. Results with older stamps are ignored.
jlong g_queryTimestamp;
// Implements 'NativeSearchListener' java interface.
// Implements 'SearchListener' java interface.
jobject g_javaListener;
jmethodID g_updateResultsId;
jmethodID g_endResultsId;
@ -52,7 +52,7 @@ jmethodID g_descriptionConstructor;
jclass g_popularityClass;
jmethodID g_popularityConstructor;
// Implements 'NativeMapSearchListener' java interface.
// Implements 'MapSearchListener' java interface.
jmethodID g_mapResultsMethod;
jclass g_mapResultClass;
jmethodID g_mapResultCtor;
@ -232,21 +232,21 @@ void OnBookmarksSearchResults(search::BookmarksSearchParams::Results results,
extern "C"
{
JNIEXPORT void JNICALL
Java_app_organicmaps_search_SearchEngine_nativeInit(JNIEnv * env, jobject thiz)
Java_app_organicmaps_sdk_search_SearchEngine_nativeInit(JNIEnv * env, jobject thiz)
{
g_javaListener = env->NewGlobalRef(thiz);
// public void onResultsUpdate(@NonNull SearchResult[] results, long timestamp)
g_updateResultsId = jni::GetMethodID(env, g_javaListener, "onResultsUpdate",
"([Lapp/organicmaps/search/SearchResult;J)V");
"([Lapp/organicmaps/sdk/search/SearchResult;J)V");
// public void onResultsEnd(long timestamp)
g_endResultsId = jni::GetMethodID(env, g_javaListener, "onResultsEnd", "(J)V");
g_resultClass = jni::GetGlobalClassRef(env, "app/organicmaps/search/SearchResult");
g_resultClass = jni::GetGlobalClassRef(env, "app/organicmaps/sdk/search/SearchResult");
g_resultConstructor = jni::GetConstructorID(
env, g_resultClass,
"(Ljava/lang/String;Lapp/organicmaps/search/SearchResult$Description;DD[I[I"
"Lapp/organicmaps/search/Popularity;)V");
"(Ljava/lang/String;Lapp/organicmaps/sdk/search/SearchResult$Description;DD[I[I"
"Lapp/organicmaps/sdk/search/Popularity;)V");
g_suggestConstructor = jni::GetConstructorID(env, g_resultClass, "(Ljava/lang/String;Ljava/lang/String;DD[I[I)V");
g_descriptionClass = jni::GetGlobalClassRef(env, "app/organicmaps/search/SearchResult$Description");
g_descriptionClass = jni::GetGlobalClassRef(env, "app/organicmaps/sdk/search/SearchResult$Description");
/*
Description(FeatureId featureId, String featureType, String region, Distance distance,
String description, int openNow, int minutesUntilOpen, int minutesUntilClosed,
@ -257,12 +257,12 @@ extern "C"
"Ljava/lang/String;Ljava/lang/String;Lapp/organicmaps/util/Distance;"
"Ljava/lang/String;IIIZ)V");
g_popularityClass = jni::GetGlobalClassRef(env, "app/organicmaps/search/Popularity");
g_popularityClass = jni::GetGlobalClassRef(env, "app/organicmaps/sdk/search/Popularity");
g_popularityConstructor = jni::GetConstructorID(env, g_popularityClass, "(I)V");
g_mapResultsMethod = jni::GetMethodID(env, g_javaListener, "onMapSearchResults",
"([Lapp/organicmaps/search/NativeMapSearchListener$Result;JZ)V");
g_mapResultClass = jni::GetGlobalClassRef(env, "app/organicmaps/search/NativeMapSearchListener$Result");
"([Lapp/organicmaps/sdk/search/MapSearchListener$Result;JZ)V");
g_mapResultClass = jni::GetGlobalClassRef(env, "app/organicmaps/sdk/search/MapSearchListener$Result");
g_mapResultCtor = jni::GetConstructorID(env, g_mapResultClass, "(Ljava/lang/String;Ljava/lang/String;)V");
g_updateBookmarksResultsId =
@ -271,7 +271,7 @@ extern "C"
jni::GetMethodID(env, g_javaListener, "onBookmarkSearchResultsEnd", "([JJ)V");
}
JNIEXPORT jboolean JNICALL Java_app_organicmaps_search_SearchEngine_nativeRunSearch(
JNIEXPORT jboolean JNICALL Java_app_organicmaps_sdk_search_SearchEngine_nativeRunSearch(
JNIEnv * env, jclass clazz, jbyteArray bytes, jboolean isCategory,
jstring lang, jlong timestamp, jboolean hasPosition, jdouble lat, jdouble lon)
{
@ -288,7 +288,7 @@ extern "C"
return searchStarted;
}
JNIEXPORT void JNICALL Java_app_organicmaps_search_SearchEngine_nativeRunInteractiveSearch(
JNIEXPORT void JNICALL Java_app_organicmaps_sdk_search_SearchEngine_nativeRunInteractiveSearch(
JNIEnv * env, jclass clazz, jbyteArray bytes, jboolean isCategory,
jstring lang, jlong timestamp, jboolean isMapAndTable, jboolean hasPosition, jdouble lat, jdouble lon)
{
@ -321,7 +321,7 @@ extern "C"
}
}
JNIEXPORT void JNICALL Java_app_organicmaps_search_SearchEngine_nativeRunSearchMaps(
JNIEXPORT void JNICALL Java_app_organicmaps_sdk_search_SearchEngine_nativeRunSearchMaps(
JNIEnv * env, jclass clazz, jbyteArray bytes, jstring lang, jlong timestamp)
{
storage::DownloaderSearchParams params{
@ -334,7 +334,7 @@ extern "C"
g_queryTimestamp = timestamp;
}
JNIEXPORT jboolean JNICALL Java_app_organicmaps_search_SearchEngine_nativeRunSearchInBookmarks(
JNIEXPORT jboolean JNICALL Java_app_organicmaps_sdk_search_SearchEngine_nativeRunSearchInBookmarks(
JNIEnv * env, jclass clazz, jbyteArray query, jlong catId, jlong timestamp)
{
search::BookmarksSearchParams params{
@ -350,25 +350,25 @@ extern "C"
}
JNIEXPORT void JNICALL
Java_app_organicmaps_search_SearchEngine_nativeShowResult(JNIEnv * env, jclass clazz, jint index)
Java_app_organicmaps_sdk_search_SearchEngine_nativeShowResult(JNIEnv * env, jclass clazz, jint index)
{
g_framework->NativeFramework()->ShowSearchResult(g_results[index]);
}
JNIEXPORT void JNICALL
Java_app_organicmaps_search_SearchEngine_nativeCancelInteractiveSearch(JNIEnv * env, jclass clazz)
Java_app_organicmaps_sdk_search_SearchEngine_nativeCancelInteractiveSearch(JNIEnv * env, jclass clazz)
{
g_framework->NativeFramework()->GetSearchAPI().CancelSearch(search::Mode::Viewport);
}
JNIEXPORT void JNICALL
Java_app_organicmaps_search_SearchEngine_nativeCancelEverywhereSearch(JNIEnv * env, jclass clazz)
Java_app_organicmaps_sdk_search_SearchEngine_nativeCancelEverywhereSearch(JNIEnv * env, jclass clazz)
{
g_framework->NativeFramework()->GetSearchAPI().CancelSearch(search::Mode::Everywhere);
}
JNIEXPORT void JNICALL
Java_app_organicmaps_search_SearchEngine_nativeCancelAllSearches(JNIEnv * env, jclass clazz)
Java_app_organicmaps_sdk_search_SearchEngine_nativeCancelAllSearches(JNIEnv * env, jclass clazz)
{
g_framework->NativeFramework()->GetSearchAPI().CancelAllSearches();
}

View file

@ -0,0 +1,37 @@
#include "app/organicmaps/Framework.hpp"
#include "app/organicmaps/core/jni_helper.hpp"
#include "app/organicmaps/core/jni_java_methods.hpp"
#include "search/result.hpp"
using SearchRequest = search::QuerySaver::SearchRequest;
extern "C"
{
JNIEXPORT void JNICALL Java_app_organicmaps_sdk_search_SearchRecents_nativeGetList(JNIEnv * env, jclass, jobject result)
{
auto const & items = g_framework->NativeFramework()->GetSearchAPI().GetLastSearchQueries();
if (items.empty())
return;
auto const listAddMethod = jni::ListBuilder::Instance(env).m_add;
for (SearchRequest const & item : items)
{
jni::TScopedLocalRef str(env, jni::ToJavaString(env, item.second));
env->CallBooleanMethod(result, listAddMethod, str.get());
}
}
JNIEXPORT void JNICALL Java_app_organicmaps_sdk_search_SearchRecents_nativeAdd(JNIEnv * env, jclass, jstring locale,
jstring query)
{
SearchRequest const sr(jni::ToNativeString(env, locale), jni::ToNativeString(env, query));
g_framework->NativeFramework()->GetSearchAPI().SaveSearchQuery(sr);
}
JNIEXPORT void JNICALL Java_app_organicmaps_sdk_search_SearchRecents_nativeClear(JNIEnv * env, jclass)
{
g_framework->NativeFramework()->GetSearchAPI().ClearSearchHistory();
}
}

View file

@ -89,7 +89,7 @@ import app.organicmaps.routing.RoutingPlanFragment;
import app.organicmaps.routing.RoutingPlanInplaceController;
import app.organicmaps.search.FloatingSearchToolbarController;
import app.organicmaps.search.SearchActivity;
import app.organicmaps.search.SearchEngine;
import app.organicmaps.sdk.search.SearchEngine;
import app.organicmaps.search.SearchFragment;
import app.organicmaps.settings.DrivingOptionsActivity;
import app.organicmaps.settings.RoadType;

View file

@ -34,7 +34,7 @@ import app.organicmaps.maplayer.subway.SubwayManager;
import app.organicmaps.maplayer.traffic.TrafficManager;
import app.organicmaps.routing.NavigationService;
import app.organicmaps.routing.RoutingController;
import app.organicmaps.search.SearchEngine;
import app.organicmaps.sdk.search.SearchEngine;
import app.organicmaps.settings.StoragePathManager;
import app.organicmaps.sound.TtsPlayer;
import app.organicmaps.util.Config;

View file

@ -39,8 +39,8 @@ import app.organicmaps.bookmarks.data.KmlFileType;
import app.organicmaps.bookmarks.data.SortedBlock;
import app.organicmaps.bookmarks.data.Track;
import app.organicmaps.location.LocationHelper;
import app.organicmaps.search.NativeBookmarkSearchListener;
import app.organicmaps.search.SearchEngine;
import app.organicmaps.sdk.search.BookmarkSearchListener;
import app.organicmaps.sdk.search.SearchEngine;
import app.organicmaps.util.Graphics;
import app.organicmaps.util.SharingUtils;
import app.organicmaps.util.UiUtils;
@ -62,7 +62,7 @@ public class BookmarksListFragment extends BaseMwmRecyclerFragment<ConcatAdapter
implements BookmarkManager.BookmarksSharingListener,
BookmarkManager.BookmarksSortingListener,
BookmarkManager.BookmarksLoadingListener,
NativeBookmarkSearchListener,
BookmarkSearchListener,
ChooseBookmarksSortingTypeFragment.ChooseSortingTypeListener,
MenuBottomSheetFragment.MenuBottomSheetInterface
{

View file

@ -11,7 +11,7 @@ import androidx.core.os.ParcelCompat;
import app.organicmaps.Framework;
import app.organicmaps.routing.RoutePointInfo;
import app.organicmaps.search.Popularity;
import app.organicmaps.sdk.search.Popularity;
import app.organicmaps.util.Constants;
// TODO consider refactoring to remove hack with MapObject unmarshalling itself and Bookmark at the same time.

View file

@ -12,7 +12,7 @@ import androidx.core.os.ParcelCompat;
import app.organicmaps.Framework;
import app.organicmaps.routing.RoutePointInfo;
import app.organicmaps.search.Popularity;
import app.organicmaps.sdk.search.Popularity;
import app.organicmaps.util.Utils;
import app.organicmaps.widget.placepage.PlacePageData;

View file

@ -23,13 +23,13 @@ import app.organicmaps.car.SurfaceRenderer;
import app.organicmaps.car.screens.base.BaseMapScreen;
import app.organicmaps.car.util.UiHelpers;
import app.organicmaps.location.LocationHelper;
import app.organicmaps.search.NativeSearchListener;
import app.organicmaps.search.SearchEngine;
import app.organicmaps.search.SearchRecents;
import app.organicmaps.search.SearchResult;
import app.organicmaps.sdk.search.SearchListener;
import app.organicmaps.sdk.search.SearchEngine;
import app.organicmaps.sdk.search.SearchRecents;
import app.organicmaps.sdk.search.SearchResult;
import app.organicmaps.util.Language;
public class SearchOnMapScreen extends BaseMapScreen implements NativeSearchListener
public class SearchOnMapScreen extends BaseMapScreen implements SearchListener
{
private final int MAX_RESULTS_SIZE;

View file

@ -21,13 +21,13 @@ import app.organicmaps.bookmarks.data.MapObject;
import app.organicmaps.car.SurfaceRenderer;
import app.organicmaps.car.screens.base.BaseMapScreen;
import app.organicmaps.location.LocationHelper;
import app.organicmaps.search.NativeSearchListener;
import app.organicmaps.search.SearchEngine;
import app.organicmaps.search.SearchRecents;
import app.organicmaps.search.SearchResult;
import app.organicmaps.sdk.search.SearchListener;
import app.organicmaps.sdk.search.SearchEngine;
import app.organicmaps.sdk.search.SearchRecents;
import app.organicmaps.sdk.search.SearchResult;
import app.organicmaps.util.Language;
public class SearchScreen extends BaseMapScreen implements SearchTemplate.SearchCallback, NativeSearchListener
public class SearchScreen extends BaseMapScreen implements SearchTemplate.SearchCallback, SearchListener
{
private final int MAX_RESULTS_SIZE;

View file

@ -13,7 +13,7 @@ import androidx.car.app.model.ForegroundCarColorSpan;
import app.organicmaps.R;
import app.organicmaps.car.util.Colors;
import app.organicmaps.car.util.RoutingHelpers;
import app.organicmaps.search.SearchResult;
import app.organicmaps.sdk.search.SearchResult;
import java.util.ArrayList;
import java.util.List;

View file

@ -8,7 +8,7 @@ import androidx.car.app.suggestion.model.Suggestion;
import androidx.core.graphics.drawable.IconCompat;
import app.organicmaps.R;
import app.organicmaps.search.SearchRecents;
import app.organicmaps.sdk.search.SearchRecents;
import java.util.ArrayList;
import java.util.List;

View file

@ -17,8 +17,8 @@ import androidx.recyclerview.widget.RecyclerView;
import app.organicmaps.R;
import app.organicmaps.base.BaseMwmRecyclerFragment;
import app.organicmaps.base.OnBackPressListener;
import app.organicmaps.search.NativeMapSearchListener;
import app.organicmaps.search.SearchEngine;
import app.organicmaps.sdk.search.MapSearchListener;
import app.organicmaps.sdk.search.SearchEngine;
import app.organicmaps.widget.PlaceholderView;
import app.organicmaps.util.bottomsheet.MenuBottomSheetFragment;
import app.organicmaps.util.bottomsheet.MenuBottomSheetItem;
@ -52,13 +52,13 @@ public class DownloaderFragment extends BaseMwmRecyclerFragment<DownloaderAdapte
}
};
private final NativeMapSearchListener mSearchListener = new NativeMapSearchListener()
private final MapSearchListener mSearchListener = new MapSearchListener()
{
// Called from JNI.
@Keep
@SuppressWarnings("unused")
@Override
public void onMapSearchResults(Result[] results, long timestamp, boolean isLast)
public void onMapSearchResults(@NonNull Result[] results, long timestamp, boolean isLast)
{
if (!mSearchRunning || timestamp != mCurrentSearch)
return;
@ -66,8 +66,8 @@ public class DownloaderFragment extends BaseMwmRecyclerFragment<DownloaderAdapte
List<CountryItem> rs = new ArrayList<>();
for (Result result : results)
{
CountryItem item = CountryItem.fill(result.countryId);
item.searchResultName = result.matchedString;
CountryItem item = CountryItem.fill(result.countryId());
item.searchResultName = result.matchedString();
rs.add(item);
}

View file

@ -3,7 +3,6 @@ package app.organicmaps.intent;
import android.content.ContentResolver;
import android.content.Intent;
import android.net.Uri;
import android.util.Log;
import androidx.annotation.NonNull;
import androidx.core.content.IntentCompat;
@ -22,7 +21,7 @@ import app.organicmaps.bookmarks.data.MapObject;
import app.organicmaps.editor.OsmLoginActivity;
import app.organicmaps.routing.RoutingController;
import app.organicmaps.search.SearchActivity;
import app.organicmaps.search.SearchEngine;
import app.organicmaps.sdk.search.SearchEngine;
import app.organicmaps.util.StorageUtils;
import app.organicmaps.util.concurrency.ThreadPool;

View file

@ -16,7 +16,7 @@ import androidx.annotation.Nullable;
import androidx.annotation.StringRes;
import app.organicmaps.R;
import app.organicmaps.routing.RoutingController;
import app.organicmaps.search.SearchEngine;
import app.organicmaps.sdk.search.SearchEngine;
import app.organicmaps.util.Graphics;
import app.organicmaps.util.UiUtils;
import app.organicmaps.util.concurrency.UiThread;

View file

@ -1,4 +1,4 @@
package app.organicmaps.search;
package app.organicmaps.sdk.search;
import androidx.annotation.Keep;
import androidx.annotation.Nullable;
@ -6,11 +6,11 @@ import androidx.annotation.Nullable;
/**
* Native search will return results via this interface.
*/
public interface NativeBookmarkSearchListener
public interface BookmarkSearchListener
{
/**
* @param bookmarkIds Founded bookmark ids.
* @param timestamp Timestamp of search request.
* @param timestamp Timestamp of search request.
*/
// Used by JNI.
@Keep
@ -19,7 +19,7 @@ public interface NativeBookmarkSearchListener
/**
* @param bookmarkIds Founded bookmark ids.
* @param timestamp Timestamp of search request.
* @param timestamp Timestamp of search request.
*/
// Used by JNI.
@Keep

View file

@ -1,8 +1,8 @@
package app.organicmaps.search;
package app.organicmaps.sdk.search;
import androidx.annotation.NonNull;
class DisplayedCategories
public class DisplayedCategories
{
@NonNull
public static String[] getKeys()

View file

@ -0,0 +1,19 @@
package app.organicmaps.sdk.search;
import androidx.annotation.Keep;
import androidx.annotation.NonNull;
public interface MapSearchListener
{
// Called from JNI.
@Keep
@SuppressWarnings("unused")
record Result(String countryId, String matchedString)
{
}
// Called from JNI.
@Keep
@SuppressWarnings("unused")
void onMapSearchResults(@NonNull Result[] results, long timestamp, boolean isLast);
}

View file

@ -1,4 +1,4 @@
package app.organicmaps.search;
package app.organicmaps.sdk.search;
import android.os.Parcel;
import android.os.Parcelable;
@ -38,12 +38,12 @@ public class Popularity implements Parcelable
}
@Override
public void writeToParcel(Parcel dest, int flags)
public void writeToParcel(@NonNull Parcel dest, int flags)
{
dest.writeInt(this.mType.ordinal());
}
protected Popularity(Parcel in)
protected Popularity(@NonNull Parcel in)
{
int tmpMPopularity = in.readInt();
this.mType = Type.values()[tmpMPopularity];

View file

@ -1,4 +1,4 @@
package app.organicmaps.search;
package app.organicmaps.sdk.search;
import android.content.Context;
@ -14,9 +14,9 @@ import app.organicmaps.util.concurrency.UiThread;
import java.nio.charset.StandardCharsets;
public enum SearchEngine implements NativeSearchListener,
NativeMapSearchListener,
NativeBookmarkSearchListener
public enum SearchEngine implements SearchListener,
MapSearchListener,
BookmarkSearchListener
{
INSTANCE;
@ -30,7 +30,7 @@ public enum SearchEngine implements NativeSearchListener,
UiThread.run(
() ->
{
for (NativeSearchListener listener : mListeners)
for (SearchListener listener : mListeners)
listener.onResultsUpdate(results, timestamp);
});
}
@ -41,18 +41,18 @@ public enum SearchEngine implements NativeSearchListener,
UiThread.run(
() ->
{
for (NativeSearchListener listener : mListeners)
for (SearchListener listener : mListeners)
listener.onResultsEnd(timestamp);
});
}
@Override
public void onMapSearchResults(final NativeMapSearchListener.Result[] results, final long timestamp, final boolean isLast)
public void onMapSearchResults(@NonNull final MapSearchListener.Result[] results, final long timestamp, final boolean isLast)
{
UiThread.run(
() ->
{
for (NativeMapSearchListener listener : mMapListeners)
for (MapSearchListener listener : mMapListeners)
listener.onMapSearchResults(results, timestamp, isLast);
});
}
@ -60,55 +60,53 @@ public enum SearchEngine implements NativeSearchListener,
@Override
public void onBookmarkSearchResultsUpdate(@Nullable long[] bookmarkIds, long timestamp)
{
for (NativeBookmarkSearchListener listener : mBookmarkListeners)
for (BookmarkSearchListener listener : mBookmarkListeners)
listener.onBookmarkSearchResultsUpdate(bookmarkIds, timestamp);
}
@Override
public void onBookmarkSearchResultsEnd(@Nullable long[] bookmarkIds, long timestamp)
{
for (NativeBookmarkSearchListener listener : mBookmarkListeners)
for (BookmarkSearchListener listener : mBookmarkListeners)
listener.onBookmarkSearchResultsEnd(bookmarkIds, timestamp);
}
private final ObserverList<NativeSearchListener> mListeners = new ObserverList<>();
private final ObserverList<SearchListener> mListeners = new ObserverList<>();
private final ObserverList<NativeMapSearchListener> mMapListeners = new ObserverList<>();
private final ObserverList<MapSearchListener> mMapListeners = new ObserverList<>();
private final ObserverList<NativeBookmarkSearchListener> mBookmarkListeners = new ObserverList<>();
private final ObserverList<BookmarkSearchListener> mBookmarkListeners = new ObserverList<>();
public void addListener(NativeSearchListener listener)
public void addListener(SearchListener listener)
{
mListeners.addObserver(listener);
}
public void removeListener(NativeSearchListener listener)
public void removeListener(SearchListener listener)
{
mListeners.removeObserver(listener);
}
public void addMapListener(NativeMapSearchListener listener)
public void addMapListener(MapSearchListener listener)
{
mMapListeners.addObserver(listener);
}
public void removeMapListener(NativeMapSearchListener listener)
public void removeMapListener(MapSearchListener listener)
{
mMapListeners.removeObserver(listener);
}
public void addBookmarkListener(NativeBookmarkSearchListener listener)
public void addBookmarkListener(BookmarkSearchListener listener)
{
mBookmarkListeners.addObserver(listener);
}
public void removeBookmarkListener(NativeBookmarkSearchListener listener)
public void removeBookmarkListener(BookmarkSearchListener listener)
{
mBookmarkListeners.removeObserver(listener);
}
private native void nativeInit();
/**
*
* @param context
@ -116,7 +114,7 @@ public enum SearchEngine implements NativeSearchListener,
* @return whether search was actually started.
*/
@MainThread
public boolean search(@NonNull Context context, String query, boolean isCategory,
public boolean search(@NonNull Context context, @NonNull String query, boolean isCategory,
long timestamp, boolean hasLocation, double lat, double lon)
{
return nativeRunSearch(query.getBytes(StandardCharsets.UTF_8), isCategory,
@ -146,7 +144,7 @@ public enum SearchEngine implements NativeSearchListener,
}
@MainThread
public static void searchMaps(@NonNull Context context, String query, long timestamp)
public static void searchMaps(@NonNull Context context, @NonNull String query, long timestamp)
{
nativeRunSearchMaps(query.getBytes(StandardCharsets.UTF_8), Language.getKeyboardLocale(context),
timestamp);
@ -208,6 +206,8 @@ public enum SearchEngine implements NativeSearchListener,
nativeInit();
}
private native void nativeInit();
/**
* @param bytes utf-8 formatted bytes of query.
*/

View file

@ -1,4 +1,4 @@
package app.organicmaps.search;
package app.organicmaps.sdk.search;
import androidx.annotation.Keep;
import androidx.annotation.NonNull;
@ -6,10 +6,10 @@ import androidx.annotation.NonNull;
/**
* Native search will return results via this interface.
*/
public interface NativeSearchListener
public interface SearchListener
{
/**
* @param results Search results.
* @param results Search results.
* @param timestamp Timestamp of search request.
*/
// Called by JNI.

View file

@ -1,8 +1,7 @@
package app.organicmaps.search;
package app.organicmaps.sdk.search;
import android.content.Context;
import android.text.TextUtils;
import android.util.Pair;
import androidx.annotation.NonNull;
@ -50,6 +49,8 @@ public final class SearchRecents
}
private static native void nativeGetList(List<String> result);
private static native void nativeAdd(String locale, String query);
private static native void nativeClear();
}

View file

@ -1,4 +1,4 @@
package app.organicmaps.search;
package app.organicmaps.sdk.search;
import android.content.Context;
import android.graphics.Typeface;
@ -32,7 +32,7 @@ public class SearchResult
public static final int OPEN_NOW_NO = 2;
public static final SearchResult EMPTY = new SearchResult("", "", 0, 0,
new int[] {}, new int[] {});
new int[]{}, new int[]{});
// Used by JNI.
@Keep

View file

@ -18,6 +18,7 @@ import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.RecyclerView;
import app.organicmaps.R;
import app.organicmaps.sdk.search.DisplayedCategories;
import app.organicmaps.util.ThemeUtils;
import java.lang.annotation.Retention;
@ -26,9 +27,10 @@ import java.lang.annotation.RetentionPolicy;
class CategoriesAdapter extends RecyclerView.Adapter<CategoriesAdapter.ViewHolder>
{
@Retention(RetentionPolicy.SOURCE)
@IntDef({ TYPE_CATEGORY })
@interface ViewType {}
private static final int TYPE_CATEGORY = 0;
@IntDef({ ViewType.CATEGORY })
@interface ViewType {
int CATEGORY = 0;
}
@StringRes
private int[] mCategoryResIds;
@ -121,15 +123,16 @@ class CategoriesAdapter extends RecyclerView.Adapter<CategoriesAdapter.ViewHolde
@ViewType
public int getItemViewType(int position)
{
return TYPE_CATEGORY;
return ViewType.CATEGORY;
}
@NonNull
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, @ViewType int viewType)
public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, @ViewType int viewType)
{
View view;
ViewHolder viewHolder;
if (viewType == TYPE_CATEGORY)
if (viewType == ViewType.CATEGORY)
{
view = mInflater.inflate(R.layout.item_search_category, parent, false);
viewHolder = new ViewHolder(view, (TextView) view);

View file

@ -6,7 +6,8 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.view.ViewCompat;
import app.organicmaps.util.WindowInsetUtils;
import app.organicmaps.sdk.search.SearchEngine;
import app.organicmaps.util.WindowInsetUtils.PaddingInsetsListener;
import app.organicmaps.widget.SearchToolbarController;
import app.organicmaps.util.UiUtils;

View file

@ -1,26 +0,0 @@
package app.organicmaps.search;
import androidx.annotation.Keep;
public interface NativeMapSearchListener
{
// Called from JNI.
@Keep
@SuppressWarnings("unused")
class Result
{
public final String countryId;
public final String matchedString;
public Result(String countryId, String matchedString)
{
this.countryId = countryId;
this.matchedString = matchedString;
}
}
// Called from JNI.
@Keep
@SuppressWarnings("unused")
void onMapSearchResults(Result[] results, long timestamp, boolean isLast);
}

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