[android] Show the speed limit like in iOS #3817
Closed
alensiljak wants to merge 2 commits from
speed-limit-android
into master
pull from: speed-limit-android
merge into: organicmaps:master
organicmaps:master
organicmaps:weblate-i18n
organicmaps:beta/ios-hotfix-search
organicmaps:ios/search-fix-to-child-vc
organicmaps:ios/update-toast-ui
organicmaps:pastk-generator-genorder
organicmaps:pastk-autogen-subways
organicmaps:ios/pp-for-track-recording
organicmaps:ios/add-icons-to-the-live-activity-widget
organicmaps:ios/fix-search-on-map-tests-for-ipad
organicmaps:release/2025.03.02
organicmaps:pastk-drape-subways-greying-out
organicmaps:ios/update-search-vc-ui
organicmaps:alpha/2025.02.23
organicmaps:crowdin-master
organicmaps:l10n
organicmaps:ios/search-ui-redesign
organicmaps:ios/show-new-search-vc-from-the-route-building
organicmaps:release/2025.01.24
organicmaps:drop-appstream-glib
organicmaps:separate-locationservice-lib
organicmaps:release/2025.01.12
organicmaps:int/anrdoid-auto/permissions-screen
organicmaps:rt-docs-release-management-principles
organicmaps:generator-wikipedia
organicmaps:generator-actions
organicmaps:generator-subways
organicmaps:ios/enable-cpp-swift-interop
organicmaps:pastk-docs-values
organicmaps:fix-deprecated-atomic-load
organicmaps:rt-docs-communication
organicmaps:rt-docs-collaboration
organicmaps:ios/fix-compile-warnings-and-cleanup-unsupported-code
organicmaps:rt-ios-managed-signing
organicmaps:ios/fix-ios-test-ci-action-failure
organicmaps:ab-ios-bookmarks-last-category
organicmaps:pastk-docs-teams
organicmaps:qt-3d-preferences
organicmaps:fix-file-read-exception
organicmaps:fix-track-length-calculation
organicmaps:pastk-styles-feature-types-migration
organicmaps:release/24.11.27
organicmaps:alpha/2024.11.26
organicmaps:beta/2024.11.26
organicmaps:ab-tests-macro-fixes
organicmaps:ios/track-recording-fifth-bar-button
organicmaps:vng-fix
organicmaps:release/24.11.12
organicmaps:alpha/2024.11.10
organicmaps:vng-langs
organicmaps:patch-3
organicmaps:release/2024.10.22
organicmaps:alpha/2024.10.22
organicmaps:beta/2024.10.22
organicmaps:place-page-for-tracks-backup
organicmaps:release/2024.10.08
organicmaps:release/2024.10.04
organicmaps:alpha/2024.10.01
organicmaps:vng-search
organicmaps:beta/2024.09.19
organicmaps:release/2024.09.19
organicmaps:rdb-weblate
organicmaps:release/2024.09.08
organicmaps:android/speed-limit-exceed-flag
organicmaps:alpha/2024.09.03
organicmaps:alpha/2024.09.03-ios-track-recording-feature
organicmaps:mb-PendingIntent-requestCode-fix
organicmaps:alpha/2024.08.29
organicmaps:add-timestamps-to-track
organicmaps:ab-ios-crash-on-assert
organicmaps:alpha/2024.08.25-ios-track-recording-feature
organicmaps:alpha/2024.08.29-ios-track-recording-feature
organicmaps:android/speed-limit-threshold
organicmaps:android-oauth2-with-browser
organicmaps:release/2024.08.17
organicmaps:changes-from-release
organicmaps:release/2024.08.15
organicmaps:alpha-iOS-Bluetooth
organicmaps:rdb-cldr-plural-order
organicmaps:ab-unused-code
organicmaps:ab-android-location-fix
organicmaps:recent-track-recorder
organicmaps:ab-cleaner-shutdown
organicmaps:localized_address_ordering
organicmaps:ab-android-layer-button-highlight
organicmaps:weblate
organicmaps:release/2024.07.08
organicmaps:alpha/2024.07.25-rtsisyk-ios-test
organicmaps:ios-implement-the-recently-deleted-support-to-icloud-sync
organicmaps:recently-deleted-categories-using-postfix
organicmaps:fix-ios-simulator-version
organicmaps:alpha/2024.07.02
organicmaps:vng-test-data
organicmaps:release/2024.06.02
organicmaps:ios/undo-for-the-bookmark-deletion
organicmaps:ios/restore-bookmark-by-tap-on-the-map
organicmaps:ios/undo-for-the-bookmark-deletion-with-restoring-by-tap-on-the-map
organicmaps:revert-7969-pastk-drape-transparent-areas
organicmaps:ab-drape-use-constant-base-font-height
organicmaps:rt-beta
organicmaps:vng-alt-routes
organicmaps:pastk-styles-shared-paths-tune-down
organicmaps:android-auto/8015-8019-8022
organicmaps:pastk-beta-0420
organicmaps:pastk-2generate-paths
organicmaps:ab-fix-shaders-rebuild
organicmaps:ios/fix-drape-failure-during-test-running
organicmaps:ios/add-test-target-terminate
organicmaps:cleanup/base
organicmaps:ab-max-open-file-limit
organicmaps:weblate-appstore-i18n
organicmaps:2024.03.27-3-android-hotfix
organicmaps:ab-3party-oauthcpp
organicmaps:android-hotfix-24031805
organicmaps:ab-android-revert-links
organicmaps:ab-tts-simpler-strings
organicmaps:rt-android-huawei-crash
organicmaps:rt-android-release-2024.03.02
organicmaps:rt-android-release-2024.03.01
organicmaps:ab-ios-release-2024.02.27
organicmaps:ab-from-chars
organicmaps:gplay-android-auto-hotfix
organicmaps:ab-case-folding
organicmaps:rt-store-metadata
organicmaps:ab-buffer-vector-string-view
organicmaps:ab-update-gh-cache-action
organicmaps:rt-android-bookmark-export
organicmaps:osm-oauth2-support
organicmaps:vng-test
organicmaps:rt-geo-links
organicmaps:vng-lines
organicmaps:windows3
organicmaps:android-auto-disable
organicmaps:rt-android-paranoid-mode
organicmaps:rt-android-outdoor
organicmaps:ios-hotfix-release-dec-2023
organicmaps:rt-android-location-providers
organicmaps:pastk-outdoors-hiking-routes
organicmaps:pastk-2generate
organicmaps:pastk-classif-hiking-routes
organicmaps:vng-gen-kk
organicmaps:poc-disable-route-build-zoom
organicmaps:kk2
organicmaps:ab-thread-checker-qt-download-dialog-fix
organicmaps:revert-6461-category-letterbox-it
organicmaps:beta-outdoor
organicmaps:protobuf-24.4
organicmaps:designer-fixes
organicmaps:vng-bookmarks
organicmaps:vng-outdoors
organicmaps:navigation/save-mode
organicmaps:pastk-TEST-rel-w-lines-stats
organicmaps:ab-kml-remove-unique-ptr
organicmaps:vng-bench
organicmaps:aa
organicmaps:rt-android-remove-workmanager
organicmaps:rt-android-debug
organicmaps:protobuf-24.3
organicmaps:pastk-core-housenumbers
organicmaps:ruler-disable-reordering
organicmaps:android-warning-suppress
organicmaps:pastk-drape-bucket-discard-optimization
organicmaps:beta-ios-gpx-fix
organicmaps:pastk-generator-isolines-skip-resimplify
organicmaps:pastk-styles-world-railways
organicmaps:pastk-styles-TMP_dump_priorities
organicmaps:ab-increase-long-tap-radius
organicmaps:car-checkpoint-tolerance
organicmaps:rt-android-fix-viewport
organicmaps:vng-addr-test
organicmaps:downloader
organicmaps:obsolete-position-color
organicmaps:pastk-styles-geometryfallback
organicmaps:pastk-DEMO-geometry-1more-detailed
organicmaps:strings-be-ru-uk-miles
organicmaps:ios/external-keyboard-fix2
organicmaps:alex-outdoors
organicmaps:ios/blue-route-to
organicmaps:pastk-styles-fixpriorities2
organicmaps:pastk-styles-fixpriorities
organicmaps:rt-android-accent-color
organicmaps:pastk-drape-path_text_zoom_mask
organicmaps:pastk-drape-roadshields
organicmaps:update-appstore-metadata
organicmaps:pastk-styles-outdoors
organicmaps:3p/disable-system-jansson
organicmaps:ios/newly-created-list-order
organicmaps:czech-release
organicmaps:rt-fix-monkey-gh
organicmaps:ios/fix-tableview-headers-font
organicmaps:rt-android-google-location-annoying
organicmaps:pastk-loc-share
organicmaps:ctest
organicmaps:windows2
organicmaps:kml-load-robust
organicmaps:tr-screenshots
organicmaps:vng-nav
organicmaps:d4f5409d-patch-1
organicmaps:rt-fix-location-resolution
organicmaps:github-actions-update
organicmaps:android_auto
organicmaps:matheusgomesms-store-releasenotes-pt_BRtranslation
organicmaps:rt-add-ci-timeout
organicmaps:rq-alterRoutes-vng
organicmaps:euskara
organicmaps:windows
organicmaps:tests-fix
organicmaps:pastk-styles-geometryfallback-1more-detailed
organicmaps:pastk-styles-zoomlessareas
organicmaps:pastk-outdoors-beta
organicmaps:android/R8
organicmaps:pastk-android-writability
organicmaps:rt-location-api
organicmaps:pastk-android-verifyerror
organicmaps:qt6
organicmaps:vng-my_pos
organicmaps:pastk-scripts
organicmaps:vng-sdfimage
organicmaps:vng-vehicle-refactoring
organicmaps:release-gp-fdroid-without-location-fixes
organicmaps:rt-android-track-recorder
organicmaps:rt-android-gplay-compliance
organicmaps:rt-android-remove-gms
organicmaps:rt-android-track-recorder-alarm
organicmaps:rt-android-keep-data
organicmaps:fix-odr
organicmaps:build/no-unity
organicmaps:backup-resources
organicmaps:android/warning-fixes
organicmaps:weblate-ios-i18n
organicmaps:rt-android-symlinks
organicmaps:weblate-android-i18n
organicmaps:weblate-whitespacing
organicmaps:rt-weblate-consume
organicmaps:ios/fixes
organicmaps:i18n-android
organicmaps:i18n-ios
organicmaps:rt-xcode-desktop
No reviewers
Labels
Clear labels
issues affecting users with specific needs
issues affecting users with specific needs
Issues with addresses, post codes, city/town/village borders
Issues with addresses, post codes, city/town/village borders
Android development
Android development
Android Auto
Android Auto
Short Links, deep links and url schemes, including ge0 and om://
Short Links, deep links and url schemes, including ge0 and om://
Huawei AppGallery
Huawei AppGallery
Apple AppStore
Apple AppStore
Performance and battery consumption-related issues and optimizations
Performance and battery consumption-related issues and optimizations
An issue blocking the release
An issue blocking the release
Bookmarks, imported tracks, and KML, KMZ, KMB, GPX, GPZ import or export
Bookmarks, imported tracks, and KML, KMZ, KMB, GPX, GPZ import or export
Country borders and polygons
Country borders and polygons
Something isn't working
Something isn't working
Compilation issue
Compilation issue
CarPlay Integration
CarPlay Integration
Classify object by types
Classify object by types
Community relations
Community relations
Cross-platform C++ libraries with a core functionality
Cross-platform C++ libraries with a core functionality
Crash Reporting
Crash Reporting
Bike, cycle, biking and related
Bike, cycle, biking and related
Desktop application
Desktop application
Developer Experience
Developer Experience
Automation and pipelines
Automation and pipelines
A desktop app to debug rendering
A desktop app to debug rendering
Issues with next turns, labels, streets, voice instructions
Issues with next turns, labels, streets, voice instructions
Improvements or additions to documentation
Improvements or additions to documentation
Map dowloader
Map dowloader
Drape OpenGL, Vulkan and Metal graphics rendering engine
Drape OpenGL, Vulkan and Metal graphics rendering engine
Drive a car related issues
Drive a car related issues
This issue or pull request already exists
This issue or pull request already exists
OSM Editor
OSM Editor
Isolines and altitude
Isolines and altitude
New feature or request, an improvement of some existing feature
New feature or request, an improvement of some existing feature
A large body work
A large body work
TIGER, Ordnance Survey, ASTER, SRTM, etc.
TIGER, Ordnance Survey, ASTER, SRTM, etc.
F-Droid build and distribution
F-Droid build and distribution
Font and text rendering
Font and text rendering
Most annoying UX and other issues for users reported by many people
Most annoying UX and other issues for users reported by many people
Related to generator tool.
Related to generator tool.
Good for newcomers
Good for newcomers
Google Play
Google Play
Location and positioning issues
Location and positioning issues
Ideas for Google Summer of Code
Ideas for Google Summer of Code
Map and app icons
Map and app icons
iOS development
iOS development
Legal aspects
Legal aspects
Ubuntu, Gentoo, Red Hat, Debian, Cent OS, Fedora, etc.
Ubuntu, Gentoo, Red Hat, Debian, Cent OS, Fedora, etc.
LibreM, PinePhone, Wayland and other mobile Linux versions
LibreM, PinePhone, Wayland and other mobile Linux versions
Desktop issues related to Mac OS X, OM running on M1, M2, M3 Apple silicon, or Qt version
Desktop issues related to Mac OS X, OM running on M1, M2, M3 Apple silicon, or Qt version
OpenStreetMap data related issues
OpenStreetMap data related issues
Subway, Tube, light-rail public transport issues
Subway, Tube, light-rail public transport issues
Issues related to the active Navigator / Navigation mode
Issues related to the active Navigator / Navigation mode
Further information is requested
Further information is requested
Night or dark mode feature
Night or dark mode feature
Tasks related to NLnet 2024-06-281 project.
Tasks related to NLnet 2024-06-281 project.
A platform needs this to be implemented to have feature parity with other platforms
A platform needs this to be implemented to have feature parity with other platforms
Business Hours, off time, holidays, seasonal
Business Hours, off time, holidays, seasonal
Hiking, mtb, 4x4...
Hiking, mtb, 4x4...
Feature metadata, OSM tags that are displayed in Place Page
Feature metadata, OSM tags that are displayed in Place Page
Privacy
Privacy
Bus, trolleybus, train, tram, metro, subway, light rail
Bus, trolleybus, train, tram, metro, subway, light rail
An idea that needs to be elaborated
An idea that needs to be elaborated
This issue is different depending on the country or region
This issue is different depending on the country or region
A regression bug
A regression bug
Meta-tickets for tracking the release procedure
Meta-tickets for tracking the release procedure
Robo / Monkey Auto Tests
Robo / Monkey Auto Tests
Preview and plan your track
Preview and plan your track
Route building issues, e.g. valid route, valid ETA
Route building issues, e.g. valid route, valid ETA
Helicopter routing, "as a crow flies"
Helicopter routing, "as a crow flies"
Search
Search
Security improvements
Security improvements
Map drawing styles
Map drawing styles
Track Recording
Track Recording
Localization and translations issues
Localization and translations issues
Text-to-Speech
Text-to-Speech
User interface issues
User interface issues
User eXperience, an issue with usability
User eXperience, an issue with usability
Foot pedestrian mode
Foot pedestrian mode
Android Watches or Apple Watches support
Android Watches or Apple Watches support
https://organicmaps.app/
https://organicmaps.app/
Issues related to Wiki articles embedded in OM data files.
Issues related to Wiki articles embedded in OM data files.
Windows
Windows
Unfeasible or impossible to resolve
Unfeasible or impossible to resolve
Issues about improving the base map of the whole world that is bundled with the app
Issues about improving the base map of the whole world that is bundled with the app
Accessibility
issues affecting users with specific needs
Accessibility
issues affecting users with specific needs
Address
Issues with addresses, post codes, city/town/village borders
Address
Issues with addresses, post codes, city/town/village borders
Android
Android development
Android
Android development
Android Auto
Android Auto
Android Auto
Android Auto
Android Automotive (AAOS)
Android Automotive (AAOS)
API
Short Links, deep links and url schemes, including ge0 and om://
API
Short Links, deep links and url schemes, including ge0 and om://
AppGallery
Huawei AppGallery
AppGallery
Huawei AppGallery
AppStore
Apple AppStore
AppStore
Apple AppStore
Battery and Performance
Performance and battery consumption-related issues and optimizations
Battery and Performance
Performance and battery consumption-related issues and optimizations
Blocker
An issue blocking the release
Blocker
An issue blocking the release
Bookmarks and Tracks
Bookmarks, imported tracks, and KML, KMZ, KMB, GPX, GPZ import or export
Bookmarks and Tracks
Bookmarks, imported tracks, and KML, KMZ, KMB, GPX, GPZ import or export
Borders
Country borders and polygons
Borders
Country borders and polygons
Bug
Something isn't working
Bug
Something isn't working
Build
Compilation issue
Build
Compilation issue
CarPlay
CarPlay Integration
CarPlay
CarPlay Integration
Classificator
Classify object by types
Classificator
Classify object by types
Community
Community relations
Community
Community relations
Core
Cross-platform C++ libraries with a core functionality
Core
Cross-platform C++ libraries with a core functionality
CrashReports
Crash Reporting
CrashReports
Crash Reporting
Cycling
Bike, cycle, biking and related
Cycling
Bike, cycle, biking and related
Desktop
Desktop application
Desktop
Desktop application
DevEx
Developer Experience
DevEx
Developer Experience
DevOps
Automation and pipelines
DevOps
Automation and pipelines
dev_sandbox
A desktop app to debug rendering
dev_sandbox
A desktop app to debug rendering
Directions
Issues with next turns, labels, streets, voice instructions
Directions
Issues with next turns, labels, streets, voice instructions
Documentation
Improvements or additions to documentation
Documentation
Improvements or additions to documentation
Downloader
Map dowloader
Downloader
Map dowloader
Drape
Drape OpenGL, Vulkan and Metal graphics rendering engine
Drape
Drape OpenGL, Vulkan and Metal graphics rendering engine
Driving
Drive a car related issues
Driving
Drive a car related issues
Duplicate
This issue or pull request already exists
Duplicate
This issue or pull request already exists
Editor
OSM Editor
Editor
OSM Editor
Elevation
Isolines and altitude
Elevation
Isolines and altitude
Enhancement
New feature or request, an improvement of some existing feature
Enhancement
New feature or request, an improvement of some existing feature
Epic
A large body work
Epic
A large body work
External Map Datasets
TIGER, Ordnance Survey, ASTER, SRTM, etc.
External Map Datasets
TIGER, Ordnance Survey, ASTER, SRTM, etc.
F-Droid
F-Droid build and distribution
F-Droid
F-Droid build and distribution
Fonts
Font and text rendering
Fonts
Font and text rendering
Frequently User Reported
Most annoying UX and other issues for users reported by many people
Frequently User Reported
Most annoying UX and other issues for users reported by many people
Fund
Fund
Generator
Related to generator tool.
Generator
Related to generator tool.
Good first issue
Good for newcomers
Good first issue
Good for newcomers
Google Play
Google Play
Google Play
Google Play
GPS
Location and positioning issues
GPS
Location and positioning issues
GSoC
Ideas for Google Summer of Code
GSoC
Ideas for Google Summer of Code
iCloud
iCloud
Icons
Map and app icons
Icons
Map and app icons
iOS
iOS development
iOS
iOS development
Legal
Legal aspects
Legal
Legal aspects
Linux Desktop
Ubuntu, Gentoo, Red Hat, Debian, Cent OS, Fedora, etc.
Linux Desktop
Ubuntu, Gentoo, Red Hat, Debian, Cent OS, Fedora, etc.
Linux packaging
Linux packaging
Linux Phone
LibreM, PinePhone, Wayland and other mobile Linux versions
Linux Phone
LibreM, PinePhone, Wayland and other mobile Linux versions
Mac OS
Desktop issues related to Mac OS X, OM running on M1, M2, M3 Apple silicon, or Qt version
Mac OS
Desktop issues related to Mac OS X, OM running on M1, M2, M3 Apple silicon, or Qt version
Map Data
OpenStreetMap data related issues
Map Data
OpenStreetMap data related issues
Metro
Subway, Tube, light-rail public transport issues
Metro
Subway, Tube, light-rail public transport issues
Navigation
Issues related to the active Navigator / Navigation mode
Navigation
Issues related to the active Navigator / Navigation mode
Need Feedback
Further information is requested
Need Feedback
Further information is requested
Night Mode
Night or dark mode feature
Night Mode
Night or dark mode feature
NLnet 2024-06-281
Tasks related to NLnet 2024-06-281 project.
NLnet 2024-06-281
Tasks related to NLnet 2024-06-281 project.
No Feature Parity
A platform needs this to be implemented to have feature parity with other platforms
No Feature Parity
A platform needs this to be implemented to have feature parity with other platforms
Opening Hours
Business Hours, off time, holidays, seasonal
Opening Hours
Business Hours, off time, holidays, seasonal
Outdoors
Hiking, mtb, 4x4...
Outdoors
Hiking, mtb, 4x4...
POI Info
Feature metadata, OSM tags that are displayed in Place Page
POI Info
Feature metadata, OSM tags that are displayed in Place Page
Privacy
Privacy
Privacy
Privacy
Public Transport
Bus, trolleybus, train, tram, metro, subway, light rail
Public Transport
Bus, trolleybus, train, tram, metro, subway, light rail
Raw Idea
An idea that needs to be elaborated
Raw Idea
An idea that needs to be elaborated
Refactoring
Refactoring
Regional
This issue is different depending on the country or region
Regional
This issue is different depending on the country or region
Regression
A regression bug
Regression
A regression bug
Releases
Meta-tickets for tracking the release procedure
Releases
Meta-tickets for tracking the release procedure
RoboTest
Robo / Monkey Auto Tests
RoboTest
Robo / Monkey Auto Tests
Route Planning
Preview and plan your track
Route Planning
Preview and plan your track
Routing
Route building issues, e.g. valid route, valid ETA
Routing
Route building issues, e.g. valid route, valid ETA
Ruler
Helicopter routing, "as a crow flies"
Ruler
Helicopter routing, "as a crow flies"
Search
Search
Search
Search
Security
Security improvements
Security
Security improvements
Styles
Map drawing styles
Styles
Map drawing styles
Tests
Tests
Track Recording
Track Recording
Track Recording
Track Recording
Translations
Localization and translations issues
Translations
Localization and translations issues
TTS
Text-to-Speech
TTS
Text-to-Speech
UI
User interface issues
UI
User interface issues
UX
User eXperience, an issue with usability
UX
User eXperience, an issue with usability
Walk Navigation
Foot pedestrian mode
Walk Navigation
Foot pedestrian mode
Watches
Android Watches or Apple Watches support
Watches
Android Watches or Apple Watches support
Web
https://organicmaps.app/
Web
https://organicmaps.app/
Wikipedia
Issues related to Wiki articles embedded in OM data files.
Wikipedia
Issues related to Wiki articles embedded in OM data files.
Windows
Windows
Windows
Windows
Won't fix
Unfeasible or impossible to resolve
Won't fix
Unfeasible or impossible to resolve
World Map
Issues about improving the base map of the whole world that is bundled with the app
World Map
Issues about improving the base map of the whole world that is bundled with the app
No labels
Accessibility
Accessibility
Address
Address
Android
Android
Android Auto
Android Auto
Android Automotive (AAOS)
Android Automotive (AAOS)
API
API
AppGallery
AppGallery
AppStore
AppStore
Battery and Performance
Battery and Performance
Blocker
Blocker
Bookmarks and Tracks
Bookmarks and Tracks
Borders
Borders
Bug
Bug
Build
Build
CarPlay
CarPlay
Classificator
Classificator
Community
Community
Core
Core
CrashReports
CrashReports
Cycling
Cycling
Desktop
Desktop
DevEx
DevEx
DevOps
DevOps
dev_sandbox
dev_sandbox
Directions
Directions
Documentation
Documentation
Downloader
Downloader
Drape
Drape
Driving
Driving
Duplicate
Duplicate
Editor
Editor
Elevation
Elevation
Enhancement
Enhancement
Epic
Epic
External Map Datasets
External Map Datasets
F-Droid
F-Droid
Fonts
Fonts
Frequently User Reported
Frequently User Reported
Fund
Fund
Generator
Generator
Good first issue
Good first issue
Google Play
Google Play
GPS
GPS
GSoC
GSoC
iCloud
iCloud
Icons
Icons
iOS
iOS
Legal
Legal
Linux Desktop
Linux Desktop
Linux packaging
Linux packaging
Linux Phone
Linux Phone
Mac OS
Mac OS
Map Data
Map Data
Metro
Metro
Navigation
Navigation
Need Feedback
Need Feedback
Night Mode
Night Mode
NLnet 2024-06-281
NLnet 2024-06-281
No Feature Parity
No Feature Parity
Opening Hours
Opening Hours
Outdoors
Outdoors
POI Info
POI Info
Privacy
Privacy
Public Transport
Public Transport
Raw Idea
Raw Idea
Refactoring
Refactoring
Regional
Regional
Regression
Regression
Releases
Releases
RoboTest
RoboTest
Route Planning
Route Planning
Routing
Routing
Ruler
Ruler
Search
Search
Security
Security
Styles
Styles
Tests
Tests
Track Recording
Track Recording
Translations
Translations
TTS
TTS
UI
UI
UX
UX
Walk Navigation
Walk Navigation
Watches
Watches
Web
Web
Wikipedia
Wikipedia
Windows
Windows
Won't fix
Won't fix
World Map
World Map
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
2 participants
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".
No due date set.
Dependencies
No dependencies set.
Reference: organicmaps/organicmaps-tmp#3817
Reference in a new issue
No description provided.
Delete branch "speed-limit-android"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Implements #952, text-only
I have concerns about the whole value fitting once the numbers are in double- or triple-digits. Need to try it while driving and eventually adjust the font size for the display.
It could be easily tested on Android Emulator.
It's not about Android Emulator but this being a Friday night, the end of a work week. Simple solutions seem the hardest to think of right now. ;)
You can import GPX/KML file (from Google Earth for example) or create a route like I did. I hope you understand from the screenshot:

EDIT: And you have to speed up simulation from menu so the car moves faster in emulator. I'll try to test by myself if I manage to patch and compile the thing (but can't promise it because I'm new to Android development).
Thanks, @pm4rcin, I did not know about that feature. I did test in the most simple way possible, by setting the string to "180 (130)" and checking it on the phone.
Seems fairly straightforward by following the instructions. I did not experience any issues. The sub-repos need to be fetched and the
configure.sh
needs to be run in Linux environment, i.e. WSL if on Windows.That's a really cool tip about the driving simulation. I'll have to try that. OsmAnd can create GPX routes easily.
Can you add [android] before PR name to trigger Android workflow ;)
More information here
@pm4rcin, could you tell me how to get the route (GPX) into Organic Maps, please? If I choose OM for opening the GPX file from i.e. Material Files, nothing happens. And I don't see options to import directly from inside the app.
This would be really handy in order to test the issues with speed cameras that I've noticed.
@alensiljak I don't think GPX import is supported in any way currently. See organicmaps/organicmaps#624
What is this

(36)
? It's on motorway with 130pkh limit so it displays a different thing than wanted. When on 80kph limit it's(22)
and on 50kph it's(14)
. Something's wrong with your PR but it's close to displaying correct thing.Oh, right. The speed is apparently expressed in meters per second. I need to convert it to
km/hthe selected unit.The decimals are removed for display. That would explain the slight differences in numbers.
Nice! It'd be good to display the speed limit as iOS does, in the format
currentSpeed/speedLimit
(iOS PR for reference: organicmaps/organicmaps#2963)@alensiljak you can convert GPX to KML using any online convertor.
Guys, thanks for all the tips so far! I now have a decent setup and toolbox, and can hopefully debug and check other issues that I experience, like speed cameras.
The conversion and formatting are now in place and I'd say the PR is functionally ready. Please review.
Edit: FYI, I found https://gpx.studio/ to be quite convenient in providing GPX routes with defined travel speed. This is quite helpful when combined with Android Studio feature of simulating location and movement. Thanks, @pm4rcin!
Oh, the code formatting sucks. The change is now really hard to identify on GitHub. I've tried throwing an Exception and then removed that code, reformatting the file to fix the spacing. Now the whole file is indicated as changed. :S
Why did you change the indentation? We have some rules for code formatting, please try to follow them. There are some code formatters at tools/android/formatter for example.
The question why, I believe I have answered in my comment above.
I have now applied the project formatter. The XML file has changed more than expected. Something might be missing there. I see the value 4 for continuation indent.
I see only unnecessary formatting changes, without an actual improvement.
In all other files, the indent is 2 spaces
@ -0,0 +13,4 @@
android:id="@+id/speed_view_container"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1.2"
These changes look unnecessary.
@ -0,0 +47,4 @@
<!-- Time -->
<RelativeLayout
android:layout_width="0dp"
android:layout_height="match_parent"
Please don't commit unnecessary changes.
@ -0,0 +112,4 @@
android:textAppearance="@style/MwmTextAppearance.NavMenu.Number.Dimension"
tools:text="99:99 AM" />
</RelativeLayout>
The same.
@ -0,0 +13,4 @@
android:id="@+id/speed_view_container"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1.2"
I didn't make those changes. I was editing the file in the visual editor. For everything else you can blame Google and JetBrains. The formatting is applied using the project formatter for Android Studio you mentioned above.
@ -0,0 +206,4 @@
if (last == null)
return;
Pair<String, String> speedAndUnits = StringUtils.nativeFormatSpeedAndUnits(last.getSpeed());
A bit off-topic but I'm wondering why do people often use 18/5 when converting to kph when it's just 3.6? Is it easier to remember or what?
@ -0,0 +206,4 @@
if (last == null)
return;
Pair<String, String> speedAndUnits = StringUtils.nativeFormatSpeedAndUnits(last.getSpeed());
It is easier to copy/paste from a search result for "m/s to mph" ;)
@ -0,0 +206,4 @@
if (last == null)
return;
Pair<String, String> speedAndUnits = StringUtils.nativeFormatSpeedAndUnits(last.getSpeed());
3600 / 1000
is way better and more obvious than 18/5@ -0,0 +13,4 @@
android:id="@+id/speed_view_container"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1.2"
It doesn't matter who made these changes. Our repository doesn't need them. There are zero benefits in merging them. They pollute the project git history. Please undo them.
We generally don't apply automatic code formatters, but stick to the defined code style.
@ -0,0 +206,4 @@
if (last == null)
return;
Pair<String, String> speedAndUnits = StringUtils.nativeFormatSpeedAndUnits(last.getSpeed());
@alensiljak also if you change it in one place change in every other to keep it consistent.
@ -0,0 +206,4 @@
if (last == null)
return;
Pair<String, String> speedAndUnits = StringUtils.nativeFormatSpeedAndUnits(last.getSpeed());
Seems that you guys have more time to work on this than I do. :D
@alensiljak I have cleaned up the patch
Thank you so much! That saves a ton of time. What are the next steps?
@ -0,0 +13,4 @@
android:id="@+id/speed_view_container"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1.2"
I understand and agree with your comments. But, unfortunately, I really don't have time at the moment to fiddle around with XML that was modified by the default tool for the job, using default or project settings as advised.
@ -0,0 +13,4 @@
android:id="@+id/speed_view_container"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1.2"
I started looking into showing speed limit too, try reset the XML, then remove
android:paddingStart
&android:paddingEnd
lines from the speed number elementYou can reset your local branch and save the diff to the file and then
git apply filename
. Then commit and force push. WARNING: Force pushing will destroy your commit history but I don't think that we need more than 1 commit for such simple PR.I'm getting
The PR seems to have closed automatically when the branch was reset.
Did you delete your fork's branch? Can you push it again into your fork?
See above.
I reset it before trying to apply the patch but the patch does not apply. Might need to redo the changes from the patch manually.
OK, I've done it manually. The project builds; app tested in the emulator.
@ -0,0 +250,4 @@
}
return result;
}
Why not to use existing approach? Like:
Pair<String, String> speedAndUnits = StringUtils.nativeFormatSpeedAndUnits(last.getSpeed());
@ -0,0 +250,4 @@
}
return result;
}
In this case, the unit is already known to the caller and that would somewhat obfuscate the point of the function, I think.
@ -0,0 +225,4 @@
{
double speedLimit = convertMpsIntoUnits(info.speedLimit, speedAndUnits.second);
speedIndicator += String.format("/%.0f", speedLimit);
}
[Pure suggestion as I would love to see this PR merged even without it and I wouldn't slow down the reviewing process]
iOS pr use space around the slash:
@ -0,0 +225,4 @@
{
double speedLimit = convertMpsIntoUnits(info.speedLimit, speedAndUnits.second);
speedIndicator += String.format("/%.0f", speedLimit);
}
The initial implementation was like that. Unfortunately, it takes too much screen space, in my opinion. Hence I narrowed it down.
@ -0,0 +225,4 @@
{
double speedLimit = convertMpsIntoUnits(info.speedLimit, speedAndUnits.second);
speedIndicator += String.format("/%.0f", speedLimit);
}
Oh ! ok. Sorry I didn't see this from the history because of the force push.
Is there anything I can do to help the merge of this pr ?
Speed limit information is one of key features I really love to see in Organic Maps
I believe this is resolved by the second attempt, applying only the changes without reformatting.
What does it look like in a vertical orientation on different devices, including lower-end ones (e.g. Android 5-6), with speed 110 and speed limit 120, and with a larger/largest font selected in the device's options?
@ -0,0 +250,4 @@
}
return result;
}
Is this duplication really necessary?
organicmaps/organicmaps#4189 is a blocker for this PR and should be fixed first.