Compare commits

...

224 Commits

Author SHA1 Message Date
Harry Bond
fe3df2e5c0 [fdroid] Release version 2025.08.13-8
Signed-off-by: Harry Bond <me@hbond.xyz>
2025-08-13 19:37:30 +01:00
Yannik Bloscheck
211e3fb4f0 [ios] Fixing ATM translation on place page
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-08-13 20:26:31 +02:00
Konstantin Pastbin
ab0c2e70d5 [planet] Update map data to 250804
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-08-13 20:25:04 +02:00
Konstantin Pastbin
3133b88346 Relnotes for 1st August release
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-08-13 20:18:00 +02:00
x7z4w
b1479127e7 [ci] Use self-hosted runner
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-08-13 20:05:43 +02:00
Yannik Bloscheck
18c3b8cda5 [styles] Made general area slightly less grey
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-08-13 20:03:44 +02:00
Codeberg Translate
38037c1174 [strings] Update from Codeberg Translate
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: jimkats <jimkats@noreply.codeberg.org>
Co-authored-by: patepelo <patepelo@noreply.codeberg.org>
Translation: CoMaps/Android - Map Feature Types
Translation: CoMaps/Countries and regions names
Translation: CoMaps/iOS - Map Feature Types
2025-08-13 17:36:51 +00:00
Konstantin Pastbin
593f2fd828 [tools] Change World maps download mirror
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-08-13 13:06:50 +07:00
Jean-Baptiste
066afe4aa8 [android] Improve alignment layout
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
2025-08-12 17:57:50 +02:00
Jean-Baptiste
2df3e3557b [android] Migrate last themes to Material Components
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
2025-08-12 17:57:50 +02:00
Codeberg Translate
f79e86dff6 [strings] Update from Codeberg Translate
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/comaps/countries/
Translation: CoMaps/Countries and regions names
2025-08-12 15:11:24 +00:00
Konstantin Pastbin
244af5ea34 [core] Make DefaultLanguage arg const ref
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-08-12 19:35:51 +07:00
Yannik Bloscheck
185ae66101 [core] Fix local language not being used in some cases
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-08-12 12:36:56 +02:00
Konstantin Pastbin
f09b372590 [drape] Comment dummy assert firing in debug builds
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-08-12 16:23:43 +07:00
Konstantin Pastbin
de4ec645b6 [styles] Disable unused designer drules
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-08-12 10:14:53 +02:00
Konstantin Pastbin
b1710c0fd6 Revert "[android] Migrate last themes to Material Components"
This reverts commit b41bad5ea4.
2025-08-12 13:01:16 +07:00
Eivind Samseth
be0784e4ad [docs] Improve maps generator documentation
Add instructions for uv package managment and how to test on iOS

Signed-off-by: eisa01 <eisa01@gmail.com>
2025-08-11 21:00:50 +02:00
Henry Sternberg
78baadfe95 [core][drape] Making arrows smooth again
Signed-off-by: Henry Sternberg <dev@bluelightmaps.com>
2025-08-11 16:58:28 +02:00
Codeberg Translate
2dade5039a [strings] Update from Codeberg Translate
Co-authored-by: Artiman <artiman@noreply.codeberg.org>
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: N4ta <codeberg@n4ta.anonaddy.me>
Co-authored-by: ikanakova <ikanakova@noreply.codeberg.org>
Co-authored-by: patepelo <patepelo@noreply.codeberg.org>
Co-authored-by: sunsand <sunsand@noreply.codeberg.org>
Co-authored-by: sziatomi <sziatomi@noreply.codeberg.org>
Translation: CoMaps/Android - Map Feature Types
Translation: CoMaps/Android UI Strings
Translation: CoMaps/Countries and regions names
Translation: CoMaps/F-Droid app description
Translation: CoMaps/Voice announcements for navigation (TTS)
Translation: CoMaps/iOS - Map Feature Types
Translation: CoMaps/iOS UI Strings
2025-08-11 13:58:51 +00:00
x7z4w
36ec212671 [strings] Remove internal types
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-08-11 15:58:12 +02:00
x7z4w
bdbbed6265 [strings] Consistent categories strings
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-08-11 15:25:35 +02:00
Jean-Baptiste
007aa818ff [android] Add support of Android 16 - First part
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
2025-08-11 14:59:57 +02:00
Viktor Govako
001246fd10 [routing][tests] Updated integration tests.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-08-11 14:58:45 +02:00
Alexander Borsuk
76d7ef146c Removed SignedRound and replaced std::round with std::lround where needed
Also see https://clang.llvm.org/extra/clang-tidy/checks/bugprone/incorrect-roundings.html

Signed-off-by: Alexander Borsuk <me@alex.bio>
2025-08-11 14:58:45 +02:00
Alexander Borsuk
ae349462c6 Smoke test for std::round and std::lround
Signed-off-by: Alexander Borsuk <me@alex.bio>
2025-08-11 14:58:45 +02:00
Alexander Borsuk
972cefb074 Open in another app generates geo: URI with a q= query compatible with Google Maps
Signed-off-by: Alexander Borsuk <me@alex.bio>
2025-08-11 14:58:45 +02:00
Alexander Borsuk
30718e106e ADL for AlmostEqual* and use math:: instead of base:: (#9634)
* ADL for AlmostEqual* and use math:: instead of base::

Signed-off-by: Alexander Borsuk <me@alex.bio>
2025-08-11 14:58:45 +02:00
Alexander Borsuk
82133c5743 Fixed failing is_finite tests on the latest clang
Signed-off-by: Alexander Borsuk <me@alex.bio>
2025-08-11 14:58:45 +02:00
Alexander Borsuk
8fe788c98d Removed -Ofast to silence clang warning
Signed-off-by: Alexander Borsuk <me@alex.bio>
2025-08-11 14:58:45 +02:00
Konstantin Pastbin
684784c2b2 [drape] Increase colors texture size
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-08-11 14:56:51 +02:00
Eivind Samseth
492eab91fc [generator] Remove survey:date support
Indefinite behavior if both check_date and survey:date are set. Likely need its own metadata key

Signed-off-by: eisa01 <eisa01@gmail.com>
2025-08-11 12:24:46 +02:00
x7z4w
86ebbf6006 Remove us1
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-08-11 10:06:44 +02:00
Codeberg Translate
45e15e2edb [strings] Update from Codeberg Translate
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: ERYpTION <eryption@noreply.codeberg.org>
Co-authored-by: Mannivu <mannivu@noreply.codeberg.org>
Co-authored-by: patepelo <patepelo@noreply.codeberg.org>
Co-authored-by: sziatomi <sziatomi@noreply.codeberg.org>
Translation: CoMaps/Android - Map Feature Types
Translation: CoMaps/Android UI Strings
Translation: CoMaps/Apple AppStore description
Translation: CoMaps/Countries and regions names
Translation: CoMaps/F-Droid app description
Translation: CoMaps/Google Play and Huawei AppGallery descriptions
Translation: CoMaps/iOS - Map Feature Types
Translation: CoMaps/iOS Plurals
Translation: CoMaps/iOS UI Strings
2025-08-10 15:11:32 +00:00
Harry Bond
1e358375c6 [desktop] change id to app.comaps.comaps
apparently app.comaps.qt is no good either. this one is confirmed fine

Signed-off-by: Harry Bond <me@hbond.xyz>
2025-08-10 14:40:15 +01:00
Konstantin Pastbin
c3d0689d8a [generator] Fix default NODE_STORAGE setting to 'map'
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-08-10 15:41:21 +07:00
Harry Bond
607191503c [desktop] Change ID from .desktop to .qt
required to publish on Flathub, and .desktop is a file extension anyway so it's a bad idea
also some improvements to metadata structure, and add branding colours
and fix the welcome message in qt

Signed-off-by: Harry Bond <me@hbond.xyz>
2025-08-10 10:06:24 +02:00
Konstantin Pastbin
7ec05f16e5 [search] Fix predefined Parking category for DE
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-08-10 09:57:57 +02:00
Jean-Baptiste
b41bad5ea4 [android] Migrate last themes to Material Components
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
2025-08-10 06:55:03 +02:00
Jean-Baptiste
1e22b678e2 [android] Update background color of stop icons
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
2025-08-09 20:05:51 +02:00
x7z4w
f88b0afa58 [docs] Update docs
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-08-09 13:51:09 +02:00
Codeberg Translate
d7ece38279 [strings] Update from Codeberg Translate
Co-authored-by: 0ko <0ko@noreply.codeberg.org>
Co-authored-by: Alexey Ladygin <nitrodox@noreply.codeberg.org>
Co-authored-by: Antmajgra <antmajgra@noreply.codeberg.org>
Co-authored-by: B o d o <timtrek@noreply.codeberg.org>
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: ERYpTION <eryption@noreply.codeberg.org>
Co-authored-by: Fjuro <fjuro@alius.cz>
Co-authored-by: Frz <frz@noreply.codeberg.org>
Co-authored-by: Fs00 <fs00@noreply.codeberg.org>
Co-authored-by: Lenny Angst <lenny@familie-angst.ch>
Co-authored-by: N4ta <codeberg@n4ta.anonaddy.me>
Co-authored-by: Outbreak2096 <outbreak2096@noreply.codeberg.org>
Co-authored-by: Prefill add-on <noreply-addon-prefill@weblate.org>
Co-authored-by: Priit Jõerüüt <jrtcdbrg@noreply.codeberg.org>
Co-authored-by: Weblate <noreply-mt-weblate@weblate.org>
Co-authored-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Co-authored-by: Zalexanninev15 <zalexanninev15@noreply.codeberg.org>
Co-authored-by: ZeljkoBG <zeljkobg@noreply.codeberg.org>
Co-authored-by: athulvis <athulvis@noreply.codeberg.org>
Co-authored-by: jimkats <jimkats@noreply.codeberg.org>
Co-authored-by: lazlo <lazlo@noreply.codeberg.org>
Co-authored-by: ldmpub <ldmpub@noreply.codeberg.org>
Co-authored-by: maklein <maklein@noreply.codeberg.org>
Co-authored-by: matheusgomesms <matheusgomesms@noreply.codeberg.org>
Co-authored-by: metehan <metehan@noreply.codeberg.org>
Co-authored-by: patepelo <patepelo@noreply.codeberg.org>
Co-authored-by: paulb <paulb@noreply.codeberg.org>
Co-authored-by: rimas <rimas@noreply.codeberg.org>
Co-authored-by: x7z4w <x7z4w@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/
Translation: CoMaps/Android - Map Feature Types
Translation: CoMaps/Android UI Strings
Translation: CoMaps/Apple AppStore description
Translation: CoMaps/Countries and regions names
Translation: CoMaps/F-Droid app description
Translation: CoMaps/Google Play and Huawei AppGallery descriptions
Translation: CoMaps/Voice announcements for navigation (TTS)
Translation: CoMaps/iOS - Map Feature Types
Translation: CoMaps/iOS Plist
Translation: CoMaps/iOS Plurals
Translation: CoMaps/iOS UI Strings
2025-08-09 09:38:04 +00:00
Yannik Bloscheck
722fc5e333 [ios] Added paning of the map and search keyboard shortcut for Macs
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-08-09 11:37:55 +02:00
Jean-Baptiste
f05a9c9eb4 [android] Migrate routing screens to Material
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
2025-08-09 09:16:53 +02:00
Andrei Shkrob
07c26a5ab8 [data] move case folding data into test folder
Signed-off-by: Andrei Shkrob <github@shkrob.dev>
2025-08-08 20:49:43 +07:00
Andrei Shkrob
8f5c8a5bd7 [data] Refactor resources folder
Signed-off-by: Andrei Shkrob <github@shkrob.dev>
2025-08-08 20:47:41 +07:00
Eivind Samseth
04246a55f2 [generator] Add check_date and variants
Includes survey:date and check_date:opening_hours
Only apply to amenity and shop types for now

[generator] Add check_date to further types

[generator] Improve date validation

Check if it can be parsed to a proper date

Signed-off-by: Eivind Samseth <eisa01@gmail.com>
2025-08-08 15:11:24 +02:00
Harry Bond
b096199695 [qt] prep metainfo for Flathub release
Signed-off-by: Harry Bond <me@hbond.xyz>
2025-08-07 23:15:45 +01:00
Konstantin Pastbin
5de22c6de8 [generator] Improve logging, add comments
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-08-07 13:56:48 +02:00
Konstantin Pastbin
d7f73f4b9b [generator] Fix Features stage crash on an empty relation
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-08-07 13:56:48 +02:00
Codeberg Translate
d5ce81b20b [strings] Update from Codeberg Translate
Co-authored-by: 0ko <0ko@noreply.codeberg.org>
Co-authored-by: Alexey Ladygin <nitrodox@noreply.codeberg.org>
Co-authored-by: Antmajgra <antmajgra@noreply.codeberg.org>
Co-authored-by: B o d o <timtrek@noreply.codeberg.org>
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: ERYpTION <eryption@noreply.codeberg.org>
Co-authored-by: Fjuro <fjuro@alius.cz>
Co-authored-by: Frz <frz@noreply.codeberg.org>
Co-authored-by: Fs00 <fs00@noreply.codeberg.org>
Co-authored-by: Lenny Angst <lenny@familie-angst.ch>
Co-authored-by: N4ta <codeberg@n4ta.anonaddy.me>
Co-authored-by: Outbreak2096 <outbreak2096@noreply.codeberg.org>
Co-authored-by: Prefill add-on <noreply-addon-prefill@weblate.org>
Co-authored-by: Priit Jõerüüt <jrtcdbrg@noreply.codeberg.org>
Co-authored-by: Weblate <noreply-mt-weblate@weblate.org>
Co-authored-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Co-authored-by: ZeljkoBG <zeljkobg@noreply.codeberg.org>
Co-authored-by: athulvis <athulvis@noreply.codeberg.org>
Co-authored-by: lazlo <lazlo@noreply.codeberg.org>
Co-authored-by: ldmpub <ldmpub@noreply.codeberg.org>
Co-authored-by: maklein <maklein@noreply.codeberg.org>
Co-authored-by: matheusgomesms <matheusgomesms@noreply.codeberg.org>
Co-authored-by: metehan <metehan@noreply.codeberg.org>
Co-authored-by: patepelo <patepelo@noreply.codeberg.org>
Co-authored-by: paulb <paulb@noreply.codeberg.org>
Co-authored-by: rimas <rimas@noreply.codeberg.org>
Co-authored-by: x7z4w <x7z4w@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/
Translation: CoMaps/Android - Map Feature Types
Translation: CoMaps/Android UI Strings
Translation: CoMaps/Apple AppStore description
Translation: CoMaps/Countries and regions names
Translation: CoMaps/F-Droid app description
Translation: CoMaps/Google Play and Huawei AppGallery descriptions
Translation: CoMaps/Voice announcements for navigation (TTS)
Translation: CoMaps/iOS - Map Feature Types
Translation: CoMaps/iOS Plist
Translation: CoMaps/iOS Plurals
Translation: CoMaps/iOS UI Strings
2025-08-07 13:55:42 +02:00
Viktor Govako
905a823490 [desktop] Removed redundant NightMode setting.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-08-07 13:39:05 +02:00
hemanggs
b195059fb6 [drape] Fixes add business button crosshair placement
-Point crosshair to optionalPosition instead of a random point in BoundArea

Signed-off-by: hemanggs <hemangmanhas@gmail.com>
2025-08-07 13:39:05 +02:00
Kiryl Kaveryn
460a7fa480 [map] Fix zoom on selected/saved track
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-08-07 13:39:05 +02:00
Andrei Shkrob
e65ab6e458 Update gitignore
Signed-off-by: Andrei Shkrob <github@shkrob.dev>
2025-08-07 13:39:05 +02:00
Viktor Govako
effc8ba5d1 [routing] Relaxed roundabout skip turns check (driveway, parking_aisle).
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-08-07 13:39:05 +02:00
Viktor Govako
014b54b1f7 [routing][tests] Updated Turn integration tests.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-08-07 13:39:05 +02:00
Harry Bond
a25ae124d7 [docs] Fix horrendously bloated SVG
it even phones home to Penpot and Google Fonts...

Signed-off-by: Harry Bond <me@hbond.xyz>
2025-08-07 10:53:39 +01:00
David Martinez
372a7a90c5 [styles] Switch food_court to fork and knife icon
Signed-off-by: David Martinez <47610359+dvdmrtnz@users.noreply.github.com>
2025-08-07 11:27:30 +02:00
Yannik Bloscheck
9bd6e2cdf2 [styles] Slightly adjusted parking icon color to be more different from new water color
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-08-06 16:09:45 +02:00
Yannik Bloscheck
c2cc61e4d9 [android] Adjusted water and parking search category icon
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-08-06 16:09:45 +02:00
Yannik Bloscheck
e3fa656f4f [ios] Adjusted water and parking search category icon
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-08-06 16:09:44 +02:00
Yannik Bloscheck
d7216b7ccc [styles] Keep water labels and icons readable with improved water visibility
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-08-06 16:09:44 +02:00
Yannik Bloscheck
aaa61f7f75 [styles] Made water more visible
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-08-06 16:09:44 +02:00
Yannik Bloscheck
ccfd2107f3 [styles] Improved general and pedestrian area visibility
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-08-06 16:06:13 +02:00
x7z4w
45ec96dd3c [build] Generate drules at build
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-08-06 10:40:29 +02:00
x7z4w
dd7739a8b2 [search] Add more synonyms
Co-Authored-By: Matheus Gomes <matheusgomesms@noreply.codeberg.org>
Co-Authored-By: Omar Hassan <omarhassan@noreply.codeberg.org>
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-08-05 21:07:35 +02:00
x7z4w
ae0ef4d3f8 [ios] Run configure.sh for clean builds
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-08-05 10:16:31 +00:00
Jean-Baptiste
68d1ead44c [doc] Improve doc and updates codeberg teams
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
2025-08-04 19:10:52 +02:00
x7z4w
09de87fd29 [ci] Use container with Android SDK
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-08-03 17:44:59 +02:00
Yannik Bloscheck
1a241121c4 [ios] Fix configure.sh at build for Xcode
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-08-03 13:14:58 +02:00
Eivind Samseth
fdeeb1ae34 [routing] Add faux oneways for motor_vehicle and vehicle forward/backward
Signed-off-by: Eivind Samseth <eisa01@gmail.com>
Co-authored-by: Eivind Samseth <eisa01@gmail.com>
Co-committed-by: Eivind Samseth <eisa01@gmail.com>
2025-08-02 22:57:41 +02:00
Codeberg Translate
c2bd2b897a [strings] Update from Codeberg Translate
Co-authored-by: B o d o <timtrek@noreply.codeberg.org>
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: Fjuro <fjuro@alius.cz>
Co-authored-by: Lenny Angst <lenny@familie-angst.ch>
Co-authored-by: N4ta <codeberg@n4ta.anonaddy.me>
Co-authored-by: NLBRT <nlbrt@noreply.codeberg.org>
Co-authored-by: Outbreak2096 <outbreak2096@noreply.codeberg.org>
Co-authored-by: Priit Jõerüüt <jrtcdbrg@noreply.codeberg.org>
Co-authored-by: Weblate <noreply-mt-weblate@weblate.org>
Co-authored-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Co-authored-by: cramoe <cramoe@noreply.codeberg.org>
Co-authored-by: joysriramsarkar <joysriramsarkar@noreply.codeberg.org>
Co-authored-by: matheusgomesms <matheusgomesms@noreply.codeberg.org>
Co-authored-by: patepelo <patepelo@noreply.codeberg.org>
Co-authored-by: sunsand <sunsand@noreply.codeberg.org>
Co-authored-by: x7z4w <x7z4w@noreply.codeberg.org>
Co-authored-by: yannikbloscheck <yannikbloscheck@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/comaps/appstore-description/
Translate-URL: https://translate.codeberg.org/projects/comaps/countries/
Translation: CoMaps/Android - Map Feature Types
Translation: CoMaps/Android UI Strings
Translation: CoMaps/Apple AppStore description
Translation: CoMaps/Countries and regions names
Translation: CoMaps/F-Droid app description
Translation: CoMaps/Google Play and Huawei AppGallery descriptions
Translation: CoMaps/iOS - Map Feature Types
Translation: CoMaps/iOS Plist
Translation: CoMaps/iOS Plurals
Translation: CoMaps/iOS UI Strings
2025-08-02 18:46:36 +00:00
matkoniecz
e39b5eb507 [strings] Add key cutter synonyms
Signed-off-by: matkoniecz <matkoniecz@noreply.codeberg.org>
Co-authored-by: matkoniecz <matkoniecz@noreply.codeberg.org>
Co-committed-by: matkoniecz <matkoniecz@noreply.codeberg.org>
2025-08-02 15:52:04 +02:00
x7z4w
96ef33a401 [cmake] Run configure.sh at build
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-08-02 06:25:56 +00:00
Yannik Bloscheck
c6dcfc71bf [build] Changed to hash based comparing and adjustments to make it work on macOS
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-08-01 23:03:41 +02:00
x7z4w
053fe3c143 [build] Cache World maps and symbols version
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-08-01 23:03:41 +02:00
x7z4w
c6439aaa82 [3party] Do not recompile boost
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-08-01 23:03:41 +02:00
x7z4w
e50a668feb [strings] Fix weblate merge
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-08-01 15:51:07 +00:00
Harry Bond
5ce753bd5c [android] Don't use inset for ic_launcher
hardcoding the drawable inset is the only option, as it's not supported on android 5-7
fixes #1175


Signed-off-by: Harry Bond <me@hbond.xyz>
2025-07-31 21:00:05 +01:00
Harry Bond
8058183f72 [android] Remove old debug icons
Signed-off-by: Harry Bond <me@hbond.xyz>
2025-07-31 20:44:00 +01:00
Harry Bond
07f745411f [android] fix drawables not found
caused due to the big sdk refactoring - i'm not sure why we're storing some drawables in the sdk package, but this fixes build for now.

Signed-off-by: Harry Bond <me@hbond.xyz>
2025-07-31 19:52:33 +01:00
Jean-Baptiste
2004c9bfc1 [iOS]Drop last parts of NY features
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
2025-07-31 20:10:42 +02:00
bowie
1e7715d10f [strings] Removed minor errors countries-strings
Removed minor errors (Points 2, 5 and 6) as noted in https://codeberg.org/comaps/comaps/issues/986
Line 225: changed "p" to upper case "P" in "Península"

Signed-off-by: bowie <bowie@noreply.codeberg.org>
2025-07-31 17:07:46 +02:00
Yannik Bloscheck
e884e32bb6 [ios] Prevent unnecessary log messages because of empty image
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-07-31 13:28:11 +02:00
Yannik Bloscheck
660694aee0 [ios] Fixed merge error after removing method
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-07-31 13:26:46 +02:00
Jean-Baptiste
99fa3ec551 [android] Migrate Webp assets to SVG
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
2025-07-31 13:04:37 +02:00
Alexander Borsuk
f26db1a79b [android] Increase gradle heap to 2Gb to fix linter OOM
Signed-off-by: Alexander Borsuk <me@alex.bio>
2025-07-31 13:03:12 +02:00
Viktor Govako
1151f0fb75 [android] Expected "Show on map" search button behaviour.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-31 13:03:12 +02:00
Alexander Borsuk
bbb28107b8 [android][editor] Keep the last background unique osm upload work to avoid duplicates
Signed-off-by: Alexander Borsuk <me@alex.bio>
2025-07-31 13:03:12 +02:00
Andrei Shkrob
9c7b39fd5b [android] Migrate DownloaderActivity to OnBackPressedCallback
Signed-off-by: Andrei Shkrob <github@shkrob.dev>
2025-07-31 13:03:12 +02:00
Andrei Shkrob
0d9514bee9 [android] Hot fix for broken OnBackPressed
Signed-off-by: Andrei Shkrob <github@shkrob.dev>
2025-07-31 13:03:12 +02:00
Alexander Borsuk
a036edc9c5 [android] Use OpenGL on Emulator API 30 and 36 (Android 11 and 16)
OM crashes likely due to some bugs in Vulkan driver

Signed-off-by: Alexander Borsuk <me@alex.bio>
2025-07-31 13:03:12 +02:00
hemanggs
90492e95e6 [drape] Allow controlling viewport restoration on DeactivateMapSelection
Signed-off-by: hemanggs <hemangmanhas@gmail.com>
2025-07-31 13:03:12 +02:00
hemanggs
fc199252eb [android] Fixes crosshair jump when adding POI
Signed-off-by: hemanggs <hemangmanhas@gmail.com>
2025-07-31 13:03:12 +02:00
Yannik Bloscheck
327d302aae [ios] Change how authorization check after editing is handled
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-07-31 12:31:46 +02:00
Yannik Bloscheck
0b8bd42cb0 [ios] Remove celebratory alert after editing
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-07-31 12:17:58 +02:00
x7z4w
962ee67833 [docs] Add Zulip and governance doc
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-07-31 11:58:00 +02:00
Codeberg Translate
69e3fdca90 [strings] Update from Codeberg Translate
Co-authored-by: Anonymous <anonymous@noreply.codeberg.org>
Co-authored-by: B o d o <timtrek@noreply.codeberg.org>
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: Outbreak2096 <outbreak2096@noreply.codeberg.org>
Co-authored-by: Prefill add-on <noreply-addon-prefill@weblate.org>
Co-authored-by: ghose <ghose@noreply.codeberg.org>
Co-authored-by: loscati <loscati@noreply.codeberg.org>
Co-authored-by: matheusgomesms <matheusgomesms@noreply.codeberg.org>
Co-authored-by: paulb <paulb@noreply.codeberg.org>
Co-authored-by: x7z4w <x7z4w@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/
Translation: CoMaps/Android - Map Feature Types
Translation: CoMaps/Android UI Strings
Translation: CoMaps/Apple AppStore description
Translation: CoMaps/F-Droid app description
Translation: CoMaps/Google Play and Huawei AppGallery descriptions
Translation: CoMaps/iOS - Map Feature Types
Translation: CoMaps/iOS Plist
Translation: CoMaps/iOS Plurals
Translation: CoMaps/iOS UI Strings
2025-07-31 09:30:15 +02:00
Codeberg Translate
ac8f945455 [strings] Update from Codeberg Translate
Co-authored-by: Anonymous <anonymous@noreply.codeberg.org>
Co-authored-by: B o d o <timtrek@noreply.codeberg.org>
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: Outbreak2096 <outbreak2096@noreply.codeberg.org>
Co-authored-by: Prefill add-on <noreply-addon-prefill@weblate.org>
Co-authored-by: Priit Jõerüüt <jrtcdbrg@noreply.codeberg.org>
Co-authored-by: ghose <ghose@noreply.codeberg.org>
Co-authored-by: loscati <loscati@noreply.codeberg.org>
Co-authored-by: matheusgomesms <matheusgomesms@noreply.codeberg.org>
Co-authored-by: patepelo <patepelo@noreply.codeberg.org>
Co-authored-by: paulb <paulb@noreply.codeberg.org>
Co-authored-by: phama <phama@noreply.codeberg.org>
Co-authored-by: x7z4w <x7z4w@noreply.codeberg.org>
Co-authored-by: yannikbloscheck <yannikbloscheck@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/
Translation: CoMaps/Android - Map Feature Types
Translation: CoMaps/Android UI Strings
Translation: CoMaps/Apple AppStore description
Translation: CoMaps/Countries and regions names
Translation: CoMaps/F-Droid app description
Translation: CoMaps/Google Play and Huawei AppGallery descriptions
Translation: CoMaps/iOS - Map Feature Types
Translation: CoMaps/iOS Plist
Translation: CoMaps/iOS Plurals
Translation: CoMaps/iOS UI Strings
2025-07-31 05:20:25 +00:00
S. Kozyr
c8a4726500 Changed priority of Gradle repos
Signed-off-by: S. Kozyr <s.trump@gmail.com>
2025-07-31 07:19:55 +02:00
Andrei Shkrob
40adb0f860 [android][sdk] Refactor shared preferences
Signed-off-by: Andrei Shkrob <github@shkrob.dev>
2025-07-31 07:19:55 +02:00
Andrei Shkrob
c600a4fd5d [android][sdk] Move drawables into sdk lib
Signed-off-by: Andrei Shkrob <github@shkrob.dev>
2025-07-31 07:19:55 +02:00
Andrei Shkrob
07420a3f19 [android][sdk] Move Android7RootCertificateWorkaround into sdk package
Signed-off-by: Andrei Shkrob <github@shkrob.dev>
2025-07-31 07:19:55 +02:00
Andrei Shkrob
3920988ef4 [android][sdk] Fix dependecies in sdk package
Signed-off-by: Andrei Shkrob <github@shkrob.dev>
2025-07-31 07:19:55 +02:00
matheusgomesms
6136abb33a [strings] Shortened test TTS button title
Signed-off-by: matheusgomesms <matheusgomesms@noreply.codeberg.org>

Reviewed-on: https://codeberg.org/comaps/comaps/pulls/1186
Reviewed-by: Yannik Bloscheck <yannikbloscheck@noreply.codeberg.org>
Reviewed-by: jeanbaptisteC <jeanbaptistec@noreply.codeberg.org>
Co-authored-by: matheusgomesms <matheusgomesms@noreply.codeberg.org>
Co-committed-by: matheusgomesms <matheusgomesms@noreply.codeberg.org>
2025-07-30 18:22:40 +02:00
matheusgomesms
a0e40c98d7 [editor] Fix Irish post codes format
Signed-off-by: matheusgomesms <matheusgomesms@noreply.codeberg.org>
2025-07-30 14:03:09 +02:00
matheusgomesms
3bdaa44c3a [editor] Adding support for Irish post codes
Signed-off-by: matheusgomesms <matheusgomesms@noreply.codeberg.org>
2025-07-30 11:08:49 +02:00
Yannik Bloscheck
945c6205a0 [styles] Refreshed aerialway station icon
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-07-30 11:08:38 +02:00
IXVG47QZ
ef4fd85883 [strings] Change zip to postal
Signed-off-by: IXVG47QZ <jako_accomm@simplelogin.com>
2025-07-30 11:03:29 +02:00
Yannik Bloscheck
83db427c40 [styles] Regenerated files for green color for dog park
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-07-30 10:43:31 +02:00
Yannik Bloscheck
946fea1e07 [styles] Green color for dog park
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-07-30 10:43:31 +02:00
Yannik Bloscheck
bd80e9160d [ios] Respect system language order for map with mutiple regional languages
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-07-30 10:03:21 +02:00
Konstantin Pastbin
5333ad3597 [android] Re-format java code by clang-format
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-07-30 14:59:53 +07:00
Alexander Borsuk
65b5234396 [github] clang-format check on CI
Signed-off-by: Alexander Borsuk <me@alex.bio>
2025-07-30 14:58:54 +07:00
Alexander Borsuk
969c805182 Update clang-format for Java
Signed-off-by: Alexander Borsuk <me@alex.bio>
2025-07-30 14:58:54 +07:00
David Martinez
8b03e99035 [styles] Add fast_food search result icons & bookmark icons
Signed-off-by: David Martinez <47610359+dvdmrtnz@users.noreply.github.com>
2025-07-29 21:49:45 +07:00
David Martinez
3aabde338a [styles] Add bicycle search result icons & bookmark icons
Signed-off-by: David Martinez <47610359+dvdmrtnz@users.noreply.github.com>
2025-07-29 21:41:20 +07:00
David Martinez
d5d86ffd36 [styles] Add charging_station search result icon & bookmark icon
Signed-off-by: David Martinez <47610359+dvdmrtnz@users.noreply.github.com>
2025-07-29 21:38:49 +07:00
David Martinez
d4cef9385b [styles] Update fuel search result icon & bookmark icon
Signed-off-by: David Martinez <47610359+dvdmrtnz@users.noreply.github.com>
2025-07-29 21:35:15 +07:00
Jean-Baptiste
9c495ca616 [android] Migrate preferences screens to Material
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
2025-07-29 13:52:29 +02:00
matheusgomesms
a08f3df3e6 [ios] Fix long strings in search (#1146)
Fixes #1145

Reviewed-on: https://codeberg.org/comaps/comaps/pulls/1146
Reviewed-by: Yannik Bloscheck <yannikbloscheck@noreply.codeberg.org>

Signed-off-by: matheusgomesms <matheusgomesms@noreply.codeberg.org>
Co-authored-by: matheusgomesms <matheusgomesms@noreply.codeberg.org>
Co-committed-by: matheusgomesms <matheusgomesms@noreply.codeberg.org>
2025-07-29 12:46:24 +02:00
x7z4w
bb5da20fec [strings] Cell -> Mobile
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-07-29 11:21:54 +02:00
Codeberg Translate
e112dc2ac4 [strings] Update from Codeberg Translate
Co-authored-by: Alexey Ladygin <nitrodox@noreply.codeberg.org>
Co-authored-by: B o d o <timtrek@noreply.codeberg.org>
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: Dimitar5555 <dimitar5555@noreply.codeberg.org>
Co-authored-by: ERYpTION <eryption@noreply.codeberg.org>
Co-authored-by: Laurent FAVOLE <lfavole@noreply.codeberg.org>
Co-authored-by: Lenny Angst <lenny@familie-angst.ch>
Co-authored-by: Outbreak2096 <outbreak2096@noreply.codeberg.org>
Co-authored-by: Prefill add-on <noreply-addon-prefill@weblate.org>
Co-authored-by: Priit Jõerüüt <jrtcdbrg@noreply.codeberg.org>
Co-authored-by: Supaplextw <supaplextw@noreply.codeberg.org>
Co-authored-by: Weblate <noreply-mt-weblate@weblate.org>
Co-authored-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Co-authored-by: ZeljkoBG <zeljkobg@noreply.codeberg.org>
Co-authored-by: alexgabi <alexgabi@noreply.codeberg.org>
Co-authored-by: ceirios <ceirios@noreply.codeberg.org>
Co-authored-by: hb0nd <hb0nd@noreply.codeberg.org>
Co-authored-by: hosara <hosara@noreply.codeberg.org>
Co-authored-by: marcosm <marcosm@noreply.codeberg.org>
Co-authored-by: matheusgomesms <matheusgomesms@noreply.codeberg.org>
Co-authored-by: patepelo <patepelo@noreply.codeberg.org>
Co-authored-by: pestanzul <pestanzul@posteo.me>
Co-authored-by: phama <phama@noreply.codeberg.org>
Co-authored-by: sunsand <sunsand@noreply.codeberg.org>
Co-authored-by: x7z4w <x7z4w@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/comaps/appstore-description/
Translation: CoMaps/Android - Map Feature Types
Translation: CoMaps/Android UI Strings
Translation: CoMaps/Apple AppStore description
Translation: CoMaps/Countries and regions names
Translation: CoMaps/F-Droid app description
Translation: CoMaps/Google Play and Huawei AppGallery descriptions
Translation: CoMaps/Voice announcements for navigation (TTS)
Translation: CoMaps/iOS - Map Feature Types
Translation: CoMaps/iOS Plurals
Translation: CoMaps/iOS UI Strings
2025-07-29 09:18:33 +00:00
Alexander Borsuk
3e2e6cb487 [android] Fix gradle deprecations
Signed-off-by: Alexander Borsuk <me@alex.bio>
2025-07-28 21:45:00 +02:00
Alexander Borsuk
21020429cb [android] Remove unnecessary sdk library variables that are already defined in the app
Signed-off-by: Alexander Borsuk <me@alex.bio>
2025-07-28 21:45:00 +02:00
Andrei Shkrob
07025ff696 [android] Export all debug symbols
Signed-off-by: Andrei Shkrob <github@shkrob.dev>
2025-07-28 21:45:00 +02:00
Andrei Shkrob
c13da0f0a2 [android] add ndkVersion to app/build.gradle
Signed-off-by: Andrei Shkrob <github@shkrob.dev>
2025-07-28 21:45:00 +02:00
Andrei Shkrob
dd023b65c7 [android][sdk] Move cpp code into sdk lib
Signed-off-by: Andrei Shkrob <github@shkrob.dev>
2025-07-28 21:45:00 +02:00
Codeberg Translate
0c8648d1e3 [strings] Update from Codeberg Translate
Co-authored-by: Alexey Ladygin <nitrodox@noreply.codeberg.org>
Co-authored-by: B o d o <timtrek@noreply.codeberg.org>
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: Dimitar5555 <dimitar5555@noreply.codeberg.org>
Co-authored-by: Prefill add-on <noreply-addon-prefill@weblate.org>
Co-authored-by: Priit Jõerüüt <jrtcdbrg@noreply.codeberg.org>
Co-authored-by: Supaplextw <supaplextw@noreply.codeberg.org>
Co-authored-by: Weblate <noreply-mt-weblate@weblate.org>
Co-authored-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Co-authored-by: ZeljkoBG <zeljkobg@noreply.codeberg.org>
Co-authored-by: alexgabi <alexgabi@noreply.codeberg.org>
Co-authored-by: ceirios <ceirios@noreply.codeberg.org>
Co-authored-by: hb0nd <hb0nd@noreply.codeberg.org>
Co-authored-by: hosara <hosara@noreply.codeberg.org>
Co-authored-by: patepelo <patepelo@noreply.codeberg.org>
Co-authored-by: sunsand <sunsand@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/comaps/appstore-description/
Translation: CoMaps/Android - Map Feature Types
Translation: CoMaps/Android UI Strings
Translation: CoMaps/Apple AppStore description
Translation: CoMaps/Countries and regions names
Translation: CoMaps/F-Droid app description
Translation: CoMaps/Google Play and Huawei AppGallery descriptions
Translation: CoMaps/Voice announcements for navigation (TTS)
Translation: CoMaps/iOS - Map Feature Types
Translation: CoMaps/iOS Plurals
Translation: CoMaps/iOS UI Strings
2025-07-28 18:42:45 +02:00
matheusgomesms
760e050110 Update MWMObjectsCategorySelectorController.mm
Fixes https://github.com/organicmaps/organicmaps/issues/10223
2025-07-28 18:00:47 +02:00
x7z4w
db4b46f8ad [forgejo] Remove "feat:" and "bug:" from issue templates
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-07-28 17:48:18 +02:00
matkoniecz
29ebd8b725 [strings] new search terms for battery recycling
Signed-off-by: Mateusz Konieczny <matkoniecz@tutanota.com>
Co-authored-by: matkoniecz <matkoniecz@noreply.codeberg.org>
Co-committed-by: matkoniecz <matkoniecz@noreply.codeberg.org>
2025-07-28 16:43:10 +02:00
Stzyxh
6b53d1fb91 [Docs] add obtainium badge to readme
Signed-off-by: Stzyxh <stzyxh@tutamail.com>
2025-07-28 11:11:42 +02:00
gekeleda
d1da6c197e [android] Round map download percentage
Reviewed-on: https://codeberg.org/comaps/comaps/pulls/1110
Reviewed-by: x7z4w <x7z4w@noreply.codeberg.org>
Co-authored-by: gekeleda <git@davidgekeler.eu>
Co-committed-by: gekeleda <git@davidgekeler.eu>
2025-07-28 08:41:11 +02:00
Konstantin Pastbin
0dc8d69375 [isolines] Upgrade some popular hiking regions to 20m step
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-07-28 08:41:02 +02:00
Andrei Shkrob
3352279d9d [android][sdk] Create empty SDK library
Signed-off-by: Andrei Shkrob <github@shkrob.dev>
2025-07-27 19:31:30 +02:00
Harry Bond
6da8b69a1b [android] Fix donate button not opening in hamburger menu
oops - fixes #1099

Signed-off-by: Harry Bond <me@hbond.xyz>
2025-07-27 18:07:31 +02:00
x7z4w
fe1c371b5f [android-auto] Fix SearchRecents.add
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-07-27 17:34:38 +02:00
Jean-Baptiste
309eed2365 [android] Use SVG assets for download status icons
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
2025-07-27 17:18:29 +02:00
Jean-Baptiste
979c713436 [android] Fix logo missing in about layout
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
2025-07-27 14:15:50 +02:00
x7z4w
5e8a8de646 [docs] Allow pseudonyms
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-07-27 13:37:18 +02:00
Yannik Bloscheck
b0bdd2c665 [core] Respect system language order
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-07-27 12:22:45 +02:00
Yannik Bloscheck
dd949925f6 [core] Respect system language order
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-07-27 12:22:11 +02:00
Codeberg Translate
b37572000f [strings] Update from Codeberg Translate
Co-authored-by: B o d o <timtrek@noreply.codeberg.org>
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: ERYpTION <eryption@noreply.codeberg.org>
Co-authored-by: Fjuro <fjuro@alius.cz>
Co-authored-by: Mickael81 <mickael81@noreply.codeberg.org>
Co-authored-by: N4ta <codeberg@n4ta.anonaddy.me>
Co-authored-by: Weblate <noreply-mt-weblate@weblate.org>
Co-authored-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Co-authored-by: patepelo <patepelo@noreply.codeberg.org>
Translation: CoMaps/Android - Map Feature Types
Translation: CoMaps/Android UI Strings
Translation: CoMaps/Apple AppStore description
Translation: CoMaps/Countries and regions names
Translation: CoMaps/Google Play and Huawei AppGallery descriptions
Translation: CoMaps/iOS - Map Feature Types
Translation: CoMaps/iOS Plurals
Translation: CoMaps/iOS UI Strings
2025-07-27 12:13:17 +02:00
Jean-Baptiste
332ab819b2 [android] Remove somes Android warnings
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
2025-07-27 12:10:10 +02:00
sunsand
860f58e60e [strings] Fixed and squashed - Translated using Codeberg Translate
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-07-27 09:16:54 +02:00
Jean-Baptiste
0e7d8a65cc [android] Improve layouts in RTL mode with LTR texts
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
2025-07-27 09:12:52 +02:00
jeanbaptisteC
4c6207a8ce Translated using Weblate (French)
Currently translated at 100.0% (631 of 631 strings)

Translation: CoMaps/Android UI Strings
2025-07-27 08:49:10 +02:00
Jean-Baptiste
b96afc6fbb [android] Enable animateLayoutChanges in a layout
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
2025-07-27 07:35:22 +02:00
Jean-Baptiste
8174eac134 [android] Follow Material style guide for translations
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
2025-07-26 15:54:00 +02:00
Konstantin Pastbin
f4dd133872 [styles] Regenerate for generic amenities areas
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-07-26 13:08:08 +02:00
Konstantin Pastbin
feddb98a81 [styles] Add areas to bici, moto parkings, visitor centers and ranger stations
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-07-26 13:08:08 +02:00
Konstantin Pastbin
886938c0dc [styles] Add captions to landuse-retail
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-07-26 13:08:08 +02:00
Konstantin Pastbin
5014b4018d [styles] Add captions to landuse-garages
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-07-26 13:08:08 +02:00
Codeberg Translate
084357a68e [strings] Update from Codeberg Translate
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: Prefill add-on <noreply-addon-prefill@weblate.org>
Co-authored-by: yannikbloscheck <yannikbloscheck@noreply.codeberg.org>
Translation: CoMaps/iOS - Map Feature Types
Translation: CoMaps/iOS UI Strings
2025-07-26 13:06:02 +02:00
Konstantin Pastbin
c6c758d7af [styles] Regenerate
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-07-26 12:39:08 +02:00
Konstantin Pastbin
e80679eeb0 [styles] Fix luggage_locker icons color
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-07-26 12:39:08 +02:00
David Martinez
1fda519032 [styles] Add amenity=luggage_locker
Signed-off-by: David Martinez <47610359+dvdmrtnz@users.noreply.github.com>
2025-07-26 12:39:08 +02:00
Konstantin Pastbin
57f543a0dd [classif] Change escape_game type id to match OM
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-07-26 12:39:08 +02:00
Konstantin Pastbin
2b173cebe6 [search] Added synonyms to amenity-cinema
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-07-26 12:39:08 +02:00
Konstantin Pastbin
10f154858c [editor] Add ranger station
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-07-26 12:39:08 +02:00
Konstantin Pastbin
20e0b0ff95 [styles] Fix ranger station icons color
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-07-26 12:39:08 +02:00
Viktor Govako
4588703f71 [classifier] Added amenity=ranger_station.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-26 12:39:08 +02:00
Viktor Govako
11ee2b121b Added ftype::Trunc.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-26 12:39:08 +02:00
Viktor Govako
4e9efa63ff [classifier] Added post_office=post_partner.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-26 12:39:08 +02:00
Viktor Govako
161123245e [styles] Set the office=diplomatic priority near the post_office.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-26 12:39:08 +02:00
Konstantin Pastbin
8f11eb876e [editor] Add amenity-bicycle_parking-covered
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-07-26 12:39:08 +02:00
David Martinez
47741282cf [styles] Add amenity-bicycle_parking-covered
Signed-off-by: David Martinez <47610359+dvdmrtnz@users.noreply.github.com>
2025-07-26 12:39:08 +02:00
maklein
115dbbea79 Translated using Weblate (German)
Currently translated at 100.0% (106 of 106 strings)

Translation: CoMaps/Voice announcements for navigation (TTS)
2025-07-26 12:10:05 +02:00
Codeberg Translate
088a2bfd22 [strings] Update from Codeberg Translate
Co-authored-by: Cayenne79 <cayenne79@noreply.codeberg.org>
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: Edison_Lu <edison_lu@noreply.codeberg.org>
Co-authored-by: Fjuro <fjuro@alius.cz>
Co-authored-by: Juno Takano <jutty@noreply.codeberg.org>
Co-authored-by: Lenny Angst <lenny@familie-angst.ch>
Co-authored-by: N4ta <codeberg@n4ta.anonaddy.me>
Co-authored-by: Prefill add-on <noreply-addon-prefill@weblate.org>
Co-authored-by: Priit Jõerüüt <jrtcdbrg@noreply.codeberg.org>
Co-authored-by: Supaplextw <supaplextw@noreply.codeberg.org>
Co-authored-by: Weblate <noreply-mt-weblate@weblate.org>
Co-authored-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Co-authored-by: ZeljkoBG <zeljkobg@noreply.codeberg.org>
Co-authored-by: alexgabi <alexgabi@noreply.codeberg.org>
Co-authored-by: hosara <hosara@noreply.codeberg.org>
Co-authored-by: ldmpub <ldmpub@noreply.codeberg.org>
Co-authored-by: maklein <maklein@noreply.codeberg.org>
Co-authored-by: phama <phama@noreply.codeberg.org>
Co-authored-by: rimas <rimas@noreply.codeberg.org>
Co-authored-by: sunsand <sunsand@noreply.codeberg.org>
Co-authored-by: x7z4w <x7z4w@noreply.codeberg.org>
Co-authored-by: yannikbloscheck <yannikbloscheck@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/comaps/ios/
Translation: CoMaps/Android - Map Feature Types
Translation: CoMaps/Android UI Strings
Translation: CoMaps/Apple AppStore description
Translation: CoMaps/Countries and regions names
Translation: CoMaps/Google Play and Huawei AppGallery descriptions
Translation: CoMaps/iOS - Map Feature Types
Translation: CoMaps/iOS Plurals
Translation: CoMaps/iOS UI Strings
2025-07-26 12:10:05 +02:00
Konstantin Pastbin
d8cdfb8080 [android] Fix additional SDK merge issues
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-07-26 09:22:32 +02:00
Andrei Shkrob
b465b95854 [android][sdk] Move everything to .sdk package
Signed-off-by: Andrei Shkrob <andrei@shkrob.dev>
2025-07-26 09:22:32 +02:00
Filip Czaplicki
cee3f24cd9 [styles] Deduplicate rules in Icons.mapcss
node and area rules with the same selector are redundant.
Only one of them is needed.

Discussed at https://codeberg.org/comaps/comaps/pulls/969#issuecomment-5922451

Change done automatically using
rg --passthru -UN --pcre2 '^node\|([^,]+),?\narea\|\1,?' --replace 'node|$1,' data/styles/default/include/Icons.mapcss | sponge data/styles/default/include/Icons.mapcss
rg --passthru -UN --pcre2 '^area\|([^,]+),?\nnode\|\1,?' --replace 'node|$1,' data/styles/default/include/Icons.mapcss | sponge data/styles/default/include/Icons.mapcss

Signed-off-by: Filip Czaplicki <git@starsep.com>
2025-07-26 07:56:02 +02:00
Codeberg Translate
c7133364c1 [strings] Update from Codeberg Translate
Co-authored-by: Cayenne79 <cayenne79@noreply.codeberg.org>
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: Edison_Lu <edison_lu@noreply.codeberg.org>
Co-authored-by: Fjuro <fjuro@alius.cz>
Co-authored-by: Juno Takano <jutty@noreply.codeberg.org>
Co-authored-by: Lenny Angst <lenny@familie-angst.ch>
Co-authored-by: N4ta <codeberg@n4ta.anonaddy.me>
Co-authored-by: Prefill add-on <noreply-addon-prefill@weblate.org>
Co-authored-by: Priit Jõerüüt <jrtcdbrg@noreply.codeberg.org>
Co-authored-by: Supaplextw <supaplextw@noreply.codeberg.org>
Co-authored-by: Weblate <noreply-mt-weblate@weblate.org>
Co-authored-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Co-authored-by: ZeljkoBG <zeljkobg@noreply.codeberg.org>
Co-authored-by: alexgabi <alexgabi@noreply.codeberg.org>
Co-authored-by: hosara <hosara@noreply.codeberg.org>
Co-authored-by: ldmpub <ldmpub@noreply.codeberg.org>
Co-authored-by: phama <phama@noreply.codeberg.org>
Co-authored-by: rimas <rimas@noreply.codeberg.org>
Co-authored-by: sunsand <sunsand@noreply.codeberg.org>
Co-authored-by: x7z4w <x7z4w@noreply.codeberg.org>
Co-authored-by: yannikbloscheck <yannikbloscheck@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/comaps/ios/
Translation: CoMaps/Android - Map Feature Types
Translation: CoMaps/Android UI Strings
Translation: CoMaps/Apple AppStore description
Translation: CoMaps/Countries and regions names
Translation: CoMaps/Google Play and Huawei AppGallery descriptions
Translation: CoMaps/iOS - Map Feature Types
Translation: CoMaps/iOS Plurals
Translation: CoMaps/iOS UI Strings
2025-07-25 19:05:13 +02:00
Kiryl Kaveryn
cc6958282b [map] Save points altitudes when saving route as a track (#10759)
[map] Save points altitudes when saving route as a track

Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-07-25 18:22:07 +02:00
Kiryl Kaveryn
21cc2bbf52 [map] Show track's place page screen on save route automatically
It will help the user to save the track to the right place, set color and name without searching for the track in the bookmarks screen.
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-07-25 18:22:07 +02:00
Yannik Bloscheck
1cf4ff21ec [ios] Added setting for map language
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-07-25 17:41:01 +02:00
Jean-Baptiste
1fe8f1f0e6 [android] Bump dependencies
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
2025-07-25 16:06:56 +02:00
Jean-Baptiste
f8bfdb898b [android] Remove NY feature
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
2025-07-25 13:29:50 +02:00
x7z4w
898c940de0 [android] Bump ndkVersion
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-07-25 12:07:33 +02:00
Yannik Bloscheck
eca0e91ec4 [styles] Regenerated files for increasing the distinction for scrubs and woods
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-07-25 11:35:53 +02:00
Yannik Bloscheck
26567a2220 [styles] Increasing the distinction for scrubs and woods
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-07-25 11:35:53 +02:00
x7z4w
539e5cdfeb Add generator_tool target
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-07-25 06:32:48 +02:00
Viktor Govako
dde65a918b 4 threads for Taiwan_North search indexer.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-25 06:32:48 +02:00
Viktor Govako
c0469ddef2 Avoid py dependencies.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-25 06:32:48 +02:00
Viktor Govako
34af5e26d9 Do not inherit "oneway" and "surface" from Relation.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-25 06:32:48 +02:00
Viktor Govako
d89ef42acc Fixed hgt tile's grid traversal.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-25 06:32:48 +02:00
Alexander Borsuk
fb1279ca5a Quotes support for CSV parser
Signed-off-by: Alexander Borsuk <me@alex.bio>
2025-07-25 06:32:48 +02:00
Viktor Govako
128b0f3e2b Borders 2025-07-25 06:32:48 +02:00
Viktor Govako
3b46dd1dee Check default max speeds consistency.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-25 06:32:48 +02:00
Viktor Govako
767f27e00a Added SrtmTileManager::GetBilinearHeight.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-25 06:32:48 +02:00
Viktor Govako
ac50520ca8 Print SRTM tiles usage.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-25 06:32:48 +02:00
Viktor Govako
4f6455d6f8 Added maxspeed OSM related warnings.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-25 06:32:48 +02:00
Viktor Govako
c2c68c4a76 Fixed getting url bug.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-25 06:32:48 +02:00
Viktor Govako
2f2c3b042f Fixed altitude tiles cache bug.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-25 06:32:48 +02:00
Viktor Govako
a5e7922d37 Fixed races.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-25 06:32:48 +02:00
Viktor Govako
c05b668e38 Added SrtmTileManager::GetTriangleHeight.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-25 06:32:48 +02:00
Viktor Govako
58ea819936 Use pre-downloaded wiki descriptions.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-25 06:32:48 +02:00
Viktor Govako
038746b698 Updated scripts.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-25 06:32:48 +02:00
Viktor Govako
11585e07bb Added "tr" description language.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-25 06:32:48 +02:00
Viktor Govako
a576f529a4 Stop running StageMWM when any country was failed.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-25 06:32:48 +02:00
Viktor Govako
e298da740e Get all URLs.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-25 06:32:48 +02:00
Viktor Govako
68711cae06 Enable StageDescriptions.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-25 06:32:48 +02:00
Viktor Govako
a3bb0bed46 Set boost addr2line option for stacktrace.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-25 06:32:48 +02:00
Viktor Govako
0c7e6300f5 Fixed some 'double comparison' tests.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-25 06:32:48 +02:00
Viktor Govako
2529d5bf5d Crash dump in topography_generator_tool.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-25 06:32:48 +02:00
Alexander Borsuk
0ef61252c6 Use release with debug info for easier crashlog analysis
Note: use tools/unix/build_omim.sh -R
2025-07-25 06:32:48 +02:00
vng
530847285c [tools] Build Release with Debug info with a script
TODO: Support this configuration in python generator build
2025-07-25 06:32:48 +02:00
vng
cdc2b1b5b5 Added LTO and -Ofast.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-25 06:32:48 +02:00
Alexander Borsuk
606a94c818 Fixed reading SRTM from squashfs 2025-07-25 06:32:48 +02:00
vng
6bac0d5f65 Added ASTER tif into SRTM hgt converter.
Signed-off-by: vng <viktor.govako@gmail.com>
2025-07-25 06:32:48 +02:00
Viktor Govako
9a609f638c [android] Do not split languages in a bundle.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-24 18:20:56 +02:00
Alexander Borsuk
cfb97a3db6 [android] Pass English from categories search when language is not supported in the core
Signed-off-by: Alexander Borsuk <me@alex.bio>
2025-07-24 18:20:56 +02:00
Alexander Borsuk
9ad94eb95c [android] Fixed unnecessary overhead when showing search categories
The filtering was related to virtual "promo" categories that are not used anymore

Signed-off-by: Alexander Borsuk <me@alex.bio>
2025-07-24 18:20:56 +02:00
Kiryl Kaveryn
aa71668eab [ios] Fixed category search for unsupported translations.
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-07-24 18:20:56 +02:00
Viktor Govako
d649e46ef2 [android] Fixed category search for unsupported translations.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-24 18:20:56 +02:00
Viktor Govako
12dbfc6622 [categories] Removed dummy list.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-07-24 18:20:56 +02:00
Yannik Bloscheck
8393402c02 [ios] Fix builds of test bundle
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-07-24 11:40:16 +02:00
Codeberg Translate
972bb21264 [strings] Update from Codeberg Translate
Co-authored-by: Cayenne79 <cayenne79@noreply.codeberg.org>
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: Fjuro <fjuro@alius.cz>
Co-authored-by: Lenny Angst <lenny@familie-angst.ch>
Co-authored-by: Prefill add-on <noreply-addon-prefill@weblate.org>
Co-authored-by: Priit Jõerüüt <jrtcdbrg@noreply.codeberg.org>
Co-authored-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Co-authored-by: ZeljkoBG <zeljkobg@noreply.codeberg.org>
Co-authored-by: alexgabi <alexgabi@noreply.codeberg.org>
Co-authored-by: hosara <hosara@noreply.codeberg.org>
Co-authored-by: sunsand <sunsand@noreply.codeberg.org>
Co-authored-by: x7z4w <x7z4w@noreply.codeberg.org>
Co-authored-by: yannikbloscheck <yannikbloscheck@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/comaps/ios/
Translation: CoMaps/Android - Map Feature Types
Translation: CoMaps/Android UI Strings
Translation: CoMaps/Apple AppStore description
Translation: CoMaps/iOS - Map Feature Types
Translation: CoMaps/iOS Plurals
Translation: CoMaps/iOS UI Strings
2025-07-24 08:41:22 +02:00
Yannik Bloscheck
bab869db2b [ios] Correction condition for showing viral alert
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-07-24 06:23:25 +02:00
Jean-Baptiste
56f9990a7b [android] Update categories assets
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
2025-07-23 23:22:47 +02:00
Filip Czaplicki
bef136a094 [styles] Regenerate with leisure=escape_game
Signed-off-by: Filip Czaplicki <git@starsep.com>
2025-07-23 16:52:54 +02:00
Filip Czaplicki
c4c08fc410 [classif] Add leisure=escape_game
Signed-off-by: Filip Czaplicki <git@starsep.com>
2025-07-23 16:52:54 +02:00
Konstantin Pastbin
1433b0e866 [android] Fix Panoramax links not working
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-07-23 15:57:46 +02:00
1745 changed files with 25156 additions and 870681 deletions

View File

@@ -1,48 +1,59 @@
# Configuration file for clang-format, based on docs/CPP_STYLE.md. # Configuration file for clang-format, based on docs/CPP_STYLE.md.
---
BasedOnStyle: Google BasedOnStyle: Google
AccessModifierOffset: -2 AccessModifierOffset: -2
AlignAfterOpenBracket: Align
AlignArrayOfStructures: Right
AlignConsecutiveMacros: AcrossEmptyLinesAndComments
AlignEscapedNewlines: LeftWithLastLine
AlignOperands: AlignAfterOperator AlignOperands: AlignAfterOperator
AllowShortBlocksOnASingleLine: Empty AllowShortBlocksOnASingleLine: Empty
AllowShortCaseLabelsOnASingleLine: true
AllowShortFunctionsOnASingleLine: Inline
AllowShortIfStatementsOnASingleLine: Never AllowShortIfStatementsOnASingleLine: Never
AllowShortLoopsOnASingleLine: false AllowShortLoopsOnASingleLine: false
AllowShortCaseLabelsOnASingleLine: true
BraceWrapping: BraceWrapping:
AfterCaseLabel: true AfterCaseLabel: true
AfterClass: true AfterClass: true
AfterControlStatement: Always AfterControlStatement: Always
AfterEnum: true AfterEnum: true
AfterExternBlock: true
AfterFunction: true AfterFunction: true
AfterNamespace: true AfterNamespace: true
AfterObjCDeclaration: true AfterObjCDeclaration: true
AfterStruct: true AfterStruct: true
AfterUnion: true AfterUnion: true
AfterExternBlock: true
BeforeCatch: true BeforeCatch: true
BeforeElse: true BeforeElse: true
BeforeLambdaBody: true BeforeLambdaBody: true
BeforeWhile: true BeforeWhile: true
IndentBraces: false
SplitEmptyFunction: false SplitEmptyFunction: false
SplitEmptyRecord: false
SplitEmptyNamespace: false SplitEmptyNamespace: false
SplitEmptyRecord: false
BinPackArguments: true
BinPackParameters: true
BreakAfterJavaFieldAnnotations: true
BreakBeforeBraces: Custom BreakBeforeBraces: Custom
BreakConstructorInitializers: BeforeComma BreakConstructorInitializers: BeforeComma
BreakInheritanceList: BeforeComma BreakInheritanceList: BeforeComma
ColumnLimit: 120 ColumnLimit: 120
ConstructorInitializerIndentWidth: 2 ConstructorInitializerIndentWidth: 2
ContinuationIndentWidth: 2 ContinuationIndentWidth: 4
DerivePointerAlignment: false DerivePointerAlignment: false
IncludeBlocks: Preserve IncludeBlocks: Preserve
IndentCaseLabels: false IndentAccessModifiers: false
IndentExternBlock: NoIndent IndentExternBlock: NoIndent
InsertBraces: false
InsertNewlineAtEOF: true InsertNewlineAtEOF: true
PackConstructorInitializers: Never LambdaBodyIndentation: OuterScope
PackConstructorInitializers: CurrentLine
PointerAlignment: Middle PointerAlignment: Middle
RemoveBracesLLVM: true
QualifierAlignment: Right QualifierAlignment: Right
SpacesInContainerLiterals: false SpacesInContainerLiterals: false
Standard: Latest Standard: Latest
TabWidth: 2 TabWidth: 2
UseTab: Never
---
Language: Java
AllowShortFunctionsOnASingleLine: Empty

View File

@@ -1,6 +1,5 @@
name: 🐞 Bug Report name: 🐞 Bug Report
description: Report a problem you've encountered description: Report a problem you've encountered
title: "bug: "
labels: labels:
- bug - bug
body: body:

View File

@@ -1,6 +1,5 @@
name: "💡 Feature Request" name: "💡 Feature Request"
description: "Suggest an idea or improvement for CoMaps" description: "Suggest an idea or improvement for CoMaps"
title: "feat: "
labels: labels:
- "enhancement" - "enhancement"
body: body:

View File

@@ -32,9 +32,6 @@ on:
- track_generator/** - track_generator/**
- xcode/** - xcode/**
env:
JAVA_HOME: /usr/lib/jvm/temurin-17-jdk-amd64 # Java 17 is required for Android Gradle 8 plugin
jobs: jobs:
android-google-beta: android-google-beta:
name: Android Google Beta name: Android Google Beta
@@ -71,10 +68,6 @@ jobs:
SECURE_PROPERTIES: ${{ secrets.SECURE_PROPERTIES }} SECURE_PROPERTIES: ${{ secrets.SECURE_PROPERTIES }}
RELEASE_KEYSTORE: ${{ secrets.RELEASE_KEYSTORE }} RELEASE_KEYSTORE: ${{ secrets.RELEASE_KEYSTORE }}
- name: Configure repository
shell: bash
run: ./configure.sh
- name: Compile - name: Compile
shell: bash shell: bash
working-directory: android working-directory: android

View File

@@ -34,9 +34,6 @@ on:
- track_generator/** - track_generator/**
- xcode/** - xcode/**
env:
JAVA_HOME: /usr/lib/jvm/temurin-17-jdk-amd64 # Java 17 is required for Android Gradle 8 plugin
jobs: jobs:
lint: lint:
name: Android Lint name: Android Lint
@@ -51,10 +48,6 @@ jobs:
shell: bash shell: bash
run: git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20)) run: git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20))
- name: Configure repository
shell: bash
run: ./configure.sh
- name: Lint - name: Lint
shell: bash shell: bash
working-directory: android working-directory: android
@@ -93,10 +86,6 @@ jobs:
shell: bash shell: bash
run: git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20)) run: git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20))
- name: Configure repository
shell: bash
run: ./configure.sh
- name: Configure ccache - name: Configure ccache
uses: hendrikmuhs/ccache-action@v1.2 uses: hendrikmuhs/ccache-action@v1.2
with: with:

View File

@@ -4,9 +4,6 @@ on:
schedule: schedule:
- cron: '0 5 * * 0' # Once per week at 05:00 UTC - cron: '0 5 * * 0' # Once per week at 05:00 UTC
env:
JAVA_HOME: /usr/lib/jvm/temurin-17-jdk-amd64 # Java 17 is required for Android Gradle 8 plugin
jobs: jobs:
precondition: precondition:
runs-on: ubuntu-latest runs-on: ubuntu-latest
@@ -73,10 +70,6 @@ jobs:
SECURE_PROPERTIES: ${{ secrets.SECURE_PROPERTIES }} SECURE_PROPERTIES: ${{ secrets.SECURE_PROPERTIES }}
RELEASE_KEYSTORE: ${{ secrets.RELEASE_KEYSTORE }} RELEASE_KEYSTORE: ${{ secrets.RELEASE_KEYSTORE }}
- name: Configure repository
shell: bash
run: ./configure.sh
- name: Compile - name: Compile
shell: bash shell: bash
working-directory: android working-directory: android

View File

@@ -2,9 +2,6 @@ name: Android Release Metadata
on: on:
workflow_dispatch: # Manual trigger workflow_dispatch: # Manual trigger
env:
JAVA_HOME: /usr/lib/jvm/temurin-17-jdk-amd64 # Java 17 is required for Android Gradle 8 plugin
jobs: jobs:
android-release-metadata: android-release-metadata:
name: Upload Google Play metadata name: Upload Google Play metadata

View File

@@ -5,7 +5,6 @@ on:
env: env:
RELEASE_NOTES: android/app/src/google/play/release-notes/en-US/default.txt RELEASE_NOTES: android/app/src/google/play/release-notes/en-US/default.txt
FDROID_VERSION: android/app/src/fdroid/play/version.yaml FDROID_VERSION: android/app/src/fdroid/play/version.yaml
JAVA_HOME: /usr/lib/jvm/temurin-17-jdk-amd64 # Java 17 is required for Android Gradle 8 plugin
jobs: jobs:
tag: tag:
@@ -117,10 +116,6 @@ jobs:
SECURE_PROPERTIES: ${{ secrets.SECURE_PROPERTIES }} SECURE_PROPERTIES: ${{ secrets.SECURE_PROPERTIES }}
RELEASE_KEYSTORE: ${{ secrets.RELEASE_KEYSTORE }} RELEASE_KEYSTORE: ${{ secrets.RELEASE_KEYSTORE }}
- name: Configure repository
shell: bash
run: ./configure.sh
- name: Set up SDK - name: Set up SDK
shell: bash shell: bash
run: echo "sdk.dir=$ANDROID_SDK_ROOT" > android/local.properties run: echo "sdk.dir=$ANDROID_SDK_ROOT" > android/local.properties

View File

@@ -3,20 +3,20 @@ on:
workflow_dispatch: # Manual trigger workflow_dispatch: # Manual trigger
pull_request: pull_request:
paths: paths:
- packaging/app.organicmaps.desktop.metainfo.xml - packaging/app.comaps.comaps.metainfo.xml
- .forgejo/workflows/appstream-check.yaml # Run check on self change - .forgejo/workflows/appstream-check.yaml # Run check on self change
jobs: jobs:
validate-appstream: validate-appstream:
name: Validate appstream metadata xml name: Validate appstream metadata xml
runs-on: ubuntu-24.04 runs-on: ubuntu-latest
steps: steps:
- name: Checkout sources - name: Checkout sources
uses: actions/checkout@v4 uses: actions/checkout@v4
with: with:
fetch-depth: 1 fetch-depth: 1
sparse-checkout: | sparse-checkout: |
packaging/app.organicmaps.desktop.metainfo.xml packaging/app.comaps.comaps.metainfo.xml
- name: Install appstream validator and flatpak Builder - name: Install appstream validator and flatpak Builder
shell: bash shell: bash
@@ -29,8 +29,8 @@ jobs:
- name: Lint appstream data with flatpak Builder - name: Lint appstream data with flatpak Builder
shell: bash shell: bash
run: flatpak run --command=flatpak-builder-lint org.flatpak.Builder appstream packaging/app.organicmaps.desktop.metainfo.xml run: flatpak run --command=flatpak-builder-lint org.flatpak.Builder appstream packaging/app.comaps.comaps.metainfo.xml
- name: Run appstreamcli in pedantic mode - name: Run appstreamcli in pedantic mode
shell: bash shell: bash
run: flatpak run --command=appstreamcli org.flatpak.Builder validate --pedantic packaging/app.organicmaps.desktop.metainfo.xml run: flatpak run --command=appstreamcli org.flatpak.Builder validate --pedantic packaging/app.comaps.comaps.metainfo.xml

View File

@@ -33,7 +33,7 @@ concurrency:
jobs: jobs:
should-run-check: should-run-check:
name: Should run coverage name: Should run coverage
runs-on: ubuntu-24.04 runs-on: ubuntu-latest
outputs: outputs:
run-from-pr: ${{ steps.run-from-pr.outputs.run-from-pr }} run-from-pr: ${{ steps.run-from-pr.outputs.run-from-pr }}
manually-triggered: ${{ steps.manually-triggered.outputs.manually-triggered }} manually-triggered: ${{ steps.manually-triggered.outputs.manually-triggered }}
@@ -59,14 +59,9 @@ jobs:
coverage: coverage:
needs: should-run-check needs: should-run-check
name: Generate coverage report name: Generate coverage report
runs-on: ubuntu-24.04 runs-on: ubuntu-latest
if: ${{ needs.should-run-check.outputs.run-from-pr == 'true' || needs.should-run-check.outputs.manually-triggered == 'true'}} if: ${{ needs.should-run-check.outputs.run-from-pr == 'true' || needs.should-run-check.outputs.manually-triggered == 'true'}}
steps: steps:
- name: Free disk space by removing .NET, Android and Haskell
shell: bash
run: |
sudo rm -rf /usr/share/dotnet /usr/local/lib/android /opt/ghc
- name: Checkout sources - name: Checkout sources
uses: actions/checkout@v4 uses: actions/checkout@v4
with: with:
@@ -94,10 +89,6 @@ jobs:
llvm \ llvm \
gcovr gcovr
- name: Configure repository
shell: bash
run: ./configure.sh
- name: Configure ccache - name: Configure ccache
uses: hendrikmuhs/ccache-action@v1.2 uses: hendrikmuhs/ccache-action@v1.2
with: with:

View File

@@ -3,20 +3,20 @@ on:
workflow_dispatch: # Manual trigger workflow_dispatch: # Manual trigger
pull_request: pull_request:
paths: paths:
- qt/res/app.organicmaps.desktop.desktop - qt/res/app.comaps.comaps.desktop
- .forgejo/workflows/desktop-file-check.yaml # Run check on self change - .forgejo/workflows/desktop-file-check.yaml # Run check on self change
jobs: jobs:
validate-desktop-file: validate-desktop-file:
name: Validate .desktop file name: Validate .desktop file
runs-on: ubuntu-24.04 runs-on: ubuntu-latest
steps: steps:
- name: Checkout sources - name: Checkout sources
uses: actions/checkout@v4 uses: actions/checkout@v4
with: with:
fetch-depth: 1 fetch-depth: 1
sparse-checkout: | sparse-checkout: |
qt/res/app.organicmaps.desktop.desktop qt/res/app.comaps.comaps.desktop
- name: Install desktop-file-validate tool - name: Install desktop-file-validate tool
shell: bash shell: bash
@@ -27,4 +27,4 @@ jobs:
- name: Validate desktop file - name: Validate desktop file
shell: bash shell: bash
run: desktop-file-validate qt/res/app.organicmaps.desktop.desktop && echo "Successfully validated .desktop file" run: desktop-file-validate qt/res/app.comaps.comaps.desktop && echo "Successfully validated .desktop file"

View File

@@ -31,18 +31,13 @@ on:
jobs: jobs:
linux-no-unity: linux-no-unity:
name: Linux no unity build name: Linux no unity build
runs-on: ubuntu-24.04 runs-on: ubuntu-latest
# Cancels previous jobs if the same branch or PR was updated again. # Cancels previous jobs if the same branch or PR was updated again.
concurrency: concurrency:
group: ${{ github.workflow }}-no-unity-${{ github.event.pull_request.number || github.ref }} group: ${{ github.workflow }}-no-unity-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true cancel-in-progress: true
steps: steps:
- name: Free disk space by removing .NET, Android and Haskell
shell: bash
run: |
sudo rm -rf /usr/share/dotnet /usr/local/lib/android /opt/ghc
- name: Checkout sources - name: Checkout sources
uses: actions/checkout@v4 uses: actions/checkout@v4
with: with:
@@ -71,10 +66,6 @@ jobs:
libqt6positioning6-plugins \ libqt6positioning6-plugins \
libqt6positioning6 libqt6positioning6
- name: Configure repository
shell: bash
run: ./configure.sh
- name: Configure ccache - name: Configure ccache
uses: hendrikmuhs/ccache-action@v1.2 uses: hendrikmuhs/ccache-action@v1.2
with: with:
@@ -99,7 +90,7 @@ jobs:
linux-matrix: linux-matrix:
name: Linux builds and tests name: Linux builds and tests
runs-on: ubuntu-24.04 runs-on: ubuntu-latest
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@@ -111,11 +102,6 @@ jobs:
cancel-in-progress: true cancel-in-progress: true
steps: steps:
- name: Free disk space by removing .NET, Android and Haskell
shell: bash
run: |
sudo rm -rf /usr/share/dotnet /usr/local/lib/android /opt/ghc
- name: Checkout sources - name: Checkout sources
uses: actions/checkout@v4 uses: actions/checkout@v4
@@ -142,10 +128,6 @@ jobs:
libqt6positioning6-plugins \ libqt6positioning6-plugins \
libqt6positioning6 libqt6positioning6
- name: Configure repository
shell: bash
run: ./configure.sh
- name: Configure ccache - name: Configure ccache
uses: hendrikmuhs/ccache-action@v1.2 uses: hendrikmuhs/ccache-action@v1.2
with: with:

View File

@@ -57,10 +57,6 @@ jobs:
run: | run: |
HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1 brew install ninja qt@6 HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1 brew install ninja qt@6
- name: Configure repository
shell: bash
run: ./configure.sh
- name: Configure ccache - name: Configure ccache
uses: hendrikmuhs/ccache-action@v1.2 uses: hendrikmuhs/ccache-action@v1.2
with: with:

View File

@@ -7,6 +7,7 @@ on:
env: env:
JAVA_HOME: /usr/lib/jvm/temurin-17-jdk-amd64 # Java 17 is required for Android Gradle 8 plugin JAVA_HOME: /usr/lib/jvm/temurin-17-jdk-amd64 # Java 17 is required for Android Gradle 8 plugin
SKIP_MAP_DOWNLOAD: true
jobs: jobs:
lint: lint:
@@ -22,10 +23,6 @@ jobs:
shell: bash shell: bash
run: git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20)) run: git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20))
- name: Init boost, generate textures
shell: bash
run: ./configure.sh --skip-map-download
- name: Lint - name: Lint
shell: bash shell: bash
working-directory: android working-directory: android
@@ -76,10 +73,6 @@ jobs:
shell: bash shell: bash
run: git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20)) run: git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20))
- name: Init boost, generate textures
shell: bash
run: ./configure.sh --skip-map-download
- name: Configure ccache - name: Configure ccache
uses: hendrikmuhs/ccache-action@v1.2 uses: hendrikmuhs/ccache-action@v1.2
with: with:

43
.github/workflows/clang-format.yaml vendored Normal file
View File

@@ -0,0 +1,43 @@
name: clang-format
on:
push:
branches: [ master ]
paths:
- 'android/app/src/**.java'
- '.clang-format'
- '.github/workflows/clang-format.yml'
pull_request:
branches: [ master ]
paths:
- 'android/app/src/**.java'
- '.clang-format'
- '.github/workflows/clang-format.yml'
jobs:
check-formatting:
runs-on: ubuntu-latest
continue-on-error: true # TODO(AB): Remove this line when ready to enforce formatting.
steps:
- uses: actions/checkout@v4
- name: Install clang-format
run: |
sudo apt-get update
sudo apt-get install -y clang-format-19
clang-format-19 --version
- name: Check Java formatting
run: |
JAVA_FILES=($(find android/app/src -name '*.java'))
FORMATTING_ISSUES=$(clang-format-19 --dry-run --Werror $JAVA_FILES 2>&1 || true)
if [ -n "$FORMATTING_ISSUES" ]; then
echo "$FORMATTING_ISSUES"
echo ""
echo "To fix formatting, please run:"
echo " clang-format -i <file>"
exit 1
fi

View File

@@ -37,7 +37,7 @@ jobs:
shell: bash shell: bash
run: git submodule update --depth 1 --init --recursive --jobs=$(($(sysctl -n hw.logicalcpu) * 20)) run: git submodule update --depth 1 --init --recursive --jobs=$(($(sysctl -n hw.logicalcpu) * 20))
- name: Init boost, download World map, generate textures - name: Configure repository
shell: bash shell: bash
run: ./configure.sh run: ./configure.sh

19
.gitignore vendored
View File

@@ -14,18 +14,24 @@ stxxl.errlog
stxxl.log stxxl.log
screenlog.0 screenlog.0
data/styles/*/*/out/* data/symbols/*/design/
data/resources-*_design/*
# symbols png/sdf are now generated at build # symbols png/sdf are now generated at build
data/resources-*_*/symbols.png data/symbols/**/symbols.png
data/resources-*_*/symbols.sdf data/symbols/**/symbols.sdf
data/drules_proto_default_design.bin
data/colors_design.txt data/colors_design.txt
data/patterns_design.txt data/patterns_design.txt
data/bookmarks data/bookmarks
data/edits.xml data/edits.xml
data/World.mwm data/World.mwm
data/WorldCoasts.mwm data/WorldCoasts.mwm
data/world_mwm/*
data/*_hash
data/drules_proto*
data/classificator.txt
data/types.txt
data/visibility.txt
data/colors.txt
data/patterns.txt
# Compiled Python # Compiled Python
*.pyc *.pyc
@@ -46,8 +52,7 @@ omim.sdf
*.rc *.rc
!qt/res/windows.rc !qt/res/windows.rc
*.pdb *.pdb
out/* out/
qt/mapswithme.log
# XCode # XCode
xcode/keys/* xcode/keys/*

View File

@@ -1,4 +1,5 @@
cmake_minimum_required(VERSION 3.22.1) cmake_minimum_required(VERSION 3.22.1)
project(omim C CXX) project(omim C CXX)
set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_STANDARD 20)
@@ -48,6 +49,8 @@ if (APPLE AND NOT ("${CMAKE_SYSTEM_NAME}" STREQUAL Android))
set(CMAKE_OBJCXX_VISIBILITY_PRESET hidden) set(CMAKE_OBJCXX_VISIBILITY_PRESET hidden)
endif() endif()
execute_process(COMMAND "./configure.sh" WORKING_DIRECTORY ${OMIM_ROOT})
message(STATUS "Using compiler ${CMAKE_CXX_COMPILER_ID} ${CMAKE_CXX_COMPILER_VERSION}") message(STATUS "Using compiler ${CMAKE_CXX_COMPILER_ID} ${CMAKE_CXX_COMPILER_VERSION}")
if (CMAKE_UNITY_BUILD) if (CMAKE_UNITY_BUILD)
@@ -103,12 +106,29 @@ if (${CMAKE_BUILD_TYPE} STREQUAL "Debug")
elseif (${CMAKE_BUILD_TYPE} MATCHES "Rel") elseif (${CMAKE_BUILD_TYPE} MATCHES "Rel")
add_definitions(-DRELEASE) add_definitions(-DRELEASE)
if (NOT MSVC) if (NOT MSVC)
add_compile_options(-Ofast) # Also enables -ffast-math add_compile_options(-O3 $<$<CXX_COMPILER_ID:GNU>:-flto=auto>)
endif() endif()
else() else()
message(FATAL_ERROR "Unknown build type: " ${CMAKE_BUILD_TYPE}) message(FATAL_ERROR "Unknown build type: " ${CMAKE_BUILD_TYPE})
endif() endif()
if (${CMAKE_BUILD_TYPE} STREQUAL "RelWithDebInfo")
add_compile_options(-fno-omit-frame-pointer)
endif()
# Linux GCC LTO plugin fix.
if (PLATFORM_LINUX AND (CMAKE_CXX_COMPILER_ID STREQUAL "GNU") AND (CMAKE_BUILD_TYPE MATCHES "^Rel"))
# To force errors if LTO was not enabled.
add_compile_options(-fno-fat-lto-objects)
# To fix ar and ranlib "plugin needed to handle lto object".
string(REGEX MATCH "[0-9]+" GCC_MAJOR_VERSION ${CMAKE_CXX_COMPILER_VERSION})
file(GLOB_RECURSE plugin /usr/lib/gcc/*/${GCC_MAJOR_VERSION}/liblto_plugin.so)
set(CMAKE_C_ARCHIVE_CREATE "<CMAKE_AR> --plugin ${plugin} qcs <TARGET> <OBJECTS>")
set(CMAKE_C_ARCHIVE_FINISH "<CMAKE_RANLIB> --plugin ${plugin} <TARGET>")
set(CMAKE_CXX_ARCHIVE_CREATE "<CMAKE_AR> --plugin ${plugin} qcs <TARGET> <OBJECTS>")
set(CMAKE_CXX_ARCHIVE_FINISH "<CMAKE_RANLIB> --plugin ${plugin} <TARGET>")
endif()
message(STATUS "Build type: " ${CMAKE_BUILD_TYPE}) message(STATUS "Build type: " ${CMAKE_BUILD_TYPE})
if (PLATFORM_LINUX OR PLATFORM_ANDROID) if (PLATFORM_LINUX OR PLATFORM_ANDROID)
@@ -242,11 +262,15 @@ if (PLATFORM_DESKTOP)
add_subdirectory(qt) add_subdirectory(qt)
omim_add_tool_subdirectory(skin_generator) omim_add_tool_subdirectory(skin_generator)
endif() endif()
if (GENERATOR_TOOL)
add_compile_options(-march=native -mtune=native)
message(STATUS "target CPU optimizations enabled, produced binaries will NOT work on a different CPU")
endif()
add_subdirectory(dev_sandbox) add_subdirectory(dev_sandbox)
endif() endif()
omim_add_test_subdirectory(qt_tstfrm) omim_add_test_subdirectory(qt_tstfrm)
if (PLATFORM_ANDROID) if (PLATFORM_ANDROID)
add_subdirectory(android/app/src/main/cpp) add_subdirectory(android/sdk/src/main/cpp)
endif() endif()

View File

@@ -53,6 +53,9 @@ A community-led free & open source maps app based on [OpenStreetMap](https://www
<a href="https://f-droid.org/en/packages/app.comaps.fdroid/"> <a href="https://f-droid.org/en/packages/app.comaps.fdroid/">
<img src="docs/badges/fdroid.png" alt="F-Droid" width="160"/> <img src="docs/badges/fdroid.png" alt="F-Droid" width="160"/>
</a> </a>
<a href="https://apps.obtainium.imranr.dev/redirect?r=obtainium://add/https://codeberg.org/comaps/comaps">
<img src="docs/badges/obtainium.png" alt="Obtainium" width="160"/>
</a>
<a href="https://codeberg.org/comaps/comaps/releases"> <a href="https://codeberg.org/comaps/comaps/releases">
<img src="docs/badges/codeberg.png" alt="Codeberg" width="160"/> <img src="docs/badges/codeberg.png" alt="Codeberg" width="160"/>
</a> </a>
@@ -122,10 +125,8 @@ You can help by donating, contributing code, translating, or by telling others a
- Build instructions: [docs/INSTALL.md](docs/INSTALL.md) - Build instructions: [docs/INSTALL.md](docs/INSTALL.md)
- Contribution guide: [docs/CONTRIBUTING.md](docs/CONTRIBUTING.md) - Contribution guide: [docs/CONTRIBUTING.md](docs/CONTRIBUTING.md)
> [!NOTE]
> Some docs might be outdated, contain broken links or old references to Organic Maps, etc. Its a work in progress and help is much appreciated!
There is a dedicated Zulip chat for active contributors: [Zulip](https://comaps.zulipchat.com) There is a dedicated [Zulip](https://codeberg.org/comaps/Governance/src/branch/main/contribute.md#3-team-messaging) chat for active contributors.
--- ---

View File

@@ -18,5 +18,4 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
libxi-dev \ libxi-dev \
optipng optipng
WORKDIR /root/comaps WORKDIR /root/comaps
RUN ./configure.sh
CMD ./gradlew -Parm64 assembleFdroidDebug CMD ./gradlew -Parm64 assembleFdroidDebug

View File

@@ -15,43 +15,17 @@ buildscript {
} }
} }
repositories {
google()
mavenCentral()
maven { url 'https://www.jitpack.io' } // MPAndroidChart
}
apply plugin: 'com.android.application' apply plugin: 'com.android.application'
apply plugin: 'com.github.triplet.play' apply plugin: 'com.github.triplet.play'
apply plugin: 'ru.cian.huawei-publish-gradle-plugin' apply plugin: 'ru.cian.huawei-publish-gradle-plugin'
def run(cmd) {
def stdout = new ByteArrayOutputStream()
exec {
commandLine = cmd
standardOutput = stdout
}
return stdout.toString()
}
import com.github.triplet.gradle.androidpublisher.ReleaseStatus import com.github.triplet.gradle.androidpublisher.ReleaseStatus
import org.gradle.nativeplatform.platform.internal.DefaultNativePlatform
def getVersion() {
def isWindows = DefaultNativePlatform.getCurrentOperatingSystem().isWindows()
def bash = isWindows ? 'C:\\Program Files\\Git\\bin\\bash.exe' : 'bash'
def versionCode = Integer.parseInt(run([bash, '../../tools/unix/version.sh', 'android_code']).trim())
def versionName = run([bash, '../../tools/unix/version.sh', 'android_name']).trim()
return new Tuple2(versionCode, versionName)
}
def getCommitMessage() { def getCommitMessage() {
return run(['git', '--no-pager', 'show', '-s', '--format=%s%n%n%b', 'HEAD']).trim() return run(['git', '--no-pager', 'show', '-s', '--format=%s%n%n%b', 'HEAD']).trim()
} }
def osName = System.properties['os.name'].toLowerCase()
project.ext.appId = 'app.comaps' project.ext.appId = 'app.comaps'
project.ext.appName = 'CoMaps' project.ext.appName = 'CoMaps'
@@ -63,7 +37,10 @@ project.ext.appName = 'CoMaps'
//} //}
android { android {
namespace 'app.organicmaps' namespace = 'app.organicmaps'
// TODO: it should not be here, but in sdk/build.gradle. But for some reason it should be specified here as well.
ndkVersion = '28.2.13676358'
dependenciesInfo { dependenciesInfo {
// Disables dependency metadata when building APKs (for IzzyOnDroid/F-Droid) // Disables dependency metadata when building APKs (for IzzyOnDroid/F-Droid)
@@ -76,80 +53,32 @@ android {
dataBinding = true dataBinding = true
buildConfig = true buildConfig = true
} }
// All properties are read from gradle.properties file
compileSdk propCompileSdkVersion.toInteger()
ndkVersion '27.2.12479018' // Users are complaining that the app should be re-downloaded from the Play Store after changing the language.
bundle {
language {
enableSplit = false
}
}
// All properties are read from gradle.properties file
compileSdk = propCompileSdkVersion.toInteger()
defaultConfig { defaultConfig {
// Default package name is taken from the manifest and should be app.comaps versionCode = rootProject.ext.versionCode
def ver = getVersion() versionName = rootProject.ext.versionName
versionCode = ver.V1
versionName = ver.V2
println('Version: ' + versionName) println('Version: ' + versionName)
println('VersionCode: ' + versionCode) println('VersionCode: ' + versionCode)
minSdk propMinSdkVersion.toInteger() minSdk = propMinSdkVersion.toInteger()
targetSdk propTargetSdkVersion.toInteger() targetSdk = propTargetSdkVersion.toInteger()
applicationId project.ext.appId applicationId project.ext.appId
buildConfigField 'String', 'SUPPORT_MAIL', '"android@comaps.app"' buildConfigField 'String', 'SUPPORT_MAIL', '"android@comaps.app"'
// Should be customized in flavors. // Should be customized in flavors.
buildConfigField 'String', 'REVIEW_URL', '""' buildConfigField 'String', 'REVIEW_URL', '""'
externalNativeBuild { base.archivesName = appName.replaceAll('\\s','') + '-' + defaultConfig.versionCode
def pchFlag = 'OFF'
if (project.hasProperty('pch')) pchFlag = 'ON'
def njobs = '' ndk.debugSymbolLevel = 'full'
if (project.hasProperty('njobs')) njobs = project.getProperty('njobs')
def enableVulkanDiagnostics = 'OFF'
if (project.hasProperty('enableVulkanDiagnostics')) {
enableVulkanDiagnostics = project.getProperty('enableVulkanDiagnostics')
}
def enableTrace = 'OFF'
if (project.hasProperty('enableTrace')) {
enableTrace = project.getProperty('enableTrace')
}
cmake {
cppFlags '-fexceptions', '-frtti'
// There is no sense to enable sections without gcc's --gc-sections flag.
cFlags '-fno-function-sections', '-fno-data-sections',
'-Wno-extern-c-compat'
arguments '-DANDROID_TOOLCHAIN=clang', '-DANDROID_STL=c++_static',
"-DOS=$osName", '-DSKIP_TESTS=ON', '-DSKIP_TOOLS=ON', "-DUSE_PCH=$pchFlag",
"-DNJOBS=$njobs", "-DENABLE_VULKAN_DIAGNOSTICS=$enableVulkanDiagnostics",
"-DENABLE_TRACE=$enableTrace"
targets 'organicmaps'
}
}
// Use, for example, -Parm32 gradle parameter to build only for armeabi-v7a.
ndk {
abiFilters = new HashSet<>()
if (project.hasProperty('arm32') || project.hasProperty('armeabi-v7a')) {
abiFilters.add('armeabi-v7a')
}
if (project.hasProperty('arm64') || project.hasProperty('arm64-v8a')) {
abiFilters.add('arm64-v8a')
}
if (project.hasProperty('x86')) {
abiFilters.add('x86')
}
if (project.hasProperty('x86_64') || project.hasProperty('x64')) {
abiFilters.add('x86_64')
}
if (abiFilters.isEmpty()) {
abiFilters.add('armeabi-v7a')
abiFilters.add('arm64-v8a')
// For the emulator, chromebooks and some Intel Atom devices.
abiFilters.add('x86_64')
}
println('Building for ' + abiFilters + ' archs.')
}
setProperty('archivesBaseName', appName.replaceAll('\\s','') + '-' + defaultConfig.versionCode)
} }
flavorDimensions += 'default' flavorDimensions += 'default'
@@ -199,10 +128,10 @@ android {
splits.abi { splits.abi {
boolean enabled = project.hasProperty('splitApk') boolean enabled = project.hasProperty('splitApk')
println ('Create separate apks: ' + enabled) println ('Create separate apks: ' + enabled)
enable enabled enable = enabled
reset() reset()
include 'x86', 'armeabi-v7a', 'arm64-v8a', 'x86_64' include 'x86', 'armeabi-v7a', 'arm64-v8a', 'x86_64'
universalApk true universalApk = true
} }
lint { lint {
@@ -215,7 +144,7 @@ android {
disable 'CustomSplashScreen' disable 'CustomSplashScreen'
// https://github.com/organicmaps/organicmaps/issues/3610 // https://github.com/organicmaps/organicmaps/issues/3610
disable 'InsecureBaseConfiguration' disable 'InsecureBaseConfiguration'
abortOnError true abortOnError = true
} }
gradle.projectsEvaluated { gradle.projectsEvaluated {
@@ -274,33 +203,29 @@ android {
debug { debug {
applicationIdSuffix '.debug' // Allows to install debug and release builds together applicationIdSuffix '.debug' // Allows to install debug and release builds together
versionNameSuffix '-debug' versionNameSuffix '-debug'
jniDebuggable true // Enable jni debug build
zipAlignEnabled true zipAlignEnabled true
signingConfig signingConfigs.debug signingConfig = signingConfigs.debug
resValue 'string', 'app_name', 'CoMaps Debug' resValue 'string', 'app_name', 'CoMaps Debug'
// Do not generate separate debug symbols for debug apps, because we don't distribute them.
ndk.debugSymbolLevel = 'none'
} }
release { release {
if (taskName.contains('release')) { if (taskName.contains('release')) {
if (secureReleasePropertiesFileExists) { if (secureReleasePropertiesFileExists) {
println('Using RELEASE signing keys from secure.properties.release') println('Using RELEASE signing keys from secure.properties.release')
signingConfig signingConfigs.release signingConfig = signingConfigs.release
} else { } else {
println('NO RELEASE signing keys found') println('NO RELEASE signing keys found')
println('Using DEBUG signing keys') println('Using DEBUG signing keys')
signingConfig signingConfigs.debug signingConfig = signingConfigs.debug
} }
} }
minifyEnabled true minifyEnabled true
shrinkResources true shrinkResources = true
// Includes the default ProGuard rules files that are packaged with the Android Gradle plugin. // Includes the default ProGuard rules files that are packaged with the Android Gradle plugin.
// To learn more, go to the documentation section about R8 configuration files. // To learn more, go to the documentation section about R8 configuration files.
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
resValue 'string', 'app_name', project.ext.appName resValue 'string', 'app_name', project.ext.appName
// Full size symbols are too big for Google, 217mb aab vs 95mb.
ndk.debugSymbolLevel = 'symbol_table'
} }
beta { beta {
@@ -309,37 +234,27 @@ android {
if (taskName.contains('beta')) { if (taskName.contains('beta')) {
if (secureTestPropertiesFileExists) { if (secureTestPropertiesFileExists) {
println('Using TEST signing keys from secure.properties.test') println('Using TEST signing keys from secure.properties.test')
signingConfig signingConfigs.test signingConfig = signingConfigs.test
} else { } else {
println('NO TEST signing keys found') println('NO TEST signing keys found')
println('Using DEBUG signing keys') println('Using DEBUG signing keys')
signingConfig signingConfigs.debug signingConfig = signingConfigs.debug
} }
} }
minifyEnabled true minifyEnabled true
shrinkResources true shrinkResources = true
// Includes the default ProGuard rules files that are packaged with the Android Gradle plugin. // Includes the default ProGuard rules files that are packaged with the Android Gradle plugin.
// To learn more, go to the documentation section about R8 configuration files. // To learn more, go to the documentation section about R8 configuration files.
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
matchingFallbacks = ['release'] // use dependencies of "release" build type matchingFallbacks = ['release'] // use dependencies of "release" build type
resValue 'string', 'app_name', 'CoMaps Test' resValue 'string', 'app_name', 'CoMaps Test'
// Full size symbols are too big for Google, 217mb aab vs 95mb.
ndk.debugSymbolLevel = 'symbol_table'
}
}
externalNativeBuild {
cmake {
version '3.22.1+'
buildStagingDirectory './nativeOutputs'
path '../../CMakeLists.txt'
} }
} }
// We don't compress these extensions in assets/ because our random FileReader can't read zip-compressed files from apk. // We don't compress these extensions in assets/ because our random FileReader can't read zip-compressed files from apk.
// TODO: Load all minor files via separate call to ReadAsString which can correctly handle compressed files in zip containers. // TODO: Load all minor files via separate call to ReadAsString which can correctly handle compressed files in zip containers.
androidResources { androidResources {
ignoreAssetsPattern '!.svn:!.git:!.DS_Store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~' ignoreAssetsPattern = '!.svn:!.git:!.DS_Store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~'
noCompress = ['txt', 'bin', 'html', 'png', 'json', 'mwm', 'ttf', 'sdf', 'ui', 'config', 'csv', 'spv', 'obj'] noCompress = ['txt', 'bin', 'html', 'png', 'json', 'mwm', 'ttf', 'sdf', 'ui', 'config', 'csv', 'spv', 'obj']
localeFilters += [ localeFilters += [
"af", "af",
@@ -396,7 +311,7 @@ android {
} }
compileOptions { compileOptions {
coreLibraryDesugaringEnabled true coreLibraryDesugaringEnabled = true
sourceCompatibility JavaVersion.VERSION_17 sourceCompatibility JavaVersion.VERSION_17
targetCompatibility JavaVersion.VERSION_17 targetCompatibility JavaVersion.VERSION_17
@@ -404,6 +319,8 @@ android {
} }
dependencies { dependencies {
implementation project(':sdk')
coreLibraryDesugaring libs.android.tools.desugar coreLibraryDesugaring libs.android.tools.desugar
// Google Play Location Services // Google Play Location Services
@@ -449,10 +366,6 @@ dependencies {
testImplementation libs.mockito.core testImplementation libs.mockito.core
} }
tasks.withType(JavaCompile) {
options.compilerArgs << '-Xlint:unchecked' << '-Xlint:deprecation'
}
android.applicationVariants.all { variant -> android.applicationVariants.all { variant ->
def authorityValue = variant.applicationId + ".provider" def authorityValue = variant.applicationId + ".provider"
def authority = "\"" + authorityValue + "\"" def authority = "\"" + authorityValue + "\""
@@ -500,3 +413,7 @@ huaweiPublish {
} }
} }
} }
tasks.withType(JavaCompile).configureEach {
options.compilerArgs << '-Xlint:unchecked' << '-Xlint:deprecation'
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 97 KiB

View File

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

View File

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

View File

@@ -0,0 +1 @@
সহজ মানচিত্র নেভিগেশন - আপনার যাত্রা সম্পর্কে আরও জানুন - সম্প্রদায় কর্তৃক পরিচালিত

View File

@@ -0,0 +1 @@
কোম্যাপস - অফলাইনে হাইকিং, সাইকেলিং এবং ড্রাইভিং করুন গোপনীয়তা সহ

View File

@@ -0,0 +1 @@
Navegació intuïtiva - Descobreix el teu camí - El poder de la comunitat

View File

@@ -0,0 +1,7 @@
• Data OpenStreetMap k 4. 8.
• vylepšené barvy mapy pro vodu, lesy, křoviny, různé vybavení, pěší zóny atd.
• přidány stanice lesní stráže, krytých parkovišť pro jízdní kola, únikových her, úschoven zavazadel, partnerských pošt
• vylepšeny výškové vrstevnice na 20 m pro některé oblíbené turistické oblasti
• podpora více zkratek a aliasů pro vyhledávání
• přidání ikon pro vyhledávání a záložky pro rychlé občerstvení, jízdní kola a dobíjecí stanice
• plynulejší pohyb šipky pro určení polohy

View File

@@ -1,9 +1,7 @@
Wir stellen vor: Das neue CoMaps-Logo! • OpenStreetMap-Daten vom 4. August
• Verbesserte Höhenlinien in vielen Regionen (Stufen von 20/50 m) • Verbesserte Farben für Wasser, Wälder, Gestrüpp, verschiedene Einrichtungen, Fussgängerbereiche etc.
Links zu Panoramax-Bildern für ausgewählte POIs Besucherstationen, überdachte Fahrradparkplätze, Escaperooms, Gepäckschließfächer, und Postpartner hinzugefügt
OpenStreetMap-Daten vom 13. Juli Konturhöhenlinien aktualisiert, bis zu 20m für beliebte Wanderregionen
Neue Farben für viele Objekte und Farben werden früher angezeigt Unterstützung für mehr Such-Abkürzungen und Synonyme
Öffnungszeiten werden beim Antippen eines POI angezeigt Such- und Lesezeichen-Symbole für Fast Food, Rad- und Lade-Stationen
Verschiedene Arten von Feuchtgebieten Der Positionspfeil bewegt sich gleichmässiger
• Neue Farben für Vegetation und andere Features; einige neue Icons
• Wandern: bessere Darstellung der Höhenlinien

View File

@@ -1,10 +1,7 @@
Introducing CoMaps logo! • OpenStreetMap data as of August 4
• improve map colors for water, forests, scrubs, various amenities, pedestrian areas etc.
upgrade altitude contour lines for many regions to 20 or 50 meters step add ranger stations, covered bicycle parkings, escape games, luggage lockers, post office partners
add Panoramax Picture links to selected POIs upgrade altitude contour lines to 20m step for some popular hiking regions
OpenStreetMap data as of July 13 support more search abbreviations and aliases
• add color fills to many features and display fills earlier for existing features • add search and bookmark icons for fast food, bicycle and charging stations
display opening hours state when selecting a POI more smooth position arrow movements
• split all wetlands into several distinct types
• update vegetation and other map colors, update some map icons
• outdoors: bolder altitude contour lines

View File

@@ -0,0 +1,65 @@
Una aplicación de mapas gratuita y de código abierto liderada por la comunidad, basada en los datos de OpenStreetMap y reforzada con un compromiso con la transparencia, la privacidad y la ausencia de fines de lucro. CoMaps es un fork o derivado de Organic Maps, que a su vez es un fork de Maps.ME.
<br><br>
Lee más sobre los motivos del proyecto y su dirección en <b><i>codeberg.org/comaps</i></b>.
<br><br>
Únete allí a la comunidad y ayuda a crear la mejor app de mapas
• Usa la aplicación y corre la voz sobre ella
• Envía comentarios y reporta problemas
• Actualiza los datos del mapa en la app o en el sitio web de OpenStreetMap
<br><br>
‣ <b>Enfocada en el uso sin conexión</b>: Planifica y navega tus viajes sin necesidad de conexión móvil, busca puntos de paso en rutas remotas, etc. Todas las funciones están diseñadas para funcionar sin conexión.
‣ <b>Respeta tu Privacidad</b>: La app está diseñada pensando en tu privacidad: no identifica personas, no rastrea y no recoge datos personales. Sin publicidad.
‣ <b>Sencilla y Pulida</b>: funciones esenciales fáciles de usar que simplemente funcionan.
‣ <b>Ahorra Batería y Espacio</b>: No consume la batería como otras apps de navegación. Los mapas compactos ahorran espacio valioso en tu teléfono.
‣ <b>Gratuita y Creada por la Comunidad</b>: Personas como tú ayudaron a construir la app añadiendo lugares a OpenStreetMap, probando funciones, dando opiniones y contribuyendo con desarrollo o financiación.
‣ <b>Toma de decisiones y finanzas abiertas y transparentes, sin ánimo de lucro y completamente de código abierto.</b>
<br><br>
<b>Funciones Principales</b>:
• Mapas detallados descargables con lugares que no aparecen en Google Maps
• Modo exterior con rutas de senderismo destacadas, campings, fuentes de agua, picos, curvas de nivel, etc.
• Caminos peatonales y carriles bici
• Puntos de interés como restaurantes, gasolineras, hoteles, tiendas, lugares turísticos y muchos más
• Búsqueda por nombre, dirección o categoría de punto de interés
• Navegación con indicaciones por voz para caminar, ir en bici o conducir
• Guarda tus lugares favoritos con un solo toque
• Artículos de Wikipedia sin conexión
• Capa de transporte subterráneo y rutas
• Grabación de rutas
• Exporta e importa favoritos y rutas en formatos KML, KMZ y GPX
• Modo oscuro para usar de noche
• Mejora los datos del mapa para todos usando un editor básico integrado
<br><br>
<b>La Libertad Está Aquí</b>
Descubre tu camino, navega el mundo con privacidad y con la comunidad como prioridad.

View File

@@ -1,9 +1,7 @@
¡Presentamos el logo de CoMaps! • Datos de OpenStreetMap a fecha 2025.08.04
mejora de isolíneas con más detalle para muchas regiones Mejora de colores del mapa para agua, bosques, matorrales, servicios, zonas peatonales, etc.
añade enlaces de imágenes de Panoramax a POIs seleccionados Añadidas estaciones de guardabosques, aparcamientos cubiertos de bicis, juegos de escape, consignas y oficinas de correo
datos de OpenStreetMap a 13 de julio Nuevas curvas de nivel (20 m) en regiones populares para senderismo
añadidos rellenos de color a muchas características Más abreviaturas y alias de búsqueda
se muestra el estado de horarios de apertura al seleccionar un POI Iconos de búsqueda y marcadores para comida rápida, bicicletas y estaciones de recarga
se dividen los humedales en tipos distintos Más fluidez de la flecha de posición
• se actualiza la vegetación y otros colores del mapa, así como otros iconos
• exteriores: líneas de contorno de altitud más gruesas

View File

@@ -0,0 +1 @@
Navegación de mapa fácil - Descubre más en tu camino - Creado por la comunidad

View File

@@ -0,0 +1 @@
CoMaps - Senderismo, ciclismo y conducción offline

View File

@@ -0,0 +1 @@
ناوبری آسان نقشه - کشف بیشتر از سفر شما - توسط جامعه

View File

@@ -0,0 +1 @@
CoMaps - کوه نوردی، دوچرخه سواری و رانندگی افلاین و خصوصی

View File

@@ -1,7 +0,0 @@
Présentation du logo CoMaps !
• Amélioration des courbes daltitude à une précision de 20 ou 50 mètres pour de nombreuses régions
• Ajout d'un lien vers les images Panoramax des POI
• Données OpenStreetMap du 13 juillet
• Affichage de létat des heures douverture lors de la sélection dun POI
• Mise à jour du style(végétation et zones humides), mise à jour de certaines icônes de la carte
• Outdoors: Améliorations de la visibilité des courbes d'altitude

View File

@@ -1 +1 @@
Navigation cartographique facile - Découvrez davantage de votre voyage - Propulsé par la communauté Navigation de cartes facile - Découvrez le monde - Propulsé par la communauté

View File

@@ -0,0 +1 @@
Könnyű térképes navigáció - Fedezz fel többet az útjaidról - A közösség erejével

View File

@@ -0,0 +1 @@
Navigation facile del mappa Discoperi tu viage Alimentate per le communitate

View File

@@ -0,0 +1,7 @@
• Dati di OpenStreetMap aggiornati al 4 Agosto
• Migliorati i colori per acqua, foreste, servizi etc
• Aggiunte le stazioni delle guardie forestali, i parcheggi coperti per bici, gli escape games e altri servizi
• Aggiornato l'intervallo delle isolinee a 20 m per le zone escursionistiche più popolari
• Aggiunto il supporto per un maggior numero di alias
• Aggiunte le icone per i fast food, i punti di ricarica e le biciclette
• Resi più fluidi i movimenti della freccia di posizione

View File

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

View File

@@ -1,9 +1,7 @@
Apresentamos o logo do CoMaps! • Dados OSM de 4/08
Curvas de nível mais detalhadas em muitas regiões Melhoria nas cores para água, florestas, matagais, serviços, áreas de pedestres, etc.
• Adicionados links de imagens do Panoramax para pontos de interesse selecionados • Adição de guarda-florestais, estacionamentos cobertos para bicicletas, jogos de fuga, armários para bagagem e parceiros postais
Dados OSM de 13/07 Melhoria na precisão de curvas de nível para 20 m em algumas regiões populares
Adicionados preenchimentos de cor a muitos elementos Suporte a mais abreviações para busca
Exibição de horário de funcionamento ao selecionar um ponto de interesse Adição de ícones de pesquisa e favoritos para fast food, bicicletas e estações de recarga
Divididas áreas úmidas em vários tipos distintos Movimentos mais suaves para seta de posição
• Atualizada cores/ícones para vegetação e outros elementos
• Ar livre: curvas de nível de altitude mais destacadas

View File

@@ -1 +1 @@
CoMaps - Mapas com Privacidade CoMaps - Mapas e Navegação Offline com Privacidade

View File

@@ -0,0 +1 @@
Navegação fácil nos mapas - Descubra mais sobre o seu percurso - Feito por todos

View File

@@ -0,0 +1 @@
CoMaps - Mapas e Navegação - Offline e Privada

View File

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

View File

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

View File

@@ -1 +1 @@
version: 2025.03.02-7-FDroid+25030207 version: 2025.08.13-8-FDroid+25081308

View File

@@ -1,148 +0,0 @@
package app.organicmaps.location;
import static android.Manifest.permission.ACCESS_COARSE_LOCATION;
import static android.Manifest.permission.ACCESS_FINE_LOCATION;
import static app.organicmaps.util.concurrency.UiThread.runLater;
import android.app.PendingIntent;
import android.content.Context;
import android.location.Location;
import android.os.Looper;
import androidx.annotation.NonNull;
import androidx.annotation.RequiresPermission;
import com.google.android.gms.common.api.ApiException;
import com.google.android.gms.common.api.ResolvableApiException;
import com.google.android.gms.location.FusedLocationProviderClient;
import com.google.android.gms.location.Granularity;
import com.google.android.gms.location.LocationAvailability;
import com.google.android.gms.location.LocationCallback;
import com.google.android.gms.location.LocationRequest;
import com.google.android.gms.location.LocationResult;
import com.google.android.gms.location.LocationServices;
import com.google.android.gms.location.LocationSettingsRequest;
import com.google.android.gms.location.LocationSettingsStatusCodes;
import com.google.android.gms.location.Priority;
import com.google.android.gms.location.SettingsClient;
import app.organicmaps.util.LocationUtils;
import app.organicmaps.util.log.Logger;
class GoogleFusedLocationProvider extends BaseLocationProvider
{
private static final String TAG = GoogleFusedLocationProvider.class.getSimpleName();
@NonNull
private final FusedLocationProviderClient mFusedLocationClient;
@NonNull
private final SettingsClient mSettingsClient;
@NonNull
private final Context mContext;
private class GoogleLocationCallback extends LocationCallback
{
@Override
public void onLocationResult(@NonNull LocationResult result)
{
final Location location = result.getLastLocation();
if (location != null)
mListener.onLocationChanged(location);
}
@Override
public void onLocationAvailability(@NonNull LocationAvailability availability)
{
Logger.w(TAG, "isLocationAvailable = " + availability.isLocationAvailable());
}
}
private final GoogleLocationCallback mCallback = new GoogleLocationCallback();
GoogleFusedLocationProvider(@NonNull Context context, @NonNull BaseLocationProvider.Listener listener)
{
super(listener);
mFusedLocationClient = LocationServices.getFusedLocationProviderClient(context);
mSettingsClient = LocationServices.getSettingsClient(context);
mContext = context;
}
@Override
@RequiresPermission(anyOf = {ACCESS_COARSE_LOCATION, ACCESS_FINE_LOCATION})
public void start(long interval)
{
Logger.d(TAG);
final LocationRequest locationRequest = new LocationRequest.Builder(Priority.PRIORITY_HIGH_ACCURACY, interval)
// Wait a few seconds for accurate locations initially, when accurate locations could not be computed on the device immediately.
// https://github.com/organicmaps/organicmaps/issues/2149
.setWaitForAccurateLocation(true)
// The desired location granularity should correspond to the client permission level. The client will be
// delivered fine locations while it has the Manifest.permission.ACCESS_FINE_LOCATION permission, coarse
// locations while it has only the Manifest.permission.ACCESS_COARSE_LOCATION permission, and no location
// if it lacks either.
.setGranularity(Granularity.GRANULARITY_PERMISSION_LEVEL)
// Sets the maximum age of an initial historical location delivered for this request.
.setMaxUpdateAgeMillis(60 * 60 * 1000L) // 1 hour
.build();
LocationSettingsRequest.Builder builder = new LocationSettingsRequest.Builder();
builder.addLocationRequest(locationRequest);
builder.setAlwaysShow(true); // improves the wording/appearance of the dialog
final LocationSettingsRequest locationSettingsRequest = builder.build();
mSettingsClient.checkLocationSettings(locationSettingsRequest).addOnSuccessListener(locationSettingsResponse -> {
Logger.d(TAG, "Service is available");
mFusedLocationClient.requestLocationUpdates(locationRequest, mCallback, Looper.myLooper());
}).addOnFailureListener(e -> {
try
{
int statusCode = ((ApiException) e).getStatusCode();
if (statusCode == LocationSettingsStatusCodes.RESOLUTION_REQUIRED)
{
// This case happens if at least one of the following system settings is off:
// 1. Location Services a.k.a GPS;
// 2. Google Location Accuracy a.k.a High Accuracy;
// 3. Both Wi-Fi && Mobile Data together (needed for 2).
//
// PendingIntent below will show a special Google "For better experience... enable (1) and/or (2) and/or (3)"
// dialog. This system dialog can change system settings if "Yes" is pressed. We can't do it from our app.
// However, we don't want to annoy a user who disabled (2) or (3) intentionally. GPS (1) is mandatory to
// continue, while (2) and (3) are not dealbreakers here.
//
// See https://github.com/organicmaps/organicmaps/issues/3846
//
if (LocationUtils.areLocationServicesTurnedOn(mContext))
{
Logger.d(TAG, "Don't show 'location resolution' dialog because location services are already on");
mFusedLocationClient.requestLocationUpdates(locationRequest, mCallback, Looper.myLooper());
return;
}
Logger.d(TAG, "Requesting 'location resolution' dialog");
final ResolvableApiException resolvable = (ResolvableApiException) e;
final PendingIntent pendingIntent = resolvable.getResolution();
// Call this callback in the next event loop to allow LocationHelper::start() to finish.
runLater(() -> mListener.onLocationResolutionRequired(pendingIntent));
return;
}
}
catch (ClassCastException ex)
{
// Ignore, should be an impossible error.
// https://developers.google.com/android/reference/com/google/android/gms/location/SettingsClient
Logger.e(TAG, "An error that should be impossible: " + ex);
}
// Location settings are not satisfied. However, we have no way to fix the
// settings so we won't show the dialog.
Logger.e(TAG, "Service is not available: " + e);
// Call this callback in the next event loop to allow LocationHelper::start() to finish.
runLater(mListener::onFusedLocationUnsupported);
});
}
@Override
protected void stop()
{
Logger.d(TAG);
mFusedLocationClient.removeLocationUpdates(mCallback);
}
}

View File

@@ -0,0 +1,149 @@
package app.organicmaps.sdk.location;
import static android.Manifest.permission.ACCESS_COARSE_LOCATION;
import static android.Manifest.permission.ACCESS_FINE_LOCATION;
import static app.organicmaps.sdk.util.concurrency.UiThread.runLater;
import android.app.PendingIntent;
import android.content.Context;
import android.location.Location;
import android.os.Looper;
import androidx.annotation.NonNull;
import androidx.annotation.RequiresPermission;
import app.organicmaps.sdk.util.LocationUtils;
import app.organicmaps.sdk.util.log.Logger;
import com.google.android.gms.common.api.ApiException;
import com.google.android.gms.common.api.ResolvableApiException;
import com.google.android.gms.location.FusedLocationProviderClient;
import com.google.android.gms.location.Granularity;
import com.google.android.gms.location.LocationAvailability;
import com.google.android.gms.location.LocationCallback;
import com.google.android.gms.location.LocationRequest;
import com.google.android.gms.location.LocationResult;
import com.google.android.gms.location.LocationServices;
import com.google.android.gms.location.LocationSettingsRequest;
import com.google.android.gms.location.LocationSettingsStatusCodes;
import com.google.android.gms.location.Priority;
import com.google.android.gms.location.SettingsClient;
class GoogleFusedLocationProvider extends BaseLocationProvider
{
private static final String TAG = GoogleFusedLocationProvider.class.getSimpleName();
@NonNull
private final FusedLocationProviderClient mFusedLocationClient;
@NonNull
private final SettingsClient mSettingsClient;
@NonNull
private final Context mContext;
private class GoogleLocationCallback extends LocationCallback
{
@Override
public void onLocationResult(@NonNull LocationResult result)
{
final Location location = result.getLastLocation();
if (location != null)
mListener.onLocationChanged(location);
}
@Override
public void onLocationAvailability(@NonNull LocationAvailability availability)
{
Logger.w(TAG, "isLocationAvailable = " + availability.isLocationAvailable());
}
}
private final GoogleLocationCallback mCallback = new GoogleLocationCallback();
GoogleFusedLocationProvider(@NonNull Context context, @NonNull BaseLocationProvider.Listener listener)
{
super(listener);
mFusedLocationClient = LocationServices.getFusedLocationProviderClient(context);
mSettingsClient = LocationServices.getSettingsClient(context);
mContext = context;
}
@Override
@RequiresPermission(anyOf = {ACCESS_COARSE_LOCATION, ACCESS_FINE_LOCATION})
public void start(long interval)
{
Logger.d(TAG);
final LocationRequest locationRequest =
new LocationRequest
.Builder(Priority.PRIORITY_HIGH_ACCURACY, interval)
// Wait a few seconds for accurate locations initially, when accurate locations could not be computed on the
// device immediately. https://github.com/organicmaps/organicmaps/issues/2149
.setWaitForAccurateLocation(true)
// The desired location granularity should correspond to the client permission level. The client will be
// delivered fine locations while it has the Manifest.permission.ACCESS_FINE_LOCATION permission, coarse
// locations while it has only the Manifest.permission.ACCESS_COARSE_LOCATION permission, and no location
// if it lacks either.
.setGranularity(Granularity.GRANULARITY_PERMISSION_LEVEL)
// Sets the maximum age of an initial historical location delivered for this request.
.setMaxUpdateAgeMillis(60 * 60 * 1000L) // 1 hour
.build();
LocationSettingsRequest.Builder builder = new LocationSettingsRequest.Builder();
builder.addLocationRequest(locationRequest);
builder.setAlwaysShow(true); // improves the wording/appearance of the dialog
final LocationSettingsRequest locationSettingsRequest = builder.build();
mSettingsClient.checkLocationSettings(locationSettingsRequest)
.addOnSuccessListener(locationSettingsResponse -> {
Logger.d(TAG, "Service is available");
mFusedLocationClient.requestLocationUpdates(locationRequest, mCallback, Looper.myLooper());
})
.addOnFailureListener(e -> {
try
{
int statusCode = ((ApiException) e).getStatusCode();
if (statusCode == LocationSettingsStatusCodes.RESOLUTION_REQUIRED)
{
// This case happens if at least one of the following system settings is off:
// 1. Location Services a.k.a GPS;
// 2. Google Location Accuracy a.k.a High Accuracy;
// 3. Both Wi-Fi && Mobile Data together (needed for 2).
//
// PendingIntent below will show a special Google "For better experience... enable (1) and/or (2) and/or
// (3)" dialog. This system dialog can change system settings if "Yes" is pressed. We can't do it from our
// app. However, we don't want to annoy a user who disabled (2) or (3) intentionally. GPS (1) is mandatory
// to continue, while (2) and (3) are not dealbreakers here.
//
// See https://github.com/organicmaps/organicmaps/issues/3846
//
if (LocationUtils.areLocationServicesTurnedOn(mContext))
{
Logger.d(TAG, "Don't show 'location resolution' dialog because location services are already on");
mFusedLocationClient.requestLocationUpdates(locationRequest, mCallback, Looper.myLooper());
return;
}
Logger.d(TAG, "Requesting 'location resolution' dialog");
final ResolvableApiException resolvable = (ResolvableApiException) e;
final PendingIntent pendingIntent = resolvable.getResolution();
// Call this callback in the next event loop to allow LocationHelper::start() to finish.
runLater(() -> mListener.onLocationResolutionRequired(pendingIntent));
return;
}
}
catch (ClassCastException ex)
{
// Ignore, should be an impossible error.
// https://developers.google.com/android/reference/com/google/android/gms/location/SettingsClient
Logger.e(TAG, "An error that should be impossible: " + ex);
}
// Location settings are not satisfied. However, we have no way to fix the
// settings so we won't show the dialog.
Logger.e(TAG, "Service is not available: " + e);
// Call this callback in the next event loop to allow LocationHelper::start() to finish.
runLater(mListener::onFusedLocationUnsupported);
});
}
@Override
protected void stop()
{
Logger.d(TAG);
mFusedLocationClient.removeLocationUpdates(mCallback);
}
}

View File

@@ -1,12 +1,11 @@
package app.organicmaps.location; package app.organicmaps.sdk.location;
import android.content.Context; import android.content.Context;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import app.organicmaps.sdk.util.Config;
import app.organicmaps.sdk.util.log.Logger;
import com.google.android.gms.common.ConnectionResult; import com.google.android.gms.common.ConnectionResult;
import com.google.android.gms.common.GoogleApiAvailability; import com.google.android.gms.common.GoogleApiAvailability;
import app.organicmaps.util.Config;
import app.organicmaps.util.log.Logger;
public class LocationProviderFactory public class LocationProviderFactory
{ {
@@ -17,7 +16,8 @@ public class LocationProviderFactory
return GoogleApiAvailability.getInstance().isGooglePlayServicesAvailable(context) == ConnectionResult.SUCCESS; return GoogleApiAvailability.getInstance().isGooglePlayServicesAvailable(context) == ConnectionResult.SUCCESS;
} }
public static BaseLocationProvider getProvider(@NonNull Context context, @NonNull BaseLocationProvider.Listener listener) public static BaseLocationProvider getProvider(@NonNull Context context,
@NonNull BaseLocationProvider.Listener listener)
{ {
if (isGoogleLocationAvailable(context) && Config.useGoogleServices()) if (isGoogleLocationAvailable(context) && Config.useGoogleServices())
{ {

View File

@@ -0,0 +1 @@
সহজ মানচিত্র নেভিগেশন - আপনার যাত্রা সম্পর্কে আরও জানুন - সম্প্রদায় কর্তৃক পরিচালিত

View File

@@ -0,0 +1 @@
CoMaps - গোপনীয়তা সহ যাতায়াত

View File

@@ -0,0 +1,36 @@
CoMaps és una aplicació de mapes lliure i de codi obert a càrrec de la comunitat que es basa en les dades OpenStreetMap i es fonamenta en el compromís amb la transparència i la privadesa sense ànim de lucre.
Uneix-te a la comunitat i ajuda a crear la millor aplicació de mapes.
• Fes servir l'aplicació i recomana-la.
• Dona la teva opinió i comunica qualsevol problema.
• Actualitza les dades de mapes a l'aplicació o al web d'OpenStreetMap.
<i>Els teus comentaris i les valoracions de 5 estrelles són el que més ens ajuda.</i>
‣ <b>Disseny senzill i polit</b>: funcions bàsiques i fàcils de fer servir que funcionen i punt.
‣ <b>Centrada en l'ús sense connexió</b>: planifica viatges a l'estranger i navega sense haver d'accedir a les dades mòbils o cerca punts d'interès durant rutes d'excursionisme llargues. Totes les funcions de l'aplicació s'han dissenyat perquè funcionin sense connexió.
‣ <b>Respecte per la privadesa</b>: el disseny de l'aplicació prioritza la privadesa. No t'identifica, no fa cap seguiment i no recull dades personals. A més, no té anuncis.
‣ <b>Ús eficient de la bateria i l'espai</b>: consumeix menys bateria que altres aplicacions de navegació. Els mapes compactes ocupen molt poc espai al telèfon.
‣ <b>Lliure gràcies a la comunitat</b>: aquesta aplicació s'ha desenvolupat gràcies a persones com tu que han afegit llocs a OpenStreetMap, han provat funcions, n'han aportat comentaris i hi han contribuït amb diners i esforç.
‣ <b>És un projecte obert i transparent en les seves decisions i finances. No té cap ànim de lucre i és completament de codi obert.</b>
<b>Funcions principals</b>:
• Mapes detallats que es poden baixar i inclouen llocs que no apareixen a Google Maps
• Mode exterior en què es ressalten les rutes d'excursionisme, els llocs d'acampada, les fonts d'aigua, els pics i les línies de contorn, entre altres coses
• Zones per a vianants i carrils bici
• Punts d'interès, com ara restaurants, benzineres, hotels, botigues, atraccions turístiques i molt més
• Cerques per nom, adreça o categoria de punt d'interès
• Navegació amb indicacions per veu mentre camines, vas amb bicicleta o condueixes
• Adreces d'interès perquè desis els teus llocs preferits amb un toc
• Articles de Wikipedia sense connexió
• Capa de línies de metro amb direccions
• Enregistrament d'itineraris
• Exportació i importació d'adreces d'interès i itineraris en els formats KML, KMZ i GPX
• Mode fosc per fer servir l'aplicació a la nit
• Millora de les dades de mapes per a tothom amb un editor integrat bàsic
• Compatibilitat amb Android Auto
Pots informar de problemes a l'aplicació, suggerir idees i unir-te a la comunitat al web <b><i>comaps.app</i></b>.
<b>La llibertat ha arribat</b>
Descobreix el teu camí i explora el món amb la privadesa i la comunitat com a eix central!

View File

@@ -0,0 +1 @@
Navegació intuïtiva - Descobreix el teu camí - El poder de la comunitat

View File

@@ -0,0 +1 @@
CoMaps Navega amb privadesa

View File

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

View File

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

View File

@@ -0,0 +1,71 @@
Una aplicación de mapas gratuita y de código abierto liderada por la comunidad, basada en los datos de OpenStreetMap y reforzada con un compromiso con la transparencia, la privacidad y la ausencia de fines de lucro.
<br><br>
Únete a la comunidad y ayuda a crear la mejor app de mapas
• Usa la aplicación y corre la voz sobre ella
• Envía comentarios y reporta problemas
• Actualiza los datos del mapa en la app o en el sitio web de OpenStreetMap
<br><br>
<i>¡Tus comentarios y valoraciones de 5 estrellas son el mejor apoyo para nosotros!</i>
<br><br>
‣ <b>Sencilla y Pulida</b>: funciones esenciales fáciles de usar que simplemente funcionan.
‣ <b>Enfocada en el uso sin conexión</b>: Planifica y navega tus viajes sin necesidad de conexión móvil, busca puntos de paso en rutas remotas, etc. Todas las funciones están diseñadas para funcionar sin conexión.
‣ <b>Respeta tu Privacidad</b>: La app está diseñada pensando en tu privacidad: no identifica personas, no rastrea y no recoge datos personales. Sin publicidad.
‣ <b>Ahorra Batería y Espacio</b>: No consume la batería como otras apps de navegación. Los mapas compactos ahorran espacio valioso en tu teléfono.
‣ <b>Gratuita y Creada por la Comunidad</b>: Personas como tú ayudaron a construir la app añadiendo lugares a OpenStreetMap, probando funciones, dando opiniones y contribuyendo con desarrollo o financiación.
‣ <b>Toma de decisiones y finanzas abiertas y transparentes, sin ánimo de lucro y completamente de código abierto.</b>
<br><br>
<b>Funciones Principales</b>:
• Mapas detallados descargables con lugares que no aparecen en Google Maps
• Modo exterior con rutas de senderismo destacadas, campings, fuentes de agua, picos, curvas de nivel, etc.
• Caminos peatonales y carriles bici
• Puntos de interés como restaurantes, gasolineras, hoteles, tiendas, lugares turísticos y muchos más
• Búsqueda por nombre, dirección o categoría de punto de interés
• Navegación con indicaciones por voz para caminar, ir en bici o conducir
• Guarda tus lugares favoritos con un solo toque
• Artículos de Wikipedia sin conexión
• Capa de transporte subterráneo y rutas
• Grabación de rutas
• Exporta e importa favoritos y rutas en formatos KML, KMZ y GPX
• Modo oscuro para usar de noche
• Mejora los datos del mapa para todos usando un editor básico integrado
• Compatibilidad con Android Auto
<br><br>
Por favor, informa de errores, sugiere ideas y únete a nuestra comunidad en el sitio web <b><i>comaps.app</i></b>.
<br><br>
<b>La Libertad Está Aquí</b>
Descubre tu camino, navega el mundo con privacidad y con la comunidad como prioridad.

View File

@@ -0,0 +1 @@
Navegación de mapa fácil - Descubre más en tu camino - Creado por la comunidad

View File

@@ -0,0 +1 @@
CoMaps - Navega con Privacidad

View File

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

View File

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

View File

@@ -1 +1 @@
Navigation cartographique facile - Propulsé par la communauté Navigation cartographique facile - Vivez de grands voyages - Propulsé par la communauté

View File

@@ -0,0 +1 @@
Könnyű térképes navigáció - Fedezz fel többet az útjaidról - A közösség erejével

View File

@@ -0,0 +1 @@
CoMaps - Az adatvédő navigáció

View File

@@ -0,0 +1 @@
Navigation facile del mappa Discoperi tu viage Alimentate per le communitate

View File

@@ -0,0 +1 @@
CoMaps Naviga private

View File

@@ -0,0 +1 @@
കോമാപ്പ്സ് - സ്വകാര്യതയോടെ സഞ്ചരിക്കൂ

View File

@@ -0,0 +1 @@
CoMaps - Nawigacja szanująca prywatność

View File

@@ -1 +1 @@
CoMaps - Navegue privadamente CoMaps - Navegue Privadamente

View File

@@ -1 +1 @@
CoMaps - Оффлайн навигация CoMaps - Приватная навигация

View File

@@ -7,12 +7,12 @@ Topluluğa katılın ve en iyi harita uygulamasını oluşturmamıza yardım edi
<i>Geri bildirimleriniz ve 5 yıldızlı yorumlarınız bizim için en iyi destektir!</i> <i>Geri bildirimleriniz ve 5 yıldızlı yorumlarınız bizim için en iyi destektir!</i>
‣ <b>Basit ve Temiz</b>: Sadece temel, kullanımı basit, işe yarayan özellikler. ‣ <b>Basit ve Temiz</b>: Sadece temel, kullanımı basit ve işe yarayan özellikler.
‣ <b>Çevrimdışı Odaklı</b>: Mobil veriye ihtiyaç duymadan yurt dışı seyahatinizi planlayın ve gezin, uzun bir yürüyüş sırasında rotanızdaki noktaları bulun ve daha fazlası . Tüm özellikler çevrimdışı çalışmak üzere tasarlanmıştır. ‣ <b>Çevrimdışı Odaklı</b>: Mobil veriye ihtiyaç duymadan yurt dışı seyahatinizi planlayın ve gezin, uzun bir yürüyüş sırasında rotanızdaki noktaları bulun ve daha fazlası. Tüm özellikler çevrimdışı çalışmak üzere tasarlanmıştır.
‣ <b>Gizliliğe Saygılı</b>: Uygulama gizliliğe saygılı olarak tasarlanmıştır. Kullanıcı profilinizi çıkarmaz, sizi takip etmez ve kişisel bilgi toplamaz. Üstelik tamamen reklamsızdır. ‣ <b>Gizliliğe Saygılı</b>: Uygulama gizliliğe saygılı olarak tasarlanmıştır. Kullanıcı profilinizi çıkarmaz, sizi takip etmez ve kişisel bilgi toplamaz. Üstelik tamamen reklamsızdır.
‣ <b>Pil ve Depolamanızdan Tasarruf Eder</b>: Diğer navigasyon uygulamaları gibi pilinizi sömürmez. Compact maps değerli depolama alanınızdan tasarruf eder. ‣ <b>Pil ve Depolamanızdan Tasarruf Eder</b>: Diğer navigasyon uygulamaları gibi pilinizi sömürmez. Kompakt harita dosyaları, değerli depolama alanınızdan tasarruf eder.
‣ <b>Ücretsizdir ve Gücünü Topluluktan Alır</b>: Sizin gibi insanlar OpenStreetMap'e yer ekleyerek, yeni özellikleri test ederek, geri bildirimde bulunarak, program geliştirme becerileri ve bağışlarla katkıda bulunarak uygulamanın oluşturulmasına yardımcı oldu. ‣ <b>Ücretsizdir ve Gücünü Topluluktan Alır</b>: Sizin gibi insanlar OpenStreetMap'e yer ekleyerek, yeni özellikleri test ederek, geri bildirimde bulunarak, program geliştirme becerileri ve bağışlarla katkıda bulunarak bu uygulamanın oluşturulmasına yardımcı oldular.
‣ <b>Açık ve Şeffaf Şekilde Yürütülen Karar Alma ve Fonlama Süreçleri, Kâr Amacı Gütmez ve Tamamen Açık Kaynaklı.</b> ‣ <b>Açık ve Şeffaf Bir Şekilde Yürütülen Karar Alma ve Fonlama Süreçlerine Sahip, Kâr Amacı Gütmeyen ve Tamamen Açık Kaynaklı Bir Uygulama.</b>
<b>Ana Özellikler</b>: <b>Ana Özellikler</b>:
• Google Haritalar'da bulunmayan yerleri içeren, çevrimdışı detaylı haritalar • Google Haritalar'da bulunmayan yerleri içeren, çevrimdışı detaylı haritalar

View File

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

View File

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

View File

@@ -75,6 +75,7 @@
android:backupInForeground="true" android:backupInForeground="true"
android:fullBackupContent="@xml/backup_content" android:fullBackupContent="@xml/backup_content"
android:dataExtractionRules="@xml/backup_content_v31" android:dataExtractionRules="@xml/backup_content_v31"
android:enableOnBackInvokedCallback="false"
android:icon="@mipmap/ic_launcher" android:icon="@mipmap/ic_launcher"
android:label="@string/app_name" android:label="@string/app_name"
android:localeConfig="@xml/locales_config" android:localeConfig="@xml/locales_config"
@@ -376,6 +377,7 @@
<activity <activity
android:name="app.organicmaps.downloader.DownloaderActivity" android:name="app.organicmaps.downloader.DownloaderActivity"
android:enableOnBackInvokedCallback="true"
android:configChanges="orientation|screenLayout|screenSize" android:configChanges="orientation|screenLayout|screenSize"
android:screenOrientation="fullUser" android:screenOrientation="fullUser"
android:label="@string/download_maps" android:label="@string/download_maps"

View File

@@ -1 +0,0 @@
../../../../../data/resources-6plus_dark

View File

@@ -1 +0,0 @@
../../../../../data/resources-6plus_light

View File

@@ -1 +0,0 @@
../../../../../data/resources-default

View File

@@ -1 +0,0 @@
../../../../../data/resources-hdpi_dark

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