Commit Graph

41 Commits

Author SHA1 Message Date
Kiryl Kaveryn
1bb2b2274f [ios] Review fixes
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-07-04 11:42:44 +02:00
Kiryl Kaveryn
aec82794ac [ios] Fix track selection point updates on every new selection
On the every new tap on the `Track` or during the `Elevation chart` dragging, the track `Active point` will be updated now. It allows to keep the current selected track point coordinates up to date and fix the bug when the `route to/route from` buttons use only the initial coordinates.
Key changes:
1. the `Active point` and `My position` points are moved from the `Elevation profile` to the `PlacePageTrackData` because this properties are related to the whole track. Not only chart. The chart is only one of the consumers of this data updates.
2. The subscription to the active point updates is moved from the `Elevation profile` to the `PlacePagePresenter`. The reason - see 1.
2. The callback `onActivePointChanged` is added to notify that the active point is updated
3. When the callback is triggered the `PlacePageTrackData` fetches the new coordinates from the core and saves it. This coordinates are used by the `route to/from` buttons.

Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-07-04 11:42:44 +02:00
Kiryl Kaveryn
927299f4a9 [ios] Expand circle buttons tappable area
By 5pt to not overlap with another buttons (`close` and `share` on the place page screen)

Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-07-04 11:42:44 +02:00
Kiryl Kaveryn
87cb0307cf [ios] fix EditorVC NoteCell jumping while typing
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-07-04 11:42:44 +02:00
map per
cd0ffab996 Update social media link
Signed-off-by: map per <map-per@gmx.de>
2025-06-28 18:51:06 +02:00
Yannik Bloscheck
b58bacddf1 [ios] Matched translations
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-06-27 05:19:47 +02:00
Yannik Bloscheck
a985bf8349 [ios] Fixed issues with Panoramax button not working as intented
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-06-27 05:19:47 +02:00
Jean-Baptiste
df89761eba [iOS] Add Panoramax link on the place page
Signed-off-by: Jean-Baptiste Charron <jeanbaptiste.charron@outlook.fr>
Co-authored by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-06-27 05:19:47 +02:00
Yannik Bloscheck
ae1c975627 [ios] Improved handling of non-default mail clients
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-06-25 13:31:07 +02:00
Yannik Bloscheck
0cb1372075 [ios] Fix overlooked mistake from adding Blueksy
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-06-22 15:13:57 +02:00
Yannik Bloscheck
e500a9e5fa [ios] Added Mastodon & Bluesky 2025-06-20 14:47:33 +02:00
Kiryl Kaveryn
f746ab2c2d [ios] Fix track stats collection trailing inset
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-06-19 16:56:12 +07:00
Kiryl Kaveryn
a88798fbf2 [ios] remove spacing and separator from the Track recording Place page
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-06-19 16:56:00 +07:00
Kiryl Kaveryn
18be61e789 [ios] disable ele chart interaction when the chart data is empty
to prevent crashing

Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-06-19 16:55:51 +07:00
Kiryl Kaveryn
494b00b862 [ios] hotfix track recording stop button action
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-06-19 16:55:41 +07:00
Kiryl Kaveryn
e2efbbe68c [ios] Review fixes
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-06-17 11:36:04 +02:00
Kiryl Kaveryn
b79724f248 [ios] implement TrackRecording place page
1. add an new screen (layout)
2. add TR icon for the bottom tabbar
3. share current location from the TR PP
4. refactor TR manager to properly handle state updates and pass them to the LiveActivityManager and PlacePage
5. add init/update with TrackInfo/EleInfo methods to the PlacePageData and PlacePagePreviewData to update the PP state
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-06-17 11:36:04 +02:00
Yannik Bloscheck
074d443f0f More rebranding including the team identifier, url scheme, and links on about screen
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-06-15 18:33:52 +07:00
Matheus Gomes
d4e1d53c40 Rebranded the app for iOS 2025-06-15 18:32:35 +07:00
Kiryl Kaveryn
2861d9db2a [ios] replase ints/doubles with string for track stats in ios
to pass already formatted by the core values instead of formatting them later using the same core formatters

Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-06-07 16:25:16 +02:00
Kiryl Kaveryn
f201d0e3cd [ios] fix bm/track updates and deletion handling on the PP
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-06-07 16:25:16 +02:00
Kiryl Kaveryn
4cf5ec3c86 [ios] refactor search modes switching
For the expanded iphone mode (in portait) only the searchEverywhere will be used
For the halfscreen everywhere + viewport
For the iPad the everywhere + viewport is always enabled
For the hidden only the viewport

Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-06-07 16:25:16 +02:00
Kiryl Kaveryn
09c704ee8f [ios] rename isIPad to isiPad
To match swift naming conventions

Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-06-07 16:25:16 +02:00
Kiryl Kaveryn
9fb3a509dc [ios] skip search query duplications for history
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-05-29 09:49:07 +02:00
Kiryl Kaveryn
648fb55130 [ios] make MWMSearchFrameworkHelper methods class instead of instance
Because there is no any stored property in this manager so there is no reason to create it's instance.

Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-05-29 09:49:07 +02:00
Kiryl Kaveryn
8a331c4c67 [ios] fix route building error while searching when current location in none
Fixes issue https://github.com/organicmaps/organicmaps/issues/10606

Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-05-29 09:49:07 +02:00
Kiryl Kaveryn
7be49ab00a [ios] remove primary green background from the search screen header
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-05-29 09:49:07 +02:00
Kiryl Kaveryn
9c392d3160 [ios] continues searching when the user tap on suggestion
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-05-29 09:49:07 +02:00
Kiryl Kaveryn
96c24cf973 [ios] refactor search - use SearchQuery class instead of text+locale+isCategory
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-05-29 09:49:07 +02:00
Kiryl Kaveryn
7117a1b954 [ios] make modal screen animation smoother
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-05-29 09:49:07 +02:00
Kiryl Kaveryn
6a488a08a0 [ios] increase search screen top inset from the safe area
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-05-29 09:49:07 +02:00
Kiryl Kaveryn
79a5ba5609 [ios] fully expand the track PP when opened
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-05-29 09:49:07 +02:00
Kiryl Kaveryn
18f3d27157 [ios] fix wiki section visibility on the Place page
The description (users notes) should not control the wiki section visibility.

Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-05-29 09:49:07 +02:00
Kiryl Kaveryn
7fdd8d2e76 [ios] fix Placeholder view animation
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-05-19 10:52:42 +02:00
Kiryl Kaveryn
103d660603 [ios] refactor Toast class and improve toast message style
1. update style: bigger fonts and insets
2. update background blur
3. get rid of MWM prefix
4. replace the timer with the simplier dispatch async after. In this case there is no needed to create a timer for each toasts message just to add a timeout
5. reorder Toast class methods
6. replace the instance `show` method with a `static show`. Because there non needed to call show every time. We do not have stored toast that will be showed in different places thane created.
Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>

Signed-off-by: Kiryl Kaveryn <kirylkaveryn@gmail.com>
2025-05-19 10:52:42 +02:00
Eugene Nikolsky
50e6376afd [ios] Support multiple phone numbers
Multiple phone numbers should be [separated with `;`][parsing] in OSM
`phone` values. This commit adds support for parsing and displaying such
phone numbers individually. Example POI with three phone numbers:
https://www.openstreetmap.org/way/233417266.

Before this change, the phone was displayed as one
value and trying to call it would fail because all the digits were
concatenated together, resulting in an invalid number. For the POI
above, the program tried to call
`tel://+150332563111503325879018008756807`.

This change fixes the parsing of `FMD_PHONE_NUMBER` into an array of
phone numbers. That required updates in a few areas:

- the POI details view (`PlacePageInfoViewController`) now displays
  every phone number as a separate row, each with a clickable link for
  that number; long-click to copy also works.

- the share info preparation (`MWMShareActivityItem`) displays phone
  numbers separated with `; `, which provides a better phone detection
  for iOS.

- the Call button (`PlacePageInteractor`) now has to ask the user which
  number to call if there are more than one.

I tested this on an iPhone 15 Pro, iOS 17.2 simulator (temporarily
commenting the "can make phone call" checks).

Note: the Editing screen wasn't updated in order to keep this PR
smaller.

Fixes https://git.omaps.dev/organicmaps/organicmaps/issues/2458. The
corresponding fix for Android was in
https://github.com/organicmaps/organicmaps/pull/845.

[parsing]: https://wiki.openstreetmap.org/wiki/Key:phone#Parsing_phone_numbers

Signed-off-by: Eugene Nikolsky <omaps@egeek.me>
2025-05-19 10:52:42 +02:00
Eugene Nikolsky
a3ba5c53b6 [ios] Pass the phone to didPressCall
This will allow us to know which phone the user has picked when we've
added support for multiple phone numbers.

Signed-off-by: Eugene Nikolsky <omaps@egeek.me>
2025-05-19 10:52:42 +02:00
Eugene Nikolsky
56c4918e93 [ios] Pass specific phone to call instead of entire POI information
For now, it doesn't change anything because there's still at most one
phone, but this will help with multiple phone numbers because we'll need
to know which phone number the user has picked.

Signed-off-by: Eugene Nikolsky <omaps@egeek.me>
2025-05-19 10:52:42 +02:00
Eugene Nikolsky
9be9f17df9 [ios] Extract PlacePagePhone class
It groups two phone-related properties, `phone` and `phoneUrl` (renamed
to `url`), that used to be in `PlacePageInfoData`. This will make it
easier to support an array of phones for one POI.

Signed-off-by: Eugene Nikolsky <omaps@egeek.me>
2025-05-19 10:52:42 +02:00
Harry Bond
70ed37b648 [android][ios] Remove Kayak links
Signed-off-by: Harry bond <me@hbond.xyz>
2025-05-08 21:12:41 +07:00
Konstantin Pastbin
e3e4a1985a Organic Maps sources as of 02.04.2025 (fad26bbf22ac3da75e01e62aa01e5c8e11861005)
To expand with full Organic Maps and Maps.ME commits history run:
  git remote add om-historic [om-historic.git repo url]
  git fetch --tags om-historic
  git replace squashed-history historic-commits
2025-05-08 21:10:51 +07:00