Compare commits

..

68 Commits

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

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

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

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

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

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

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

[generator] Add check_date to further types

[generator] Improve date validation

Check if it can be parsed to a proper date

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

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

Signed-off-by: Harry Bond <me@hbond.xyz>
2025-08-07 10:53:39 +01:00
David Martinez
372a7a90c5 [styles] Switch food_court to fork and knife icon
Signed-off-by: David Martinez <47610359+dvdmrtnz@users.noreply.github.com>
2025-08-07 11:27:30 +02:00
Yannik Bloscheck
9bd6e2cdf2 [styles] Slightly adjusted parking icon color to be more different from new water color
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-08-06 16:09:45 +02:00
Yannik Bloscheck
c2cc61e4d9 [android] Adjusted water and parking search category icon
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-08-06 16:09:45 +02:00
Yannik Bloscheck
e3fa656f4f [ios] Adjusted water and parking search category icon
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-08-06 16:09:44 +02:00
Yannik Bloscheck
d7216b7ccc [styles] Keep water labels and icons readable with improved water visibility
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-08-06 16:09:44 +02:00
Yannik Bloscheck
aaa61f7f75 [styles] Made water more visible
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-08-06 16:09:44 +02:00
Yannik Bloscheck
ccfd2107f3 [styles] Improved general and pedestrian area visibility
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-08-06 16:06:13 +02:00
x7z4w
45ec96dd3c [build] Generate drules at build
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-08-06 10:40:29 +02:00
x7z4w
dd7739a8b2 [search] Add more synonyms
Co-Authored-By: Matheus Gomes <matheusgomesms@noreply.codeberg.org>
Co-Authored-By: Omar Hassan <omarhassan@noreply.codeberg.org>
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-08-05 21:07:35 +02:00
x7z4w
ae0ef4d3f8 [ios] Run configure.sh for clean builds
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-08-05 10:16:31 +00:00
Jean-Baptiste
68d1ead44c [doc] Improve doc and updates codeberg teams
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
2025-08-04 19:10:52 +02:00
629 changed files with 8201 additions and 861187 deletions

View File

@@ -3,7 +3,7 @@ on:
workflow_dispatch: # Manual trigger workflow_dispatch: # Manual trigger
push: push:
branches: branches:
- fix-ci - main
paths-ignore: paths-ignore:
- .gitignore - .gitignore
- .forgejo/** - .forgejo/**
@@ -41,11 +41,11 @@ jobs:
- name: Install build tools and dependencies - name: Install build tools and dependencies
shell: bash shell: bash
run: | run: |
apt-get update -y sudo apt-get update -y
apt-get install -y cmake ninja-build sudo apt-get install -y ninja-build
- name: Checkout sources - name: Checkout sources
uses: https://github.com/actions/checkout@v4 uses: actions/checkout@v4
with: with:
fetch-depth: 100 # enough to get all commits for the current day fetch-depth: 100 # enough to get all commits for the current day
@@ -69,8 +69,6 @@ jobs:
RELEASE_KEYSTORE: ${{ secrets.RELEASE_KEYSTORE }} RELEASE_KEYSTORE: ${{ secrets.RELEASE_KEYSTORE }}
- name: Compile - name: Compile
container:
image: runmymind/docker-android-sdk:latest
shell: bash shell: bash
working-directory: android working-directory: android
run: | run: |

View File

@@ -14,7 +14,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout - name: Checkout
uses: https://github.com/actions/checkout@v4 uses: actions/checkout@v4
with: with:
fetch-depth: 1 fetch-depth: 1
sparse-checkout: | sparse-checkout: |

View File

@@ -3,7 +3,7 @@ on:
workflow_dispatch: # Manual trigger workflow_dispatch: # Manual trigger
push: push:
branches: branches:
- fix-ci - main
pull_request: pull_request:
paths-ignore: paths-ignore:
- .gitignore - .gitignore
@@ -38,17 +38,9 @@ jobs:
lint: lint:
name: Android Lint name: Android Lint
runs-on: ubuntu-latest runs-on: ubuntu-latest
container:
image: runmymind/docker-android-sdk:latest
steps: steps:
- name: Install Node.JS
shell: bash
run: |
apt-get update -y
apt-get install -y nodejs
- name: Checkout sources - name: Checkout sources
uses: https://github.com/actions/checkout@v4 uses: actions/checkout@v4
with: with:
fetch-depth: 1 fetch-depth: 1
@@ -64,8 +56,6 @@ jobs:
android-check: android-check:
name: Build Android Debug name: Build Android Debug
runs-on: ubuntu-latest runs-on: ubuntu-latest
container:
image: runmymind/docker-android-sdk:latest
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@@ -84,11 +74,11 @@ jobs:
- name: Install build tools and dependencies - name: Install build tools and dependencies
shell: bash shell: bash
run: | run: |
apt-get update -y sudo apt-get update -y
apt-get install -y cmake ninja-build nodejs sudo apt-get install -y ninja-build
- name: Checkout sources - name: Checkout sources
uses: httpa://github.com/actions/checkout@v4 uses: actions/checkout@v4
with: with:
fetch-depth: 200 # enough to get all commits for the current day fetch-depth: 200 # enough to get all commits for the current day
@@ -97,7 +87,7 @@ jobs:
run: git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20)) run: git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20))
- name: Configure ccache - name: Configure ccache
uses: https://github.com/hendrikmuhs/ccache-action@v1.2 uses: hendrikmuhs/ccache-action@v1.2
with: with:
key: ${{ github.workflow }}-${{ matrix.flavor }} key: ${{ github.workflow }}-${{ matrix.flavor }}
@@ -116,5 +106,5 @@ jobs:
uses: actions/upload-artifact@v4 uses: actions/upload-artifact@v4
with: with:
name: android-${{ matrix.flavor }} name: android-${{ matrix.flavor }}
path: android/app/build/outputs/apk/**/CoMaps-*.apk path: android/app/build/outputs/apk/**/OrganicMaps-*.apk
if-no-files-found: error if-no-files-found: error

View File

@@ -10,7 +10,7 @@ jobs:
name: Check preconditions name: Check preconditions
steps: steps:
- name: Checkout sources - name: Checkout sources
uses: https://github.com/actions/checkout@v4 uses: actions/checkout@v4
with: with:
fetch-depth: 1000 # fetch month or so fetch-depth: 1000 # fetch month or so
@@ -31,8 +31,6 @@ jobs:
android-google-beta: android-google-beta:
name: Android Google Beta name: Android Google Beta
runs-on: ubuntu-latest runs-on: ubuntu-latest
container:
image: runmymind/docker-android-sdk:latest
needs: precondition needs: precondition
if: ${{ needs.precondition.outputs.updated != '' }} if: ${{ needs.precondition.outputs.updated != '' }}
environment: beta environment: beta
@@ -40,14 +38,14 @@ jobs:
- name: Install build tools and dependencies - name: Install build tools and dependencies
shell: bash shell: bash
run: | run: |
apt-get update -y sudo apt-get update -y
apt-get install -y ninja-build sudo apt-get install -y ninja-build
- name: Install Google SDK - name: Install Google SDK
uses: google-github-actions/setup-gcloud@v0 uses: google-github-actions/setup-gcloud@v0
- name: Checkout sources - name: Checkout sources
uses: https://github.com/actions/checkout@v4 uses: actions/checkout@v4
with: with:
fetch-depth: 100 # enough to get all commits for the current day fetch-depth: 100 # enough to get all commits for the current day
@@ -84,7 +82,7 @@ jobs:
run: | run: |
gcloud auth activate-service-account --key-file android/app/firebase-test-lab.json gcloud auth activate-service-account --key-file android/app/firebase-test-lab.json
gcloud config set project omapsapp gcloud config set project omapsapp
gcloud firebase test android run --app ./android/app/build/outputs/apk/google/beta/CoMaps-*-google-beta.apk \ gcloud firebase test android run --app ./android/app/build/outputs/apk/google/beta/OrganicMaps-*-google-beta.apk \
--device model=husky,version=34 \ --device model=husky,version=34 \
--device model=tangorpro,version=33,orientation=landscape \ --device model=tangorpro,version=33,orientation=landscape \
--device model=bluejay,version=32 \ --device model=bluejay,version=32 \

View File

@@ -6,13 +6,11 @@ jobs:
android-release-metadata: android-release-metadata:
name: Upload Google Play metadata name: Upload Google Play metadata
runs-on: ubuntu-latest runs-on: ubuntu-latest
container:
image: runmymind/docker-android-sdk:latest
environment: production environment: production
steps: steps:
- name: Checkout sources - name: Checkout sources
# TODO: use shallow (and sparse?) checkout # TODO: use shallow (and sparse?) checkout
uses: https://github.com/actions/checkout@v4 uses: actions/checkout@v4
# - name: Parallel submodules checkout # - name: Parallel submodules checkout
# shell: bash # shell: bash

View File

@@ -13,7 +13,7 @@ jobs:
environment: production environment: production
steps: steps:
- name: Checkout sources - name: Checkout sources
uses: https://github.com/actions/checkout@v4 uses: actions/checkout@v4
with: with:
fetch-depth: 100 # Enough to get all commits for the last day. fetch-depth: 100 # Enough to get all commits for the last day.
ssh-key: ${{ secrets.RELEASE_SSH_KEY }} ssh-key: ${{ secrets.RELEASE_SSH_KEY }}
@@ -71,11 +71,11 @@ jobs:
- name: Install build tools and dependencies - name: Install build tools and dependencies
shell: bash shell: bash
run: | run: |
apt-get update -y sudo apt-get update -y
apt-get install -y cmake ninja-build sudo apt-get install -y ninja-build
- name: Checkout sources - name: Checkout sources
uses: https://github.com/actions/checkout@v4 uses: actions/checkout@v4
with: with:
fetch-depth: 100 # enough to get all commits for the current day fetch-depth: 100 # enough to get all commits for the current day
ref: 'refs/tags/${{ needs.tag.outputs.tag }}' ref: 'refs/tags/${{ needs.tag.outputs.tag }}'
@@ -92,7 +92,7 @@ jobs:
run: git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20)) run: git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20))
- name: Checkout screenshots - name: Checkout screenshots
uses: https://github.com/actions/checkout@v4 uses: actions/checkout@v4
with: with:
repository: ${{ secrets.SCREENSHOTS_REPO }} repository: ${{ secrets.SCREENSHOTS_REPO }}
ssh-key: ${{ secrets.SCREENSHOTS_SSH_KEY }} ssh-key: ${{ secrets.SCREENSHOTS_SSH_KEY }}
@@ -121,8 +121,6 @@ jobs:
run: echo "sdk.dir=$ANDROID_SDK_ROOT" > android/local.properties run: echo "sdk.dir=$ANDROID_SDK_ROOT" > android/local.properties
- name: Compile and upload to Google Play - name: Compile and upload to Google Play
container:
image: runmymind/docker-android-sdk:latest
shell: bash shell: bash
working-directory: android working-directory: android
run: | run: |
@@ -130,8 +128,6 @@ jobs:
if: ${{ matrix.flavor == 'google' }} if: ${{ matrix.flavor == 'google' }}
- name: Compile and upload to Huawei AppGallery - name: Compile and upload to Huawei AppGallery
container:
image: runmymind/docker-android-sdk:latest
shell: bash shell: bash
working-directory: android working-directory: android
run: | run: |
@@ -140,8 +136,6 @@ jobs:
if: ${{ matrix.flavor == 'huawei' }} if: ${{ matrix.flavor == 'huawei' }}
- name: Compile universal APK - name: Compile universal APK
container:
image: runmymind/docker-android-sdk:latest
shell: bash shell: bash
working-directory: android working-directory: android
run: | run: |
@@ -152,16 +146,16 @@ jobs:
if: ${{ matrix.flavor == 'web' }} if: ${{ matrix.flavor == 'web' }}
shell: bash shell: bash
run: | run: |
(cd ./android/app/build/outputs/apk/web/release/ && sha256sum CoMaps-${{ needs.tag.outputs.code }}-web-release.apk > CoMaps-${{ needs.tag.outputs.code }}-web-release.apk.sha256sum) (cd ./android/app/build/outputs/apk/web/release/ && sha256sum OrganicMaps-${{ needs.tag.outputs.code }}-web-release.apk > OrganicMaps-${{ needs.tag.outputs.code }}-web-release.apk.sha256sum)
{ {
cat ${{ env.RELEASE_NOTES }} cat ${{ env.RELEASE_NOTES }}
echo "" echo ""
echo "See [a detailed announce](https://comaps.app/news/) on our website when app updates are published in all stores." echo "See [a detailed announce](https://organicmaps.app/news/) on our website when app updates are published in all stores."
echo "You can get automatic app updates from Codeberg [using Obtainium](https://apps.obtainium.imranr.dev/redirect?r=obtainium://add/https://codeberg.org/comaps/comaps)." echo "You can get automatic app updates from Codeberg [using Obtainium](https://codeberg.org/comaps/comaps/wiki/Installing-Organic-Maps-from-GitHub-using-Obtainium)."
echo "" echo ""
echo "sha256sum:" echo "sha256sum:"
echo -e '\n```' echo -e '\n```'
tr -d '\n' < ./android/app/build/outputs/apk/web/release/CoMaps-${{ needs.tag.outputs.code }}-web-release.apk.sha256sum tr -d '\n' < ./android/app/build/outputs/apk/web/release/OrganicMaps-${{ needs.tag.outputs.code }}-web-release.apk.sha256sum
echo -e '\n```' echo -e '\n```'
} > ${{ runner.temp }}/release-notes.txt } > ${{ runner.temp }}/release-notes.txt
@@ -176,6 +170,6 @@ jobs:
discussion_category_name: 'Announcements' discussion_category_name: 'Announcements'
prerelease: true prerelease: true
files: | files: |
./android/app/build/outputs/apk/web/release/CoMaps-${{ needs.tag.outputs.code }}-web-release.apk ./android/app/build/outputs/apk/web/release/OrganicMaps-${{ needs.tag.outputs.code }}-web-release.apk
./android/app/build/outputs/apk/web/release/CoMaps-${{ needs.tag.outputs.code }}-web-release.apk.sha256sum ./android/app/build/outputs/apk/web/release/OrganicMaps-${{ needs.tag.outputs.code }}-web-release.apk.sha256sum
fail_on_unmatched_files: true fail_on_unmatched_files: true

View File

@@ -3,8 +3,8 @@ on:
workflow_dispatch: # Manual trigger workflow_dispatch: # Manual trigger
pull_request: pull_request:
paths: paths:
- packaging/app.comaps.desktop.metainfo.xml - packaging/app.comaps.comaps.metainfo.xml
- .forgejo/workflows/appstream-check.yaml # Run check on self change - .forgejo/workflows/appstream-check.yaml # Run check on self change
jobs: jobs:
validate-appstream: validate-appstream:
@@ -12,25 +12,25 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout sources - name: Checkout sources
uses: https://github.com/actions/checkout@v4 uses: actions/checkout@v4
with: with:
fetch-depth: 1 fetch-depth: 1
sparse-checkout: | sparse-checkout: |
packaging/app.comaps.desktop.metainfo.xml packaging/app.comaps.comaps.metainfo.xml
- name: Install appstream validator and flatpak Builder - name: Install appstream validator and flatpak Builder
shell: bash shell: bash
run: | run: |
apt update -y sudo apt update -y
apt install -y \ sudo apt install -y \
flatpak flatpak
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak install -y org.flatpak.Builder sudo flatpak install -y org.flatpak.Builder
- name: Lint appstream data with flatpak Builder - name: Lint appstream data with flatpak Builder
shell: bash shell: bash
run: flatpak run --command=flatpak-builder-lint org.flatpak.Builder appstream packaging/app.comaps.desktop.metainfo.xml run: flatpak run --command=flatpak-builder-lint org.flatpak.Builder appstream packaging/app.comaps.comaps.metainfo.xml
- name: Run appstreamcli in pedantic mode - name: Run appstreamcli in pedantic mode
shell: bash shell: bash
run: flatpak run --command=appstreamcli org.flatpak.Builder validate --pedantic packaging/app.comaps.desktop.metainfo.xml run: flatpak run --command=appstreamcli org.flatpak.Builder validate --pedantic packaging/app.comaps.comaps.metainfo.xml

View File

@@ -63,7 +63,7 @@ jobs:
if: ${{ needs.should-run-check.outputs.run-from-pr == 'true' || needs.should-run-check.outputs.manually-triggered == 'true'}} if: ${{ needs.should-run-check.outputs.run-from-pr == 'true' || needs.should-run-check.outputs.manually-triggered == 'true'}}
steps: steps:
- name: Checkout sources - name: Checkout sources
uses: https://github.com/actions/checkout@v4 uses: actions/checkout@v4
with: with:
fetch-depth: 100 # enough to get all commits for the current day fetch-depth: 100 # enough to get all commits for the current day
@@ -74,8 +74,8 @@ jobs:
- name: Install build tools and dependencies - name: Install build tools and dependencies
shell: bash shell: bash
run: | run: |
apt update -y sudo apt update -y
apt install -y \ sudo apt install -y \
ninja-build \ ninja-build \
libgl1-mesa-dev \ libgl1-mesa-dev \
libglvnd-dev \ libglvnd-dev \
@@ -90,7 +90,7 @@ jobs:
gcovr gcovr
- name: Configure ccache - name: Configure ccache
uses: https://github.com/hendrikmuhs/ccache-action@v1.2 uses: hendrikmuhs/ccache-action@v1.2
with: with:
key: ${{ github.workflow }}-coverage key: ${{ github.workflow }}-coverage
@@ -124,15 +124,15 @@ jobs:
# world_feed_integration_tests - https://github.com/organicmaps/organicmaps/issues/215 # world_feed_integration_tests - https://github.com/organicmaps/organicmaps/issues/215
CTEST_EXCLUDE_REGEX: "generator_integration_tests|opening_hours_integration_tests|opening_hours_supported_features_tests|routing_benchmarks|routing_integration_tests|routing_quality_tests|search_quality_tests|storage_integration_tests|shaders_tests|world_feed_integration_tests" CTEST_EXCLUDE_REGEX: "generator_integration_tests|opening_hours_integration_tests|opening_hours_supported_features_tests|routing_benchmarks|routing_integration_tests|routing_quality_tests|search_quality_tests|storage_integration_tests|shaders_tests|world_feed_integration_tests"
run: | run: |
locale-gen en_US sudo locale-gen en_US
locale-gen en_US.UTF-8 sudo locale-gen en_US.UTF-8
locale-gen es_ES sudo locale-gen es_ES
locale-gen es_ES.UTF-8 sudo locale-gen es_ES.UTF-8
locale-gen fr_FR sudo locale-gen fr_FR
locale-gen fr_FR.UTF-8 sudo locale-gen fr_FR.UTF-8
locale-gen ru_RU sudo locale-gen ru_RU
locale-gen ru_RU.UTF-8 sudo locale-gen ru_RU.UTF-8
update-locale sudo update-locale
ctest -L "omim-test" -E "$CTEST_EXCLUDE_REGEX" --output-on-failure ctest -L "omim-test" -E "$CTEST_EXCLUDE_REGEX" --output-on-failure
- name: Run coverage report generation - name: Run coverage report generation

View File

@@ -3,6 +3,6 @@ on: [pull_request]
jobs: jobs:
check: check:
runs-on: ubuntu-latest runs-on: codeberg-tiny
steps: steps:
- uses: https://github.com/KineticCafe/actions-dco@v1 - uses: https://github.com/KineticCafe/actions-dco@v1

View File

@@ -3,8 +3,8 @@ on:
workflow_dispatch: # Manual trigger workflow_dispatch: # Manual trigger
pull_request: pull_request:
paths: paths:
- qt/res/app.comaps.desktop.desktop - qt/res/app.comaps.comaps.desktop
- .forgejo/workflows/desktop-file-check.yaml # Run check on self change - .forgejo/workflows/desktop-file-check.yaml # Run check on self change
jobs: jobs:
validate-desktop-file: validate-desktop-file:
@@ -12,19 +12,19 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout sources - name: Checkout sources
uses: https://github.com/actions/checkout@v4 uses: actions/checkout@v4
with: with:
fetch-depth: 1 fetch-depth: 1
sparse-checkout: | sparse-checkout: |
qt/res/app.comaps.desktop.desktop qt/res/app.comaps.comaps.desktop
- name: Install desktop-file-validate tool - name: Install desktop-file-validate tool
shell: bash shell: bash
run: | run: |
apt update -y sudo apt update -y
apt install -y \ sudo apt install -y \
desktop-file-utils desktop-file-utils
- name: Validate desktop file - name: Validate desktop file
shell: bash shell: bash
run: desktop-file-validate qt/res/app.comaps.desktop.desktop && echo "Successfully validated .desktop file" run: desktop-file-validate qt/res/app.comaps.comaps.desktop && echo "Successfully validated .desktop file"

View File

@@ -3,7 +3,7 @@ on:
workflow_dispatch: # Manual trigger workflow_dispatch: # Manual trigger
push: push:
branches: branches:
- fix-ci - main
paths-ignore: paths-ignore:
- .gitignore - .gitignore
- .forgejo/** - .forgejo/**
@@ -45,7 +45,7 @@ jobs:
shell: bash shell: bash
steps: steps:
- name: Checkout sources - name: Checkout sources
uses: https://github.com/actions/checkout@v4 uses: actions/checkout@v4
with: with:
fetch-depth: 100 # enough to get all commits for the current day fetch-depth: 100 # enough to get all commits for the current day
@@ -66,6 +66,10 @@ jobs:
CERTIFICATES_DEV_P12: ${{ secrets.CERTIFICATES_DEV_P12 }} CERTIFICATES_DEV_P12: ${{ secrets.CERTIFICATES_DEV_P12 }}
CERTIFICATES_DISTR_P12: ${{ secrets.CERTIFICATES_DISTR_P12 }} CERTIFICATES_DISTR_P12: ${{ secrets.CERTIFICATES_DISTR_P12 }}
- name: Configure repository
shell: bash
run: ./configure.sh
- name: Compile and upload to TestFlight - name: Compile and upload to TestFlight
run: | run: |
echo "IOS_VERSION=$(../tools/unix/version.sh ios_version)-$(../tools/unix/version.sh ios_build)" >> "$GITHUB_ENV" echo "IOS_VERSION=$(../tools/unix/version.sh ios_version)-$(../tools/unix/version.sh ios_build)" >> "$GITHUB_ENV"

View File

@@ -13,7 +13,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout - name: Checkout
uses: https://github.com/actions/checkout@v4 uses: actions/checkout@v4
with: with:
fetch-depth: 1 fetch-depth: 1
sparse-checkout: | sparse-checkout: |

View File

@@ -3,7 +3,7 @@ on:
workflow_dispatch: # Manual trigger workflow_dispatch: # Manual trigger
push: push:
branches: branches:
- fix-ci - main
pull_request: pull_request:
paths-ignore: paths-ignore:
- .gitignore - .gitignore
@@ -53,12 +53,16 @@ jobs:
steps: steps:
- name: Checkout sources - name: Checkout sources
uses: https://github.com/actions/checkout@v4 uses: actions/checkout@v4
- name: Parallel submodules checkout - name: Parallel submodules checkout
shell: bash shell: bash
run: git submodule update --depth 1 --init --recursive --jobs=$(($(sysctl -n hw.logicalcpu) * 20)) run: git submodule update --depth 1 --init --recursive --jobs=$(($(sysctl -n hw.logicalcpu) * 20))
- name: Configure repository
shell: bash
run: ./configure.sh
- name: Configure XCode cache - name: Configure XCode cache
uses: irgaly/xcode-cache@v1 uses: irgaly/xcode-cache@v1
with: with:

View File

@@ -14,7 +14,7 @@ jobs:
environment: production environment: production
steps: steps:
- name: Checkout - name: Checkout
uses: https://github.com/actions/checkout@v4 uses: actions/checkout@v4
- name: Restore release keys - name: Restore release keys
shell: bash shell: bash
@@ -25,7 +25,7 @@ jobs:
APPSTORE_JSON: ${{ secrets.APPSTORE_JSON }} APPSTORE_JSON: ${{ secrets.APPSTORE_JSON }}
- name: Checkout screenshots - name: Checkout screenshots
uses: https://github.com/actions/checkout@v4 uses: actions/checkout@v4
with: with:
repository: ${{ secrets.SCREENSHOTS_REPO }} repository: ${{ secrets.SCREENSHOTS_REPO }}
ssh-key: ${{ secrets.SCREENSHOTS_SSH_KEY }} ssh-key: ${{ secrets.SCREENSHOTS_SSH_KEY }}
@@ -33,7 +33,7 @@ jobs:
path: screenshots path: screenshots
- name: Checkout keywords - name: Checkout keywords
uses: https://github.com/actions/checkout@v4 uses: actions/checkout@v4
with: with:
repository: ${{ secrets.KEYWORDS_REPO }} repository: ${{ secrets.KEYWORDS_REPO }}
ssh-key: ${{ secrets.KEYWORDS_SSH_KEY }} ssh-key: ${{ secrets.KEYWORDS_SSH_KEY }}

View File

@@ -3,7 +3,7 @@ on:
workflow_dispatch: # Manual trigger workflow_dispatch: # Manual trigger
push: push:
branches: branches:
- fix-ci - main
pull_request: pull_request:
paths-ignore: paths-ignore:
- .gitignore - .gitignore
@@ -39,7 +39,7 @@ jobs:
steps: steps:
- name: Checkout sources - name: Checkout sources
uses: https://github.com/actions/checkout@v4 uses: actions/checkout@v4
with: with:
fetch-depth: 100 # enough to get all commits for the current day fetch-depth: 100 # enough to get all commits for the current day
@@ -50,10 +50,9 @@ jobs:
- name: Install build tools and dependencies - name: Install build tools and dependencies
shell: bash shell: bash
run: | run: |
apt update -y sudo apt update -y
apt install -y \ sudo apt install -y \
ninja-build \ ninja-build \
cmake \
libgl1-mesa-dev \ libgl1-mesa-dev \
libglvnd-dev \ libglvnd-dev \
libharfbuzz-dev \ libharfbuzz-dev \
@@ -68,7 +67,7 @@ jobs:
libqt6positioning6 libqt6positioning6
- name: Configure ccache - name: Configure ccache
uses: https://github.com/hendrikmuhs/ccache-action@v1.2 uses: hendrikmuhs/ccache-action@v1.2
with: with:
key: ${{ github.workflow }}-no-unity key: ${{ github.workflow }}-no-unity
@@ -104,7 +103,7 @@ jobs:
steps: steps:
- name: Checkout sources - name: Checkout sources
uses: https://github.com/actions/checkout@v4 uses: actions/checkout@v4
- name: Parallel submodules checkout - name: Parallel submodules checkout
shell: bash shell: bash
@@ -113,8 +112,8 @@ jobs:
- name: Install build tools and dependencies - name: Install build tools and dependencies
shell: bash shell: bash
run: | run: |
apt update -y sudo apt update -y
apt install -y \ sudo apt install -y \
ninja-build \ ninja-build \
libgl1-mesa-dev \ libgl1-mesa-dev \
libglvnd-dev \ libglvnd-dev \
@@ -130,7 +129,7 @@ jobs:
libqt6positioning6 libqt6positioning6
- name: Configure ccache - name: Configure ccache
uses: https://github.com/hendrikmuhs/ccache-action@v1.2 uses: hendrikmuhs/ccache-action@v1.2
with: with:
key: ${{ github.workflow }}-unity-${{ matrix.compiler.CC }}-${{ matrix.CMAKE_BUILD_TYPE }} key: ${{ github.workflow }}-unity-${{ matrix.compiler.CC }}-${{ matrix.CMAKE_BUILD_TYPE }}
@@ -165,13 +164,13 @@ jobs:
# world_feed_integration_tests - https://github.com/organicmaps/organicmaps/issues/215 # world_feed_integration_tests - https://github.com/organicmaps/organicmaps/issues/215
CTEST_EXCLUDE_REGEX: "generator_integration_tests|opening_hours_integration_tests|opening_hours_supported_features_tests|routing_benchmarks|routing_integration_tests|routing_quality_tests|search_quality_tests|storage_integration_tests|shaders_tests|world_feed_integration_tests" CTEST_EXCLUDE_REGEX: "generator_integration_tests|opening_hours_integration_tests|opening_hours_supported_features_tests|routing_benchmarks|routing_integration_tests|routing_quality_tests|search_quality_tests|storage_integration_tests|shaders_tests|world_feed_integration_tests"
run: | run: |
locale-gen en_US sudo locale-gen en_US
locale-gen en_US.UTF-8 sudo locale-gen en_US.UTF-8
locale-gen es_ES sudo locale-gen es_ES
locale-gen es_ES.UTF-8 sudo locale-gen es_ES.UTF-8
locale-gen fr_FR sudo locale-gen fr_FR
locale-gen fr_FR.UTF-8 sudo locale-gen fr_FR.UTF-8
locale-gen ru_RU sudo locale-gen ru_RU
locale-gen ru_RU.UTF-8 sudo locale-gen ru_RU.UTF-8
update-locale sudo update-locale
ctest -L "omim-test" -E "$CTEST_EXCLUDE_REGEX" --output-on-failure ctest -L "omim-test" -E "$CTEST_EXCLUDE_REGEX" --output-on-failure

View File

@@ -3,7 +3,7 @@ on:
workflow_dispatch: # Manual trigger workflow_dispatch: # Manual trigger
push: push:
branches: branches:
- fix-ci - main
pull_request: pull_request:
paths-ignore: paths-ignore:
- .gitignore - .gitignore
@@ -46,7 +46,7 @@ jobs:
steps: steps:
- name: Checkout sources - name: Checkout sources
uses: https://github.com/actions/checkout@v4 uses: actions/checkout@v4
- name: Parallel submodules checkout - name: Parallel submodules checkout
shell: bash shell: bash

View File

@@ -37,6 +37,10 @@ jobs:
shell: bash shell: bash
run: git submodule update --depth 1 --init --recursive --jobs=$(($(sysctl -n hw.logicalcpu) * 20)) run: git submodule update --depth 1 --init --recursive --jobs=$(($(sysctl -n hw.logicalcpu) * 20))
- name: Configure repository
shell: bash
run: ./configure.sh
- name: Configure XCode cache - name: Configure XCode cache
uses: irgaly/xcode-cache@v1 uses: irgaly/xcode-cache@v1
with: with:

17
.gitignore vendored
View File

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

View File

@@ -1,4 +1,5 @@
cmake_minimum_required(VERSION 3.22.1) cmake_minimum_required(VERSION 3.22.1)
project(omim C CXX) project(omim C CXX)
set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_STANDARD 20)
@@ -105,7 +106,7 @@ if (${CMAKE_BUILD_TYPE} STREQUAL "Debug")
elseif (${CMAKE_BUILD_TYPE} MATCHES "Rel") elseif (${CMAKE_BUILD_TYPE} MATCHES "Rel")
add_definitions(-DRELEASE) add_definitions(-DRELEASE)
if (NOT MSVC) if (NOT MSVC)
add_compile_options(-Ofast $<$<CXX_COMPILER_ID:GNU>:-flto=auto>) # Also enables -ffast-math add_compile_options(-O3 $<$<CXX_COMPILER_ID:GNU>:-flto=auto>)
endif() endif()
else() else()
message(FATAL_ERROR "Unknown build type: " ${CMAKE_BUILD_TYPE}) message(FATAL_ERROR "Unknown build type: " ${CMAKE_BUILD_TYPE})

View File

@@ -1 +1 @@
See [docs/INSTALL.md](docs/INSTALL.md) See [docs/INSTALL.md](docs/INSTALL.md)

View File

@@ -125,10 +125,8 @@ You can help by donating, contributing code, translating, or by telling others a
- Build instructions: [docs/INSTALL.md](docs/INSTALL.md) - Build instructions: [docs/INSTALL.md](docs/INSTALL.md)
- Contribution guide: [docs/CONTRIBUTING.md](docs/CONTRIBUTING.md) - Contribution guide: [docs/CONTRIBUTING.md](docs/CONTRIBUTING.md)
> [!NOTE]
> Some docs might be outdated, contain broken links or old references to Organic Maps, etc. Its a work in progress and help is much appreciated!
There is a dedicated Zulip chat for active contributors: [Zulip](https://comaps.zulipchat.com) There is a dedicated [Zulip](https://codeberg.org/comaps/Governance/src/branch/main/contribute.md#3-team-messaging) chat for active contributors.
--- ---

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -1 +1 @@
Navigation cartographique facile - Découvrez davantage de votre voyage - Propulsé par la communauté Navigation cartographique facile - Vivez de grands voyages - Propulsé par la communauté

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -9,7 +9,6 @@ import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.widget.ExpandableListAdapter; import android.widget.ExpandableListAdapter;
import android.widget.ExpandableListView; import android.widget.ExpandableListView;
import android.widget.TextView;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.appcompat.app.AlertDialog; import androidx.appcompat.app.AlertDialog;
import app.organicmaps.R; import app.organicmaps.R;
@@ -19,6 +18,7 @@ import app.organicmaps.sdk.downloader.CountryItem;
import app.organicmaps.sdk.util.StringUtils; import app.organicmaps.sdk.util.StringUtils;
import app.organicmaps.sdk.util.UiUtils; import app.organicmaps.sdk.util.UiUtils;
import com.google.android.material.dialog.MaterialAlertDialogBuilder; import com.google.android.material.dialog.MaterialAlertDialogBuilder;
import com.google.android.material.textview.MaterialTextView;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
@@ -93,9 +93,9 @@ abstract class BaseRoutingErrorDialogFragment extends BaseMwmDialogFragment
{ {
@SuppressLint("InflateParams") @SuppressLint("InflateParams")
final View countryView = View.inflate(requireActivity(), R.layout.dialog_missed_map, null); final View countryView = View.inflate(requireActivity(), R.layout.dialog_missed_map, null);
((TextView) countryView.findViewById(R.id.tv__title)).setText(map.name); ((MaterialTextView) countryView.findViewById(R.id.tv__title)).setText(map.name);
final TextView szView = countryView.findViewById(R.id.tv__size); final MaterialTextView szView = countryView.findViewById(R.id.tv__size);
szView.setText(StringUtils.getFileSizeString(requireContext(), map.totalSize)); szView.setText(StringUtils.getFileSizeString(requireContext(), map.totalSize));
ViewGroup.MarginLayoutParams lp = (ViewGroup.MarginLayoutParams) szView.getLayoutParams(); ViewGroup.MarginLayoutParams lp = (ViewGroup.MarginLayoutParams) szView.getLayoutParams();
lp.rightMargin = 0; lp.rightMargin = 0;

View File

@@ -8,11 +8,11 @@ import android.view.LayoutInflater;
import android.view.MotionEvent; import android.view.MotionEvent;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.appcompat.content.res.AppCompatResources; import androidx.appcompat.content.res.AppCompatResources;
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.sdk.bookmarks.data.MapObject; import app.organicmaps.sdk.bookmarks.data.MapObject;
import app.organicmaps.sdk.routing.RouteMarkData; import app.organicmaps.sdk.routing.RouteMarkData;
@@ -232,16 +232,16 @@ public class ManageRouteAdapter extends RecyclerView.Adapter<ManageRouteAdapter.
public final View mItemView; public final View mItemView;
@NonNull @NonNull
public final ImageView mImageViewIcon; public final ShapeableImageView mImageViewIcon;
@NonNull @NonNull
public final TextView mTextViewTitle; public final MaterialTextView mTextViewTitle;
@NonNull @NonNull
public final TextView mTextViewSubtitle; public final MaterialTextView mTextViewSubtitle;
@NonNull @NonNull
public final ImageView mImageViewDelete; public final ShapeableImageView mImageViewDelete;
ManageRouteViewHolder(@NonNull View itemView) ManageRouteViewHolder(@NonNull View itemView)
{ {

View File

@@ -4,7 +4,6 @@ import android.location.Location;
import android.text.TextUtils; import android.text.TextUtils;
import android.view.View; import android.view.View;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AppCompatActivity;
@@ -28,20 +27,22 @@ import app.organicmaps.widget.LanesView;
import app.organicmaps.widget.SpeedLimitView; import app.organicmaps.widget.SpeedLimitView;
import app.organicmaps.widget.menu.NavMenu; import app.organicmaps.widget.menu.NavMenu;
import com.google.android.material.bottomsheet.BottomSheetBehavior; import com.google.android.material.bottomsheet.BottomSheetBehavior;
import com.google.android.material.imageview.ShapeableImageView;
import com.google.android.material.textview.MaterialTextView;
public class NavigationController implements TrafficManager.TrafficCallback, NavMenu.NavMenuListener public class NavigationController implements TrafficManager.TrafficCallback, NavMenu.NavMenuListener
{ {
private final View mFrame; private final View mFrame;
private final ImageView mNextTurnImage; private final ImageView mNextTurnImage;
private final TextView mNextTurnDistance; private final MaterialTextView mNextTurnDistance;
private final TextView mCircleExit; private final MaterialTextView mCircleExit;
private final View mNextNextTurnFrame; private final View mNextNextTurnFrame;
private final ImageView mNextNextTurnImage; private final ImageView mNextNextTurnImage;
private final View mStreetFrame; private final View mStreetFrame;
private final TextView mNextStreet; private final MaterialTextView mNextStreet;
@NonNull @NonNull
private final LanesView mLanesView; private final LanesView mLanesView;

View File

@@ -60,7 +60,7 @@ final class RoutingBottomMenuController implements View.OnClickListener
@NonNull @NonNull
private final View mTransitFrame; private final View mTransitFrame;
@NonNull @NonNull
private final TextView mError; private final MaterialTextView mError;
@NonNull @NonNull
private final Button mStart; private final Button mStart;
@NonNull @NonNull
@@ -94,7 +94,7 @@ final class RoutingBottomMenuController implements View.OnClickListener
View altitudeChartFrame = getViewById(activity, frame, R.id.altitude_chart_panel); View altitudeChartFrame = getViewById(activity, frame, R.id.altitude_chart_panel);
View timeElevationLine = getViewById(activity, frame, R.id.time_elevation_line); View timeElevationLine = getViewById(activity, frame, R.id.time_elevation_line);
View transitFrame = getViewById(activity, frame, R.id.transit_panel); View transitFrame = getViewById(activity, frame, R.id.transit_panel);
TextView error = (TextView) getViewById(activity, frame, R.id.error); MaterialTextView error = (MaterialTextView) getViewById(activity, frame, R.id.error);
Button start = (Button) getViewById(activity, frame, R.id.start); Button start = (Button) getViewById(activity, frame, R.id.start);
ImageView altitudeChart = (ImageView) getViewById(activity, frame, R.id.altitude_chart); ImageView altitudeChart = (ImageView) getViewById(activity, frame, R.id.altitude_chart);
MaterialTextView time = (MaterialTextView) getViewById(activity, frame, R.id.time); MaterialTextView time = (MaterialTextView) getViewById(activity, frame, R.id.time);
@@ -117,7 +117,7 @@ final class RoutingBottomMenuController implements View.OnClickListener
private RoutingBottomMenuController(@NonNull Activity context, @NonNull View altitudeChartFrame, private RoutingBottomMenuController(@NonNull Activity context, @NonNull View altitudeChartFrame,
@NonNull View timeElevationLine, @NonNull View transitFrame, @NonNull View timeElevationLine, @NonNull View transitFrame,
@NonNull TextView error, @NonNull Button start, @NonNull ImageView altitudeChart, @NonNull MaterialTextView error, @NonNull Button start, @NonNull ImageView altitudeChart,
@NonNull MaterialTextView time, @NonNull MaterialTextView altitudeDifference, @NonNull MaterialTextView time, @NonNull MaterialTextView altitudeDifference,
@NonNull TextView timeVehicle, @Nullable MaterialTextView arrival, @NonNull TextView timeVehicle, @Nullable MaterialTextView arrival,
@NonNull View actionFrame, @Nullable RoutingBottomMenuListener listener) @NonNull View actionFrame, @Nullable RoutingBottomMenuListener listener)
@@ -223,7 +223,7 @@ final class RoutingBottomMenuController implements View.OnClickListener
else else
UiUtils.hide(rv); // Show only distance between start and finish UiUtils.hide(rv); // Show only distance between start and finish
TextView totalTimeView = mTransitFrame.findViewById(R.id.total_time); MaterialTextView totalTimeView = mTransitFrame.findViewById(R.id.total_time);
totalTimeView.setText(mContext.getString(R.string.placepage_distance) + ": " + totalLength.mDistanceStr + " " totalTimeView.setText(mContext.getString(R.string.placepage_distance) + ": " + totalLength.mDistanceStr + " "
+ totalLength.getUnitsStr(mContext)); + totalLength.getUnitsStr(mContext));

View File

@@ -8,12 +8,12 @@ import android.text.TextUtils;
import android.util.Pair; import android.util.Pair;
import android.view.View; import android.view.View;
import android.widget.Button; import android.widget.Button;
import android.widget.TextView;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.appcompat.app.AlertDialog; import androidx.appcompat.app.AlertDialog;
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.textview.MaterialTextView;
import app.organicmaps.R; import app.organicmaps.R;
import app.organicmaps.sdk.downloader.CountryItem; import app.organicmaps.sdk.downloader.CountryItem;
import app.organicmaps.sdk.downloader.MapManager; import app.organicmaps.sdk.downloader.MapManager;
@@ -38,7 +38,7 @@ public class RoutingErrorDialogFragment extends BaseRoutingErrorDialogFragment
if (!TextUtils.isEmpty(titleMessage.first)) if (!TextUtils.isEmpty(titleMessage.first))
{ {
TextView titleView = new TextView(requireContext()); MaterialTextView titleView = new MaterialTextView(requireContext());
titleView.setText(titleMessage.first); titleView.setText(titleMessage.first);
titleView.setPadding(65, 32, 32, 16); titleView.setPadding(65, 32, 32, 16);
titleView.setTextSize(18); titleView.setTextSize(18);

View File

@@ -5,7 +5,6 @@ import android.util.Pair;
import android.view.View; import android.view.View;
import android.widget.Button; import android.widget.Button;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AppCompatActivity;
import androidx.core.content.ContextCompat; import androidx.core.content.ContextCompat;
@@ -19,6 +18,7 @@ import app.organicmaps.util.Graphics;
import app.organicmaps.util.ThemeUtils; import app.organicmaps.util.ThemeUtils;
import com.google.android.material.bottomsheet.BottomSheetBehavior; import com.google.android.material.bottomsheet.BottomSheetBehavior;
import com.google.android.material.progressindicator.LinearProgressIndicator; import com.google.android.material.progressindicator.LinearProgressIndicator;
import com.google.android.material.textview.MaterialTextView;
import java.time.LocalTime; import java.time.LocalTime;
import java.time.format.DateTimeFormatter; import java.time.format.DateTimeFormatter;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
@@ -31,15 +31,15 @@ public class NavMenu
private final ImageView mTts; private final ImageView mTts;
private final View mSpeedViewContainer; private final View mSpeedViewContainer;
private final TextView mSpeedValue; private final MaterialTextView mSpeedValue;
private final TextView mSpeedUnits; private final MaterialTextView mSpeedUnits;
private final TextView mTimeHourValue; private final MaterialTextView mTimeHourValue;
private final TextView mTimeHourUnits; private final MaterialTextView mTimeHourUnits;
private final TextView mTimeMinuteValue; private final MaterialTextView mTimeMinuteValue;
private final TextView mTimeMinuteUnits; private final MaterialTextView mTimeMinuteUnits;
private final TextView mTimeEstimate; private final MaterialTextView mTimeEstimate;
private final TextView mDistanceValue; private final MaterialTextView mDistanceValue;
private final TextView mDistanceUnits; private final MaterialTextView mDistanceUnits;
private final LinearProgressIndicator mRouteProgress; private final LinearProgressIndicator mRouteProgress;
private final AppCompatActivity mActivity; private final AppCompatActivity mActivity;

View File

@@ -5,7 +5,6 @@ import android.os.Bundle;
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.TextView;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import app.organicmaps.MwmActivity; import app.organicmaps.MwmActivity;
@@ -21,16 +20,17 @@ import app.organicmaps.sdk.util.StringUtils;
import app.organicmaps.sdk.util.UiUtils; import app.organicmaps.sdk.util.UiUtils;
import app.organicmaps.util.Utils; import app.organicmaps.util.Utils;
import app.organicmaps.widget.ArrowView; import app.organicmaps.widget.ArrowView;
import com.google.android.material.textview.MaterialTextView;
public class DirectionFragment extends BaseMwmDialogFragment implements LocationListener, SensorListener public class DirectionFragment extends BaseMwmDialogFragment implements LocationListener, SensorListener
{ {
private static final String EXTRA_MAP_OBJECT = "MapObject"; private static final String EXTRA_MAP_OBJECT = "MapObject";
private ArrowView mAvDirection; private ArrowView mAvDirection;
private TextView mTvTitle; private MaterialTextView mTvTitle;
private TextView mTvSubtitle; private MaterialTextView mTvSubtitle;
private TextView mTvDistance; private MaterialTextView mTvDistance;
private TextView mTvAzimuth; private MaterialTextView mTvAzimuth;
private MapObject mMapObject; private MapObject mMapObject;

View File

@@ -619,7 +619,7 @@ public class PlacePageView extends Fragment
private void addOrganisation() private void addOrganisation()
{ {
((MwmActivity) requireActivity()).showPositionChooserForEditor(true, false); ((MwmActivity) requireActivity()).showPositionChooserForEditor(true, true);
} }
private void addPlace() private void addPlace()

View File

@@ -4,7 +4,7 @@
<size <size
android:width="40dp" android:width="40dp"
android:height="40dp" /> android:height="40dp" />
<solid android:color="#2E89B0" /> <solid android:color="#427BB8" />
</shape> </shape>
</item> </item>
<item> <item>

View File

@@ -5,7 +5,7 @@
<size <size
android:width="40dp" android:width="40dp"
android:height="40dp" /> android:height="40dp" />
<solid android:color="#14A0C2" /> <solid android:color="#54A3B6" />
</shape> </shape>
</item> </item>
<item> <item>

View File

@@ -11,7 +11,7 @@
<path <path
android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0" android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0"
android:strokeWidth="2" android:strokeWidth="2"
android:fillColor="#006c35" android:fillColor="#FF37653F"
android:strokeColor="#fff"/> android:strokeColor="#fff"/>
<path <path
android:pathData="m15.251,17h-1.693v-6.527l-2.022,0.627v-1.377l3.533,-1.266h0.182z" android:pathData="m15.251,17h-1.693v-6.527l-2.022,0.627v-1.377l3.533,-1.266h0.182z"

View File

@@ -11,7 +11,7 @@
<path <path
android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0" android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0"
android:strokeWidth="2" android:strokeWidth="2"
android:fillColor="#006c35" android:fillColor="#FF37653F"
android:strokeColor="#fff"/> android:strokeColor="#fff"/>
<path <path
android:pathData="m16.985,17h-5.848v-1.16l2.76,-2.941q0.568,-0.621 0.838,-1.084 0.275,-0.463 0.275,-0.879 0,-0.568 -0.287,-0.891 -0.287,-0.328 -0.82,-0.328 -0.574,0 -0.908,0.398 -0.328,0.393 -0.328,1.037h-1.699q0,-0.779 0.369,-1.424 0.375,-0.645 1.055,-1.008 0.68,-0.369 1.541,-0.369 1.318,0 2.045,0.633 0.732,0.633 0.732,1.787 0,0.633 -0.328,1.289t-1.125,1.529l-1.939,2.045h3.668z" android:pathData="m16.985,17h-5.848v-1.16l2.76,-2.941q0.568,-0.621 0.838,-1.084 0.275,-0.463 0.275,-0.879 0,-0.568 -0.287,-0.891 -0.287,-0.328 -0.82,-0.328 -0.574,0 -0.908,0.398 -0.328,0.393 -0.328,1.037h-1.699q0,-0.779 0.369,-1.424 0.375,-0.645 1.055,-1.008 0.68,-0.369 1.541,-0.369 1.318,0 2.045,0.633 0.732,0.633 0.732,1.787 0,0.633 -0.328,1.289t-1.125,1.529l-1.939,2.045h3.668z"

View File

@@ -11,7 +11,7 @@
<path <path
android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0" android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0"
android:strokeWidth="2" android:strokeWidth="2"
android:fillColor="#006c35" android:fillColor="#FF37653F"
android:strokeColor="#fff"/> android:strokeColor="#fff"/>
<path <path
android:pathData="m12.86,11.984h0.902q0.645,0 0.955,-0.322 0.311,-0.322 0.311,-0.855 0,-0.516 -0.311,-0.803 -0.305,-0.287 -0.844,-0.287 -0.486,0 -0.814,0.27 -0.328,0.264 -0.328,0.691h-1.693q0,-0.668 0.357,-1.195 0.363,-0.533 1.008,-0.832 0.65,-0.299 1.43,-0.299 1.354,0 2.121,0.65 0.768,0.645 0.768,1.781 0,0.586 -0.357,1.078 -0.357,0.492 -0.938,0.756 0.721,0.258 1.072,0.773 0.357,0.516 0.357,1.219 0,1.137 -0.832,1.822 -0.826,0.686 -2.191,0.686 -1.277,0 -2.092,-0.674 -0.809,-0.674 -0.809,-1.781h1.693q0,0.48 0.357,0.785 0.363,0.305 0.891,0.305 0.604,0 0.943,-0.316 0.346,-0.322 0.346,-0.85 0,-1.277 -1.406,-1.277h-0.896z" android:pathData="m12.86,11.984h0.902q0.645,0 0.955,-0.322 0.311,-0.322 0.311,-0.855 0,-0.516 -0.311,-0.803 -0.305,-0.287 -0.844,-0.287 -0.486,0 -0.814,0.27 -0.328,0.264 -0.328,0.691h-1.693q0,-0.668 0.357,-1.195 0.363,-0.533 1.008,-0.832 0.65,-0.299 1.43,-0.299 1.354,0 2.121,0.65 0.768,0.645 0.768,1.781 0,0.586 -0.357,1.078 -0.357,0.492 -0.938,0.756 0.721,0.258 1.072,0.773 0.357,0.516 0.357,1.219 0,1.137 -0.832,1.822 -0.826,0.686 -2.191,0.686 -1.277,0 -2.092,-0.674 -0.809,-0.674 -0.809,-1.781h1.693q0,0.48 0.357,0.785 0.363,0.305 0.891,0.305 0.604,0 0.943,-0.316 0.346,-0.322 0.346,-0.85 0,-1.277 -1.406,-1.277h-0.896z"

View File

@@ -11,7 +11,7 @@
<path <path
android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0" android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0"
android:strokeWidth="2" android:strokeWidth="2"
android:fillColor="#006c35" android:fillColor="#FF37653F"
android:strokeColor="#fff"/> android:strokeColor="#fff"/>
<path <path
android:pathData="m16.147,13.789h0.967v1.365h-0.967v1.846h-1.693v-1.846h-3.498l-0.076,-1.066 3.557,-5.619h1.711zM12.567,13.789h1.887v-3.012l-0.111,0.193z" android:pathData="m16.147,13.789h0.967v1.365h-0.967v1.846h-1.693v-1.846h-3.498l-0.076,-1.066 3.557,-5.619h1.711zM12.567,13.789h1.887v-3.012l-0.111,0.193z"

View File

@@ -11,7 +11,7 @@
<path <path
android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0" android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0"
android:strokeWidth="2" android:strokeWidth="2"
android:fillColor="#006c35" android:fillColor="#FF37653F"
android:strokeColor="#fff"/> android:strokeColor="#fff"/>
<path <path
android:pathData="m11.39,12.805 l0.492,-4.336h4.781v1.412h-3.393l-0.211,1.834q0.604,-0.322 1.283,-0.322 1.219,0 1.91,0.756 0.691,0.756 0.691,2.115 0,0.826 -0.352,1.482 -0.346,0.65 -0.996,1.014 -0.65,0.357 -1.535,0.357 -0.773,0 -1.436,-0.311 -0.662,-0.316 -1.049,-0.885 -0.381,-0.568 -0.404,-1.295h1.676q0.053,0.533 0.369,0.832 0.322,0.293 0.838,0.293 0.574,0 0.885,-0.41 0.311,-0.416 0.311,-1.172 0,-0.727 -0.357,-1.113 -0.357,-0.387 -1.014,-0.387 -0.604,0 -0.979,0.316l-0.164,0.152z" android:pathData="m11.39,12.805 l0.492,-4.336h4.781v1.412h-3.393l-0.211,1.834q0.604,-0.322 1.283,-0.322 1.219,0 1.91,0.756 0.691,0.756 0.691,2.115 0,0.826 -0.352,1.482 -0.346,0.65 -0.996,1.014 -0.65,0.357 -1.535,0.357 -0.773,0 -1.436,-0.311 -0.662,-0.316 -1.049,-0.885 -0.381,-0.568 -0.404,-1.295h1.676q0.053,0.533 0.369,0.832 0.322,0.293 0.838,0.293 0.574,0 0.885,-0.41 0.311,-0.416 0.311,-1.172 0,-0.727 -0.357,-1.113 -0.357,-0.387 -1.014,-0.387 -0.604,0 -0.979,0.316l-0.164,0.152z"

View File

@@ -11,7 +11,7 @@
<path <path
android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0" android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0"
android:strokeWidth="2" android:strokeWidth="2"
android:fillColor="#006c35" android:fillColor="#FF37653F"
android:strokeColor="#fff"/> android:strokeColor="#fff"/>
<path <path
android:pathData="m15.731,8.381v1.395h-0.164q-1.148,0.018 -1.852,0.598 -0.697,0.58 -0.838,1.611 0.68,-0.691 1.717,-0.691 1.113,0 1.77,0.797t0.656,2.098q0,0.832 -0.363,1.506 -0.357,0.674 -1.02,1.049 -0.656,0.375 -1.488,0.375 -1.348,0 -2.18,-0.938 -0.826,-0.938 -0.826,-2.502v-0.609q0,-1.389 0.521,-2.449 0.527,-1.066 1.506,-1.646 0.984,-0.586 2.279,-0.592zM14.079,12.652q-0.41,0 -0.744,0.217 -0.334,0.211 -0.492,0.563v0.516q0,0.85 0.334,1.33 0.334,0.475 0.938,0.475 0.545,0 0.879,-0.428 0.34,-0.434 0.34,-1.119 0,-0.697 -0.34,-1.125 -0.34,-0.428 -0.914,-0.428z" android:pathData="m15.731,8.381v1.395h-0.164q-1.148,0.018 -1.852,0.598 -0.697,0.58 -0.838,1.611 0.68,-0.691 1.717,-0.691 1.113,0 1.77,0.797t0.656,2.098q0,0.832 -0.363,1.506 -0.357,0.674 -1.02,1.049 -0.656,0.375 -1.488,0.375 -1.348,0 -2.18,-0.938 -0.826,-0.938 -0.826,-2.502v-0.609q0,-1.389 0.521,-2.449 0.527,-1.066 1.506,-1.646 0.984,-0.586 2.279,-0.592zM14.079,12.652q-0.41,0 -0.744,0.217 -0.334,0.211 -0.492,0.563v0.516q0,0.85 0.334,1.33 0.334,0.475 0.938,0.475 0.545,0 0.879,-0.428 0.34,-0.434 0.34,-1.119 0,-0.697 -0.34,-1.125 -0.34,-0.428 -0.914,-0.428z"

View File

@@ -11,7 +11,7 @@
<path <path
android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0" android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0"
android:strokeWidth="2" android:strokeWidth="2"
android:fillColor="#006c35" android:fillColor="#FF37653F"
android:strokeColor="#fff"/> android:strokeColor="#fff"/>
<path <path
android:pathData="m16.938,9.418 l-3.299,7.582h-1.787l3.305,-7.16h-4.242v-1.371h6.023z" android:pathData="m16.938,9.418 l-3.299,7.582h-1.787l3.305,-7.16h-4.242v-1.371h6.023z"

View File

@@ -11,7 +11,7 @@
<path <path
android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0" android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0"
android:strokeWidth="2" android:strokeWidth="2"
android:fillColor="#006c35" android:fillColor="#FF37653F"
android:strokeColor="#fff"/> android:strokeColor="#fff"/>
<path <path
android:pathData="m16.698,10.736q0,0.621 -0.311,1.102 -0.311,0.48 -0.855,0.768 0.621,0.299 0.984,0.826 0.363,0.521 0.363,1.23 0,1.137 -0.773,1.799 -0.773,0.656 -2.103,0.656t-2.109,-0.662 -0.779,-1.793q0,-0.709 0.363,-1.236 0.363,-0.527 0.979,-0.82 -0.545,-0.287 -0.855,-0.768 -0.305,-0.48 -0.305,-1.102 0,-1.09 0.727,-1.734 0.727,-0.65 1.975,-0.65 1.242,0 1.969,0.645 0.732,0.639 0.732,1.74zM15.18,14.539q0,-0.557 -0.322,-0.891 -0.322,-0.334 -0.867,-0.334 -0.539,0 -0.861,0.334 -0.322,0.328 -0.322,0.891 0,0.545 0.316,0.879 0.316,0.334 0.879,0.334 0.551,0 0.861,-0.322 0.316,-0.322 0.316,-0.891zM15.005,10.818q0,-0.498 -0.264,-0.797 -0.264,-0.305 -0.744,-0.305 -0.475,0 -0.738,0.293 -0.264,0.293 -0.264,0.809 0,0.51 0.264,0.82t0.744,0.311q0.48,0 0.738,-0.311 0.264,-0.311 0.264,-0.82z" android:pathData="m16.698,10.736q0,0.621 -0.311,1.102 -0.311,0.48 -0.855,0.768 0.621,0.299 0.984,0.826 0.363,0.521 0.363,1.23 0,1.137 -0.773,1.799 -0.773,0.656 -2.103,0.656t-2.109,-0.662 -0.779,-1.793q0,-0.709 0.363,-1.236 0.363,-0.527 0.979,-0.82 -0.545,-0.287 -0.855,-0.768 -0.305,-0.48 -0.305,-1.102 0,-1.09 0.727,-1.734 0.727,-0.65 1.975,-0.65 1.242,0 1.969,0.645 0.732,0.639 0.732,1.74zM15.18,14.539q0,-0.557 -0.322,-0.891 -0.322,-0.334 -0.867,-0.334 -0.539,0 -0.861,0.334 -0.322,0.328 -0.322,0.891 0,0.545 0.316,0.879 0.316,0.334 0.879,0.334 0.551,0 0.861,-0.322 0.316,-0.322 0.316,-0.891zM15.005,10.818q0,-0.498 -0.264,-0.797 -0.264,-0.305 -0.744,-0.305 -0.475,0 -0.738,0.293 -0.264,0.293 -0.264,0.809 0,0.51 0.264,0.82t0.744,0.311q0.48,0 0.738,-0.311 0.264,-0.311 0.264,-0.82z"

View File

@@ -11,7 +11,7 @@
<path <path
android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0" android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0"
android:strokeWidth="2" android:strokeWidth="2"
android:fillColor="#006c35" android:fillColor="#FF37653F"
android:strokeColor="#fff"/> android:strokeColor="#fff"/>
<path <path
android:pathData="m15.099,13.59q-0.662,0.65 -1.547,0.65 -1.131,0 -1.811,-0.773 -0.68,-0.779 -0.68,-2.098 0,-0.838 0.363,-1.535 0.369,-0.703 1.025,-1.09 0.656,-0.393 1.477,-0.393 0.844,0 1.5,0.422t1.02,1.213q0.363,0.791 0.369,1.811v0.627q0,2.133 -1.061,3.352t-3.006,1.301l-0.416,0.006v-1.412l0.375,-0.006q2.209,-0.1 2.391,-2.074zM13.968,12.945q0.41,0 0.703,-0.211 0.299,-0.211 0.451,-0.51v-0.697q0,-0.861 -0.328,-1.336 -0.328,-0.475 -0.879,-0.475 -0.51,0 -0.838,0.469 -0.328,0.463 -0.328,1.166 0,0.697 0.316,1.148 0.322,0.445 0.902,0.445z" android:pathData="m15.099,13.59q-0.662,0.65 -1.547,0.65 -1.131,0 -1.811,-0.773 -0.68,-0.779 -0.68,-2.098 0,-0.838 0.363,-1.535 0.369,-0.703 1.025,-1.09 0.656,-0.393 1.477,-0.393 0.844,0 1.5,0.422t1.02,1.213q0.363,0.791 0.369,1.811v0.627q0,2.133 -1.061,3.352t-3.006,1.301l-0.416,0.006v-1.412l0.375,-0.006q2.209,-0.1 2.391,-2.074zM13.968,12.945q0.41,0 0.703,-0.211 0.299,-0.211 0.451,-0.51v-0.697q0,-0.861 -0.328,-1.336 -0.328,-0.475 -0.879,-0.475 -0.51,0 -0.838,0.469 -0.328,0.463 -0.328,1.166 0,0.697 0.316,1.148 0.322,0.445 0.902,0.445z"

View File

@@ -11,7 +11,7 @@
<path <path
android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0" android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0"
android:strokeWidth="2" android:strokeWidth="2"
android:fillColor="#006c35" android:fillColor="#FF37653F"
android:strokeColor="#fff"/> android:strokeColor="#fff"/>
<path <path
android:pathData="m11.809,17h-1.693v-6.527l-2.022,0.627v-1.377l3.533,-1.266h0.182zM20.323,13.473q0,1.77 -0.732,2.707 -0.732,0.938 -2.145,0.938 -1.395,0 -2.133,-0.92 -0.738,-0.92 -0.756,-2.637v-1.57q0,-1.787 0.738,-2.713 0.744,-0.926 2.139,-0.926 1.395,0 2.133,0.92 0.738,0.914 0.756,2.631zM18.629,11.75q0,-1.061 -0.293,-1.541 -0.287,-0.486 -0.902,-0.486 -0.598,0 -0.885,0.463 -0.281,0.457 -0.299,1.436v2.074q0,1.043 0.281,1.553 0.287,0.504 0.914,0.504 0.621,0 0.896,-0.486 0.275,-0.486 0.287,-1.488z" android:pathData="m11.809,17h-1.693v-6.527l-2.022,0.627v-1.377l3.533,-1.266h0.182zM20.323,13.473q0,1.77 -0.732,2.707 -0.732,0.938 -2.145,0.938 -1.395,0 -2.133,-0.92 -0.738,-0.92 -0.756,-2.637v-1.57q0,-1.787 0.738,-2.713 0.744,-0.926 2.139,-0.926 1.395,0 2.133,0.92 0.738,0.914 0.756,2.631zM18.629,11.75q0,-1.061 -0.293,-1.541 -0.287,-0.486 -0.902,-0.486 -0.598,0 -0.885,0.463 -0.281,0.457 -0.299,1.436v2.074q0,1.043 0.281,1.553 0.287,0.504 0.914,0.504 0.621,0 0.896,-0.486 0.275,-0.486 0.287,-1.488z"

View File

@@ -11,7 +11,7 @@
<path <path
android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0" android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0"
android:strokeWidth="2" android:strokeWidth="2"
android:fillColor="#006c35" android:fillColor="#FF37653F"
android:strokeColor="#fff"/> android:strokeColor="#fff"/>
<path <path
android:pathData="m11.809,17h-1.693v-6.527l-2.022,0.627v-1.377l3.533,-1.266h0.182zM18.694,17h-1.693v-6.527l-2.022,0.627v-1.377l3.533,-1.266h0.182z" android:pathData="m11.809,17h-1.693v-6.527l-2.022,0.627v-1.377l3.533,-1.266h0.182zM18.694,17h-1.693v-6.527l-2.022,0.627v-1.377l3.533,-1.266h0.182z"

View File

@@ -11,7 +11,7 @@
<path <path
android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0" android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0"
android:strokeWidth="2" android:strokeWidth="2"
android:fillColor="#006c35" android:fillColor="#FF37653F"
android:strokeColor="#fff"/> android:strokeColor="#fff"/>
<path <path
android:pathData="m11.809,17h-1.693v-6.527l-2.022,0.627v-1.377l3.533,-1.266h0.182zM20.428,17h-5.848v-1.16l2.76,-2.941q0.568,-0.621 0.838,-1.084 0.275,-0.463 0.275,-0.879 0,-0.568 -0.287,-0.891 -0.287,-0.328 -0.82,-0.328 -0.574,0 -0.908,0.398 -0.328,0.393 -0.328,1.037h-1.699q0,-0.779 0.369,-1.424 0.375,-0.645 1.055,-1.008 0.68,-0.369 1.541,-0.369 1.318,0 2.045,0.633 0.732,0.633 0.732,1.787 0,0.633 -0.328,1.289t-1.125,1.529l-1.939,2.045h3.668z" android:pathData="m11.809,17h-1.693v-6.527l-2.022,0.627v-1.377l3.533,-1.266h0.182zM20.428,17h-5.848v-1.16l2.76,-2.941q0.568,-0.621 0.838,-1.084 0.275,-0.463 0.275,-0.879 0,-0.568 -0.287,-0.891 -0.287,-0.328 -0.82,-0.328 -0.574,0 -0.908,0.398 -0.328,0.393 -0.328,1.037h-1.699q0,-0.779 0.369,-1.424 0.375,-0.645 1.055,-1.008 0.68,-0.369 1.541,-0.369 1.318,0 2.045,0.633 0.732,0.633 0.732,1.787 0,0.633 -0.328,1.289t-1.125,1.529l-1.939,2.045h3.668z"

View File

@@ -11,7 +11,7 @@
<path <path
android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0" android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0"
android:strokeWidth="2" android:strokeWidth="2"
android:fillColor="#006c35" android:fillColor="#FF37653F"
android:strokeColor="#fff"/> android:strokeColor="#fff"/>
<path <path
android:pathData="m11.809,17h-1.693v-6.527l-2.022,0.627v-1.377l3.533,-1.266h0.182zM16.303,11.984h0.902q0.645,0 0.955,-0.322 0.311,-0.322 0.311,-0.855 0,-0.516 -0.311,-0.803 -0.305,-0.287 -0.844,-0.287 -0.486,0 -0.814,0.27 -0.328,0.264 -0.328,0.691h-1.693q0,-0.668 0.357,-1.195 0.363,-0.533 1.008,-0.832 0.65,-0.299 1.43,-0.299 1.354,0 2.121,0.65 0.768,0.645 0.768,1.781 0,0.586 -0.357,1.078 -0.357,0.492 -0.938,0.756 0.721,0.258 1.072,0.773 0.357,0.516 0.357,1.219 0,1.137 -0.832,1.822 -0.826,0.686 -2.191,0.686 -1.277,0 -2.092,-0.674 -0.809,-0.674 -0.809,-1.781h1.693q0,0.48 0.357,0.785 0.363,0.305 0.891,0.305 0.604,0 0.943,-0.316 0.346,-0.322 0.346,-0.85 0,-1.277 -1.406,-1.277h-0.896z" android:pathData="m11.809,17h-1.693v-6.527l-2.022,0.627v-1.377l3.533,-1.266h0.182zM16.303,11.984h0.902q0.645,0 0.955,-0.322 0.311,-0.322 0.311,-0.855 0,-0.516 -0.311,-0.803 -0.305,-0.287 -0.844,-0.287 -0.486,0 -0.814,0.27 -0.328,0.264 -0.328,0.691h-1.693q0,-0.668 0.357,-1.195 0.363,-0.533 1.008,-0.832 0.65,-0.299 1.43,-0.299 1.354,0 2.121,0.65 0.768,0.645 0.768,1.781 0,0.586 -0.357,1.078 -0.357,0.492 -0.938,0.756 0.721,0.258 1.072,0.773 0.357,0.516 0.357,1.219 0,1.137 -0.832,1.822 -0.826,0.686 -2.191,0.686 -1.277,0 -2.092,-0.674 -0.809,-0.674 -0.809,-1.781h1.693q0,0.48 0.357,0.785 0.363,0.305 0.891,0.305 0.604,0 0.943,-0.316 0.346,-0.322 0.346,-0.85 0,-1.277 -1.406,-1.277h-0.896z"

View File

@@ -11,7 +11,7 @@
<path <path
android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0" android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0"
android:strokeWidth="2" android:strokeWidth="2"
android:fillColor="#006c35" android:fillColor="#FF37653F"
android:strokeColor="#fff"/> android:strokeColor="#fff"/>
<path <path
android:pathData="m11.809,17h-1.693v-6.527l-2.022,0.627v-1.377l3.533,-1.266h0.182zM19.59,13.789h0.967v1.365h-0.967v1.846h-1.693v-1.846h-3.498l-0.076,-1.066 3.557,-5.619h1.711zM16.01,13.789h1.887v-3.012l-0.111,0.193z" android:pathData="m11.809,17h-1.693v-6.527l-2.022,0.627v-1.377l3.533,-1.266h0.182zM19.59,13.789h0.967v1.365h-0.967v1.846h-1.693v-1.846h-3.498l-0.076,-1.066 3.557,-5.619h1.711zM16.01,13.789h1.887v-3.012l-0.111,0.193z"

View File

@@ -11,7 +11,7 @@
<path <path
android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0" android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0"
android:strokeWidth="2" android:strokeWidth="2"
android:fillColor="#006c35" android:fillColor="#FF37653F"
android:strokeColor="#fff"/> android:strokeColor="#fff"/>
<path <path
android:pathData="m11.809,17h-1.693v-6.527l-2.022,0.627v-1.377l3.533,-1.266h0.182zM14.832,12.805 L15.325,8.469h4.781v1.412h-3.393l-0.211,1.834q0.604,-0.322 1.283,-0.322 1.219,0 1.91,0.756 0.691,0.756 0.691,2.115 0,0.826 -0.352,1.482 -0.346,0.65 -0.996,1.014 -0.65,0.357 -1.535,0.357 -0.773,0 -1.436,-0.311 -0.662,-0.316 -1.049,-0.885 -0.381,-0.568 -0.404,-1.295h1.676q0.053,0.533 0.369,0.832 0.322,0.293 0.838,0.293 0.574,0 0.885,-0.41 0.311,-0.416 0.311,-1.172 0,-0.727 -0.357,-1.113 -0.357,-0.387 -1.014,-0.387 -0.604,0 -0.979,0.316l-0.164,0.152z" android:pathData="m11.809,17h-1.693v-6.527l-2.022,0.627v-1.377l3.533,-1.266h0.182zM14.832,12.805 L15.325,8.469h4.781v1.412h-3.393l-0.211,1.834q0.604,-0.322 1.283,-0.322 1.219,0 1.91,0.756 0.691,0.756 0.691,2.115 0,0.826 -0.352,1.482 -0.346,0.65 -0.996,1.014 -0.65,0.357 -1.535,0.357 -0.773,0 -1.436,-0.311 -0.662,-0.316 -1.049,-0.885 -0.381,-0.568 -0.404,-1.295h1.676q0.053,0.533 0.369,0.832 0.322,0.293 0.838,0.293 0.574,0 0.885,-0.41 0.311,-0.416 0.311,-1.172 0,-0.727 -0.357,-1.113 -0.357,-0.387 -1.014,-0.387 -0.604,0 -0.979,0.316l-0.164,0.152z"

View File

@@ -11,7 +11,7 @@
<path <path
android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0" android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0"
android:strokeWidth="2" android:strokeWidth="2"
android:fillColor="#006c35" android:fillColor="#FF37653F"
android:strokeColor="#fff"/> android:strokeColor="#fff"/>
<path <path
android:pathData="m11.809,17h-1.693v-6.527l-2.022,0.627v-1.377l3.533,-1.266h0.182zM19.174,8.381v1.395h-0.164q-1.148,0.018 -1.852,0.598 -0.697,0.58 -0.838,1.611 0.68,-0.691 1.717,-0.691 1.113,0 1.77,0.797t0.656,2.098q0,0.832 -0.363,1.506 -0.357,0.674 -1.02,1.049 -0.656,0.375 -1.488,0.375 -1.348,0 -2.18,-0.938 -0.826,-0.938 -0.826,-2.502v-0.609q0,-1.389 0.521,-2.449 0.527,-1.066 1.506,-1.646 0.984,-0.586 2.279,-0.592zM17.522,12.652q-0.41,0 -0.744,0.217 -0.334,0.211 -0.492,0.563v0.516q0,0.85 0.334,1.33 0.334,0.475 0.938,0.475 0.545,0 0.879,-0.428 0.34,-0.434 0.34,-1.119 0,-0.697 -0.34,-1.125 -0.34,-0.428 -0.914,-0.428z" android:pathData="m11.809,17h-1.693v-6.527l-2.022,0.627v-1.377l3.533,-1.266h0.182zM19.174,8.381v1.395h-0.164q-1.148,0.018 -1.852,0.598 -0.697,0.58 -0.838,1.611 0.68,-0.691 1.717,-0.691 1.113,0 1.77,0.797t0.656,2.098q0,0.832 -0.363,1.506 -0.357,0.674 -1.02,1.049 -0.656,0.375 -1.488,0.375 -1.348,0 -2.18,-0.938 -0.826,-0.938 -0.826,-2.502v-0.609q0,-1.389 0.521,-2.449 0.527,-1.066 1.506,-1.646 0.984,-0.586 2.279,-0.592zM17.522,12.652q-0.41,0 -0.744,0.217 -0.334,0.211 -0.492,0.563v0.516q0,0.85 0.334,1.33 0.334,0.475 0.938,0.475 0.545,0 0.879,-0.428 0.34,-0.434 0.34,-1.119 0,-0.697 -0.34,-1.125 -0.34,-0.428 -0.914,-0.428z"

View File

@@ -11,7 +11,7 @@
<path <path
android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0" android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0"
android:strokeWidth="2" android:strokeWidth="2"
android:fillColor="#006c35" android:fillColor="#FF37653F"
android:strokeColor="#fff"/> android:strokeColor="#fff"/>
<path <path
android:pathData="m11.809,17h-1.693v-6.527l-2.022,0.627v-1.377l3.533,-1.266h0.182zM20.381,9.418 L17.083,17h-1.787l3.305,-7.16h-4.242v-1.371h6.023z" android:pathData="m11.809,17h-1.693v-6.527l-2.022,0.627v-1.377l3.533,-1.266h0.182zM20.381,9.418 L17.083,17h-1.787l3.305,-7.16h-4.242v-1.371h6.023z"

View File

@@ -11,7 +11,7 @@
<path <path
android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0" android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0"
android:strokeWidth="2" android:strokeWidth="2"
android:fillColor="#006c35" android:fillColor="#FF37653F"
android:strokeColor="#fff"/> android:strokeColor="#fff"/>
<path <path
android:pathData="m11.809,17h-1.693v-6.527l-2.022,0.627v-1.377l3.533,-1.266h0.182zM20.141,10.736q0,0.621 -0.311,1.102 -0.311,0.48 -0.855,0.768 0.621,0.299 0.984,0.826 0.363,0.521 0.363,1.23 0,1.137 -0.773,1.799 -0.773,0.656 -2.103,0.656 -1.33,0 -2.109,-0.662 -0.779,-0.662 -0.779,-1.793 0,-0.709 0.363,-1.236 0.363,-0.527 0.979,-0.82 -0.545,-0.287 -0.855,-0.768 -0.305,-0.48 -0.305,-1.102 0,-1.09 0.727,-1.734 0.727,-0.65 1.975,-0.65 1.242,0 1.969,0.645 0.732,0.639 0.732,1.74zM18.623,14.539q0,-0.557 -0.322,-0.891 -0.322,-0.334 -0.867,-0.334 -0.539,0 -0.861,0.334 -0.322,0.328 -0.322,0.891 0,0.545 0.316,0.879 0.316,0.334 0.879,0.334 0.551,0 0.861,-0.322 0.316,-0.322 0.316,-0.891zM18.448,10.818q0,-0.498 -0.264,-0.797 -0.264,-0.305 -0.744,-0.305 -0.475,0 -0.738,0.293 -0.264,0.293 -0.264,0.809 0,0.51 0.264,0.82t0.744,0.311q0.48,0 0.738,-0.311 0.264,-0.311 0.264,-0.82z" android:pathData="m11.809,17h-1.693v-6.527l-2.022,0.627v-1.377l3.533,-1.266h0.182zM20.141,10.736q0,0.621 -0.311,1.102 -0.311,0.48 -0.855,0.768 0.621,0.299 0.984,0.826 0.363,0.521 0.363,1.23 0,1.137 -0.773,1.799 -0.773,0.656 -2.103,0.656 -1.33,0 -2.109,-0.662 -0.779,-0.662 -0.779,-1.793 0,-0.709 0.363,-1.236 0.363,-0.527 0.979,-0.82 -0.545,-0.287 -0.855,-0.768 -0.305,-0.48 -0.305,-1.102 0,-1.09 0.727,-1.734 0.727,-0.65 1.975,-0.65 1.242,0 1.969,0.645 0.732,0.639 0.732,1.74zM18.623,14.539q0,-0.557 -0.322,-0.891 -0.322,-0.334 -0.867,-0.334 -0.539,0 -0.861,0.334 -0.322,0.328 -0.322,0.891 0,0.545 0.316,0.879 0.316,0.334 0.879,0.334 0.551,0 0.861,-0.322 0.316,-0.322 0.316,-0.891zM18.448,10.818q0,-0.498 -0.264,-0.797 -0.264,-0.305 -0.744,-0.305 -0.475,0 -0.738,0.293 -0.264,0.293 -0.264,0.809 0,0.51 0.264,0.82t0.744,0.311q0.48,0 0.738,-0.311 0.264,-0.311 0.264,-0.82z"

View File

@@ -11,7 +11,7 @@
<path <path
android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0" android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0"
android:strokeWidth="2" android:strokeWidth="2"
android:fillColor="#006c35" android:fillColor="#FF37653F"
android:strokeColor="#fff"/> android:strokeColor="#fff"/>
<path <path
android:pathData="m11.809,17h-1.693v-6.527l-2.022,0.627v-1.377l3.533,-1.266h0.182zM18.541,13.59q-0.662,0.65 -1.547,0.65 -1.131,0 -1.811,-0.773 -0.68,-0.779 -0.68,-2.098 0,-0.838 0.363,-1.535 0.369,-0.703 1.025,-1.09 0.656,-0.393 1.477,-0.393 0.844,0 1.5,0.422t1.02,1.213q0.363,0.791 0.369,1.811v0.627q0,2.133 -1.061,3.352 -1.061,1.219 -3.006,1.301l-0.416,0.006v-1.412l0.375,-0.006q2.209,-0.1 2.391,-2.074zM17.411,12.945q0.41,0 0.703,-0.211 0.299,-0.211 0.451,-0.51v-0.697q0,-0.861 -0.328,-1.336 -0.328,-0.475 -0.879,-0.475 -0.51,0 -0.838,0.469 -0.328,0.463 -0.328,1.166 0,0.697 0.316,1.148 0.322,0.445 0.902,0.445z" android:pathData="m11.809,17h-1.693v-6.527l-2.022,0.627v-1.377l3.533,-1.266h0.182zM18.541,13.59q-0.662,0.65 -1.547,0.65 -1.131,0 -1.811,-0.773 -0.68,-0.779 -0.68,-2.098 0,-0.838 0.363,-1.535 0.369,-0.703 1.025,-1.09 0.656,-0.393 1.477,-0.393 0.844,0 1.5,0.422t1.02,1.213q0.363,0.791 0.369,1.811v0.627q0,2.133 -1.061,3.352 -1.061,1.219 -3.006,1.301l-0.416,0.006v-1.412l0.375,-0.006q2.209,-0.1 2.391,-2.074zM17.411,12.945q0.41,0 0.703,-0.211 0.299,-0.211 0.451,-0.51v-0.697q0,-0.861 -0.328,-1.336 -0.328,-0.475 -0.879,-0.475 -0.51,0 -0.838,0.469 -0.328,0.463 -0.328,1.166 0,0.697 0.316,1.148 0.322,0.445 0.902,0.445z"

View File

@@ -11,7 +11,7 @@
<path <path
android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0" android:pathData="M14,13m-11,0a11,11 0,1 1,22 0a11,11 0,1 1,-22 0"
android:strokeWidth="2" android:strokeWidth="2"
android:fillColor="#006c35" android:fillColor="#FF37653F"
android:strokeColor="#fff"/> android:strokeColor="#fff"/>
<path <path
android:pathData="m8.598,16.168q0,-0.404 0.27,-0.656 0.275,-0.252 0.686,-0.252 0.416,0 0.686,0.252 0.275,0.252 0.275,0.656 0,0.398 -0.27,0.65 -0.27,0.246 -0.691,0.246 -0.416,0 -0.686,-0.246 -0.27,-0.252 -0.27,-0.65zM8.598,11.369q0,-0.404 0.27,-0.656 0.275,-0.252 0.686,-0.252 0.416,0 0.686,0.252 0.275,0.252 0.275,0.656 0,0.398 -0.27,0.65 -0.27,0.246 -0.691,0.246 -0.416,0 -0.686,-0.246 -0.27,-0.252 -0.27,-0.65zM15.195,14.029h-3.299v-1.365h3.299zM19.473,13.666q0,1.324 -0.381,2.549 -0.381,1.225 -1.096,2.162 -0.715,0.938 -1.529,1.289l-0.328,-0.896q0.832,-0.627 1.313,-1.934 0.48,-1.307 0.498,-3.006v-0.311q0,-1.752 -0.48,-3.088 -0.475,-1.336 -1.33,-2.004l0.328,-0.896q0.797,0.346 1.5,1.254 0.709,0.908 1.096,2.115 0.393,1.207 0.41,2.502z" android:pathData="m8.598,16.168q0,-0.404 0.27,-0.656 0.275,-0.252 0.686,-0.252 0.416,0 0.686,0.252 0.275,0.252 0.275,0.656 0,0.398 -0.27,0.65 -0.27,0.246 -0.691,0.246 -0.416,0 -0.686,-0.246 -0.27,-0.252 -0.27,-0.65zM8.598,11.369q0,-0.404 0.27,-0.656 0.275,-0.252 0.686,-0.252 0.416,0 0.686,0.252 0.275,0.252 0.275,0.656 0,0.398 -0.27,0.65 -0.27,0.246 -0.691,0.246 -0.416,0 -0.686,-0.246 -0.27,-0.252 -0.27,-0.65zM15.195,14.029h-3.299v-1.365h3.299zM19.473,13.666q0,1.324 -0.381,2.549 -0.381,1.225 -1.096,2.162 -0.715,0.938 -1.529,1.289l-0.328,-0.896q0.832,-0.627 1.313,-1.934 0.48,-1.307 0.498,-3.006v-0.311q0,-1.752 -0.48,-3.088 -0.475,-1.336 -1.33,-2.004l0.328,-0.896q0.797,0.346 1.5,1.254 0.709,0.908 1.096,2.115 0.393,1.207 0.41,2.502z"

View File

@@ -26,7 +26,7 @@
android:layout_toEndOf="@id/av__direction" android:layout_toEndOf="@id/av__direction"
android:orientation="vertical"> android:orientation="vertical">
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/tv__title" android:id="@+id/tv__title"
style="@style/MwmWidget.TextView.Direction" style="@style/MwmWidget.TextView.Direction"
android:layout_width="wrap_content" android:layout_width="wrap_content"
@@ -35,7 +35,7 @@
android:textSize="@dimen/text_direction_title" android:textSize="@dimen/text_direction_title"
tools:text="Some place"/> tools:text="Some place"/>
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/tv__subtitle" android:id="@+id/tv__subtitle"
style="@style/MwmWidget.TextView.Direction" style="@style/MwmWidget.TextView.Direction"
android:layout_width="wrap_content" android:layout_width="wrap_content"
@@ -44,7 +44,7 @@
android:textSize="@dimen/text_direction_subtitle" android:textSize="@dimen/text_direction_subtitle"
tools:text="Some place type"/> tools:text="Some place type"/>
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/tv__straight_distance" android:id="@+id/tv__straight_distance"
style="@style/MwmWidget.TextView.Direction" style="@style/MwmWidget.TextView.Direction"
android:layout_width="wrap_content" android:layout_width="wrap_content"
@@ -53,7 +53,7 @@
android:textSize="@dimen/text_direction_dist" android:textSize="@dimen/text_direction_dist"
tools:text="9000 km"/> tools:text="9000 km"/>
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/tv__azimuth" android:id="@+id/tv__azimuth"
style="@style/MwmWidget.TextView.Direction" style="@style/MwmWidget.TextView.Direction"
android:layout_width="wrap_content" android:layout_width="wrap_content"

View File

@@ -20,7 +20,7 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
tools:ignore="UselessParent"> tools:ignore="UselessParent">
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/street" android:id="@+id/street"
style="@style/MwmWidget.TextView.NavStreet" style="@style/MwmWidget.TextView.NavStreet"
android:layout_width="match_parent" android:layout_width="match_parent"
@@ -64,7 +64,7 @@
app:tint="?iconTint" app:tint="?iconTint"
tools:background="#400000FF"/> tools:background="#400000FF"/>
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/circle_exit" android:id="@+id/circle_exit"
style="@style/MwmWidget.TextView.NavNextTurn.Exit" style="@style/MwmWidget.TextView.NavNextTurn.Exit"
android:layout_width="wrap_content" android:layout_width="wrap_content"
@@ -73,7 +73,7 @@
tools:text="9"/> tools:text="9"/>
</FrameLayout> </FrameLayout>
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/distance" android:id="@+id/distance"
style="@style/MwmWidget.TextView.NavNextTurn" style="@style/MwmWidget.TextView.NavNextTurn"
android:layout_width="wrap_content" android:layout_width="wrap_content"
@@ -96,7 +96,7 @@
android:elevation="@dimen/nav_elevation" android:elevation="@dimen/nav_elevation"
android:visibility="gone" android:visibility="gone"
tools:visibility="visible"> tools:visibility="visible">
<ImageView <com.google.android.material.imageview.ShapeableImageView
android:id="@id/turn" android:id="@id/turn"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"

View File

@@ -5,7 +5,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:orientation="vertical"> android:orientation="vertical">
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/tv__message" android:id="@+id/tv__message"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"

View File

@@ -51,6 +51,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_base" android:layout_marginTop="@dimen/margin_base"
android:layout_marginEnd="@dimen/margin_quadruple" android:layout_marginEnd="@dimen/margin_quadruple"
android:layout_marginStart="@dimen/margin_half_plus"
android:text="@string/list" android:text="@string/list"
android:textAppearance="@style/MwmTextAppearance.Body3" /> android:textAppearance="@style/MwmTextAppearance.Body3" />
<com.google.android.material.textview.MaterialTextView <com.google.android.material.textview.MaterialTextView

View File

@@ -16,7 +16,7 @@
android:layout_marginTop="@dimen/margin_direction_small" android:layout_marginTop="@dimen/margin_direction_small"
app:srcCompat="@drawable/ic_direction_fullscreen"/> app:srcCompat="@drawable/ic_direction_fullscreen"/>
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/tv__subtitle" android:id="@+id/tv__subtitle"
style="@style/MwmWidget.TextView.Direction" style="@style/MwmWidget.TextView.Direction"
android:layout_width="wrap_content" android:layout_width="wrap_content"
@@ -28,7 +28,7 @@
android:textSize="@dimen/text_direction_subtitle" android:textSize="@dimen/text_direction_subtitle"
tools:text="Some place type"/> tools:text="Some place type"/>
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/tv__title" android:id="@+id/tv__title"
style="@style/MwmWidget.TextView.Direction" style="@style/MwmWidget.TextView.Direction"
android:layout_width="wrap_content" android:layout_width="wrap_content"
@@ -40,7 +40,7 @@
android:textSize="@dimen/text_direction_title" android:textSize="@dimen/text_direction_title"
tools:text="Place, \n long, \n long"/> tools:text="Place, \n long, \n long"/>
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/tv__straight_distance" android:id="@+id/tv__straight_distance"
style="@style/MwmWidget.TextView.Direction" style="@style/MwmWidget.TextView.Direction"
android:layout_width="wrap_content" android:layout_width="wrap_content"
@@ -51,7 +51,7 @@
android:layout_marginTop="@dimen/margin_direction_big" android:layout_marginTop="@dimen/margin_direction_big"
android:textSize="@dimen/text_direction_dist" android:textSize="@dimen/text_direction_dist"
tools:text="9000 km"/> tools:text="9000 km"/>
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/tv__azimuth" android:id="@+id/tv__azimuth"
style="@style/MwmWidget.TextView.Direction" style="@style/MwmWidget.TextView.Direction"
android:layout_width="wrap_content" android:layout_width="wrap_content"

View File

@@ -23,7 +23,7 @@
layout="@layout/routing_action_panel" layout="@layout/routing_action_panel"
android:visibility="gone"/> android:visibility="gone"/>
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/error" android:id="@+id/error"
android:paddingStart="@dimen/margin_base" android:paddingStart="@dimen/margin_base"
android:paddingEnd="@dimen/margin_base" android:paddingEnd="@dimen/margin_base"

View File

@@ -23,7 +23,7 @@
app:centerDrawable="@android:color/transparent" app:centerDrawable="@android:color/transparent"
tools:visibility="visible"/> tools:visibility="visible"/>
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/tv__size" android:id="@+id/tv__size"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
@@ -34,7 +34,7 @@
android:textAppearance="@style/MwmTextAppearance.Body1" android:textAppearance="@style/MwmTextAppearance.Body1"
tools:text="256 MB"/> tools:text="256 MB"/>
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/tv__title" android:id="@+id/tv__title"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"

View File

@@ -23,7 +23,7 @@
app:centerDrawable="@android:color/transparent" app:centerDrawable="@android:color/transparent"
tools:visibility="visible"/> tools:visibility="visible"/>
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/tv__size" android:id="@+id/tv__size"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
@@ -35,7 +35,7 @@
android:textColor="?colorAccent" android:textColor="?colorAccent"
tools:text="256 MB"/> tools:text="256 MB"/>
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/tv__title" android:id="@+id/tv__title"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"

View File

@@ -23,7 +23,7 @@
android:gravity="center" android:gravity="center"
android:minWidth="@dimen/nav_numbers_side_min_width"> android:minWidth="@dimen/nav_numbers_side_min_width">
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/speed_value" android:id="@+id/speed_value"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
@@ -33,7 +33,7 @@
tools:text="999" /> tools:text="999" />
<!-- Speed --> <!-- Speed -->
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/speed_dimen" android:id="@+id/speed_dimen"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
@@ -63,7 +63,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
tools:background="#20FF0000"> tools:background="#20FF0000">
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/time_hour_value" android:id="@+id/time_hour_value"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
@@ -72,7 +72,7 @@
android:textAppearance="@style/MwmTextAppearance.NavMenu.Time" android:textAppearance="@style/MwmTextAppearance.NavMenu.Time"
tools:text="999" /> tools:text="999" />
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/time_hour_dimen" android:id="@+id/time_hour_dimen"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
@@ -82,7 +82,7 @@
android:textAppearance="@style/MwmTextAppearance.NavMenu.Time.Dimension" android:textAppearance="@style/MwmTextAppearance.NavMenu.Time.Dimension"
tools:text="h" /> tools:text="h" />
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/time_minute_value" android:id="@+id/time_minute_value"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
@@ -92,7 +92,7 @@
android:textAppearance="@style/MwmTextAppearance.NavMenu.Time" android:textAppearance="@style/MwmTextAppearance.NavMenu.Time"
tools:text="99" /> tools:text="99" />
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/time_minute_dimen" android:id="@+id/time_minute_dimen"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
@@ -102,7 +102,7 @@
tools:text="m" /> tools:text="m" />
</LinearLayout> </LinearLayout>
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/time_estimate" android:id="@+id/time_estimate"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
@@ -126,7 +126,7 @@
android:gravity="center" android:gravity="center"
android:minWidth="@dimen/nav_numbers_side_min_width"> android:minWidth="@dimen/nav_numbers_side_min_width">
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/distance_value" android:id="@+id/distance_value"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
@@ -135,7 +135,7 @@
android:textAppearance="@style/MwmTextAppearance.NavMenu.Number" android:textAppearance="@style/MwmTextAppearance.NavMenu.Number"
tools:text="99999" /> tools:text="99999" />
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/distance_dimen" android:id="@+id/distance_dimen"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"

View File

@@ -20,7 +20,7 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="@dimen/nav_street_height" android:layout_height="@dimen/nav_street_height"
tools:ignore="UselessParent"> tools:ignore="UselessParent">
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/street" android:id="@+id/street"
style="@style/MwmWidget.TextView.NavStreet" style="@style/MwmWidget.TextView.NavStreet"
android:layout_width="match_parent" android:layout_width="match_parent"
@@ -64,7 +64,7 @@
app:tint="?iconTint" app:tint="?iconTint"
tools:background="#400000FF"/> tools:background="#400000FF"/>
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/circle_exit" android:id="@+id/circle_exit"
style="@style/MwmWidget.TextView.NavNextTurn.Exit" style="@style/MwmWidget.TextView.NavNextTurn.Exit"
android:layout_width="wrap_content" android:layout_width="wrap_content"
@@ -73,7 +73,7 @@
tools:text="9"/> tools:text="9"/>
</FrameLayout> </FrameLayout>
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/distance" android:id="@+id/distance"
style="@style/MwmWidget.TextView.NavNextTurn" style="@style/MwmWidget.TextView.NavNextTurn"
android:layout_width="wrap_content" android:layout_width="wrap_content"
@@ -96,7 +96,7 @@
android:elevation="@dimen/nav_elevation" android:elevation="@dimen/nav_elevation"
android:visibility="invisible" android:visibility="invisible"
tools:visibility="visible"> tools:visibility="visible">
<ImageView <com.google.android.material.imageview.ShapeableImageView
android:id="@id/turn" android:id="@id/turn"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"

View File

@@ -20,7 +20,7 @@
android:paddingStart="0dp" android:paddingStart="0dp"
android:paddingEnd="@dimen/altitude_chart_container_padding_left"> android:paddingEnd="@dimen/altitude_chart_container_padding_left">
<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_alignParentStart="true" android:layout_alignParentStart="true"
@@ -28,7 +28,7 @@
android:textSize="20sp" android:textSize="20sp"
android:textStyle="bold"/> android:textStyle="bold"/>
<ImageView <com.google.android.material.imageview.ShapeableImageView
android:id="@+id/image_my_location" android:id="@+id/image_my_location"
android:layout_width="24dp" android:layout_width="24dp"
android:layout_height="24dp" android:layout_height="24dp"
@@ -80,7 +80,7 @@
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
<RelativeLayout <androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:orientation="horizontal" android:orientation="horizontal"
@@ -94,20 +94,24 @@
style="@style/MwmWidget.Button" style="@style/MwmWidget.Button"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_alignParentStart="true" android:layout_gravity="center_vertical"
android:layout_centerVertical="true" android:text="@string/cancel"
android:text="@string/cancel"/> android:textColor="?android:attr/textColorPrimary"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<Button <Button
android:id="@+id/btn__plan" android:id="@+id/btn__plan"
style="@style/MwmWidget.Button.Primary" style="@style/MwmWidget.Button.Primary"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="end|center_vertical" android:layout_gravity="center_vertical"
android:layout_alignParentEnd="true" android:text="@string/button_plan"
android:layout_centerVertical="true" app:layout_constraintBottom_toBottomOf="parent"
android:text="@string/button_plan"/> app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</RelativeLayout> </androidx.constraintlayout.widget.ConstraintLayout>
</LinearLayout> </LinearLayout>

View File

@@ -6,7 +6,7 @@
android:layout_height="60dp" android:layout_height="60dp"
android:gravity="center_vertical"> android:gravity="center_vertical">
<ImageView <com.google.android.material.imageview.ShapeableImageView
android:id="@+id/type_icon" android:id="@+id/type_icon"
android:layout_width="24dp" android:layout_width="24dp"
android:layout_height="24dp" android:layout_height="24dp"
@@ -15,7 +15,7 @@
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:srcCompat="@drawable/route_point_finish"/> app:srcCompat="@drawable/route_point_finish"/>
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/title" android:id="@+id/title"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
@@ -34,7 +34,7 @@
app:layout_constrainedWidth="true" app:layout_constrainedWidth="true"
tools:text="Title"/> tools:text="Title"/>
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/subtitle" android:id="@+id/subtitle"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
@@ -52,7 +52,7 @@
app:layout_constrainedWidth="true" app:layout_constrainedWidth="true"
tools:text="Subtitle"/> tools:text="Subtitle"/>
<ImageView <com.google.android.material.imageview.ShapeableImageView
android:id="@+id/delete_icon" android:id="@+id/delete_icon"
android:layout_width="24dp" android:layout_width="24dp"
android:layout_height="24dp" android:layout_height="24dp"

View File

@@ -10,7 +10,7 @@
<include layout="@layout/routing_bottom_panel_transit"/> <include layout="@layout/routing_bottom_panel_transit"/>
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/error" android:id="@+id/error"
android:paddingStart="@dimen/margin_base" android:paddingStart="@dimen/margin_base"
android:paddingEnd="@dimen/margin_base" android:paddingEnd="@dimen/margin_base"

View File

@@ -23,7 +23,7 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"> android:layout_height="?attr/actionBarSize">
<ImageView <com.google.android.material.imageview.ShapeableImageView
android:id="@+id/back" android:id="@+id/back"
android:layout_width="?attr/actionBarSize" android:layout_width="?attr/actionBarSize"
android:layout_height="?attr/actionBarSize" android:layout_height="?attr/actionBarSize"
@@ -157,14 +157,14 @@
<LinearLayout <LinearLayout
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content"> android:layout_height="wrap_content">
<ImageView <com.google.android.material.imageview.ShapeableImageView
android:id="@+id/driving_options_btn_img" android:id="@+id/driving_options_btn_img"
android:layout_width="@dimen/margin_base_plus" android:layout_width="@dimen/margin_base_plus"
android:layout_height="@dimen/margin_base_plus" android:layout_height="@dimen/margin_base_plus"
android:layout_gravity="center" android:layout_gravity="center"
android:layout_marginEnd="@dimen/margin_half_plus_eight" android:layout_marginEnd="@dimen/margin_half_plus_eight"
app:srcCompat="@drawable/ic_error_white" /> app:srcCompat="@drawable/ic_error_white" />
<TextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/driving_options_btn_title" android:id="@+id/driving_options_btn_title"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"

View File

@@ -763,11 +763,6 @@
<string name="type.power.substation">Substasie</string> <string name="type.power.substation">Substasie</string>
<!-- A tower or pylon carrying high voltage electricity cables. --> <!-- A tower or pylon carrying high voltage electricity cables. -->
<string name="type.power.tower">Kragmas</string> <string name="type.power.tower">Kragmas</string>
<string name="type.psurface">Padoppervlak</string>
<string name="type.psurface.paved_bad">Geteer</string>
<string name="type.psurface.paved_good">Geteer</string>
<string name="type.psurface.unpaved_bad">Ongeteer</string>
<string name="type.psurface.unpaved_good">Ongeteer</string>
<string name="type.public_transport">Openbare vervoer</string> <string name="type.public_transport">Openbare vervoer</string>
<string name="type.public_transport.platform">Platform</string> <string name="type.public_transport.platform">Platform</string>
<string name="type.railway">Spoorweg</string> <string name="type.railway">Spoorweg</string>
@@ -1315,5 +1310,4 @@
<!-- https://wiki.openstreetmap.org/wiki/Tag:leisure=sports_hall --> <!-- https://wiki.openstreetmap.org/wiki/Tag:leisure=sports_hall -->
<string name="type.leisure.sports_hall">Sportsaal</string> <string name="type.leisure.sports_hall">Sportsaal</string>
<string name="type.railway.station.subway.qingdao">Moltreinstasie</string> <string name="type.railway.station.subway.qingdao">Moltreinstasie</string>
<string name="type.mapswithme">MapsWithMe</string>
</resources> </resources>

View File

@@ -1280,5 +1280,4 @@
<string name="type.amenity.love_hotel">فندق جب</string> <string name="type.amenity.love_hotel">فندق جب</string>
<string name="type.amenity.studio">معرض</string> <string name="type.amenity.studio">معرض</string>
<string name="type.railway.station.subway.qingdao">محطة مترو</string> <string name="type.railway.station.subway.qingdao">محطة مترو</string>
<string name="type.mapswithme">MapsWithMe</string>
</resources> </resources>

View File

@@ -158,5 +158,4 @@
<string name="type.amenity.language_school">Escuela de llingües</string> <string name="type.amenity.language_school">Escuela de llingües</string>
<string name="type.amenity.hospital">Hospital</string> <string name="type.amenity.hospital">Hospital</string>
<string name="type.craft.confectionery">Confitería</string> <string name="type.craft.confectionery">Confitería</string>
<string name="type.mapswithme">MapsWithMe</string>
</resources> </resources>

View File

@@ -1328,5 +1328,4 @@
<string name="type.amenity.dojo">Dojo</string> <string name="type.amenity.dojo">Dojo</string>
<!-- https://wiki.openstreetmap.org/wiki/Tag:leisure=sports_hall --> <!-- https://wiki.openstreetmap.org/wiki/Tag:leisure=sports_hall -->
<string name="type.leisure.sports_hall">İdman zalı</string> <string name="type.leisure.sports_hall">İdman zalı</string>
<string name="type.mapswithme">MapsWithMe</string>
</resources> </resources>

View File

@@ -623,6 +623,4 @@
<string name="type.amenity.dojo">Додзе</string> <string name="type.amenity.dojo">Додзе</string>
<!-- https://wiki.openstreetmap.org/wiki/Tag:leisure=sports_hall --> <!-- https://wiki.openstreetmap.org/wiki/Tag:leisure=sports_hall -->
<string name="type.leisure.sports_hall">Спартыўная зала</string> <string name="type.leisure.sports_hall">Спартыўная зала</string>
<string name="type.mapswithme.grid">mapswithme-grid</string>
<string name="type.mapswithme">MapsWithMe</string>
</resources> </resources>

View File

@@ -79,7 +79,7 @@
<string name="type.craft.brewery">Пивоварна</string> <string name="type.craft.brewery">Пивоварна</string>
<string name="type.craft.caterer">Кетъринг</string> <string name="type.craft.caterer">Кетъринг</string>
<string name="type.craft.carpenter">Марангоз</string> <string name="type.craft.carpenter">Марангоз</string>
<string name="type.craft.confectionery">Сладкарски изделия</string> <string name="type.craft.confectionery">Сладкарница</string>
<string name="type.craft.electrician">Електротехник</string> <string name="type.craft.electrician">Електротехник</string>
<string name="type.craft.electronics_repair">Ремонт на електроника</string> <string name="type.craft.electronics_repair">Ремонт на електроника</string>
<string name="type.craft.gardener">Градинар</string> <string name="type.craft.gardener">Градинар</string>
@@ -354,7 +354,7 @@
<string name="type.place.country">Страна</string> <string name="type.place.country">Страна</string>
<string name="type.place.county">Графство</string> <string name="type.place.county">Графство</string>
<string name="type.place.farm">Ферма</string> <string name="type.place.farm">Ферма</string>
<string name="type.place.hamlet">Cело</string> <string name="type.place.hamlet">Село</string>
<string name="type.place.island">Остров</string> <string name="type.place.island">Остров</string>
<string name="type.place.islet">Острови</string> <string name="type.place.islet">Острови</string>
<string name="type.place.isolated_dwelling">Изолирано жилище</string> <string name="type.place.isolated_dwelling">Изолирано жилище</string>
@@ -595,7 +595,7 @@
<string name="type.recycling.plastic_bottles">Пластмасови бутилки</string> <string name="type.recycling.plastic_bottles">Пластмасови бутилки</string>
<string name="type.recycling.cardboard">Картон</string> <string name="type.recycling.cardboard">Картон</string>
<string name="type.recycling.shoes">Обувки</string> <string name="type.recycling.shoes">Обувки</string>
<string name="type.amenity.restaurant">Заведение</string> <string name="type.amenity.restaurant">Ресторант</string>
<string name="type.amenity.school">Училище</string> <string name="type.amenity.school">Училище</string>
<string name="type.amenity.shower">Душ</string> <string name="type.amenity.shower">Душ</string>
<string name="type.amenity.telephone">Телефон</string> <string name="type.amenity.telephone">Телефон</string>
@@ -659,7 +659,7 @@
<string name="type.shop.car_parts">Магазин за авточасти</string> <string name="type.shop.car_parts">Магазин за авточасти</string>
<string name="type.shop.car_repair">Сервиз за коли</string> <string name="type.shop.car_repair">Сервиз за коли</string>
<string name="type.shop.car_repair.tyres">Гумаджия</string> <string name="type.shop.car_repair.tyres">Гумаджия</string>
<string name="type.shop.chemist">Химик</string> <string name="type.shop.chemist">Битова химия</string>
<string name="type.shop.pet">Магазин за животни</string> <string name="type.shop.pet">Магазин за животни</string>
<string name="type.shop.seafood">Риба</string> <string name="type.shop.seafood">Риба</string>
<string name="type.shop.shoes">Магазин за обувки</string> <string name="type.shop.shoes">Магазин за обувки</string>
@@ -774,7 +774,6 @@
<string name="type.highway.road">Път</string> <string name="type.highway.road">Път</string>
<string name="type.highway.tertiary">Третостепенен път</string> <string name="type.highway.tertiary">Третостепенен път</string>
<string name="type.landuse.cemetery">Гробище</string> <string name="type.landuse.cemetery">Гробище</string>
<string name="type.mapswithme">MapsWithMe</string>
<string name="type.amenity.studio">Студио</string> <string name="type.amenity.studio">Студио</string>
<string name="type.amenity.college">Колеж</string> <string name="type.amenity.college">Колеж</string>
<string name="type.barrier.guard_rail">Мантинела</string> <string name="type.barrier.guard_rail">Мантинела</string>
@@ -1370,4 +1369,6 @@
<string name="type.piste_type.downhill.advanced.area">Спускане със ски за напреднали</string> <string name="type.piste_type.downhill.advanced.area">Спускане със ски за напреднали</string>
<string name="type.piste_type.downhill.freeride">Свободно каране спускане със ски</string> <string name="type.piste_type.downhill.freeride">Свободно каране спускане със ски</string>
<string name="type.piste_type.downhill.novice.area">Спускане със ски за начинаещи</string> <string name="type.piste_type.downhill.novice.area">Спускане със ски за начинаещи</string>
<string name="type.highway.services">Обслужвана зона</string>
<string name="type.landuse.forest">Гора</string>
</resources> </resources>

View File

@@ -1,5 +1,4 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<string name="type.mapswithme">MapsWithMe</string>
<string name="type.addr_interpolation">ঠিকানা/ব্লক</string> <string name="type.addr_interpolation">ঠিকানা/ব্লক</string>
</resources> </resources>

View File

@@ -963,5 +963,4 @@
<string name="type.amenity.studio">Estudi</string> <string name="type.amenity.studio">Estudi</string>
<string name="type.barrier.guard_rail">Barrera de seguretat</string> <string name="type.barrier.guard_rail">Barrera de seguretat</string>
<string name="type.leisure.hackerspace">Hacklab</string> <string name="type.leisure.hackerspace">Hacklab</string>
<string name="type.mapswithme">MapsWithMe</string>
</resources> </resources>

View File

@@ -1171,11 +1171,8 @@
<string name="type.amenity.dojo">Dódžó</string> <string name="type.amenity.dojo">Dódžó</string>
<!-- https://wiki.openstreetmap.org/wiki/Tag:leisure=sports_hall --> <!-- https://wiki.openstreetmap.org/wiki/Tag:leisure=sports_hall -->
<string name="type.leisure.sports_hall">Sportovní hala</string> <string name="type.leisure.sports_hall">Sportovní hala</string>
<string name="type.psurface">psurface</string>
<string name="type.landuse.salt_pond">Solné jezírko</string> <string name="type.landuse.salt_pond">Solné jezírko</string>
<string name="type.route">Trasa</string> <string name="type.route">Trasa</string>
<string name="type.mapswithme.grid">mapswithme-grid</string>
<string name="type.hwtag.yesbicycle">hwtag-yesbicycle</string>
<string name="type.power.minor_line">Vedlejší elektrické vedení</string> <string name="type.power.minor_line">Vedlejší elektrické vedení</string>
<string name="type.recycling.cans">Plechovky</string> <string name="type.recycling.cans">Plechovky</string>
<string name="type.aerialway.drag_lift">Vlek</string> <string name="type.aerialway.drag_lift">Vlek</string>
@@ -1204,10 +1201,6 @@
<string name="type.highway.bridleway.permissive">Hipostezka</string> <string name="type.highway.bridleway.permissive">Hipostezka</string>
<string name="type.highway.cycleway.permissive">Cyklostezka</string> <string name="type.highway.cycleway.permissive">Cyklostezka</string>
<string name="type.highway.elevator">Výtah</string> <string name="type.highway.elevator">Výtah</string>
<string name="type.hwtag.nobicycle">hwtag-nobicycle</string>
<string name="type.hwtag.oneway">hwtag-oneway</string>
<string name="type.hwtag.yescar">hwtag-yescar</string>
<string name="type.hwtag.yesfoot">hwtag-yesfoot</string>
<string name="type.internet_access">Internet</string> <string name="type.internet_access">Internet</string>
<string name="type.junction.roundabout">Kruhový objezd</string> <string name="type.junction.roundabout">Kruhový objezd</string>
<string name="type.landuse.brownfield">Brownfield</string> <string name="type.landuse.brownfield">Brownfield</string>
@@ -1225,7 +1218,6 @@
<string name="type.man_made.pipeline.overground">Povrchové potrubí</string> <string name="type.man_made.pipeline.overground">Povrchové potrubí</string>
<string name="type.man_made.wastewater_plant">Čistírna odpadních vod</string> <string name="type.man_made.wastewater_plant">Čistírna odpadních vod</string>
<string name="type.man_made.works">Průmysl</string> <string name="type.man_made.works">Průmysl</string>
<string name="type.mapswithme">MapsWithMe</string>
<string name="type.military">Armáda</string> <string name="type.military">Armáda</string>
<string name="type.mountain_pass">Horské sedlo</string> <string name="type.mountain_pass">Horské sedlo</string>
<string name="type.power">Energie</string> <string name="type.power">Energie</string>
@@ -1262,12 +1254,10 @@
<string name="type.aerialway.cable_car">Visutá lanovka</string> <string name="type.aerialway.cable_car">Visutá lanovka</string>
<string name="type.landuse.vineyard">Vinice</string> <string name="type.landuse.vineyard">Vinice</string>
<string name="type.leisure.beach_resort">Plážový areál</string> <string name="type.leisure.beach_resort">Plážový areál</string>
<string name="type.route.shuttle_train">route-shuttle_train</string>
<string name="type.amenity.food_court">Jídelní zóna</string> <string name="type.amenity.food_court">Jídelní zóna</string>
<string name="type.recycling.cardboard">Lepenka</string> <string name="type.recycling.cardboard">Lepenka</string>
<string name="type.recycling.shoes">Boty</string> <string name="type.recycling.shoes">Boty</string>
<string name="type.building.warehouse">Sklad</string> <string name="type.building.warehouse">Sklad</string>
<string name="type.hwtag">hwtag</string>
<string name="type.amenity.shelter.lean_to">Otevřený přístřešek</string> <string name="type.amenity.shelter.lean_to">Otevřený přístřešek</string>
<string name="type.amenity.vending_machine.coffee">Automat na kávu</string> <string name="type.amenity.vending_machine.coffee">Automat na kávu</string>
<string name="type.amenity.taxi">Stanoviště taxislužby</string> <string name="type.amenity.taxi">Stanoviště taxislužby</string>
@@ -1275,7 +1265,6 @@
<string name="type.barrier.hedge">Živý plot</string> <string name="type.barrier.hedge">Živý plot</string>
<string name="type.boundary">Hranice</string> <string name="type.boundary">Hranice</string>
<string name="type.amenity.vending_machine.newspapers">Automat na noviny</string> <string name="type.amenity.vending_machine.newspapers">Automat na noviny</string>
<string name="type.hwtag.nofoot">hwtag-nofoot</string>
<string name="type.leisure.ice_rink">Ledové kluziště</string> <string name="type.leisure.ice_rink">Ledové kluziště</string>
<string name="type.railway.construction">Železniční stavba</string> <string name="type.railway.construction">Železniční stavba</string>
<string name="type.landuse">Využití území</string> <string name="type.landuse">Využití území</string>
@@ -1288,18 +1277,12 @@
<string name="type.boundary.administrative.3">Hranice oblasti</string> <string name="type.boundary.administrative.3">Hranice oblasti</string>
<string name="type.landuse.garages">Garáže</string> <string name="type.landuse.garages">Garáže</string>
<string name="type.leisure.track.area">Trať</string> <string name="type.leisure.track.area">Trať</string>
<string name="type.hwtag.bidir_bicycle">hwtag-bidir_bicycle</string>
<string name="type.hwtag.nocar">hwtag-nocar</string>
<string name="type.junction.circular">Kruhový objezd</string> <string name="type.junction.circular">Kruhový objezd</string>
<string name="type.area_highway.cycleway">Cyklostezka</string> <string name="type.area_highway.cycleway">Cyklostezka</string>
<string name="type.hwtag.toll">hwtag-toll</string>
<string name="type.landuse.commercial">Komerční zóna</string> <string name="type.landuse.commercial">Komerční zóna</string>
<string name="type.highway.world_level">highway-world_level</string>
<string name="type.hwtag.lit">hwtag-lit</string>
<string name="type.organic.only">Přírodní</string> <string name="type.organic.only">Přírodní</string>
<string name="type.railway.abandoned">Zaniklá železnice</string> <string name="type.railway.abandoned">Zaniklá železnice</string>
<string name="type.landuse.education">Vzdělávací zařízení</string> <string name="type.landuse.education">Vzdělávací zařízení</string>
<string name="type.hwtag.private">hwtag-private</string>
<string name="type.sport.bowls">Bowls</string> <string name="type.sport.bowls">Bowls</string>
<string name="type.landuse.farmyard">Statek</string> <string name="type.landuse.farmyard">Statek</string>
<string name="type.man_made.pier">Molo</string> <string name="type.man_made.pier">Molo</string>
@@ -1312,10 +1295,8 @@
<string name="type.railway.crossing">Železniční přejezd</string> <string name="type.railway.crossing">Železniční přejezd</string>
<string name="type.man_made.silo">Silo</string> <string name="type.man_made.silo">Silo</string>
<string name="type.man_made.survey_point">Topografický bod</string> <string name="type.man_made.survey_point">Topografický bod</string>
<string name="type.psurface.unpaved_good">psurface-unpaved_good</string>
<string name="type.shop.supermarket">Supermarket</string> <string name="type.shop.supermarket">Supermarket</string>
<string name="type.organic.yes">Přírodní</string> <string name="type.organic.yes">Přírodní</string>
<string name="type.psurface.unpaved_bad">psurface-unpaved_bad</string>
<string name="type.railway.tram">Tramvajová trať</string> <string name="type.railway.tram">Tramvajová trať</string>
<string name="type.railway.light_rail.tunnel">Tunel lehké železnice</string> <string name="type.railway.light_rail.tunnel">Tunel lehké železnice</string>
<string name="type.railway.abandoned.bridge">Most zaniklé železnice</string> <string name="type.railway.abandoned.bridge">Most zaniklé železnice</string>
@@ -1329,18 +1310,14 @@
<string name="type.railway.tram.tunnel">Tunel tramvajové trati</string> <string name="type.railway.tram.tunnel">Tunel tramvajové trati</string>
<string name="type.barrier.fence">Plot</string> <string name="type.barrier.fence">Plot</string>
<string name="type.leisure.marina">Přístav</string> <string name="type.leisure.marina">Přístav</string>
<string name="type.psurface.paved_good">psurface-paved_good</string>
<string name="type.amenity.vending_machine.condoms">Automat na kondomy</string> <string name="type.amenity.vending_machine.condoms">Automat na kondomy</string>
<string name="type.public_transport">Veřejná doprava</string> <string name="type.public_transport">Veřejná doprava</string>
<string name="type.highway.world_towns_level">highway-world_towns_level</string>
<string name="type.hwtag.onedir_bicycle">hwtag-onedir_bicycle</string>
<string name="type.leisure.common">Veřejný prostor</string> <string name="type.leisure.common">Veřejný prostor</string>
<string name="type.leisure.recreation_ground">Rekreační areál</string> <string name="type.leisure.recreation_ground">Rekreační areál</string>
<string name="type.boundary.administrative.4">Hranice oblasti</string> <string name="type.boundary.administrative.4">Hranice oblasti</string>
<string name="type.aerialway">Lanová dráha</string> <string name="type.aerialway">Lanová dráha</string>
<string name="type.highway.services">Odpočívadlo se službami</string> <string name="type.highway.services">Odpočívadlo se službami</string>
<string name="type.man_made.cutline">Průsek</string> <string name="type.man_made.cutline">Průsek</string>
<string name="type.psurface.paved_bad">psurface-paved_bad</string>
<string name="type.railway.preserved.bridge">Most zachovalé železnice</string> <string name="type.railway.preserved.bridge">Most zachovalé železnice</string>
<string name="type.railway.narrow_gauge.tunnel">Tunel úzkorozchodné železnice</string> <string name="type.railway.narrow_gauge.tunnel">Tunel úzkorozchodné železnice</string>
<string name="type.amenity.bar">Bar</string> <string name="type.amenity.bar">Bar</string>

View File

@@ -220,7 +220,7 @@
<!-- Settings «Route» category: «Tts language» title --> <!-- Settings «Route» category: «Tts language» title -->
<string name="pref_tts_language_title">Stemmesprog</string> <string name="pref_tts_language_title">Stemmesprog</string>
<!-- Settings «Route» category: «Test Voice Directions» title --> <!-- Settings «Route» category: «Test Voice Directions» title -->
<string name="pref_tts_test_voice_title">Test stemmeanvisninger (TTS, Text-To-Speech)</string> <string name="pref_tts_test_voice_title">Test stemmevejledninger</string>
<!-- Settings «Route» category: Pop-up message when clicking «Test Voice Directions» --> <!-- Settings «Route» category: Pop-up message when clicking «Test Voice Directions» -->
<string name="pref_tts_playing_test_voice">Tjek lydstyrken eller systemets tekst-til-tale-indstillinger, hvis du ikke kan høre stemmen nu</string> <string name="pref_tts_playing_test_voice">Tjek lydstyrken eller systemets tekst-til-tale-indstillinger, hvis du ikke kan høre stemmen nu</string>
<!-- Settings «Route» category: «Tts unavailable» subtitle --> <!-- Settings «Route» category: «Tts unavailable» subtitle -->

View File

@@ -1356,7 +1356,6 @@
<string name="type.piste_type.sled.area">Kælkebane</string> <string name="type.piste_type.sled.area">Kælkebane</string>
<string name="type.piste_type.downhill.novice.area">Meget let pist</string> <string name="type.piste_type.downhill.novice.area">Meget let pist</string>
<string name="type.railway.tram.bridge">Sporvejsbro</string> <string name="type.railway.tram.bridge">Sporvejsbro</string>
<string name="type.mapswithme">MapsWithMe</string>
<string name="type.landuse.plant_nursery">Planteskole</string> <string name="type.landuse.plant_nursery">Planteskole</string>
<string name="type.leisure.firepit">Bålplads</string> <string name="type.leisure.firepit">Bålplads</string>
<string name="type.man_made.crane">Kran</string> <string name="type.man_made.crane">Kran</string>
@@ -1375,4 +1374,11 @@
<string name="type.amenity.luggage_locker">Bagageboks</string> <string name="type.amenity.luggage_locker">Bagageboks</string>
<string name="type.natural.wetland.saltmarsh">Strandeng</string> <string name="type.natural.wetland.saltmarsh">Strandeng</string>
<string name="type.natural.wetland.saltmarsh.tidal">Tidevandspåvirket strandeng</string> <string name="type.natural.wetland.saltmarsh.tidal">Tidevandspåvirket strandeng</string>
<string name="type.natural.wetland.mangrove">Mangrove</string>
<string name="type.natural.wetland.tidalflat">Tidevandsflade</string>
<string name="type.man_made.utility_pole">Lygtepæl</string>
<string name="type.leisure.escape_game">Escape Room</string>
<string name="type.landuse.religious">Religiøs jord</string>
<string name="type.power.pole">Elmast</string>
<string name="type.railway.station.subway.qingdao">Undergrundsstation</string>
</resources> </resources>

View File

@@ -584,7 +584,7 @@
<string name="prefs_languages_information">Wir verwenden Text-to-Speech-Systeme für Sprachanweisungen. Viele Android-Geräte nutzen Google-TTS, das Sie bei Google Play (https://play.google.com/store/apps/details?id=com.google.android.tts) herunterladen oder aktualisieren können</string> <string name="prefs_languages_information">Wir verwenden Text-to-Speech-Systeme für Sprachanweisungen. Viele Android-Geräte nutzen Google-TTS, das Sie bei Google Play (https://play.google.com/store/apps/details?id=com.google.android.tts) herunterladen oder aktualisieren können</string>
<string name="prefs_languages_information_off">Für einige Sprachen müssen Sie einen anderen Sprachgenerator oder ein zusätzliches Sprachpaket aus dem App Store installieren (Google Play, Galaxy Store, App Gallery, FDroid).\nÖffnen Sie die Einstellungen Ihres Gerätes → Sprache und Eingabe → Sprache → Text-to-Speech-Ausgabe.\nHier können Sie die Einstellungen für Sprachsynthese verwalten (beispielsweise ein Sprachpaket für die Offline-Verwendung herunterladen) und ein anderes Sprachausgabeprogramm auswählen.</string> <string name="prefs_languages_information_off">Für einige Sprachen müssen Sie einen anderen Sprachgenerator oder ein zusätzliches Sprachpaket aus dem App Store installieren (Google Play, Galaxy Store, App Gallery, FDroid).\nÖffnen Sie die Einstellungen Ihres Gerätes → Sprache und Eingabe → Sprache → Text-to-Speech-Ausgabe.\nHier können Sie die Einstellungen für Sprachsynthese verwalten (beispielsweise ein Sprachpaket für die Offline-Verwendung herunterladen) und ein anderes Sprachausgabeprogramm auswählen.</string>
<string name="prefs_languages_information_off_link">Weitere Informationen finden Sie in dieser Anleitung</string> <string name="prefs_languages_information_off_link">Weitere Informationen finden Sie in dieser Anleitung</string>
<string name="transliteration_title">Transliteration ins lateinische Alphabet</string> <string name="transliteration_title">Transliteration ins Lateinische alphabet</string>
<string name="learn_more">Weitere Informationen</string> <string name="learn_more">Weitere Informationen</string>
<!-- Subway exits for public transport marks on the map --> <!-- Subway exits for public transport marks on the map -->
<string name="core_exit">Ausgang</string> <string name="core_exit">Ausgang</string>

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