Compare commits

...

103 Commits

Author SHA1 Message Date
Konstantin Pastbin
95786c8f7f [fdroid] Release version 2025.06.22-5
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-06-22 12:19:07 +07:00
Codeberg Translate
efab994b0f [strings] Update from Codeberg Translate
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: pastk <pastk@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/cs/
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/ru/
Translate-URL: https://translate.codeberg.org/projects/comaps/google-play-descriptions/cs/
Translate-URL: https://translate.codeberg.org/projects/comaps/google-play-descriptions/ru/
Translate-URL: https://translate.codeberg.org/projects/comaps/google-play-descriptions/sr/
Translation: CoMaps/F-Droid app description
Translation: CoMaps/Google Play and Huawei AppGallery descriptions
2025-06-22 05:13:50 +00:00
Codeberg Translate
8b3d47481f [strings] Update from Codeberg Translate
Co-authored-by: Codeberg Translate <translate@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: oxisol <oxisol@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/ja/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/zh_Hant/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/zh_Hant_HK/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/ja/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/zh_Hant/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/ja/
Translation: CoMaps/Android - Map Feature Types
Translation: CoMaps/Android UI Strings
Translation: CoMaps/iOS - Map Feature Types
2025-06-22 04:05:40 +00:00
Konstantin Pastbin
32b64356b3 Release notes 2025.06.22
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-06-22 11:04:10 +07:00
hemanggs
7b600efd5c [android] Adds delay to inset application on API 29 and lower
Signed-off-by: hemanggs <hemangmanhas@gmail.com>
2025-06-22 04:47:19 +02:00
Harry Bond
bdcee82a13 [Android] Better inactive turn lane colour
fixes #511
Signed-off-by: Harry Bond <me@hbond.xyz>
2025-06-21 17:16:57 +02:00
Konstantin Pastbin
48dba27018 [styles] Regenerate for generic amenities and camp sites area fills
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-06-21 21:19:43 +07:00
Konstantin Pastbin
d78a7d83e6 [styles] Add area fills to generic amenities and camp sites
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-06-21 21:17:35 +07:00
Konstantin Pastbin
8e6840d85d [styles] Regenerate for natural landuse changes
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-06-21 16:15:55 +02:00
Konstantin Pastbin
3503d0993e [styles] Raise visibility of natural landuses from z12 to z11
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-06-21 16:15:55 +02:00
Konstantin Pastbin
1932bc0bfb [styles] Remove deprecated landuse=field
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-06-21 16:15:55 +02:00
Codeberg Translate
793537457e [strings] Update from Codeberg Translate
Co-authored-by: Codeberg Translate <translate@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: chip789 <chip789@noreply.codeberg.org>
Co-authored-by: lazlo <lazlo@noreply.codeberg.org>
Co-authored-by: oxisol <oxisol@noreply.codeberg.org>
Co-authored-by: pastk <pastk@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/ja/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/nl/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/pt/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/pt_BR/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/ja/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/nl/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/pt/
Translate-URL: https://translate.codeberg.org/projects/comaps/appstore-descriptions/sr/
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/pt/
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/sr/
Translate-URL: https://translate.codeberg.org/projects/comaps/google-play-descriptions/it/
Translate-URL: https://translate.codeberg.org/projects/comaps/google-play-descriptions/nl/
Translate-URL: https://translate.codeberg.org/projects/comaps/google-play-descriptions/ru/
Translate-URL: https://translate.codeberg.org/projects/comaps/google-play-descriptions/sr/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-plurals/de/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-plurals/ja/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-plurals/zh_Hant/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/ja/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/nl/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/pt/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/pt_BR/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios/ja/
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 Plurals
Translation: CoMaps/iOS UI Strings
2025-06-21 10:30:02 +00:00
Konstantin Pastbin
20bae88649 [isolines] Add missing regions with poor profile
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-06-20 22:32:20 +07:00
Konstantin Pastbin
cfd68f0830 [isolines] Upgrade poor to 100m f4, remove extra_poor
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-06-20 22:32:20 +07:00
Yannik Bloscheck
82b1c8dc96 [styles] Regenerated files for show playgrounds already on zoom level 15
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-06-20 17:08:42 +02:00
Yannik Bloscheck
21c9de51c5 [styles] Show playgrounds already on zoom level 15
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-06-20 17:08:42 +02:00
Codeberg Translate
c9b02b438d [strings] Update from Codeberg Translate
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: DCoderUltra <dcoderultra@noreply.codeberg.org>
Co-authored-by: Fjuro <git@alius.cz>
Co-authored-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Co-authored-by: oxisol <oxisol@noreply.codeberg.org>
Co-authored-by: phpcoder_istanbul <phpcoder_istanbul@noreply.codeberg.org>
Co-authored-by: yurtpage <yurtpage@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/ja/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/ru/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/tr/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/cs/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/pt/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/ru/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/tr/
Translate-URL: https://translate.codeberg.org/projects/comaps/appstore-descriptions/
Translate-URL: https://translate.codeberg.org/projects/comaps/appstore-descriptions/cs/
Translate-URL: https://translate.codeberg.org/projects/comaps/appstore-descriptions/ru/
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/cs/
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/pt/
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/ru/
Translate-URL: https://translate.codeberg.org/projects/comaps/google-play-descriptions/
Translate-URL: https://translate.codeberg.org/projects/comaps/google-play-descriptions/cs/
Translate-URL: https://translate.codeberg.org/projects/comaps/google-play-descriptions/ru/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-plurals/ru/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/ja/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/ru/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/tr/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios/cs/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios/tr/
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 Plurals
Translation: CoMaps/iOS UI Strings
2025-06-20 14:45:19 +00:00
Yannik Bloscheck
14a1c1b665 [styles] Regenerated files for handle link roads for motorways and trunks more like motorways and trunks
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-06-20 16:31:03 +02:00
Yannik Bloscheck
e4e6f0b3c5 [styles] Handle link roads for motorways and trunks more like motorways and trunks
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-06-20 16:30:38 +02:00
Yannik Bloscheck
7b4b08c8c2 [ios] Updated X (Twitter) icon 2025-06-20 14:47:33 +02:00
Yannik Bloscheck
e500a9e5fa [ios] Added Mastodon & Bluesky 2025-06-20 14:47:33 +02:00
Yannik Bloscheck
fe92bf2359 [ios] Updated the icon used when sharing links
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-06-20 14:43:28 +02:00
Yannik Bloscheck
fa7cb55ada [ios] Changed to only sharing the website URL
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-06-20 14:42:43 +02:00
Yannik Bloscheck
bb03e9334c [ios] Renamed Xcode workspace (and fixed a few little things, that were missed before)
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-06-20 14:32:15 +02:00
Yannik Bloscheck
2b2ee51923 [styles] Regenerated files for adjusted colors for railway paltforms and airports at distant zoom levels
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-06-20 13:08:29 +02:00
Yannik Bloscheck
9014fde479 [styles] Adjusted colors for railway paltforms and airports at distant zoom levels
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-06-20 13:08:29 +02:00
kj7rrv
4dd049dad7 [docs] Fix formatting in DCO blockquote
Originally, each paragraph of the DCO was shown as a separate blockquote, leaving gaps between them. This adds `>` characters on the intervening blank lines so that the entire document is shown as a single block.

Signed-off-by: kj7rrv <sam@kj7rrv.com>
2025-06-20 06:17:01 +02:00
Mihail Mitrofanov
957afb1709 [android]: Fixed the appearance of an extra margin in the dialog when there is no title.
Also, add a tools:text attribute to the dialog_missed_maps.xml layout
for better preview in Android Studio.
2025-06-19 18:44:27 +02:00
Codeberg Translate
92d7499012 [strings] Update from Codeberg Translate
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: DCoderUltra <dcoderultra@noreply.codeberg.org>
Co-authored-by: Fjuro <git@alius.cz>
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: brtc <brtc@noreply.codeberg.org>
Co-authored-by: gedankenstuecke <gedankenstuecke@noreply.codeberg.org>
Co-authored-by: gpesquero <gpesquero@noreply.codeberg.org>
Co-authored-by: lennec <lennec@noreply.codeberg.org>
Co-authored-by: map-per <map-per@noreply.codeberg.org>
Co-authored-by: mirbyte <mirbyte@noreply.codeberg.org>
Co-authored-by: oxisol <oxisol@noreply.codeberg.org>
Co-authored-by: phama <phama@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/cs/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/es/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/fi/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/ja/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/pl/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/zh_Hans/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/zh_Hant/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/es/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/ja/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/pt/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/tr/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/zh_Hant/
Translate-URL: https://translate.codeberg.org/projects/comaps/appstore-descriptions/
Translate-URL: https://translate.codeberg.org/projects/comaps/appstore-descriptions/de/
Translate-URL: https://translate.codeberg.org/projects/comaps/appstore-descriptions/fi/
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/et/
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/tr/
Translate-URL: https://translate.codeberg.org/projects/comaps/google-play-descriptions/de/
Translate-URL: https://translate.codeberg.org/projects/comaps/google-play-descriptions/tr/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-plurals/fi/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-plurals/ja/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-plurals/pl/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-plurals/tr/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-plurals/zh_Hant/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/cs/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/es/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/fi/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/ja/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/pl/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/zh_Hans/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/zh_Hant/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios/ja/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios/zh_Hant/
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 Plurals
Translation: CoMaps/iOS UI Strings
2025-06-19 14:00:06 +00:00
Yannik Bloscheck
f5db0e7cce [styles] Regenerated files for improved light map style 2025-06-19 14:55:44 +02:00
Yannik Bloscheck
ee49ed57b2 [styles] Adjusted icons for improved light map style 2025-06-19 14:54:34 +02:00
Yannik Bloscheck
a7e06ce39d [styles] Improved light map style 2025-06-19 14:53:56 +02:00
Kiryl Kaveryn
f746ab2c2d [ios] Fix track stats collection trailing inset
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-06-19 16:56:12 +07:00
Kiryl Kaveryn
a88798fbf2 [ios] remove spacing and separator from the Track recording Place page
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-06-19 16:56:00 +07:00
Kiryl Kaveryn
18be61e789 [ios] disable ele chart interaction when the chart data is empty
to prevent crashing

Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-06-19 16:55:51 +07:00
Kiryl Kaveryn
494b00b862 [ios] hotfix track recording stop button action
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-06-19 16:55:41 +07:00
Francesco Gazzetta
99a0f3973e [desktop] Change Organic Maps to CoMaps in metainfo.xml and .desktop files 2025-06-19 10:47:28 +02:00
Yannik Bloscheck
ecc454a2bd [iOS] Rename scheme in workflows after rebrand 2025-06-18 10:21:13 +02:00
Jean-Baptiste
0051c7120d [android] Fix background color Material button
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
2025-06-18 08:45:32 +02:00
Konstantin Pastbin
b7e0c12409 [iOS] Rename import to CoMaps
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-06-17 11:36:04 +02:00
Kiryl Kaveryn
e2efbbe68c [ios] Review fixes
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-06-17 11:36:04 +02:00
Kiryl Kaveryn
d677112edd [ios] add TrackRecordingManager unit tests
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-06-17 11:36:04 +02:00
Kiryl Kaveryn
b79724f248 [ios] implement TrackRecording place page
1. add an new screen (layout)
2. add TR icon for the bottom tabbar
3. share current location from the TR PP
4. refactor TR manager to properly handle state updates and pass them to the LiveActivityManager and PlacePage
5. add init/update with TrackInfo/EleInfo methods to the PlacePageData and PlacePagePreviewData to update the PP state
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-06-17 11:36:04 +02:00
Kiryl Kaveryn
5d0b8f1c04 [ios] return the ElevationInfo for the current track recording
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-06-17 11:36:04 +02:00
Kiryl Kaveryn
48353637ac [ios] prevent icloud sync from failing when the cloud file doesn't exist
Issue: https://github.com/organicmaps/organicmaps/issues/10041
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-06-17 11:36:04 +02:00
Kiryl Kaveryn
f32462ce94 [ios] [github] add simulator pre-boot before running the tests
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-06-17 11:36:04 +02:00
Alexander Borsuk
f3bc6d9d8b [ios] Add random smoothly changed elevation to iOS Simulator for testing track recording
Signed-off-by: Alexander Borsuk <me@alex.bio>
2025-06-17 11:36:04 +02:00
Kiryl Kaveryn
529272cd54 [ios] Add save route as track button to the route building screen
Parity match with an Android

Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-06-17 11:36:04 +02:00
zyphlar
1362f8651d Bump
Signed-off-by: zyphlar <zyphlar@noreply.codeberg.org>
2025-06-17 10:16:57 +02:00
zyphlar
21b948c9e3 Add DCO check
Signed-off-by: zyphlar <zyphlar@noreply.codeberg.org>
2025-06-17 10:16:57 +02:00
oxisol
b5d6a2cd8a Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 100.0% (566 of 566 strings)

Translation: CoMaps/iOS UI Strings
Translate-URL: https://translate.codeberg.org/projects/comaps/ios/zh_Hant/
2025-06-16 18:12:26 +07:00
Codeberg Translate
195f380024 [strings] Update from Codeberg Translate
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: Laurent FAVOLE <lfavole@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 Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Co-authored-by: ZeljkoBG <zeljkobg@noreply.codeberg.org>
Co-authored-by: gedankenstuecke <gedankenstuecke@noreply.codeberg.org>
Co-authored-by: map-per <map-per@noreply.codeberg.org>
Co-authored-by: matheusgomesms <matheusgomesms@noreply.codeberg.org>
Co-authored-by: oxisol <oxisol@noreply.codeberg.org>
Co-authored-by: phama <phama@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/de/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/et/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/fi/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/ja/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/pt_BR/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/sr/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/zh_Hans/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/zh_Hant/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/zh_Hant_HK/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/en_GB/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/et/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/fi/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/fr/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/it/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/pt_BR/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/sr/
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/et/
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/fi/
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/fr/
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/sr/
Translate-URL: https://translate.codeberg.org/projects/comaps/google-play-descriptions/sr/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-plurals/pt_BR/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/de/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/et/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/fi/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/ja/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/pt_BR/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/sr/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/zh_Hans/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/zh_Hant/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios/ja/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios/zh_Hant/
Translation: CoMaps/Android - Map Feature Types
Translation: CoMaps/Android UI Strings
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-06-16 18:12:22 +07:00
Codeberg Translate
142e2ef7f5 [strings] Update from Codeberg Translate
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: Laurent FAVOLE <lfavole@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 Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Co-authored-by: ZeljkoBG <zeljkobg@noreply.codeberg.org>
Co-authored-by: phama <phama@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/et/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/fi/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/sr/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/zh_Hans/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/et/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/fi/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/fr/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/it/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/sr/
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/et/
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/fi/
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/fr/
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/sr/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/et/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/sr/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/zh_Hans/
Translation: CoMaps/Android - Map Feature Types
Translation: CoMaps/Android UI Strings
Translation: CoMaps/F-Droid app description
Translation: CoMaps/iOS - Map Feature Types
2025-06-16 09:34:31 +02:00
Konstantin Pastbin
bb76900376 [tests] Update KML placemarks uris to comaps.at
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-06-16 09:31:08 +02:00
Konstantin Pastbin
0708974fba [core] Update placemark uris to comaps.at in generated KML files
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-06-16 09:31:08 +02:00
Konstantin Pastbin
1e5f007a37 [iOS] Update app.comaps.test .gitignore
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-06-16 13:51:58 +07:00
map per
09c92e165f [styles] Regenerated
Signed-off-by: map per <map-per@gmx.de>
2025-06-15 20:25:40 +02:00
map per
5f7dbdb53b Don't use scuba diving icon for high diving
Signed-off-by: map per <map-per@gmx.de>
2025-06-15 20:25:40 +02:00
Andrei Shkrob
8badd445db [android-auto] Fix RouteSimulationProvider
Signed-off-by: Andrei Shkrob <andrei@shkrob.dev>
2025-06-15 23:51:53 +07:00
kavi khalique
0c4694a2cf [android] Fix jump of current location point (#10658)
* Remove check bypass for fused location updates

Signed-off-by: kavikhalique <kavikhalique3@gmail.com>

* discard close co-ord updates from different providers

Signed-off-by: kavikhalique <kavikhalique3@gmail.com>

* reject older timestamps

Signed-off-by: kavikhalique <kavikhalique3@gmail.com>

---------

Signed-off-by: kavikhalique <kavikhalique3@gmail.com>
2025-06-15 23:51:53 +07:00
Alexander Borsuk
2ec2bf42a5 [android] Fix crash when print log with emoji on Android 5 and 6
Warning with the unicode char code is displayed before this line

Signed-off-by: Alexander Borsuk <me@alex.bio>
2025-06-15 23:51:53 +07:00
hemanggs
b6ab812e0a [Android] Fixes Improper Application of insets on Android 5&6
Signed-off-by: hemanggs <hemangmanhas@gmail.com>
2025-06-15 23:51:53 +07:00
hemanggs
5a1c9fe6f3 [Android] UI Backgroud fix on Android 5 & 6
Signed-off-by: hemanggs <hemangmanhas@gmail.com>
2025-06-15 23:51:53 +07:00
kavikhalique
a8aed10677 increases touch area
Signed-off-by: kavikhalique <kavikhalique3@gmail.com>
2025-06-15 23:51:53 +07:00
euf
46f88cb54e [symbols] Update charging-station and fuel icons
Signed-off-by: Evgeny Fayvuzhinskiy <e.u.f@icloud.com>
2025-06-15 18:26:20 +02:00
Konstantin Pastbin
007630f1c3 [styles] Regenerate for man_made-crane
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-06-15 18:26:20 +02:00
Konstantin Pastbin
f31b6e9a1b [strings] Add man_made-crane
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-06-15 18:26:20 +02:00
Viktor Govako
95258d2083 [classif] Added man_made=crane.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2025-06-15 18:26:20 +02:00
map per
4c6dbd61d6 Changed background color of driving options
Signed-off-by: map per <map-per@gmx.de>
2025-06-15 18:07:50 +02:00
vipo
a191d013fd Changes for consistency with the Rest of the Document 2025-06-15 16:31:53 +02:00
vipo
38b40479b3 typo in english 2025-06-15 16:31:53 +02:00
vipo
fad8cec687 minor changes for consistency 2025-06-15 16:31:53 +02:00
vipo
9a22da29e3 consistency 2025-06-15 16:31:53 +02:00
Yannik Bloscheck
95ebac2516 Removed app links with main domain 2025-06-15 14:28:28 +02:00
Yannik Bloscheck
4c76d3d236 Added sharing domain to excepted domains 2025-06-15 13:49:14 +02:00
Yannik Bloscheck
074d443f0f More rebranding including the team identifier, url scheme, and links on about screen
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-06-15 18:33:52 +07:00
Matheus Gomes
d4e1d53c40 Rebranded the app for iOS 2025-06-15 18:32:35 +07:00
Codeberg Translate
51b669cfd1 [strings] Update from Codeberg Translate
Co-authored-by: AnanasSux <ananassux@noreply.codeberg.org>
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: DCoderUltra <dcoderultra@noreply.codeberg.org>
Co-authored-by: Fjuro <git@alius.cz>
Co-authored-by: Laurent FAVOLE <lfavole@noreply.codeberg.org>
Co-authored-by: Outbreak2096 <outbreak2096@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: gpesquero <gpesquero@noreply.codeberg.org>
Co-authored-by: map-per <map-per@noreply.codeberg.org>
Co-authored-by: paulb <paulb@noreply.codeberg.org>
Co-authored-by: phama <phama@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/fi/
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/nl/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/cs/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/de/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/es/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/fr/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/it/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/nl/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/zh_Hans/
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/pt/
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/tr/
Translate-URL: https://translate.codeberg.org/projects/comaps/google-play-descriptions/fi/
Translate-URL: https://translate.codeberg.org/projects/comaps/google-play-descriptions/tr/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/fi/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/nl/
Translation: CoMaps/Android - Map Feature Types
Translation: CoMaps/Android UI Strings
Translation: CoMaps/F-Droid app description
Translation: CoMaps/Google Play and Huawei AppGallery descriptions
Translation: CoMaps/iOS - Map Feature Types
2025-06-15 07:58:32 +00:00
vipo
ef15d93053 main: Readme.md Update - Playstore-Release (#412)
Updated the readme.md for the newest version on the Play Store
Co-authored-by: vipo <vipo@noreply.codeberg.org>
Co-committed-by: vipo <vipo@noreply.codeberg.org>
2025-06-14 17:05:27 +02:00
Johannes
306ac77939 Fix CPAlertAction.Style to ensure closure is called 2025-06-14 14:53:51 +02:00
hb0nd
1ec6ccd0d6 Fix contributing.md link
fixes https://codeberg.org/comaps/comaps/issues/408

Signed-off-by: Harry Bond <me@hbond.xyz>
2025-06-14 13:25:25 +01:00
map per
ab337f8de4 More specific feature names instead of 'unknown object'
Signed-off-by: map per <map-per@gmx.de>
2025-06-14 10:08:27 +02:00
map per
a1bb9769f3 Removed unused code for oauth2 client secret
Signed-off-by: map per <map-per@gmx.de>
2025-06-14 09:39:55 +02:00
map per
47c9940ee3 Add level to Android editor
Signed-off-by: map per <map-per@gmx.de>
2025-06-14 08:56:16 +02:00
map per
ddbbe244f2 [editor] More explanation for 'building_levels'
Signed-off-by: map per <map-per@gmx.de>
2025-06-14 08:32:06 +02:00
Codeberg Translate
c3f865a090 [strings] Update from Codeberg Translate
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: Laurent FAVOLE <lfavole@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: phama <phama@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/fi/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/fr/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/it/
Translate-URL: https://translate.codeberg.org/projects/comaps/google-play-descriptions/fi/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/fi/
Translation: CoMaps/Android - Map Feature Types
Translation: CoMaps/Android UI Strings
Translation: CoMaps/Google Play and Huawei AppGallery descriptions
Translation: CoMaps/iOS - Map Feature Types
2025-06-14 08:31:49 +02:00
Harry Bond
9fa56e57a0 [android] Use comaps.at for share links
Signed-off-by: Harry Bond <me@hbond.xyz>
2025-06-14 00:01:28 +01:00
Harry Bond
8e35f4e208 [ios] Use comaps.at for share links
Signed-off-by: Harry Bond <me@hbond.xyz>
2025-06-13 22:30:43 +01:00
Konstantin Pastbin
c280293894 [android] Apply bugfix updates to deps
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-06-13 19:19:13 +02:00
Konstantin Pastbin
29207fd964 Revert "[android] Make F-Droid builds use 'app.comaps' app id"
This reverts commit 307a6cc74f.
2025-06-13 19:16:54 +02:00
map per
73c6712476 Add alternative address tags to editor
Signed-off-by: map per <map-per@gmx.de>
2025-06-13 18:29:43 +02:00
Konstantin Pastbin
16dd652039 [fdroid] Fix app descriptions formatting
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-06-13 19:40:57 +07:00
Codeberg Translate
4b18d8ce2d [strings] Update from Codeberg Translate
Co-authored-by: AnanasSux <ananassux@noreply.codeberg.org>
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: Fjuro <git@alius.cz>
Co-authored-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Co-authored-by: ZeljkoBG <zeljkobg@noreply.codeberg.org>
Co-authored-by: gedankenstuecke <gedankenstuecke@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/cs/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/cs/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/es/
Translate-URL: https://translate.codeberg.org/projects/comaps/android/sr/
Translate-URL: https://translate.codeberg.org/projects/comaps/appstore-descriptions/tr/
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/tr/
Translate-URL: https://translate.codeberg.org/projects/comaps/google-play-descriptions/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/cs/
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
2025-06-12 19:19:56 +00:00
Harry Bond
0885804b11 Update README.md to include F-Droid
Signed-off-by: Harry Bond <me@hbond.xyz>
2025-06-12 21:19:53 +02:00
mcmbw
dfd4f20dcd Update docs/INSTALL.md
updated mac build instructions
2025-06-12 19:14:24 +02:00
metehan
b0e5f93109 Updated Translations.md (#48)
Updated translation guide for contributors

Reviewed-on: https://codeberg.org/comaps/comaps/pulls/48
Reviewed-by: Konstantin Pastbin <pastk@noreply.codeberg.org>
Co-authored-by: metehan <metehan@noreply.codeberg.org>
Co-committed-by: metehan <metehan@noreply.codeberg.org>
2025-06-12 19:06:44 +02:00
Jean-Baptiste
1e35bdaa0e [android] Migrate bottomsheet to Material components
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
2025-06-12 15:24:00 +02:00
Codeberg Translate
59fe3c08ab [strings] Update from Codeberg Translate
Co-authored-by: AnanasSux <ananassux@noreply.codeberg.org>
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/comaps/appstore-descriptions/tr/
Translate-URL: https://translate.codeberg.org/projects/comaps/fdroid-app-description/tr/
Translate-URL: https://translate.codeberg.org/projects/comaps/google-play-descriptions/
Translation: CoMaps/Apple AppStore description
Translation: CoMaps/F-Droid app description
Translation: CoMaps/Google Play and Huawei AppGallery descriptions
2025-06-12 10:49:45 +02:00
Jean-Baptiste
4e154fb10b [android] Migrate to Material toolbar components
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
2025-06-11 16:49:01 +02:00
Jean-Baptiste
6dee814ff5 [android] Migrate Android Auto screens to Material components
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
2025-06-11 15:10:12 +02:00
Mihail Mitrofanov
7df0565bc9 [android] Fix displayed map size on download error
When a map download fails, the displayed size in the UI should be the
total size of the map. This commit fixes that
discrepancy.
2025-06-11 14:01:50 +02:00
Eivind Samseth
52b31d31e4 Further simplification of getting sources section 2025-06-10 19:43:50 +02:00
Eivind Samseth
0324e37a1f Clarify iOS build instructions
I had to first run ./configure.sh, otherwise the iOS app build in Xcode failed due to missing boost includes
2025-06-10 19:32:11 +02:00
883 changed files with 21435 additions and 18282 deletions

View File

@@ -0,0 +1,8 @@
name: dco
on: [pull_request]
jobs:
check:
runs-on: codeberg-tiny
steps:
- uses: https://github.com/KineticCafe/actions-dco@v1

View File

@@ -41,7 +41,7 @@ jobs:
LANG: en_US.UTF-8 # Fastlane complains that the terminal is using ASCII. LANG: en_US.UTF-8 # Fastlane complains that the terminal is using ASCII.
LANGUAGE: en_US.UTF-8 LANGUAGE: en_US.UTF-8
LC_ALL: en_US.UTF-8 LC_ALL: en_US.UTF-8
TEST_RESULTS_BUNDLE_NAME: OMaps-Test-Results TEST_RESULTS_BUNDLE_NAME: CoMaps-Test-Results
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@@ -74,8 +74,8 @@ jobs:
shell: bash shell: bash
run: | run: |
xcodebuild test \ xcodebuild test \
-workspace xcode/omim.xcworkspace \ -workspace xcode/CoMaps.xcworkspace \
-scheme OMaps \ -scheme CoMaps \
-configuration Debug \ -configuration Debug \
-sdk iphonesimulator \ -sdk iphonesimulator \
-destination 'platform=iOS Simulator,name=iPhone 16 Pro Max,OS=latest' \ -destination 'platform=iOS Simulator,name=iPhone 16 Pro Max,OS=latest' \
@@ -97,8 +97,8 @@ jobs:
shell: bash shell: bash
run: | run: |
xcodebuild build \ xcodebuild build \
-workspace xcode/omim.xcworkspace \ -workspace xcode/CoMaps.xcworkspace \
-scheme OMaps \ -scheme CoMaps \
-configuration Release \ -configuration Release \
-destination 'generic/platform=iOS' \ -destination 'generic/platform=iOS' \
-quiet \ -quiet \

View File

@@ -15,6 +15,7 @@ jobs:
LANGUAGE: en_US.UTF-8 LANGUAGE: en_US.UTF-8
LC_ALL: en_US.UTF-8 LC_ALL: en_US.UTF-8
TEST_RESULTS_BUNDLE_NAME: CoMaps-Test-Results TEST_RESULTS_BUNDLE_NAME: CoMaps-Test-Results
SIMULATOR_DEVICE: 'iPhone 16 Pro Max'
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@@ -50,12 +51,15 @@ jobs:
if: matrix.buildType == 'Debug' if: matrix.buildType == 'Debug'
shell: bash shell: bash
run: | run: |
# Start sim before the build to make sure it's booted when tests start.
xcrun simctl boot "${{ env.SIMULATOR_DEVICE }}" || true
xcrun simctl bootstatus "${{ env.SIMULATOR_DEVICE }}" -b
xcodebuild test \ xcodebuild test \
-workspace xcode/omim.xcworkspace \ -workspace xcode/CoMaps.xcworkspace \
-scheme OMaps \ -scheme CoMaps \
-configuration Debug \ -configuration Debug \
-sdk iphonesimulator \ -sdk iphonesimulator \
-destination 'platform=iOS Simulator,name=iPhone 16 Pro Max,OS=latest' \ -destination "platform=iOS Simulator,name=${{ env.SIMULATOR_DEVICE }},OS=latest" \
-quiet \ -quiet \
-resultBundlePath ${{ env.TEST_RESULTS_BUNDLE_NAME }}.xcresult \ -resultBundlePath ${{ env.TEST_RESULTS_BUNDLE_NAME }}.xcresult \
CODE_SIGNING_REQUIRED=NO \ CODE_SIGNING_REQUIRED=NO \
@@ -74,8 +78,8 @@ jobs:
shell: bash shell: bash
run: | run: |
xcodebuild build \ xcodebuild build \
-workspace xcode/omim.xcworkspace \ -workspace xcode/CoMaps.xcworkspace \
-scheme OMaps \ -scheme CoMaps \
-configuration Release \ -configuration Release \
-destination 'generic/platform=iOS' \ -destination 'generic/platform=iOS' \
-quiet \ -quiet \

2
.gitignore vendored
View File

@@ -62,7 +62,7 @@ iphone/*/build/*
tools/emacsmode/build tools/emacsmode/build
**/DerivedData/* **/DerivedData/*
**/xcshareddata/* **/xcshareddata/*
!iphone/Maps/Maps.xcodeproj/xcshareddata/xcschemes/OMaps.xcscheme !iphone/Maps/Maps.xcodeproj/xcshareddata/xcschemes/CoMaps.xcscheme
**/xcuserdata **/xcuserdata
**/xcschemes **/xcschemes
iphone/**/*.moved-aside iphone/**/*.moved-aside

View File

@@ -29,16 +29,16 @@
A community-led free & open source maps app based on [OpenStreetMap](https://www.openstreetmap.org) data and reinforced with commitment to transparency, privacy and being not-for-profit. CoMaps is a fork/spin-off of Organic Maps, which in turn is a fork of Maps.ME. A community-led free & open source maps app based on [OpenStreetMap](https://www.openstreetmap.org) data and reinforced with commitment to transparency, privacy and being not-for-profit. CoMaps is a fork/spin-off of Organic Maps, which in turn is a fork of Maps.ME.
There are apps for Android and iOS (and ARM macOS). There are apps for Android and iOS (and ARM MacOS).
An alpha linux / macOS Qt desktop version, which is also suitable for linux phones. An alpha Linux / MacOS Qt desktop version, which is also suitable for Linux phones.
The first app release is available as an APK download now! We are still working on publishing on F-Droid, Google Play Store and iOS App Store as well, please stay tuned! The June app release is available on Google Play, F-Droid and as an APK to download now! We are working on publishing in the iOS App Store as well, please stay tuned!
<!-- <!--
[<img src="docs/badges/apple-appstore.png" alt="App Store" width="160">](https://apps.apple.com/app/comaps/id1567437057) [<img src="docs/badges/apple-appstore.png" alt="App Store" width="160">](https://apps.apple.com/app/comaps/id1567437057)
[<img src="docs/badges/google-play.png" alt="Google Play" width="160">](https://play.google.com/store/apps/details?id=app.comaps)
[<img src="docs/badges/fdroid.png" alt="F-Droid" width="160">](https://f-droid.org/en/packages/app.comaps/)
--> -->
[<img src="docs/badges/google-play.png" alt="Google Play" width="160">](https://play.google.com/store/apps/details?id=app.comaps.google)
[<img src="docs/badges/fdroid.png" alt="F-Droid" width="160">](https://f-droid.org/en/packages/app.comaps.fdroid/)
[<img src="docs/badges/codeberg.png" alt="Codeberg" width="160">](https://codeberg.org/comaps/comaps/releases) [<img src="docs/badges/codeberg.png" alt="Codeberg" width="160">](https://codeberg.org/comaps/comaps/releases)
<p float="left"> <p float="left">
@@ -52,7 +52,7 @@ The first app release is available as an APK download now! We are still working
**Respecting Privacy**: The app is designed with privacy in mind - does not identify people, does not track, and does not collect personal information. Ads-free. **Respecting Privacy**: The app is designed with privacy in mind - does not identify people, does not track, and does not collect personal information. Ads-free.
**Simple and Polished**: essential easy to use features that just work. **Simple and Polished**: Essential, easy to use features that just work.
**Saves Your Battery and Space**: Doesnt drain your battery like other navigation apps. Compact maps save precious space on your phone. **Saves Your Battery and Space**: Doesnt drain your battery like other navigation apps. Compact maps save precious space on your phone.

View File

@@ -169,6 +169,7 @@ android {
fdroid { fdroid {
dimension 'default' dimension 'default'
applicationIdSuffix '.fdroid'
versionName = android.defaultConfig.versionName + '-FDroid' versionName = android.defaultConfig.versionName + '-FDroid'
buildConfigField 'String', 'SUPPORT_MAIL', '"fdroid@comaps.app"' buildConfigField 'String', 'SUPPORT_MAIL', '"fdroid@comaps.app"'
} }

View File

@@ -14,21 +14,19 @@ Můžete se zde také připojit ke komunitě pomáhat s vytvářením nejlepší
• <b>Otevřené a transparentní rozhodování a nakládání s financemi, neziskovost a plně otevřený zdrojový kód.</b> • <b>Otevřené a transparentní rozhodování a nakládání s financemi, neziskovost a plně otevřený zdrojový kód.</b>
<b>Hlavní funkce</b>: <b>Hlavní funkce</b>:
<ul> • Stahovatelné podrobné mapy s místy, která nenajdete ani v Mapách Google
<li>Stahovatelné podrobné mapy s místy, která nenajdete ani v Mapách Google</li> • Outdoorový režim se zvýrazněnými turistickými trasami, tábořišti, vodními zdroji, vrcholy, vrstevnicemi atd.
<li>Outdoorový režim se zvýrazněnými turistickými trasami, tábořišti, vodními zdroji, vrcholy, vrstevnicemi atd.</li> • Pěší trasy a cyklostezky
<li>Pěší trasy a cyklostezky</li> • Body zájmu, jako jsou restaurace, čerpací stanice, hotely, obchody, vyhlídky a mnoho dalšího
<li>Body zájmu, jako jsou restaurace, čerpací stanice, hotely, obchody, vyhlídky a mnoho dalšího</li> • Hledání podle názvu nebo adresy nebo podle kategorie bodů zájmu
<li>Hledání podle názvu nebo adresy nebo podle kategorie bodů zájmu</li> • Navigace s hlasovými pokyny pro chůzi, jízdu na kole nebo řízení
<li>Navigace s hlasovými pokyny pro chůzi, jízdu na kole nebo řízení</li> • Uložení oblíbených míst jedním klepnutím
<li>Uložení oblíbených míst jedním klepnutím</li> • Offline články z Wikipedie
<li>Offline články z Wikipedie</li> • Vrstva metra a navigace v něm
<li>Vrstva metra a navigace v něm</li> • Záznam tras
<li>Záznam tras</li> • Export a import záložek a tras ve formátech KML, KMZ a GPX
<li>Export a import záložek a tras ve formátech KML, KMZ a GPX</li> • Tmavý režim k použití během noci
<li>Tmavý režim k použití během noci</li> • Zlepšování mapových dat pro všechny pomocí jednoduchého vestavěného editoru
<li>Zlepšování mapových dat pro všechny pomocí jednoduchého vestavěného editoru</li>
</ul>
<b>Svoboda je tady</b> <b>Svoboda je tady</b>
Objevujte své cesty, navigujte se světem se soukromím a komunitou na prvním místě! Objevujte své cesty, navigujte se světem se soukromím a komunitou na prvním místě!

View File

@@ -1 +1 @@
Jednoduchá navigace v mapě Objevte více na své cestě Vyvíjeno komunitou Jednoduchá navigace v mapě - Objevte více na své cestě Vyvíjeno komunitou

View File

@@ -14,7 +14,6 @@ Werde Teil der Community und hilf mit, die beste Karten-App zu entwickeln
‣ <b>Offen und transparent bei Entscheidungen und Finanzen, gemeinnützig und vollständig Open-Source</b> ‣ <b>Offen und transparent bei Entscheidungen und Finanzen, gemeinnützig und vollständig Open-Source</b>
<b>Hauptfunktionen</b>: <b>Hauptfunktionen</b>:
<ul>
• Detaillierte, herunterladbare Karten mit Orten, die bei Google Maps oft fehlen • Detaillierte, herunterladbare Karten mit Orten, die bei Google Maps oft fehlen
• Outdoor-Modus mit hervorgehobenen Wanderwegen, Campingplätzen, Wasserquellen, Gipfeln, Höhenlinien usw. • Outdoor-Modus mit hervorgehobenen Wanderwegen, Campingplätzen, Wasserquellen, Gipfeln, Höhenlinien usw.
• Geh- und Radwege • Geh- und Radwege

View File

@@ -1,8 +1,8 @@
OpenStreetMap Daten vom 2. Juni Kartenfarben aufgefrischt heller, wärmer, freundlicher!
Neue Einstellungsoption zum Ändern oder Ausblenden der "Über CoMaps" Schaltfläche ganz links OSM-Editor: „Stockwerk“ Feld hinzugefügt
Routen als GPS Track speichern Symbole für Tankstellen und Ladestationen aktualisiert
Qingdao Metro, Gärtnereien, Leitplanken, Leitern, Studios, Tanzsäle, Feuerstellen und Stundenhotels hinzugefügt Farben einiger UI Elemente überarbeitet
transparente Navigationsleiste im Light Mode Funktionierende Links zum Teilen von Orten
Mastodon und Bluesky Kontaktoptionen für POIs und im OSM-Editor hinzugefügt Falsch angezeigte Kartengröße nach Downloadfehlern korrigiert
Anzeige der Kompassgradzahl in der Richtungspfeilansicht Kleine Sprünge des Standortpfeils in bestimmten Fällen behoben
Übersetzungen aktualisiert Bugfixes für Android 5 & 6

View File

@@ -14,21 +14,19 @@ Join the community there and help make the best maps app
‣ <b>Open and Transparent Decision-making and Financials, Not-for-profit and Fully Open Source.</b> ‣ <b>Open and Transparent Decision-making and Financials, Not-for-profit and Fully Open Source.</b>
<b>Main Features</b>: <b>Main Features</b>:
<ul> • Downloadable detailed maps with places which are not available with Google Maps
<li>Downloadable detailed maps with places which are not available with Google Maps</li> • Outdoor mode with highlighted hiking trails, campsites, water sources, peaks, contour lines, etc
<li>Outdoor mode with highlighted hiking trails, campsites, water sources, peaks, contour lines, etc</li> • Walking paths and cycleways
<li>Walking paths and cycleways</li> • Points of interest like restaurants, gas stations, hotels, shops, sightseeings and many more
<li>Points of interest like restaurants, gas stations, hotels, shops, sightseeings and many more</li> • Search by name or an address or by point of interest category
<li>Search by name or an address or by point of interest category</li> • Navigation with voice announcements for walking, cycling, or driving
<li>Navigation with voice announcements for walking, cycling, or driving</li> • Bookmark your favorite places with a single tap
<li>Bookmark your favorite places with a single tap</li> • Offline Wikipedia articles
<li>Offline Wikipedia articles</li> • Subway transit layer and directions
<li>Subway transit layer and directions</li> • Track recording
<li>Track recording</li> • Export and import bookmarks and tracks in KML, KMZ, GPX formats
<li>Export and import bookmarks and tracks in KML, KMZ, GPX formats</li> • A dark mode to use during the night
<li>A dark mode to use during the night</li> • Improve map data for everyone using a basic built-in editor
<li>Improve map data for everyone using a basic built-in editor</li>
</ul>
<b>Freedom Is Here</b> <b>Freedom Is Here</b>
Discover your journey, navigate the world with privacy and community at the forefront! Discover your journey, navigate the world with privacy and community at the forefront!

View File

@@ -1,8 +1,8 @@
OpenStreetMap data as of June 2 refresh map colors - lighter, warmer, friendlier!
add a setting to change the leftmost button or hide it OSM editor: add a "level" field
save built routes as tracks update gas and charging stations icons
add Qingdao metro, plant nurseries, highway guard rails, ladders, studios, dance venues, firepits, love hotels update colors of some UI elements
transparent system navigation bar in the light mode fix location sharing links
add Mastodon and Bluesky contact options to POIs and OSM editor fix wrong displayed map size after download errors
display Azimuth angle in direction arrow view fix small location arrow jumps in some cases
update translations android 5&6 bugfixes

View File

@@ -0,0 +1,8 @@
• colores del mapa renovados - más claros, cálidos y amigables!
• editor OSM: campo "nivel" agregado
• actualización de íconos de carga de combustible y electricidad
• actualización de colores de algunos elementos de IU
• corrección de links para compartir ubicación
• corrección de tamaño incorrecto del mapa luego de errores de descarga
• corrección de pequeños saltos de flechas de posición en algunos casos
• corrección de bugs en Android 5 y 6

View File

@@ -14,21 +14,19 @@ Liitu kogukonnaga ja aita luua parimat kaardirakendust:
‣ <b>Organisatsioon on avatud ja kasutab läbipaistvat otsustusprotsessi ning rahastamist ega taotle kasumit. Rakendus on avatud lähtekoodiga.</b> ‣ <b>Organisatsioon on avatud ja kasutab läbipaistvat otsustusprotsessi ning rahastamist ega taotle kasumit. Rakendus on avatud lähtekoodiga.</b>
<b>Põhifunktsionaalsused</b>: <b>Põhifunktsionaalsused</b>:
<ul> • Allalaaditavad detailsed kaardid, mille sisu tihtipeale ei leia Google Mapsist
<li>Allalaaditavad detailsed kaardid, mille sisu tihtipeale ei leia Google Mapsist</li> • Kaardivaade välitingimuste jaoks, kus matkarajad, laagriplatsid, allikad, mäetipud, kontuurjooned ja palju muud vajalikku on esile tõstetud
<li>Kaardivaade välitingimuste jaoks, kus matkarajad, laagriplatsid, allikad, mäetipud, kontuurjooned ja palju muud vajalikku on esile tõstetud</li> • Jalgrajad, rattateed ning maanteed
<li>Jalgrajad, rattateed ning maanteed</li> • Huvipunktid, nagu restoranid, tanklad, hotellid, poed, vaatamisväärsused ja palju muud
<li>Huvipunktid, nagu restoranid, tanklad, hotellid, poed, vaatamisväärsused ja palju muud</li> • Otsida saad nime, aadressi või huvipunkti kategooria alusel
<li>Otsida saad nime, aadressi või huvipunkti kategooria alusel</li> • Tee juhatamine hääljuhiste abil toimib nii kõndimisel, rattasõidul kui auto juhtimisel
<li>Tee juhatamine hääljuhiste abil toimib nii kõndimisel, rattasõidul kui auto juhtimisel</li> • Ühe puudutusega saad oma lemmikkohad märkida järjehoidjana
<li>Ühe puudutusega saad oma lemmikkohad märkida järjehoidjana</li> • Vikipeedia artiklid, mida saad lugeda ilma võrguühenduseta
<li>Vikipeedia artiklid, mida saad lugeda ilma võrguühenduseta</li> • Metroode plaanid ja suunajuhised
<li>Metroode plaanid ja suunajuhised</li> • Raja või teekonna salvestamise võimalus
<li>Raja või teekonna salvestamise võimalus</li> • Järjehoidjate ja radade eksport ning import KML, KMZ ja GPX vormingutes
<li>Järjehoidjate ja radade eksport ning import KML, KMZ ja GPX vormingutes</li> • Tume kaardivaade kasutamiseks öösel
<li>Tume kaardivaade kasutamiseks öösel</li> • Kasutades lihtsat muutmisliidest saad kaarti kõikide huvides täiendada
<li>Kasutades lihtsat muutmisliidest saad kaarti kõikide huvides täiendada</li>
</ul>
<b>Vabadus on siin</b> <b>Vabadus on siin</b>
Uuri maailma ja avasta uusi teid - tee seda privaatselt ja kogukonnaga arvestades! Uuri maailma ja avasta uusi teid - tee seda privaatselt ja kogukonnaga arvestades!

View File

@@ -0,0 +1,32 @@
Yhteisövetoinen, ilmainen ja avoimeen lähdekoodiin perustuva karttasovellus, jonka pohjalla käytetään OpenStreetMapin avointa karttadataa. Sovelluksen kehityksessä on sitouduttu läpinäkyvyyteen, yksityisyyteen ja voittoa tavoittelemattomuuteen. CoMapsin projekti on haarautunut Organic Mapsista, joka taas on haarautunut aiemmin Maps.ME:stä
Lue lisää projektin tavotteista ja suunnasta osoitteesta <b><i>codeberg.org/comaps</i></b>.
Liity yhteisöön ja auta kehittämään paras saatavilla oleva karttasovellus
• Käytä sovellusta ja kerro siitä myös muille
• Anna palautetta ja raportoi ongelmia
• Päivitä karttoja, joko sovelluksessa tai OpenStreetMapin verkkosivuilla
‣ <b>Offline-painotteinen</b>: Suunnittele ja navigoi ulkomailla ilman mobiiliverkkoja. Kaikki sovelluksen toiminnot on suunniteltu käytettäväksi ilman verkkoyhteyttä.
‣ <b>Kunnioittaa yksityisyyttä</b>: Sovellus on suunniteltu yksilön yksityisyys silmälläpitäen. Sovellus ei tunnista tai kerää tietoja sinusta. Mainosvapaa.
‣ <b>Yksinkertainen ja viimeistelty</b>: Olennaiset ominaisuudet, joita on helppo käyttää.
‣ <b>Säästä akkua ja tallennustilaa</b>: Ei kuluta akkua, kuten muut navigointisovellukset. Kompaktit kartat säästävät arvokasta tallennustilaa puhelimessasi.
‣ <b>Ilmainen ja yhteisön luoma</b>: Vapaaehtoiset, kuten sinä olette auttaneet sovelluksen kehityksessä lisäämällä paikkoja OpenStreetMap:iin, testaamalla sovellusta ja antamalla palautetta. Voit myös auttaa kehittämällä ominaisuuksia ja lahjoittamalla sovelluskehitykseen
‣ <b>Avoin ja läpinäkyvä päätöksenteko sekä rahoitus. Voittoa tavoittelematon ja täysin avoimeen lähdekoodiin perustuva.</b>
<b>Tärkeimmät ominaisuudet</b>:
• Ladattavat yksityiskohtaiset kartat paikoista, joita ei löydy edes Google Maps:sta
• Ulkoilutila, josta löytyy korostettuna reitit, leirintäpaikat, vesipisteet, huiput ja korkeuserot yms.
• Kävely- ja pyörätiet
• Kiinnostavat paikat, kuten ravintolat, huoltoasemat, hotellit, kaupat, nähtävyydet ja monta muuta
• Etsi nimellä, osoitteella tai kiinnostavan paikan kategorialla
• Navigointi ääni-ilmoituksilla kävellessä, pyöräillessä tai ajaessa
• Tallenna suosikkipaikkasi yhdellä napautuksella
• Offline Wikipedia-artikkelit
• Maanalaisen liikenteen tasot ja ohjeet
• Reittien tallennus
• Tuo ja vie kirjanmerkkejä ja reittejä KML-, KMZ- ja GPX-formaateissa
• Tumma tila iltaa ja yötä varten
• Paranna karttadataa kaikille sisäänrakennetulla editorilla
<b>Vapaus on täällä</b>
Löydä matkasi ja navigoi maailmalla yksityisyyden ja yhteisön tukemana!

View File

@@ -1 +1 @@
CoMaps - Patikoi, pyöräile, autoile ilman verkkoyhteyttä yksityisesti CoMaps - Navigoi ilman verkkoyhteyttä yksityisesti

View File

@@ -14,21 +14,19 @@ Rejoignez la communauté et aidez-nous à créer la meilleure application de nav
‣ <b>Prises de décisions et comptes clairs et transparents, but non lucratif et complètement open source.</b> ‣ <b>Prises de décisions et comptes clairs et transparents, but non lucratif et complètement open source.</b>
<b>Fonctionnalités principales :</b> <b>Fonctionnalités principales :</b>
<ul> • Cartes détaillées téléchargeables avec des lieux non disponibles sur Google Maps
<li>Cartes détaillées téléchargeables avec des lieux non disponibles sur Google Maps</li> • Mode extérieur avec sentiers de randonnée, campings, sources d'eau, sommets, courbes de niveau, etc. surlignés
<li>Mode extérieur avec sentiers de randonnée, campings, sources d'eau, sommets, courbes de niveau, etc. surlignés</li> • Chemins piétons et pistes cyclables
<li>Chemins piétons et pistes cyclables</li> • Points d'intérêt comme des restaurants, stations-service, hôtels, magasins, lieux touristiques et bien plus
<li>Points d'intérêt comme des restaurants, stations-service, hôtels, magasins, lieux touristiques et bien plus</li> • Recherche par nom, adresse ou catégorie de point d'intérêt
<li>Recherche par nom, adresse ou catégorie de point d'intérêt</li> • Navigation avec annonces vocales pour la marche, le vélo ou la conduite
<li>Navigation avec annonces vocales pour la marche, le vélo ou la conduite</li> • Mettez en favori vos lieux préférés en un seul clic
<li>Mettez en favori vos lieux préférés en un seul clic</li> • Articles Wikipédia hors-ligne
<li>Articles Wikipédia hors-ligne</li> • Plan de métro et indications pour s'y rendre
<li>Plan de métro et indications pour s'y rendre</li> • Enregistrement des parcours
<li>Enregistrement des parcours</li> • Exportez et importez vos favoris aux formats KML, KMZ et GPX
<li>Exportez et importez vos favoris aux formats KML, KMZ et GPX</li> • Mode sombre pour utiliser pendant la nuit
<li>Mode sombre pour utiliser pendant la nuit</li> • Amélioration de la carte par tout le monde avec un éditeur simple intégré
<li>Amélioration de la carte par tout le monde avec un éditeur simple intégré</li>
</ul>
<b>La liberté est ici</b> <b>La liberté est ici</b>
Découvrez votre voyage, naviguez dans le monde en plaçant la vie privée et la communauté au premier plan ! Découvrez votre voyage, naviguez dans le monde en plaçant la vie privée et la communauté au premier plan !

View File

@@ -1,8 +1,8 @@
Données OpenStreetMap du 02 juin Mise à jour des couleurs de la carte, plus claires, plus chaudes et plus conviviales
Ajout d'une option pour personnaliser le bouton tout à gauche sur l'écran principal Editeur OSM: ajout du champ "level"
Ajout de la possibilité d'enregistrer un itinéraire en tant que traces GPS Mise à jour des icônes des stations-service et bornes de recharge
Ajout du métro de Qingdao, et divers objets sur la carte Mise à jour des couleurs de certains éléments d'interface
Support de la barre de navigation transparent en mode clair Correction de lien de partage
Ajout des tags Mastodon et Bluesky sur les lieux et dans l'éditeur Correction de la taille d'une carte suite à une erreur de téléchargement
Affichage de l'azimut Correction de saut de la localisation dans certaines situations
Mise à jour des traductions Corrections de bug sur Android 5&6

View File

@@ -1 +1 @@
CoMaps - Randonnée, vélo, conduite hors ligne en toute confidentialité CoMaps - Rando, vélo, conduite hors ligne & privée

View File

@@ -14,21 +14,19 @@ Pridružite se otvorenoj zajednici i pomozite izraditi najbolju aplikaciju za ka
‣ <b>Otvoreno i transparentno donošenje odluka i korištenja financija, Neprofitna i potpuno Otvorenog koda.</b> ‣ <b>Otvoreno i transparentno donošenje odluka i korištenja financija, Neprofitna i potpuno Otvorenog koda.</b>
<b>Glavne značajke</b>: <b>Glavne značajke</b>:
<ul> • Preuzimanje detaljnih karti s lokacijama koje nisu dostupne s Google kartama
<li>Preuzimanje detaljnih karti s lokacijama koje nisu dostupne s Google kartama</li> • Karte za izlete s istaknutim pješačkim stazama, kampovima, izvorima vode, planinskim vrhovima, konturnim linijama itd.
<li>Karte za izlete s istaknutim pješačkim stazama, kampovima, izvorima vode, planinskim vrhovima, konturnim linijama itd.</li> • Pješačke i biciklističke staze
<li>Pješačke i biciklističke staze</li> • Točke interesa kao što su restorani, benzinske crpke, hoteli, trgovine, vidikovci i još mnogo toga
<li>Točke interesa kao što su restorani, benzinske crpke, hoteli, trgovine, vidikovci i još mnogo toga</li> • Pretražujte po nazivu ili adresi ili po kategoriji interesa
<li>Pretražujte po nazivu ili adresi ili po kategoriji interesa</li> • Navigacija s glasovnim najavama za hodanje, vožnju biciklom ili automobilom
<li>Navigacija s glasovnim najavama za hodanje, vožnju biciklom ili automobilom</li> • Obilježite svoja omiljena mjesta jednim dodirom
<li>Obilježite svoja omiljena mjesta jednim dodirom</li> • Offline članci Wikipedije
<li>Offline članci Wikipedije</li> • Tranzitni sloj podzemne željeznice sa navigacijom
<li>Tranzitni sloj podzemne željeznice sa navigacijom</li> • Snimanje GPS tragova
<li>Snimanje GPS tragova</li> • Izvoz i uvoz oznaka i staza u KML, KMZ, i GPX formatima
<li>Izvoz i uvoz oznaka i staza u KML, KMZ, i GPX formatima</li> • Tamni način rada za korištenje tijekom noći
<li>Tamni način rada za korištenje tijekom noći</li> • Poboljšajte kartu za sve korisnike, koristeći osnovni ugrađeni uređivač karte
<li>Poboljšajte kartu za sve korisnike, koristeći osnovni ugrađeni uređivač karte</li>
</ul>
<b>Sloboda je ovdje</b> <b>Sloboda je ovdje</b>
Otkrijte svoje putovanje, navigirajte svijetom s privatnošću i zajednicom na prvom mjestu! Otkrijte svoje putovanje, navigirajte svijetom s privatnošću i zajednicom na prvom mjestu!

View File

@@ -14,21 +14,19 @@ Unisciti alla nostra comunità e aiutaci a creare la migliore app di mappe.
‣ <b>Aperta e Trasparente nel Processo Decisionale e Finanziario, Senza Scopo di Lucro e Completamente Open Source</b> ‣ <b>Aperta e Trasparente nel Processo Decisionale e Finanziario, Senza Scopo di Lucro e Completamente Open Source</b>
<b>Funzionalità principali</b>: <b>Funzionalità principali</b>:
<ul> • Scarica mappe dettagliate di luoghi che non sono disponibili su Google Maps
<li>Scarica mappe dettagliate di luoghi che non sono disponibili su Google Maps</li> • Modalità Outdoor con percorsi escursionistici, campeggi, sorgenti d'acqua, picchi, dislivelli ed altro evidenziati
<li>Modalità Outdoor con percorsi escursionistici, campeggi, sorgenti d'acqua, picchi, dislivelli ed altro evidenziati</li> • Strade pedonali e piste ciclabili
<li>Strade pedonali e piste ciclabili</li> • Punti d'interesse come ristoranti, stazioni di benzina, hotel, negozi, luoghi turistici e molto altro
<li>Punti d'interesse come ristoranti, stazioni di benzina, hotel, negozi, luoghi turistici e molto altro</li> • Cerca per nome, indirizzo o categoria
<li>Cerca per nome, indirizzo o categoria</li> • Navigazione con assistente vocale a piedi, in bici o in macchina
<li>Navigazione con assistente vocale a piedi, in bici o in macchina</li> • Salva i tuoi luoghi preferiti con un tocco
<li>Salva i tuoi luoghi preferiti con un tocco</li> • Leggi gli articoli Wikipedia Offline
<li>Leggi gli articoli Wikipedia Offline</li> • Cartina delle metropolitane con direzioni
<li>Cartina delle metropolitane con direzioni</li> • Registrazione del percorso
<li>Registrazione del percorso</li> • Esporta ed importa i tuoi luoghi preferiti e percorsi nei formati KML, KMZ o GPX
<li>Esporta ed importa i tuoi luoghi preferiti e percorsi nei formati KML, KMZ o GPX</li> • Modalità notturna per la notte
<li>Modalità notturna per la notte</li> • Migliora le mappe per tutti usando l'editor interno
<li>Migliora le mappe per tutti usando l'editor interno</li>
</ul>
<b>La Libertà è Qui</b> <b>La Libertà è Qui</b>
Esplora la tua nuova avventura, naviga il mondo con Privacy e la comunità in prima linea! Esplora la tua nuova avventura, naviga il mondo con Privacy e la comunità in prima linea!

View File

@@ -1,8 +0,0 @@
• Data di OpenStreetmap fino a giugno 2°
• Nuova impostazione per cambiare o modificare la positione del tasto sinistra
• Salvare i percorsi costruiti come tracce
• È stato aggiunto: metropolitana di Qingdao, giardinaggi, guardrail, scale, studio,
sala da ballo, focolari, love hotel
• Barra di navigatione transparente di sisteme in moda luce
• Aggiungi le opzioni di contatto Mastodon e Bluesky ai POI e all'editor di OSM
• Visualizza l'angolo di azimut nella freccia di direzione

View File

@@ -15,21 +15,19 @@ Junte-se à comunidade e ajude a criar o melhor aplicativo de mapas.
‣ <b>Tomada de decisões e finanças abertas e transparentes, sem fins lucrativos e totalmente de código aberto.</b> ‣ <b>Tomada de decisões e finanças abertas e transparentes, sem fins lucrativos e totalmente de código aberto.</b>
<b>Principais recursos</b>: <b>Principais recursos</b>:
<ul> • Mapas detalhados para download com locais não disponíveis no Google Maps
<li>Mapas detalhados para download com locais não disponíveis no Google Maps</li> • Modo ao ar livre com trilhas em destaque, acampamentos, fontes de água, picos, curvas de nível, etc.
<li>Modo ao ar livre com trilhas em destaque, acampamentos, fontes de água, picos, curvas de nível, etc.</li> • Trilhas para caminhada e ciclovias
<li>Trilhas para caminhada e ciclovias</li> • Pontos de interesse como restaurantes, postos de gasolina, hotéis, lojas, pontos turísticos e muito mais
<li>Pontos de interesse como restaurantes, postos de gasolina, hotéis, lojas, pontos turísticos e muito mais</li> • Pesquise por nome, endereço ou categoria de ponto de interesse
<li>Pesquise por nome, endereço ou categoria de ponto de interesse</li> • Navegação com anúncios de voz para caminhada, ciclismo ou direção
<li>Navegação com anúncios de voz para caminhada, ciclismo ou direção</li> • Marque seus lugares favoritos com um único toque
<li>Marque seus lugares favoritos com um único toque</li> • Artigos offline da Wikipédia
<li>Artigos offline da Wikipédia</li> • Caminho de transporte e direções do metrô
<li>Caminho de transporte e direções do metrô</li> • Gravação de trilhas
<li>Gravação de trilhas</li> • Exporte e importe favoritos e trilhas em Formatos KML, KMZ, GPX
<li>Exporte e importe favoritos e trilhas em Formatos KML, KMZ, GPX</li> • Um modo escuro para usar à noite
<li>Um modo escuro para usar à noite</li> • Aprimore os dados do mapa para todos usando um editor básico integrado
<li>Aprimore os dados do mapa para todos usando um editor básico integrado</li>
</ul>
<b>A Liberdade Chegou</b> <b>A Liberdade Chegou</b>
Descubra sua jornada, navegue pelo mundo com privacidade e comunidade em primeiro lugar! Descubra sua jornada, navegue pelo mundo com privacidade e comunidade em primeiro lugar!

View File

@@ -1,8 +1,8 @@
Dados do OSM de 2/06 Atualizadas as cores do mapa - mais claras, quentes e amigáveis!
Adicionada uma configuração para alterar ou ocultar o botão mais à esquerda Editor OSM: adicionado um campo de "andar"
Salve rotas construídas como trilhas Atualizados ícones de postos de gasolina e recarga
• Adicionado metrô de Qingdao, viveiros de plantas, guarda-corpos de rodovias, escadas, estúdios, casas de dança, fogueiras e motéis • Atualizadas cores de alguns elementos da interface do usuário
Barra de navegação do sistema transparente no modo claro Correção de links de compartilhamento de localização
Adicionadas opções de contato Mastodon e Bluesky aos POIs e ao editor OSM Correção de erros de tamanho de mapa exibidos incorretamente após download
Exibição de ângulo de azimute na visualização de seta de direção Correção de pequenos saltos na seta de localização em alguns casos
Novas traduções Correções de bugs do Android 5 e 6

View File

@@ -0,0 +1,55 @@
Um aplicativo de mapas gratuito e de código aberto, liderado pela comunidade, baseado em dados do OpenStreetMap e reforçado pelo compromisso com a transparência, privacidade e sem fins lucrativos. O CoMaps é um fork/spin-off do Organic Maps, que por sua vez é um fork do Maps.ME.
Leia mais sobre os motivos do projeto e sua direção em <b><i>codeberg.org/comaps</i></b>.
Junte-se à comunidade e ajude a criar o melhor aplicativo de mapas.
• Use o aplicativo e divulgue-o.
• Envie feedback e relate problemas.
• Atualize os dados do mapa no aplicativo ou no site do OpenStreetMap.
‣ <b>Foco offline</b>: Planeje e navegue em sua viagem ao exterior sem a necessidade de sinal de celular, pesquise pontos de referência durante uma caminhada distante, etc. Todas as funções do aplicativo foram projetadas para funcionar offline.
‣ <b>Respeitando a privacidade</b>: O aplicativo foi projetado com a privacidade em mente - não identifica pessoas, não rastreia e não coleta informações pessoais. Sem anúncios.
‣ <b>Simples e sofisticado</b>: recursos essenciais e fáceis de usar que simplesmente funcionam.
‣ <b>Economiza bateria e espaço</b>: Não consome muita bateria como outros aplicativos de navegação. Mapas compactos economizam espaço precioso no seu celular.
‣ <b>Gratuito e desenvolvido pela comunidade</b>: Pessoas como você ajudaram a desenvolver o aplicativo adicionando lugares ao OpenStreetMap, testando e dando feedback sobre os recursos e contribuindo com suas habilidades de desenvolvimento e dinheiro.
‣ <b>Tomada de decisões e finanças abertas e transparentes, sem fins lucrativos e totalmente de código aberto.</b>
<b>Principais recursos</b>:
• Mapas detalhados para download com locais não disponíveis no Google Maps
• Modo ao ar livre com trilhas em destaque, acampamentos, fontes de água, picos, curvas de nível, etc.
• Trilhas para caminhada e ciclovias
• Pontos de interesse como restaurantes, postos de gasolina, hotéis, lojas, pontos turísticos e muito mais
• Pesquise por nome, endereço ou por categoria de ponto de interesse
• Navegação com anúncios de voz para caminhadas, ciclismo ou direção
• Marque seus lugares favoritos com um único toque
• Artigos offline da Wikipédia
• Camada e direções de transporte público do metrô
• Gravação de trilhas
• Exporte e importe favoritos e trilhas nos formatos KML, KMZ e GPX
• Um modo escuro para usar à noite
• Aprimore os dados do mapa para todos usando um editor básico integrado
<b>A Liberdade Chegou</b>
Descubra sua jornada, navegue pelo mundo com privacidade e comunidade em primeiro lugar!

View File

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

View File

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

View File

@@ -1,28 +1,33 @@
Бесплатное картографическое приложение с открытым исходным кодом, основанное на данных OpenStreetMap и подкрепленное обязательствами по прозрачности, конфиденциальности и некоммерческому характеру. CoMaps - это форк/ответвление Organic Maps, который, в свою очередь, является форком Maps.ME. Бесплатное и свободное картографическое приложение, основанное на данных OpenStreetMap и подкреплённое обязательствами по прозрачности, конфиденциальности и некоммерческой направленности. CoMaps это ответвление от Organic Maps, которое, в свою очередь, является ответвлением от Maps.ME.
‣ <b>Приоритет на работу без интернета</b>: Планируйте и ориентируйтесь в путешествии за границей, не нуждаясь в сотовой связи и т.д. Все функции приложения рассчитаны на работу в автономном режиме. Подробнее о причинах проекта и его направлении читайте на <a href="https://codeberg.org/comaps">сайте</a>.
‣ <b>Соблюдение конфиденциальности</b>: Приложение разработано с учетом требований конфиденциальности - оно не идентифицирует людей, не отслеживает и не собирает личную информацию. Без рекламы.
‣ <b>Простота и Элегантность</b>: Необходимые и легкие в использовании функции, которые просто работают. Присоединяйтесь к сообществу и помогите создать лучшее приложение с картами
• Используйте приложение и распространяйте информацию о нём
• Оставляйте отзывы и сообщайте о проблемах
• Обновляйте данные карт в приложении или на веб-сайте OpenStreetMap
‣ <b>Приоритет на работу без интернета</b>: Планируйте и ориентируйтесь в путешествии за границей, не нуждаясь в сотовой связи и т.д. Всё в приложении рассчитано на работу в автономном режиме.
‣ <b>Соблюдение конфиденциальности</b>: Приложение разработано с учётом требований конфиденциальности — оно не идентифицирует людей, не отслеживает и не собирает личную информацию. Без рекламы.
‣ <b>Простота и отточенность</b>: Основные и простые в использовании функции, которые просто работают.
‣ <b>Экономия заряда батареи и места на устройстве</b>: Не разряжает аккумулятор, как другие приложения для навигации. Компактные карты экономят драгоценное место на вашем телефоне. ‣ <b>Экономия заряда батареи и места на устройстве</b>: Не разряжает аккумулятор, как другие приложения для навигации. Компактные карты экономят драгоценное место на вашем телефоне.
‣ <b>Бесплатное и созданное сообществом</b>: Люди, подобные вам, помогали создавать приложение, добавляя места в OpenStreetMap, тестируя и оставляя отзывы о функциях, а также вкладывая свои навыки и деньги в разработку.. ‣ <b>Бесплатное и созданное сообществом</b>: Такие люди, как и вы, помогали создавать приложение, добавляя места в OpenStreetMap, протестировав и оставляя отзывы о функциях, а также вложив свои навыки и деньги в разработку.
‣ <b>Открытое и прозрачное принятие решений, финансовая отчетность, некоммерческая организация и полностью открытый исходный код.</b> ‣ <b>Открытое и прозрачное принятие решений, финансовая отчётность, некоммерческая организация и полностью открытый исходный код.</b>
<b>Главные особенности</b>: <b>Главные возможности</b>:
<ul> • Скачиваемые и подробные карты с местами, которые недоступны в Google Maps
<li>Загружаемые и подробные карты с местами, которые недоступны в Google Maps</li> • Уличный режим с отмеченными туристическими тропами, кемпингами, источниками воды, вершинами, контурными линиями и т.д.
<li>Режим Outdoor с отмеченными туристическими тропами, кемпингами, источниками воды, вершинами, контурными линиями и т.д.</li> • Пешеходные переходы и велодорожки
<li>Пешеходные переходы и велодорожки</li> • Интересные места, такие как: рестораны, заправочные станции, гостиницы, магазины, достопримечательности и многое другое
<li>Точки интереса, такие как: рестораны, заправочные станции, отели, магазины, достопримечательности и многое другое</li> • Поиск по названию или адресу или по категории достопримечательностей
<li>Поиск по имени, адресу или категории достопримечательностей</li> • Навигация с голосовыми уведомлениями для пешеходов, велосипедистов или водителей
<li>Навигация с голосовыми уведомлениями для пешеходов, велосипедистов или водителей</li> • Возможность добавлять любимые места в закладки одним нажатием
<li>Возможность добавлять любимые места в закладки одним касанием</li> • Скачиваемые страницы Википедии
<li>Загружаемые страницы Википедии</li> • Слой общественного транспорта (метро)
<li>Слой общественного транспорта (метро)</li> • Запись маршрута
<li>Запись маршрута</li> • Экспорт и импорт закладок и маршрутов в форматах KML, KMZ, GPX
<li>Экспорт и импорт закладок и маршрутов в форматах KML, KMZ, GPX</li> • Тёмный режим для использования в ночное время
<li>Темный режим для использования в ночное время</li> • Улучшение данных карты для всех с помощью базового встроенного редактора
<li>Улучшение картографических данных для всех с помощью базового встроенного редактора</li>
<li>Поддержка Android Auto и CarPlay</li>
</ul>
<i>Свобода здесь - Открой для себя поездки, навигацию по миру, ставя приватность и сообщество во главе</i> <b>Свобода здесь</b>
Откройте для себя путешествия, навигацию по миру, ставя во главе приватность и сообщество!

View File

@@ -1,7 +1,8 @@
карты OpenStreetMap от 2 июня обновлены цвета карты — теперь они светлее, теплее и дружелюбнее
настройка для изменения функции левой кнопки или её скрытия редактор OSM: добавлено поле «этаж»
сохранение построенных маршрутов в виде треков обновлены иконки заправок и зарядных станций
добавлены: метро в Qingdao, питомники растений, отбойники на шоссе, постоянные лестницы-стремянки, студии, места для танцев, кострища, отели любви обновлены цвета некоторых элементов интерфейса
прозрачная полоска с системными кнопками (в светлом режиме) исправлена ссылка на карту при попытке поделиться местоположением
в объекты на карте (а также в их редактор) добавлены Mastodon и Bluesky контакты исправлено неверное отображение размера карты после ошибок загрузки
к стрелке направления на выбранный объект добавлен азимут исправлены мелкие скачки стрелки местоположения в некоторых случаях
• исправления ошибок для Android 5 и 6

View File

@@ -0,0 +1 @@
Простая навигация по карте — Откройте больше за ваше путешествие. От сообщества

View File

@@ -0,0 +1 @@
CoMaps - Карты и путешествия с приватностью

View File

@@ -0,0 +1,33 @@
Бесплатна апликација отвореног кода коју је обављала заједница и заснива се на ОпенСтреетМап-у подацима, усмерени транспарентност, приватност и непрофитни. ЦОМПАПС је Апликације за органске карте виљушка, које је пак форк мапс.ме.
Прочитајте о разлозима пројекта и његовог правца на <b><i>codeberg.org/comaps</i></b>
Придружите се отвореној заједници и помозите да направимо најбољу апликацију за мапе
• Користите апликацију и проширите глас о томе
• Дајте повратне информације и пријавите проблеме
• Ажурирајте податке на мапи у апликацији или на веб локацији OpenStreetMap
‣<b>фокусирано на офлајн Вар </b>: Планирајте и управљајте путовањем у иностранству без потребе за мобилним услугама, тражите путне тачке док је на даљинском покрету, итд.
Све апликације су дизајниране за рад ван мреже.
‣<b> Поштовање приватности </b>: Апликација је осмишљена задржавања у уму приватност - не идентификује људе, не прати или прикупља личне податке. Нема реклама.
‣ <b> Једноставно и елегантно </b>: Апликација је тривијална за употребу и једноставно функционише.
‣ <b> Чува вашу батерију и простор </b>: не конзумира батерију као остале навигационе апликације. Компактне картице сачувајте драгоцени простор на вашем телефону.
‣ <b> Отворено и направио је заједницу </b>: Људи попут вас је помогли да додају апликацију додавањем локација на OpenStreetMap-у, тестирању и давање повратних информација о апликацији и доприносе вашим развојним вештинама и новцу.
‣ <b> Отворено и транспарентно доношење одлука и употреба финансија, непрофитна и потпуно отворена извора. </ Б>
<b> Главне карактеристике </b>:
• Преузмите детаљне мапе са локацијама које нису доступне са Гоогле мапама
• Улазнице за излете са истакнутим планинарским стазама, камповима, изворима воде, планинске врхове, контурне линије итд.
• Стазе за планинарење и бицикле
• Тачке интереса као што су ресторани, бензинске пумпе, хотели, продавнице, погледа и још много тога
• Претражите име или адресу или по категоријама камате
• навигација са гласовним најавама за ходање, бициклизам или аутомобил
• Означите своја омиљена места једним додиром
• Офлајн чланци Википедије
• транзитни слој подземне пруге са навигацијом
• Снимање ГПС трагова
• Ознака и увоз и увоз у KML, KMZ, GPX формате
• Тамни режим за употребу током ноћи
• Побољшајте карту за све кориснике, користећи основни уредни уредник мапе
<b> Слобода је овде </b>
Откријте своје путовање, крећете се са свијетом са приватношћу и заједницом на првом месту!

View File

@@ -0,0 +1,8 @@
• освежене су боје мапе светлије, топлије, пријатније!
у OSM едитору је додато поље „спрат“
• ажуриране су иконице бензинских пумпи и станица за пуњење
• ажуриране су боје неких елемената корисничког интерфејса
• поправљени су линкови за дељење локације
• поправљена је погрешно приказана величина мапе након грешака при преузимању
• исправљена су мала поскакивања стрелице локације у неким случајевима
• исправљене су грешке за Android 5 и 6

View File

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

View File

@@ -0,0 +1,32 @@
OpenStreetMap'in verilerine ve kar amacı gütmeyen olma taahhüdündeki topluluk liderliğine dayanan şeffaflık, gizlilik, ücretsiz ve açık kaynaklı haritalar uygulaması. Comaps, Organic Maps çatalı/düzenlemesidir, bu da bir Maps.ME çatalıdır.
Projenin sebepleri ve rotası hakkında <b><i>codeberg.org/comaps</i></b> adresinden bilgi edinebilirsiniz.
Oradaki topluluğa katılın ve en iyi harita uygulamasını yapmanıza yardımcı olun
• Uygulamayı kullanın ve bu bilgiyi yayın
• Geri bildirim verin ve sorunları bildirin
• Uygulamada veya OpenStreetMap internet sitesinde harita verilerini güncelleyin
‣ <b>Çevrimdışı odaklı</b>: Hücresel veriye ihtiyaç duymadan yurt dışında seyahatinizi planlayın ve gezin, uzak bir yürüyüş sırasında durak noktaları arama, vb. Tüm uygulama işlevleri çevrimdışı çalışacak şekilde tasarlanmıştır.
‣ <b>Gizliliğe saygı gösterir</b>: Uygulama gizlilik göz önünde bulundurularak tasarlanmıştır - insanları fişlemez, izlemez ve kişisel bilgileri toplamaz. Reklamsızdır.
‣ <b>Basit ve parlak</b>: Sadece işe yarayan kullanımı kolay özellikler.
‣ <b>Pilinizi ve hafızanızı kurtarın</b>: Pilinizi diğer gezinme uygulamaları gibi boşaltmaz. Sıkıştırılmış haritalar telefonunuzdaki değerli hafızadan tasarruf eder.
‣ <b>Özgür ve topluluk tarafından inşa edilmiştir</b>: Sizin gibi insanlar, OpenStreetMap'e yerler ekleyerek, özellikleri test edip hakkında geri bildirim vererek, geliştirme becerileri ve paralarıyla katkıda bulunarak uygulamanın oluşturulmasına yardımcı oldu.
‣ <b>Açık, şeffaf finans ve karar verme, kar amacı gütmeyen ve tamamen açık kaynaklı.</b>
<b>Ana Özellikler</b>:
• Google Haritalarda mevcut olmayan yerlerle, indirilebilir ve ayrıntılı haritalar
• Vurgulanmış yürüyüş parkurları, kamp alanları, su kaynakları, zirveler, yükseklik çizgileri, vb.
• Yürüyüş ve bisiklet yolları
• Lokantalar, benzin istasyonları, oteller, mağazalar, şahin tepeleri ve daha fazla ilgi çekici nokta
• Ada, adrese veya ilgi alanına göre arayın
• Yürüyüş, bisiklete binme veya sürüş için sesli bildirimlerle gezinme
• En sevdiğiniz yerlere tek bir dokunuşla yer işareti koyun
• Çevrimdışı Vikipedi makaleleri
• Metro katmanı ve tarifler
• Rota kaydı
• KML, KMZ, GPX biçimlerindeki yer imlerini ve izlerini dışa veya içe aktarın
• Gece boyunca kullanılacak karanlık kip
• Temel yerleşik bir arayüz kullanan herkes için harita verilerini geliştirin
<b>Özgürlük Burada</b>
Yolculuğunuzu keşfedin, dünyayı gizlilik ve topluluk desteğiyle gezin!

View File

@@ -0,0 +1 @@
Kolayca gezinin - Seyahat etmenin ötesini bulun - Gönüllüler tarafından yapıldı

View File

@@ -0,0 +1 @@
CoMaps - İnternetsiz Seyahat Edin

View File

@@ -14,21 +14,19 @@
‣ <b>决策问责、财务透明、非营利性、完全开源。</b> ‣ <b>决策问责、财务透明、非营利性、完全开源。</b>
<b>主要功能</b> <b>主要功能</b>
<ul> • 可下载详细的地图包括许多Google地图中未显示的地方
<li>可下载详细的地图包括许多Google地图中未显示的地方</li> • 突出显示远足路线、露营地、水源、山峰、等高线等的户外模式
<li>突出显示远足路线、露营地、水源、山峰、等高线等的户外模式</li> • 步行道和自行车道
<li>步行道和自行车道</li> • 餐厅、加油站、酒店、商店、景点等众多兴趣点
<li>餐厅、加油站、酒店、商店、景点等众多兴趣点</li> • 按名称、地址或兴趣点类别搜索
<li>按名称、地址或兴趣点类别搜索</li> • 步行、骑车或驾驶时,可通过语音提示进行导航
<li>步行、骑车或驾驶时,可通过语音提示进行导航</li> • 一键收藏您中意的地点
<li>一键收藏您中意的地点</li> • 离线阅读维基百科文章
<li>离线阅读维基百科文章</li> • 地铁交通图层和路线指示
<li>地铁交通图层和路线指示</li> • 轨迹记录
<li>轨迹记录</li> • 以 KML、KMZ 和 GPX 格式导出和导入书签和轨迹
<li>以 KML、KMZ 和 GPX 格式导出和导入书签和轨迹</li> • 选择天暗后自动开启的黑暗模式
<li>选择天暗后自动开启的黑暗模式</li> • 使用基本的内置编辑器来编辑 OpenStreetMap 地点,帮助大家改进地图数据
<li>使用基本的内置编辑器来编辑 OpenStreetMap 地点,帮助大家改进地图数据</li>
</ul>
<b>自由在此</b> <b>自由在此</b>
探索您的旅程,以隐私和社区为本,畅游世界! 探索您的旅程,以隐私和社区为本,畅游世界!

View File

@@ -0,0 +1,8 @@
• 刷新地图颜色-更浅、更暖、更友好!
• OSM 编辑器:添加“楼层”字段
• 更新加油站和充电站图标
• 更新部分用户界面组件的颜色
• 修复位置共享的链接
• 修复下载后错误显示地图大小的问题
• 修复定位箭头偶尔轻微跳动的问题
• Android 5&6 错误修复

View File

@@ -14,21 +14,19 @@
‣ <b>決策問責、財務透明、非營利性、完全開源。</b> ‣ <b>決策問責、財務透明、非營利性、完全開源。</b>
<b>主要功能</b> <b>主要功能</b>
<ul> • 可下載詳細的地圖包括許多Google地圖中未顯示的地方
<li>可下載詳細的地圖包括許多Google地圖中未顯示的地方</li> • 突出顯示遠足路線、露營地、水源、山峰、等高線等的戶外模式
<li>突出顯示遠足路線、露營地、水源、山峰、等高線等的戶外模式</li> • 步道和自行車道
<li>步道和自行車道</li> • 餐廳、加油站、旅館、商店、景點等眾多興趣點
<li>餐廳、加油站、旅館、商店、景點等眾多興趣點</li> • 按名稱、地址或興趣點類別搜尋
<li>按名稱、地址或興趣點類別搜尋</li> • 步行、騎車或駕駛時,可透過語音提示進行導航
<li>步行、騎車或駕駛時,可透過語音提示進行導航</li> • 一鍵收藏您喜愛的地點
<li>一鍵收藏您喜愛的地點</li> • 離線閱讀維基百科文章
<li>離線閱讀維基百科文章</li> • 列車運輸圖層及路線指示
<li>列車運輸圖層及路線指示</li> • 軌跡記錄
<li>軌跡記錄</li> • 以 KML、KMZ 和 GPX 格式匯出和匯入書籤和軌跡
<li>以 KML、KMZ 和 GPX 格式匯出和匯入書籤和軌跡</li> • 選擇天暗後自動開啟的黑暗模式
<li>選擇天暗後自動開啟的黑暗模式</li> • 使用基本的內建編輯器來編輯 OpenStreetMap 地點,幫助大家改進地圖資料
<li>使用基本的內建編輯器來編輯 OpenStreetMap 地點,幫助大家改進地圖資料</li>
</ul>
<b>自由在此</b> <b>自由在此</b>
探索您的旅程,以隱私和社群為本,暢遊世界! 探索您的旅程,以隱私和社群為本,暢遊世界!

View File

@@ -0,0 +1,8 @@
• 刷新地圖顏色-更淺、更暖、更友好!
• OSM 編輯器:新增「樓層」欄位
• 更新加油站和充電站圖示
• 更新某些使用者介面元件的顏色
• 修正位置分享的連結
• 修正下載後錯誤顯示地圖尺寸的問題
• 修正定位箭頭偶爾輕微跳動的問題
• Android 5&6 錯誤修正

View File

@@ -1 +1 @@
version: 2025.03.02-7-FDroid+25030207 version: 2025.06.22-5-FDroid+25062205

View File

@@ -1 +1 @@
Jednoduchá navigace v mapě Objevte více na své cestě Vyvíjeno komunitou Jednoduchá navigace v mapě - Objevte více na své cestě Vyvíjeno komunitou

View File

@@ -1 +1 @@
CoMaps Navigace se soukromím CoMaps - Navigace se soukromím

View File

@@ -1 +1 @@
CoMaps: Navigation Datenschutz CoMaps

View File

@@ -0,0 +1,36 @@
Yhteisön johtama vapaa ja avoimeen lähdekoodiin perustuva karttasovellus, jonka karttadata perustuu OpenStreetMap:n avoimeen dataan. Sovelluksessa painottuu vahva sitoutuminen läpinäkyvyyteen, yksityisyyteen ja voittoa tavoittelemattomaan toimintaan.
Liity yhteisöön ja auta kehittämään parasta karttasovellusta
• Käytä sovellusta ja levitä sanaa
• Anna palautetta ja raportoi ongelmista
• Päivitä karttadataa sovelluksessa tai OpenStreetMap:n verkkosivuilla
<i>Palautteesi ja 5-tähden arvostelu on paras tukesi meille!</i>
‣ <b>Yksinkertainen ja viimeistelty</b>: Olennaiset ominaisuudet, joita on helppo käyttää.
‣ <b>Offline-painotteinen</b>: Suunnittele ja navigoi matkasi ilman verkkoyhteyttä. Etsi reittipisteitä retkilläsi. Kaikki sovelluksen toiminnot on suunniteltu käytettäväksi ilman verkkoyhteyttä.
‣ <b>Kunnioittaa yksityisyyttä</b>: Sovellus on suunniteltu yksityisyyttä silmälläpitäen. Sovellu ei tunnista ihmisä, seuraa toimintaasi, eikä kerää henkilökohtaisia tietojasi. Mainosvapaa.
‣ <b>Säästää akkua ja tilaa</b>: Ei kuluta akkua, kuten toiset karttasovellukset. Kompaktit kartat säästävät tilaa puhelimessasi.
‣ <b>Ilmainen ja yhteisön rakentama</b>: Ihmiset, kuten sinä ovat auttaneet sovelluksen kehityksessä lisäämällä paikkoja OpenStreetMap:iin, testaamalla sovellusta ja antamalla palautetta. Voit auttaa myös kehittämällä sovellusta ja lahjoittamalla sovelluskehitykseen.
‣ <b>Avoin ja läpinäkyvä päätöksenteko ja rahoitus. Voittoa tavoittelematon ja täysin avoimeen lähdekoodiin perustuva.</b>
<b>Tärkeimmät ominaisuudet</b>:
• Ladattavat yksityiskohtaiset kartat paikoista, joita ei löydy edes Google Maps:sta
• Ulkoilutila, josta löytyy korostettuna reitit, leirintäpaikat, vesipisteet, huiput ja korkeuserot yms.
• Kävely- ja pyörätiet
• Kiinnostavat paikat, kuten ravintolat, huoltoasemat, hotellit, kaupat, nähtävyydet ja monta muuta
• Etsi nimellä, osoitteella tai kiinnostavan paikan kategorialla
• Navigointi ääni-ilmoituksilla kävellessä, pyöräillessä tai ajaessa
• Tallenna suosikkipaikkasi yhdellä napautuksella
• Offline Wikipedia-artikkelit
• Maanalaisen liikenteen tasot ja ohjeet
• Reittien tallennus
• Tuo ja vie kirjanmerkkejä ja reittejä KML-, KMZ- ja GPX-formaateissa
• Tumma tila iltaa ja yötä varten
• Paranna karttadataa kaikille sisäänrakennetulla editorilla
• Android Auto -tuki
Raportoi sovellusvirheistä, ehdota ideoita liity yhteisöön osoitteessa <b><i>comaps.app</i></b>
<b>Vapaus on täällä</b>
Löydä matkasi, navigoi maailmassa yksityisyyden ja yhteisön tukemana!

View File

@@ -1,4 +1,4 @@
Una app sviluppata dalla comunità, gratuita e open-source, basata su OpenStreetMap e sull'impegno alla trasparenza, al rispetto della Privacy senza scopo di lucro. CoMaps è uno spin-off di Organic Maps, che a sua volta deriva da Maps.ME. Una app sviluppata dalla comunità, gratuita e open-source, basata su OpenStreetMap e sull'impegno alla trasparenza, al rispetto della Privacy senza scopo di lucro.
Unisciti alla nostra comunità e aiutaci a creare la migliore app di mappe. Unisciti alla nostra comunità e aiutaci a creare la migliore app di mappe.
• usa l'app e consigliala • usa l'app e consigliala

View File

@@ -0,0 +1 @@
Eenvoudige kaartnavigatie - Ontdek meer van je reis - Gemaakt door de community

View File

@@ -0,0 +1 @@
CoMaps - Navigeer met privacy

View File

@@ -0,0 +1,38 @@
Бесплатное и открытое приложение с картами, созданное сообществом на основе картографических данных OpenStreetMap и подкрепленное стремлением к прозрачности, уважению конфиденциальности и некоммерческой направленностью.
Подробнее о причинах проекта и его направлении читайте на <a href="https://codeberg.org/comaps">сайте</a>.
Присоединяйтесь к сообществу и помогите создать лучшее приложение с картами
• Используйте приложение и распространяйте информацию о нём
• Оставляйте отзывы и сообщайте о проблемах
• Обновляйте данные карт в приложении или на веб-сайте OpenStreetMap
<i>Ваши отзыв и звёздочки будут для нас лучшей поддержкой!</i>
‣ <b>Приоритет на работу без интернета</b>: Планируйте и ориентируйтесь в путешествии за границей, не нуждаясь в сотовой связи и т.д. Всё в приложении рассчитано на работу в автономном режиме.
‣ <b>Соблюдение конфиденциальности</b>: Приложение разработано с учётом требований конфиденциальности — оно не идентифицирует людей, не отслеживает и не собирает личную информацию. Без рекламы.
‣ <b>Простота и отточенность</b>: Основные и простые в использовании функции, которые просто работают.
‣ <b>Экономия заряда батареи и места на устройстве</b>: Не разряжает аккумулятор, как другие приложения для навигации. Компактные карты экономят драгоценное место на вашем телефоне.
‣ <b>Бесплатное и созданное сообществом</b>: Такие люди, как и вы, помогали создавать приложение, добавляя места в OpenStreetMap, протестировав и оставляя отзывы о функциях, а также вложив свои навыки и деньги в разработку.
‣ <b>Открытое и прозрачное принятие решений, финансовая отчётность, некоммерческая организация и полностью открытый исходный код.</b>
<b>Главные возможности</b>:
• Скачиваемые и подробные карты с местами, которые недоступны в Google Maps
• Уличный режим с отмеченными туристическими тропами, кемпингами, источниками воды, вершинами, контурными линиями и т.д.
• Пешеходные переходы и велодорожки
• Интересные места, такие как: рестораны, заправочные станции, гостиницы, магазины, достопримечательности и многое другое
• Поиск по названию или адресу или по категории достопримечательностей
• Навигация с голосовыми уведомлениями для пешеходов, велосипедистов или водителей
• Возможность добавлять любимые места в закладки одним нажатием
• Скачиваемые страницы Википедии
• Слой общественного транспорта (метро)
• Запись маршрута
• Экспорт и импорт закладок и маршрутов в форматах KML, KMZ, GPX
• Тёмный режим для использования в ночное время
• Улучшение данных карты для всех с помощью базового встроенного редактора
• Поддержка Андроид Авто
Пожалуйста сообщайте о ошибках, предлагайте идеи и присоединяйтесь к сообществу на сайте <a href="https://comaps.app">comaps.app</a>.
<b>Свобода!</b>
Откройте для себя путешествия, навигацию по миру, ставя во главе приватность и сообщество!

View File

@@ -0,0 +1 @@
Простая навигация по карте — Откройте больше за ваше путешествие. От сообщества

View File

@@ -0,0 +1 @@
CoMaps - Оффлайн навигация

View File

@@ -1,6 +1,6 @@
Бесплатна апликација за мапе отвореног кода коју води заједница заснована на OpenStreetMap подацима и ојачана посвећеношћу транспарентности, приватности и непрофитности. Бесплатна апликација за мапе отвореног кода коју води заједница заснована на OpenStreetMap подацима и ојачана посвећеношћу транспарентности, приватности и непрофитности.
Придружите се заједници и помозите да направите најбољу навигацију Придружите се заједници и помозите да направимо најбољу навигацију
• Користите апликацију и ширите информације о њој • Користите апликацију и ширите информације о њој
• Оставите повратне информације и пријавите проблеме • Оставите повратне информације и пријавите проблеме
• Ажурирајте мапе из апликације или на сајту OpenStreetMap • Ажурирајте мапе из апликације или на сајту OpenStreetMap
@@ -32,5 +32,5 @@
Молимо Вас да пријавите проблеме са апликацијом, предложите идеје и придружите се нашој заједници на <b><i>comaps.app</i></b> страни. Молимо Вас да пријавите проблеме са апликацијом, предложите идеје и придружите се нашој заједници на <b><i>comaps.app</i></b> страни.
<b>Сад је слободно</b> <b>Сад је слободна</b>
Откријте своје путовање, путујте светом с приватношћу и заједницом на челу! Откријте своје путовање, путујте светом с приватношћу и заједницом на челу!

View File

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

View File

@@ -1 +1 @@
CoMaps - навигација CoMaps - Navigacija

View File

@@ -0,0 +1 @@
Kolayca gezinin - Seyahat etmenin ötesini bulun - Gönüllüler tarafından yapıldı

View File

@@ -0,0 +1 @@
CoMaps - Gizlilikle Gezin

View File

@@ -119,7 +119,7 @@
<data android:scheme="http"/> <data android:scheme="http"/>
<data android:scheme="https"/> <data android:scheme="https"/>
<data android:host="comaps.app"/> <data android:host="comaps.at"/>
</intent-filter> </intent-filter>
<intent-filter> <intent-filter>

View File

@@ -34,7 +34,6 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.annotation.StyleRes; import androidx.annotation.StyleRes;
import androidx.annotation.UiThread; import androidx.annotation.UiThread;
import androidx.appcompat.widget.Toolbar;
import androidx.core.app.ActivityCompat; import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat; import androidx.core.content.ContextCompat;
import androidx.core.view.ViewCompat; import androidx.core.view.ViewCompat;
@@ -120,6 +119,8 @@ import app.organicmaps.widget.menu.MainMenu;
import app.organicmaps.widget.placepage.PlacePageController; import app.organicmaps.widget.placepage.PlacePageController;
import app.organicmaps.widget.placepage.PlacePageData; import app.organicmaps.widget.placepage.PlacePageData;
import app.organicmaps.widget.placepage.PlacePageViewModel; import app.organicmaps.widget.placepage.PlacePageViewModel;
import com.google.android.material.appbar.MaterialToolbar;
import com.google.android.material.dialog.MaterialAlertDialogBuilder; import com.google.android.material.dialog.MaterialAlertDialogBuilder;
import com.google.android.material.floatingactionbutton.FloatingActionButton; import com.google.android.material.floatingactionbutton.FloatingActionButton;
@@ -187,7 +188,7 @@ public class MwmActivity extends BaseMwmFragmentActivity
private MapFragment mMapFragment; private MapFragment mMapFragment;
private View mPointChooser; private View mPointChooser;
private Toolbar mPointChooserToolbar; private MaterialToolbar mPointChooserToolbar;
private RoutingPlanInplaceController mRoutingPlanInplaceController; private RoutingPlanInplaceController mRoutingPlanInplaceController;

View File

@@ -15,11 +15,12 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.annotation.StyleRes; import androidx.annotation.StyleRes;
import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.Toolbar;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentFactory; import androidx.fragment.app.FragmentFactory;
import androidx.fragment.app.FragmentManager; import androidx.fragment.app.FragmentManager;
import com.google.android.material.appbar.MaterialToolbar;
import app.organicmaps.MwmApplication; import app.organicmaps.MwmApplication;
import app.organicmaps.R; import app.organicmaps.R;
import app.organicmaps.SplashActivity; import app.organicmaps.SplashActivity;
@@ -148,7 +149,7 @@ public abstract class BaseMwmFragmentActivity extends AppCompatActivity
onBackPressed(); onBackPressed();
} }
protected Toolbar getToolbar() protected MaterialToolbar getToolbar()
{ {
return findViewById(R.id.toolbar); return findViewById(R.id.toolbar);
} }

View File

@@ -10,11 +10,13 @@ import androidx.annotation.CallSuper;
import androidx.annotation.LayoutRes; import androidx.annotation.LayoutRes;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import androidx.core.view.ViewCompat; import androidx.core.view.ViewCompat;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView; import androidx.recyclerview.widget.RecyclerView;
import com.google.android.material.appbar.MaterialToolbar;
import app.organicmaps.R; import app.organicmaps.R;
import app.organicmaps.util.UiUtils; import app.organicmaps.util.UiUtils;
import app.organicmaps.util.Utils; import app.organicmaps.util.Utils;
@@ -23,7 +25,7 @@ import app.organicmaps.widget.PlaceholderView;
public abstract class BaseMwmRecyclerFragment<T extends RecyclerView.Adapter> extends Fragment public abstract class BaseMwmRecyclerFragment<T extends RecyclerView.Adapter> extends Fragment
{ {
private Toolbar mToolbar; private MaterialToolbar mToolbar;
@SuppressWarnings("NotNullFieldNotInitialized") @SuppressWarnings("NotNullFieldNotInitialized")
@NonNull @NonNull

View File

@@ -6,11 +6,13 @@ import androidx.annotation.CallSuper;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.annotation.StringRes; import androidx.annotation.StringRes;
import androidx.appcompat.widget.Toolbar;
import androidx.core.view.ViewCompat; import androidx.core.view.ViewCompat;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentFactory; import androidx.fragment.app.FragmentFactory;
import androidx.fragment.app.FragmentManager; import androidx.fragment.app.FragmentManager;
import com.google.android.material.appbar.MaterialToolbar;
import app.organicmaps.R; import app.organicmaps.R;
import app.organicmaps.util.UiUtils; import app.organicmaps.util.UiUtils;
import app.organicmaps.util.WindowInsetUtils.PaddingInsetsListener; import app.organicmaps.util.WindowInsetUtils.PaddingInsetsListener;
@@ -26,7 +28,7 @@ public abstract class BaseToolbarActivity extends BaseMwmFragmentActivity
{ {
super.onSafeCreate(savedInstanceState); super.onSafeCreate(savedInstanceState);
Toolbar toolbar = getToolbar(); MaterialToolbar toolbar = getToolbar();
if (toolbar != null) if (toolbar != null)
{ {
int title = getToolbarTitle(); int title = getToolbarTitle();
@@ -42,7 +44,7 @@ public abstract class BaseToolbarActivity extends BaseMwmFragmentActivity
} }
} }
protected void setupHomeButton(@NonNull Toolbar toolbar) protected void setupHomeButton(@NonNull MaterialToolbar toolbar)
{ {
UiUtils.showHomeUpButton(toolbar); UiUtils.showHomeUpButton(toolbar);
} }
@@ -92,7 +94,7 @@ public abstract class BaseToolbarActivity extends BaseMwmFragmentActivity
if (title != null) if (title != null)
{ {
Toolbar toolbar = getToolbar(); MaterialToolbar toolbar = getToolbar();
if (toolbar != null && toolbar.getTitle() != null) if (toolbar != null && toolbar.getTitle() != null)
{ {
mLastTitle = toolbar.getTitle().toString(); mLastTitle = toolbar.getTitle().toString();

View File

@@ -480,6 +480,13 @@ class DownloaderAdapter extends RecyclerView.Adapter<DownloaderAdapter.ViewHolde
UiUtils.showIf(mSearchResultsMode && !TextUtils.isEmpty(found), mFoundName); UiUtils.showIf(mSearchResultsMode && !TextUtils.isEmpty(found), mFoundName);
long size = getMapDisplaySize();
mSize.setText(StringUtils.getFileSizeString(mFragment.requireContext(), size));
mStatusIcon.update(mItem);
}
private long getMapDisplaySize()
{
long size; long size;
if (mItem.status == CountryItem.STATUS_ENQUEUED || if (mItem.status == CountryItem.STATUS_ENQUEUED ||
mItem.status == CountryItem.STATUS_PROGRESS || mItem.status == CountryItem.STATUS_PROGRESS ||
@@ -487,13 +494,16 @@ class DownloaderAdapter extends RecyclerView.Adapter<DownloaderAdapter.ViewHolde
{ {
size = mItem.enqueuedSize; size = mItem.enqueuedSize;
} }
else if (mItem.status == CountryItem.STATUS_FAILED ||
mItem.status == CountryItem.STATUS_DOWNLOADABLE)
{
size = mItem.totalSize;
}
else else
{ {
size = ((!mSearchResultsMode && mMyMapsMode) ? mItem.size : mItem.totalSize); size = ((!mSearchResultsMode && mMyMapsMode) ? mItem.size : mItem.totalSize);
} }
return size;
mSize.setText(StringUtils.getFileSizeString(mFragment.requireContext(), size));
mStatusIcon.update(mItem);
} }
} }

View File

@@ -189,6 +189,7 @@ public class EditorFragment extends BaseMwmFragment implements View.OnClickListe
initMetadataEntry(Metadata.MetadataType.FMD_WEBSITE, R.string.error_enter_correct_web); initMetadataEntry(Metadata.MetadataType.FMD_WEBSITE, R.string.error_enter_correct_web);
initMetadataEntry(Metadata.MetadataType.FMD_WEBSITE_MENU, R.string.error_enter_correct_web); initMetadataEntry(Metadata.MetadataType.FMD_WEBSITE_MENU, R.string.error_enter_correct_web);
initMetadataEntry(Metadata.MetadataType.FMD_EMAIL, R.string.error_enter_correct_email); initMetadataEntry(Metadata.MetadataType.FMD_EMAIL, R.string.error_enter_correct_email);
initMetadataEntry(Metadata.MetadataType.FMD_LEVEL, R.string.error_enter_correct_level);
initMetadataEntry(Metadata.MetadataType.FMD_CONTACT_FEDIVERSE, R.string.error_enter_correct_fediverse_page); initMetadataEntry(Metadata.MetadataType.FMD_CONTACT_FEDIVERSE, R.string.error_enter_correct_fediverse_page);
initMetadataEntry(Metadata.MetadataType.FMD_CONTACT_FACEBOOK, R.string.error_enter_correct_facebook_page); initMetadataEntry(Metadata.MetadataType.FMD_CONTACT_FACEBOOK, R.string.error_enter_correct_facebook_page);
initMetadataEntry(Metadata.MetadataType.FMD_CONTACT_INSTAGRAM, R.string.error_enter_correct_instagram_page); initMetadataEntry(Metadata.MetadataType.FMD_CONTACT_INSTAGRAM, R.string.error_enter_correct_instagram_page);
@@ -431,8 +432,7 @@ public class EditorFragment extends BaseMwmFragment implements View.OnClickListe
// Details // Details
View mBlockLevels = view.findViewById(R.id.block_levels); View mBlockLevels = view.findViewById(R.id.block_levels);
mBuildingLevels = findInputAndInitBlock(mBlockLevels, R.drawable.ic_floor, mBuildingLevels = findInputAndInitBlock(mBlockLevels, R.drawable.ic_floor, R.string.editor_building_levels);
getString(R.string.editor_storey_number, Editor.nativeGetMaxEditableBuildingLevels()));
mBuildingLevels.setInputType(InputType.TYPE_CLASS_NUMBER); mBuildingLevels.setInputType(InputType.TYPE_CLASS_NUMBER);
mInputBuildingLevels = mBlockLevels.findViewById(R.id.custom_input); mInputBuildingLevels = mBlockLevels.findViewById(R.id.custom_input);
View blockPhone = view.findViewById(R.id.block_phone); View blockPhone = view.findViewById(R.id.block_phone);
@@ -446,6 +446,8 @@ public class EditorFragment extends BaseMwmFragment implements View.OnClickListe
R.drawable.ic_website_menu, R.string.website_menu, InputType.TYPE_TEXT_VARIATION_URI); R.drawable.ic_website_menu, R.string.website_menu, InputType.TYPE_TEXT_VARIATION_URI);
View emailBlock = initBlock(view, Metadata.MetadataType.FMD_EMAIL, R.id.block_email, View emailBlock = initBlock(view, Metadata.MetadataType.FMD_EMAIL, R.id.block_email,
R.drawable.ic_email, R.string.email, InputType.TYPE_TEXT_VARIATION_EMAIL_ADDRESS); R.drawable.ic_email, R.string.email, InputType.TYPE_TEXT_VARIATION_EMAIL_ADDRESS);
View levelBlock = initBlock(view, Metadata.MetadataType.FMD_LEVEL, R.id.block_level,
R.drawable.ic_level_white, R.string.editor_level, InputType.TYPE_CLASS_NUMBER);
View fediverseContactBlock = initBlock(view, Metadata.MetadataType.FMD_CONTACT_FEDIVERSE, R.id.block_fediverse, View fediverseContactBlock = initBlock(view, Metadata.MetadataType.FMD_CONTACT_FEDIVERSE, R.id.block_fediverse,
R.drawable.ic_mastodon_white, R.string.mastodon, InputType.TYPE_TEXT_VARIATION_URI); R.drawable.ic_mastodon_white, R.string.mastodon, InputType.TYPE_TEXT_VARIATION_URI);
View facebookContactBlock = initBlock(view, Metadata.MetadataType.FMD_CONTACT_FACEBOOK, R.id.block_facebook, View facebookContactBlock = initBlock(view, Metadata.MetadataType.FMD_CONTACT_FACEBOOK, R.id.block_facebook,
@@ -503,6 +505,7 @@ public class EditorFragment extends BaseMwmFragment implements View.OnClickListe
mDetailsBlocks.put(Metadata.MetadataType.FMD_WEBSITE, websiteBlock); mDetailsBlocks.put(Metadata.MetadataType.FMD_WEBSITE, websiteBlock);
mDetailsBlocks.put(Metadata.MetadataType.FMD_WEBSITE_MENU, websiteMenuBlock); mDetailsBlocks.put(Metadata.MetadataType.FMD_WEBSITE_MENU, websiteMenuBlock);
mDetailsBlocks.put(Metadata.MetadataType.FMD_EMAIL, emailBlock); mDetailsBlocks.put(Metadata.MetadataType.FMD_EMAIL, emailBlock);
mDetailsBlocks.put(Metadata.MetadataType.FMD_LEVEL, levelBlock);
mDetailsBlocks.put(Metadata.MetadataType.FMD_OPERATOR, operatorBlock); mDetailsBlocks.put(Metadata.MetadataType.FMD_OPERATOR, operatorBlock);
mSocialMediaBlocks.put(Metadata.MetadataType.FMD_CONTACT_FEDIVERSE, fediverseContactBlock); mSocialMediaBlocks.put(Metadata.MetadataType.FMD_CONTACT_FEDIVERSE, fediverseContactBlock);

View File

@@ -213,7 +213,7 @@ public class LocationHelper implements BaseLocationProvider.Listener
if (mSavedLocation != null) if (mSavedLocation != null)
{ {
if (!LocationUtils.isFromFusedProvider(location) && !LocationUtils.isLocationBetterThanLast(location, mSavedLocation)) if (!LocationUtils.isLocationBetterThanLast(location, mSavedLocation))
{ {
Logger.d(TAG, "The new " + location + " is worse than the last " + mSavedLocation); Logger.d(TAG, "The new " + location + " is worse than the last " + mSavedLocation);
return; return;

View File

@@ -2,6 +2,7 @@ package app.organicmaps.location;
import android.content.Context; import android.content.Context;
import android.location.Location; import android.location.Location;
import android.os.SystemClock;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
@@ -57,6 +58,7 @@ class RouteSimulationProvider extends BaseLocationProvider
location.setLatitude(mPoints[mCurrentPoint].mLat); location.setLatitude(mPoints[mCurrentPoint].mLat);
location.setLongitude(mPoints[mCurrentPoint].mLon); location.setLongitude(mPoints[mCurrentPoint].mLon);
location.setAccuracy(1.0f); location.setAccuracy(1.0f);
location.setElapsedRealtimeNanos(SystemClock.elapsedRealtimeNanos());
mListener.onLocationChanged(location); mListener.onLocationChanged(location);
mCurrentPoint += 1; mCurrentPoint += 1;
UiThread.runLater(this::nextPoint, INTERVAL_MS); UiThread.runLater(this::nextPoint, INTERVAL_MS);

View File

@@ -481,6 +481,11 @@ public class MapButtonsController extends Fragment
.setAllSides() .setAllSides()
.build(); .build();
ViewCompat.setOnApplyWindowInsetsListener(mFrame, insetsListener); ViewCompat.setOnApplyWindowInsetsListener(mFrame, insetsListener);
// Fixes insets on older Androids and with a search opened via API on all Androids.
if (android.os.Build.VERSION.SDK_INT <= android.os.Build.VERSION_CODES.Q)
mFrame.postDelayed(() -> ViewCompat.requestApplyInsets(mFrame), 1250);
else
mFrame.post(() -> ViewCompat.requestApplyInsets(mFrame));
} }
@Override @Override

View File

@@ -38,6 +38,8 @@ public class RoutingErrorDialogFragment extends BaseRoutingErrorDialogFragment
ResultCodesHelper.getDialogTitleSubtitle(requireContext(), mResultCode, mMissingMaps.size()); ResultCodesHelper.getDialogTitleSubtitle(requireContext(), mResultCode, mMissingMaps.size());
Pair<String, String> titleMessage = resHolder.getTitleMessage(); Pair<String, String> titleMessage = resHolder.getTitleMessage();
if (!TextUtils.isEmpty(titleMessage.first))
{
TextView titleView = new TextView(requireContext()); TextView titleView = new TextView(requireContext());
titleView.setText(titleMessage.first); titleView.setText(titleMessage.first);
titleView.setPadding(65, 32, 32, 16); titleView.setPadding(65, 32, 32, 16);
@@ -46,7 +48,7 @@ public class RoutingErrorDialogFragment extends BaseRoutingErrorDialogFragment
titleView.setEllipsize(TextUtils.TruncateAt.END); titleView.setEllipsize(TextUtils.TruncateAt.END);
titleView.setTypeface(null, Typeface.BOLD); titleView.setTypeface(null, Typeface.BOLD);
builder.setCustomTitle(titleView); builder.setCustomTitle(titleView);
}
mMessage = titleMessage.second; mMessage = titleMessage.second;
builder.setNegativeButton(resHolder.getCancelBtnResId(), null); builder.setNegativeButton(resHolder.getCancelBtnResId(), null);
if (ResultCodesHelper.isDownloadable(mResultCode, mMissingMaps.size())) if (ResultCodesHelper.isDownloadable(mResultCode, mMissingMaps.size()))

View File

@@ -16,7 +16,6 @@ import androidx.activity.result.contract.ActivityResultContracts;
import androidx.annotation.CallSuper; import androidx.annotation.CallSuper;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import androidx.core.view.ViewCompat; import androidx.core.view.ViewCompat;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager; import androidx.fragment.app.FragmentManager;
@@ -47,6 +46,7 @@ import app.organicmaps.util.WindowInsetUtils;
import app.organicmaps.widget.PlaceholderView; import app.organicmaps.widget.PlaceholderView;
import app.organicmaps.widget.SearchToolbarController; import app.organicmaps.widget.SearchToolbarController;
import com.google.android.material.appbar.AppBarLayout; import com.google.android.material.appbar.AppBarLayout;
import com.google.android.material.appbar.MaterialToolbar;
import com.google.android.material.floatingactionbutton.ExtendedFloatingActionButton; import com.google.android.material.floatingactionbutton.ExtendedFloatingActionButton;
import com.google.android.material.tabs.TabLayout; import com.google.android.material.tabs.TabLayout;
@@ -226,7 +226,7 @@ public class SearchFragment extends BaseMwmFragment
private void updateFrames() private void updateFrames()
{ {
final boolean hasQuery = mToolbarController.hasQuery(); final boolean hasQuery = mToolbarController.hasQuery();
Toolbar toolbar = mToolbarController.getToolbar(); MaterialToolbar toolbar = mToolbarController.getToolbar();
AppBarLayout.LayoutParams lp = (AppBarLayout.LayoutParams) toolbar.getLayoutParams(); AppBarLayout.LayoutParams lp = (AppBarLayout.LayoutParams) toolbar.getLayoutParams();
lp.setScrollFlags(hasQuery ? AppBarLayout.LayoutParams.SCROLL_FLAG_ENTER_ALWAYS lp.setScrollFlags(hasQuery ? AppBarLayout.LayoutParams.SCROLL_FLAG_ENTER_ALWAYS
| AppBarLayout.LayoutParams.SCROLL_FLAG_SCROLL : 0); | AppBarLayout.LayoutParams.SCROLL_FLAG_SCROLL : 0);

View File

@@ -13,7 +13,7 @@ public final class Constants
public static class Url public static class Url
{ {
public static final String SHORT_SHARE_PREFIX = "cm://"; public static final String SHORT_SHARE_PREFIX = "cm://";
public static final String HTTP_SHARE_PREFIX = "https://comaps.app/"; public static final String HTTP_SHARE_PREFIX = "https://comaps.at/";
public static final String MAILTO_SCHEME = "mailto:"; public static final String MAILTO_SCHEME = "mailto:";
public static final String MAIL_SUBJECT = "?subject="; public static final String MAIL_SUBJECT = "?subject=";
@@ -23,7 +23,6 @@ public final class Constants
public static final String MASTODON = "https://floss.social/@comaps"; public static final String MASTODON = "https://floss.social/@comaps";
public static final String FB_OM_COMMUNITY_HTTP = "https://www.facebook.com/profile.php?id=61575286559965"; public static final String FB_OM_COMMUNITY_HTTP = "https://www.facebook.com/profile.php?id=61575286559965";
public static final String FB_OM_COMMUNITY_NATIVE = "fb://profile/61575286559965"; public static final String FB_OM_COMMUNITY_NATIVE = "fb://profile/61575286559965";
//public static final String TWITTER = "https://twitter.com/user";
public static final String CODE_REPO = "https://codeberg.org/comaps/comaps"; public static final String CODE_REPO = "https://codeberg.org/comaps/comaps";

View File

@@ -84,6 +84,9 @@ public class LocationUtils
public static boolean isLocationBetterThanLast(@NonNull Location newLocation, @NonNull Location lastLocation) public static boolean isLocationBetterThanLast(@NonNull Location newLocation, @NonNull Location lastLocation)
{ {
if (newLocation.getElapsedRealtimeNanos() < lastLocation.getElapsedRealtimeNanos())
return false;
// As described in isAccuracySatisfied, GPS may have zero accuracy "for some reasons". // As described in isAccuracySatisfied, GPS may have zero accuracy "for some reasons".
if (isFromGpsProvider(lastLocation) && lastLocation.getAccuracy() == 0.0f) if (isFromGpsProvider(lastLocation) && lastLocation.getAccuracy() == 0.0f)
return true; return true;

View File

@@ -27,7 +27,6 @@ import androidx.annotation.DimenRes;
import androidx.annotation.IdRes; import androidx.annotation.IdRes;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.StringRes; import androidx.annotation.StringRes;
import androidx.appcompat.widget.Toolbar;
import androidx.core.content.ContextCompat; import androidx.core.content.ContextCompat;
import androidx.core.content.res.ResourcesCompat; import androidx.core.content.res.ResourcesCompat;
import androidx.core.graphics.Insets; import androidx.core.graphics.Insets;
@@ -37,6 +36,8 @@ import androidx.core.view.WindowInsetsControllerCompat;
import androidx.recyclerview.widget.RecyclerView; import androidx.recyclerview.widget.RecyclerView;
import app.organicmaps.MwmApplication; import app.organicmaps.MwmApplication;
import app.organicmaps.R; import app.organicmaps.R;
import com.google.android.material.appbar.MaterialToolbar;
import com.google.android.material.textfield.TextInputLayout; import com.google.android.material.textfield.TextInputLayout;
import java.util.Objects; import java.util.Objects;
@@ -193,7 +194,7 @@ public final class UiUtils
hide(tv); hide(tv);
} }
public static void showHomeUpButton(Toolbar toolbar) public static void showHomeUpButton(MaterialToolbar toolbar)
{ {
toolbar.setNavigationIcon(ThemeUtils.getResource(toolbar.getContext(), androidx.appcompat.R.attr.homeAsUpIndicator)); toolbar.setNavigationIcon(ThemeUtils.getResource(toolbar.getContext(), androidx.appcompat.R.attr.homeAsUpIndicator));
} }
@@ -297,7 +298,7 @@ public final class UiUtils
systemInsets.right, view.getPaddingBottom()); systemInsets.right, view.getPaddingBottom());
} }
public static void setupNavigationIcon(@NonNull Toolbar toolbar, public static void setupNavigationIcon(@NonNull MaterialToolbar toolbar,
@NonNull View.OnClickListener listener) @NonNull View.OnClickListener listener)
{ {
View customNavigationButton = toolbar.findViewById(R.id.back); View customNavigationButton = toolbar.findViewById(R.id.back);
@@ -311,14 +312,14 @@ public final class UiUtils
} }
} }
public static void setupHomeUpButtonAsNavigationIcon(@NonNull Toolbar toolbar, public static void setupHomeUpButtonAsNavigationIcon(@NonNull MaterialToolbar toolbar,
@NonNull View.OnClickListener listener) @NonNull View.OnClickListener listener)
{ {
UiUtils.showHomeUpButton(toolbar); UiUtils.showHomeUpButton(toolbar);
toolbar.setNavigationOnClickListener(listener); toolbar.setNavigationOnClickListener(listener);
} }
public static void clearHomeUpButton(@NonNull Toolbar toolbar) public static void clearHomeUpButton(@NonNull MaterialToolbar toolbar)
{ {
toolbar.setNavigationIcon(null); toolbar.setNavigationIcon(null);
toolbar.setNavigationOnClickListener(null); toolbar.setNavigationOnClickListener(null);

View File

@@ -3,14 +3,15 @@ package app.organicmaps.util.bottomsheet;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.LinearLayout; import android.widget.LinearLayout;
import android.widget.TextView;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.recyclerview.widget.RecyclerView; import androidx.recyclerview.widget.RecyclerView;
import com.google.android.material.imageview.ShapeableImageView;
import com.google.android.material.textview.MaterialTextView;
import app.organicmaps.R; import app.organicmaps.R;
import app.organicmaps.location.TrackRecorder; import app.organicmaps.location.TrackRecorder;
import app.organicmaps.util.Config; import app.organicmaps.util.Config;
@@ -49,7 +50,7 @@ public class MenuAdapter extends RecyclerView.Adapter<MenuAdapter.ViewHolder>
public void onBindViewHolder(ViewHolder viewHolder, final int position) public void onBindViewHolder(ViewHolder viewHolder, final int position)
{ {
final MenuBottomSheetItem item = dataSet.get(position); final MenuBottomSheetItem item = dataSet.get(position);
final ImageView iv = viewHolder.getIconImageView(); final ShapeableImageView iv = viewHolder.getIconImageView();
if (item.iconRes == R.drawable.ic_donate && Config.isNY()) if (item.iconRes == R.drawable.ic_donate && Config.isNY())
{ {
iv.setImageResource(R.drawable.ic_christmas_tree); iv.setImageResource(R.drawable.ic_christmas_tree);
@@ -59,7 +60,7 @@ public class MenuAdapter extends RecyclerView.Adapter<MenuAdapter.ViewHolder>
iv.setImageResource(item.iconRes); iv.setImageResource(item.iconRes);
viewHolder.getContainer().setOnClickListener((v) -> onMenuItemClick(item)); viewHolder.getContainer().setOnClickListener((v) -> onMenuItemClick(item));
viewHolder.getTitleTextView().setText(item.titleRes); viewHolder.getTitleTextView().setText(item.titleRes);
TextView badge = viewHolder.getBadgeTextView(); MaterialTextView badge = viewHolder.getBadgeTextView();
if (item.badgeCount > 0) if (item.badgeCount > 0)
{ {
badge.setText(String.valueOf(item.badgeCount)); badge.setText(String.valueOf(item.badgeCount));
@@ -87,9 +88,9 @@ public class MenuAdapter extends RecyclerView.Adapter<MenuAdapter.ViewHolder>
public static class ViewHolder extends RecyclerView.ViewHolder public static class ViewHolder extends RecyclerView.ViewHolder
{ {
private final LinearLayout container; private final LinearLayout container;
private final ImageView iconImageView; private final ShapeableImageView iconImageView;
private final TextView titleTextView; private final MaterialTextView titleTextView;
private final TextView badgeTextView; private final MaterialTextView badgeTextView;
public ViewHolder(View view) public ViewHolder(View view)
{ {
@@ -100,17 +101,17 @@ public class MenuAdapter extends RecyclerView.Adapter<MenuAdapter.ViewHolder>
badgeTextView = view.findViewById(R.id.bottom_sheet_menu_item_badge); badgeTextView = view.findViewById(R.id.bottom_sheet_menu_item_badge);
} }
public ImageView getIconImageView() public ShapeableImageView getIconImageView()
{ {
return iconImageView; return iconImageView;
} }
public TextView getTitleTextView() public MaterialTextView getTitleTextView()
{ {
return titleTextView; return titleTextView;
} }
public TextView getBadgeTextView() public MaterialTextView getBadgeTextView()
{ {
return badgeTextView; return badgeTextView;
} }

View File

@@ -7,7 +7,6 @@ import android.view.LayoutInflater;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.view.Window; import android.view.Window;
import android.widget.TextView;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
@@ -20,6 +19,7 @@ import androidx.recyclerview.widget.RecyclerView;
import com.google.android.material.bottomsheet.BottomSheetBehavior; import com.google.android.material.bottomsheet.BottomSheetBehavior;
import com.google.android.material.bottomsheet.BottomSheetDialog; import com.google.android.material.bottomsheet.BottomSheetDialog;
import com.google.android.material.bottomsheet.BottomSheetDialogFragment; import com.google.android.material.bottomsheet.BottomSheetDialogFragment;
import com.google.android.material.textview.MaterialTextView;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Objects; import java.util.Objects;
@@ -93,7 +93,7 @@ public class MenuBottomSheetFragment extends BottomSheetDialogFragment
{ {
super.onViewCreated(view, savedInstanceState); super.onViewCreated(view, savedInstanceState);
attachToNearestContext(); attachToNearestContext();
TextView titleView = view.findViewById(R.id.bottomSheetTitle); MaterialTextView titleView = view.findViewById(R.id.bottomSheetTitle);
RecyclerView recyclerView = view.findViewById(R.id.bottomSheetMenuContainer); RecyclerView recyclerView = view.findViewById(R.id.bottomSheetMenuContainer);
if (getArguments() != null) if (getArguments() != null)
{ {

View File

@@ -9,8 +9,10 @@ import androidx.annotation.Nullable;
import androidx.annotation.StringRes; import androidx.annotation.StringRes;
import androidx.appcompat.app.ActionBar; import androidx.appcompat.app.ActionBar;
import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.Toolbar;
import androidx.core.view.ViewCompat; import androidx.core.view.ViewCompat;
import com.google.android.material.appbar.MaterialToolbar;
import app.organicmaps.R; import app.organicmaps.R;
import app.organicmaps.util.UiUtils; import app.organicmaps.util.UiUtils;
import app.organicmaps.util.Utils; import app.organicmaps.util.Utils;
@@ -21,7 +23,7 @@ public class ToolbarController
@Nullable @Nullable
private Activity mActivity; private Activity mActivity;
@NonNull @NonNull
private final Toolbar mToolbar; private final MaterialToolbar mToolbar;
@NonNull @NonNull
protected final View.OnClickListener mNavigationClickListener = view -> onUpClick(); protected final View.OnClickListener mNavigationClickListener = view -> onUpClick();
@@ -39,7 +41,7 @@ public class ToolbarController
setSupportActionBar(activity, mToolbar); setSupportActionBar(activity, mToolbar);
} }
private void setSupportActionBar(@NonNull Activity activity, @NonNull Toolbar toolbar) private void setSupportActionBar(@NonNull Activity activity, @NonNull MaterialToolbar toolbar)
{ {
AppCompatActivity appCompatActivity = (AppCompatActivity) activity; AppCompatActivity appCompatActivity = (AppCompatActivity) activity;
appCompatActivity.setSupportActionBar(toolbar); appCompatActivity.setSupportActionBar(toolbar);
@@ -86,7 +88,7 @@ public class ToolbarController
} }
@NonNull @NonNull
public Toolbar getToolbar() public MaterialToolbar getToolbar()
{ {
return mToolbar; return mToolbar;
} }

View File

@@ -14,7 +14,6 @@ import android.widget.TextView;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import androidx.core.view.ViewCompat; import androidx.core.view.ViewCompat;
import androidx.core.view.WindowCompat; import androidx.core.view.WindowCompat;
import androidx.core.view.WindowInsetsCompat; import androidx.core.view.WindowInsetsCompat;
@@ -33,6 +32,8 @@ import app.organicmaps.util.Graphics;
import app.organicmaps.util.InputUtils; import app.organicmaps.util.InputUtils;
import app.organicmaps.util.UiUtils; import app.organicmaps.util.UiUtils;
import app.organicmaps.util.WindowInsetUtils.PaddingInsetsListener; import app.organicmaps.util.WindowInsetUtils.PaddingInsetsListener;
import com.google.android.material.appbar.MaterialToolbar;
import com.google.android.material.textfield.TextInputEditText; import com.google.android.material.textfield.TextInputEditText;
import com.google.android.material.textfield.TextInputLayout; import com.google.android.material.textfield.TextInputLayout;
@@ -203,7 +204,7 @@ public class EditBookmarkFragment extends BaseMwmDialogFragment implements View.
private void initToolbar(View view) private void initToolbar(View view)
{ {
Toolbar toolbar = view.findViewById(R.id.toolbar); MaterialToolbar toolbar = view.findViewById(R.id.toolbar);
ViewCompat.setOnApplyWindowInsetsListener(toolbar, PaddingInsetsListener.excludeBottom()); ViewCompat.setOnApplyWindowInsetsListener(toolbar, PaddingInsetsListener.excludeBottom());

View File

@@ -18,7 +18,6 @@ import android.widget.TextView;
import androidx.annotation.IdRes; import androidx.annotation.IdRes;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import androidx.core.content.ContextCompat; import androidx.core.content.ContextCompat;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager; import androidx.fragment.app.FragmentManager;
@@ -52,6 +51,8 @@ import app.organicmaps.widget.placepage.sections.PlacePageOpeningHoursFragment;
import app.organicmaps.widget.placepage.sections.PlacePagePhoneFragment; import app.organicmaps.widget.placepage.sections.PlacePagePhoneFragment;
import app.organicmaps.widget.placepage.sections.PlacePageProductsFragment; import app.organicmaps.widget.placepage.sections.PlacePageProductsFragment;
import app.organicmaps.widget.placepage.sections.PlacePageWikipediaFragment; import app.organicmaps.widget.placepage.sections.PlacePageWikipediaFragment;
import com.google.android.material.appbar.MaterialToolbar;
import com.google.android.material.button.MaterialButton; import com.google.android.material.button.MaterialButton;
import java.util.ArrayList; import java.util.ArrayList;
@@ -86,7 +87,7 @@ public class PlacePageView extends Fragment implements View.OnClickListener,
private View mFrame; private View mFrame;
// Preview. // Preview.
private ViewGroup mPreview; private ViewGroup mPreview;
private Toolbar mToolbar; private MaterialToolbar mToolbar;
private TextView mTvTitle; private TextView mTvTitle;
private TextView mTvSecondaryTitle; private TextView mTvSecondaryTitle;
private TextView mTvSubtitle; private TextView mTvSubtitle;

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"> <shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#FFFFFF"/> <solid android:color="?attr/menuBackground"/>
<corners android:radius="10dp"/> <corners android:radius="10dp"/>
<padding android:left="0dp" android:top="0dp" android:right="0dp" android:bottom="0dp" /> <padding android:left="0dp" android:top="0dp" android:right="0dp" android:bottom="0dp" />
</shape> </shape>

View File

@@ -1,37 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<merge
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<Button
android:id="@+id/accept_btn"
style="@style/MwmWidget.Button.Primary"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/accept"/>
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/sharing_options_img_size">
<TextView
android:id="@+id/decline_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="?attr/selectableItemBackground"
android:fontFamily="@string/robotoMedium"
android:gravity="center"
android:letterSpacing="0.01"
android:textAllCaps="true"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textSize="@dimen/text_size_body_3"
android:textStyle="normal"
android:text="@string/learn_more"
tools:ignore="UnusedAttribute"
tools:text="NOT NOW" />
</FrameLayout>
</LinearLayout>
</merge>

View File

@@ -8,7 +8,7 @@
android:gravity="center" android:gravity="center"
android:orientation="vertical"> android:orientation="vertical">
<androidx.appcompat.widget.AppCompatImageView <com.google.android.material.imageview.ShapeableImageView
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_margin="32dp" android:layout_margin="32dp"
@@ -22,7 +22,7 @@
android:gravity="center" android:gravity="center"
android:orientation="vertical"> android:orientation="vertical">
<TextView <com.google.android.material.textview.MaterialTextView
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginBottom="8dp" android:layout_marginBottom="8dp"
@@ -31,7 +31,7 @@
android:textAppearance="@style/TextAppearance.MaterialComponents.Headline4" android:textAppearance="@style/TextAppearance.MaterialComponents.Headline4"
android:textStyle="bold" /> android:textStyle="bold" />
<TextView <com.google.android.material.textview.MaterialTextView
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="@string/car_used_on_the_car_screen" android:text="@string/car_used_on_the_car_screen"
@@ -39,7 +39,7 @@
android:textAppearance="@style/TextAppearance.MaterialComponents.Body1" /> android:textAppearance="@style/TextAppearance.MaterialComponents.Body1" />
</LinearLayout> </LinearLayout>
<Button <com.google.android.material.button.MaterialButton
android:id="@+id/btn_continue" android:id="@+id/btn_continue"
style="@style/MwmWidget.Button.Accent" style="@style/MwmWidget.Button.Accent"
android:layout_width="match_parent" android:layout_width="match_parent"

View File

@@ -7,13 +7,13 @@
android:gravity="center" android:gravity="center"
android:orientation="vertical"> android:orientation="vertical">
<ImageView <com.google.android.material.imageview.ShapeableImageView
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_margin="32dp" android:layout_margin="32dp"
app:srcCompat="@drawable/ic_location_permission_request" /> app:srcCompat="@drawable/ic_location_permission_request" />
<TextView <com.google.android.material.textview.MaterialTextView
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginEnd="32dp" android:layout_marginEnd="32dp"
@@ -23,7 +23,7 @@
android:textAppearance="@style/TextAppearance.MaterialComponents.Headline4" android:textAppearance="@style/TextAppearance.MaterialComponents.Headline4"
android:textStyle="bold" /> android:textStyle="bold" />
<Button <com.google.android.material.button.MaterialButton
android:id="@+id/btn_grant_permissions" android:id="@+id/btn_grant_permissions"
style="@style/MwmWidget.Button.Accent" style="@style/MwmWidget.Button.Accent"
android:layout_width="match_parent" android:layout_width="match_parent"

View File

@@ -13,7 +13,7 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" /> android:layout_height="wrap_content" />
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/bottomSheetTitle" android:id="@+id/bottomSheetTitle"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"

View File

@@ -4,7 +4,7 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content"> android:layout_height="wrap_content">
<ImageView <com.google.android.material.imageview.ShapeableImageView
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="4dp" android:layout_height="4dp"
android:layout_marginTop="@dimen/margin_quarter" android:layout_marginTop="@dimen/margin_quarter"

View File

@@ -11,14 +11,14 @@
android:background="?clickableBackground" android:background="?clickableBackground"
android:orientation="horizontal"> android:orientation="horizontal">
<ImageView <com.google.android.material.imageview.ShapeableImageView
android:id="@+id/bottom_sheet_menu_item_icon" android:id="@+id/bottom_sheet_menu_item_icon"
android:layout_width="@dimen/bookmark_icon_size" android:layout_width="@dimen/bookmark_icon_size"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_gravity="center_vertical" android:layout_gravity="center_vertical"
tools:src="@drawable/ic_menu_download" tools:src="@drawable/ic_menu_download"
app:tint="?android:textColorSecondary"/> app:tint="?android:textColorSecondary"/>
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/bottom_sheet_menu_item_text" android:id="@+id/bottom_sheet_menu_item_text"
android:textAppearance="@style/MwmTextAppearance.Body1" android:textAppearance="@style/MwmTextAppearance.Body1"
android:layout_width="0dp" android:layout_width="0dp"
@@ -29,7 +29,7 @@
android:gravity="center_vertical" android:gravity="center_vertical"
android:singleLine="true" android:singleLine="true"
tools:text="Menu Item" /> tools:text="Menu Item" />
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/bottom_sheet_menu_item_badge" android:id="@+id/bottom_sheet_menu_item_badge"
style="@style/MwmWidget.Counter" style="@style/MwmWidget.Counter"
android:layout_gravity="end|center_vertical" android:layout_gravity="end|center_vertical"

View File

@@ -15,6 +15,7 @@
android:paddingEnd="@dimen/margin_base_plus" android:paddingEnd="@dimen/margin_base_plus"
android:textAppearance="@style/MwmTextAppearance.Body2" android:textAppearance="@style/MwmTextAppearance.Body2"
android:visibility="gone" android:visibility="gone"
tools:text="Select maps to download"
tools:visibility="visible"/> tools:visibility="visible"/>
<View <View

View File

@@ -6,7 +6,7 @@
android:background="?cardBackground" android:background="?cardBackground"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"> android:layout_height="match_parent">
<androidx.appcompat.widget.Toolbar <com.google.android.material.appbar.MaterialToolbar
android:id="@+id/toolbar" android:id="@+id/toolbar"
style="@style/MwmWidget.ToolbarStyle" style="@style/MwmWidget.ToolbarStyle"
android:layout_width="match_parent" android:layout_width="match_parent"

View File

@@ -6,7 +6,7 @@
android:orientation="vertical" android:orientation="vertical"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"> android:layout_height="match_parent">
<androidx.appcompat.widget.Toolbar <com.google.android.material.appbar.MaterialToolbar
android:id="@+id/toolbar" android:id="@+id/toolbar"
style="@style/MwmWidget.ToolbarStyle" style="@style/MwmWidget.ToolbarStyle"
android:layout_width="match_parent" android:layout_width="match_parent"
@@ -15,7 +15,7 @@
android:gravity="end|center_vertical" android:gravity="end|center_vertical"
android:theme="@style/MwmWidget.ToolbarTheme" android:theme="@style/MwmWidget.ToolbarTheme"
tools:ignore="UnusedAttribute"> tools:ignore="UnusedAttribute">
</androidx.appcompat.widget.Toolbar> </com.google.android.material.appbar.MaterialToolbar>
<LinearLayout <LinearLayout
android:layout_marginTop="@dimen/margin_half_double_plus" android:layout_marginTop="@dimen/margin_half_double_plus"
android:orientation="horizontal" android:orientation="horizontal"

View File

@@ -5,7 +5,7 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="?windowBackgroundForced"> android:background="?windowBackgroundForced">
<androidx.appcompat.widget.Toolbar <com.google.android.material.appbar.MaterialToolbar
android:id="@+id/toolbar" android:id="@+id/toolbar"
style="@style/MwmWidget.ToolbarStyle" style="@style/MwmWidget.ToolbarStyle"
android:layout_width="match_parent" android:layout_width="match_parent"
@@ -22,7 +22,7 @@
android:layout_gravity="end|center_vertical" android:layout_gravity="end|center_vertical"
android:scaleType="centerInside" android:scaleType="centerInside"
android:contentDescription="@string/save" /> android:contentDescription="@string/save" />
</androidx.appcompat.widget.Toolbar> </com.google.android.material.appbar.MaterialToolbar>
<FrameLayout <FrameLayout
style="@style/MwmWidget.FrameLayout.Elevation" style="@style/MwmWidget.FrameLayout.Elevation"
android:layout_width="match_parent" android:layout_width="match_parent"

View File

@@ -228,7 +228,9 @@
android:id="@+id/block_email" android:id="@+id/block_email"
layout="@layout/item_editor_input"/> layout="@layout/item_editor_input"/>
<!-- ToDo: Level is missing compared with iOS. --> <include
android:id="@+id/block_level"
layout="@layout/item_editor_input"/>
<RelativeLayout <RelativeLayout
android:id="@+id/block_wifi" android:id="@+id/block_wifi"

View File

@@ -7,7 +7,7 @@
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"> android:orientation="vertical">
<androidx.appcompat.widget.Toolbar <com.google.android.material.appbar.MaterialToolbar
android:id="@+id/toolbar" android:id="@+id/toolbar"
style="@style/MwmWidget.ToolbarStyle" style="@style/MwmWidget.ToolbarStyle"
android:layout_width="match_parent" android:layout_width="match_parent"
@@ -43,7 +43,7 @@
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
</androidx.appcompat.widget.Toolbar> </com.google.android.material.appbar.MaterialToolbar>
<FrameLayout <FrameLayout
android:id="@+id/fragment_container" android:id="@+id/fragment_container"

View File

@@ -6,7 +6,7 @@
android:layout_height="match_parent" android:layout_height="match_parent"
android:orientation="vertical"> android:orientation="vertical">
<androidx.appcompat.widget.Toolbar <com.google.android.material.appbar.MaterialToolbar
android:id="@+id/toolbar" android:id="@+id/toolbar"
style="@style/MwmWidget.ToolbarStyle" style="@style/MwmWidget.ToolbarStyle"
android:layout_width="match_parent" android:layout_width="match_parent"
@@ -18,7 +18,7 @@
android:id="@+id/save" android:id="@+id/save"
style="@style/MwmWidget.Downloader.ToolbarButton" style="@style/MwmWidget.Downloader.ToolbarButton"
android:text="@string/editor_report_problem_send_button"/> android:text="@string/editor_report_problem_send_button"/>
</androidx.appcompat.widget.Toolbar> </com.google.android.material.appbar.MaterialToolbar>
<ScrollView <ScrollView
android:id="@+id/scrollView" android:id="@+id/scrollView"

View File

@@ -9,9 +9,10 @@
<CheckBox <CheckBox
android:id="@+id/checkbox" android:id="@+id/checkbox"
android:layout_width="@dimen/margin_double_plus" android:layout_width="@dimen/margin_double_plus"
android:layout_height="match_parent" android:layout_height="wrap_content"
android:layout_centerVertical="true" android:layout_centerVertical="true"
android:layout_marginStart="@dimen/margin_quarter" android:layout_alignParentTop="true"
android:layout_alignBottom="@id/bottom_line_container"
android:background="@null" android:background="@null"
android:button="@drawable/button_visibility_centre_inset" android:button="@drawable/button_visibility_centre_inset"
android:buttonTint="?accentColorSelector" /> android:buttonTint="?accentColorSelector" />
@@ -32,7 +33,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@id/name" android:layout_below="@id/name"
android:layout_alignStart="@id/name" android:layout_alignStart="@id/name"
android:layout_marginBottom="@dimen/margin_half_plus" android:paddingBottom="@dimen/margin_half_plus"
android:layout_toStartOf="@id/more" android:layout_toStartOf="@id/more"
android:orientation="horizontal"> android:orientation="horizontal">
<TextView <TextView
@@ -48,9 +49,11 @@
<ImageView <ImageView
android:id="@+id/more" android:id="@+id/more"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="wrap_content"
android:layout_alignParentEnd="true" android:layout_alignParentEnd="true"
android:layout_centerVertical="true" android:layout_centerVertical="true"
android:layout_alignParentTop="true"
android:layout_alignBottom="@id/bottom_line_container"
android:background="?selectableItemBackgroundBorderless" android:background="?selectableItemBackgroundBorderless"
android:importantForAccessibility="no" android:importantForAccessibility="no"
android:paddingHorizontal="@dimen/margin_half" android:paddingHorizontal="@dimen/margin_half"

View File

@@ -16,7 +16,6 @@
android:clipChildren="false" android:clipChildren="false"
android:layout_gravity="center" android:layout_gravity="center"
android:gravity="center_horizontal" android:gravity="center_horizontal"
android:backgroundTint="?menuBackground"
android:background="@drawable/onmap_downloader_background" android:background="@drawable/onmap_downloader_background"
tools:ignore="UselessParent"> tools:ignore="UselessParent">

View File

@@ -6,7 +6,7 @@
android:layout_height="match_parent" android:layout_height="match_parent"
android:orientation="vertical"> android:orientation="vertical">
<androidx.appcompat.widget.Toolbar <com.google.android.material.appbar.MaterialToolbar
android:id="@+id/toolbar_point_chooser" android:id="@+id/toolbar_point_chooser"
style="@style/MwmWidget.ToolbarStyle" style="@style/MwmWidget.ToolbarStyle"
android:layout_width="match_parent" android:layout_width="match_parent"
@@ -41,7 +41,7 @@
</LinearLayout> </LinearLayout>
</androidx.appcompat.widget.Toolbar> </com.google.android.material.appbar.MaterialToolbar>
<TextView <TextView
android:layout_width="match_parent" android:layout_width="match_parent"

View File

@@ -11,7 +11,7 @@
<FrameLayout android:layout_width="match_parent" <FrameLayout android:layout_width="match_parent"
android:layout_height="wrap_content"> android:layout_height="wrap_content">
<androidx.appcompat.widget.Toolbar <com.google.android.material.appbar.MaterialToolbar
android:id="@+id/toolbar" android:id="@+id/toolbar"
style="@style/MwmWidget.ToolbarStyle" style="@style/MwmWidget.ToolbarStyle"
android:theme="@style/MwmWidget.ToolbarTheme" android:theme="@style/MwmWidget.ToolbarTheme"
@@ -131,7 +131,7 @@
</RelativeLayout> </RelativeLayout>
</androidx.appcompat.widget.Toolbar> </com.google.android.material.appbar.MaterialToolbar>
</FrameLayout> </FrameLayout>
<FrameLayout <FrameLayout
android:id="@+id/driving_options_btn_container" android:id="@+id/driving_options_btn_container"

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<androidx.appcompat.widget.Toolbar <com.google.android.material.appbar.MaterialToolbar
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/toolbar" android:id="@+id/toolbar"
style="@style/MwmWidget.ToolbarStyle" style="@style/MwmWidget.ToolbarStyle"

View File

@@ -4,7 +4,7 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:orientation="vertical"> android:orientation="vertical">
<androidx.appcompat.widget.Toolbar <com.google.android.material.appbar.MaterialToolbar
android:id="@+id/toolbar" android:id="@+id/toolbar"
style="@style/MwmWidget.ToolbarStyle" style="@style/MwmWidget.ToolbarStyle"
android:layout_width="match_parent" android:layout_width="match_parent"

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<androidx.appcompat.widget.Toolbar <com.google.android.material.appbar.MaterialToolbar
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/toolbar" android:id="@+id/toolbar"
style="@style/MwmWidget.ToolbarStyle" style="@style/MwmWidget.ToolbarStyle"

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<androidx.appcompat.widget.Toolbar <com.google.android.material.appbar.MaterialToolbar
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/toolbar" android:id="@+id/toolbar"
style="@style/MwmWidget.ToolbarStyle.NoElevation" style="@style/MwmWidget.ToolbarStyle.NoElevation"
@@ -11,4 +11,4 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:visibility="gone"/> android:visibility="gone"/>
</androidx.appcompat.widget.Toolbar> </com.google.android.material.appbar.MaterialToolbar>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<androidx.appcompat.widget.Toolbar <com.google.android.material.appbar.MaterialToolbar
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/toolbar" android:id="@+id/toolbar"
style="@style/MwmWidget.ToolbarStyle" style="@style/MwmWidget.ToolbarStyle"
@@ -13,4 +13,4 @@
android:orientation="vertical"> android:orientation="vertical">
<include layout="@layout/toolbar_search_controls" /> <include layout="@layout/toolbar_search_controls" />
</LinearLayout> </LinearLayout>
</androidx.appcompat.widget.Toolbar> </com.google.android.material.appbar.MaterialToolbar>

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