fix(worldclock): fix Etc/GMT names at the fallback, not per caller

The previous rule named every non-place id by its current offset, which
renamed legacy ids such as Japan, called Etc/UTC "GMT" and made a CET
row's name change at DST. Only the Etc/GMT+-n ids have a misleading
last segment, so ZoneCatalog.cityFallbackFor now flips just those to
their real offset. That also reaches the zone picker's device row,
which takes its name from the same fallback.
This commit is contained in:
makiolaj committed 2026-10-22 07:44:54 +02:00
1 parent 40b4c9e2e4
commit b79b38bd2b
4 files changed
+28 -31

No files matched your search

+1 -1
View File
@@ -2407,7 +2407,7 @@ differ from it, so with no stored home the rule is always null, and Settings ›
Clock says so under the switch rather than hiding it. A device set by UTC
offset rather than by city reports an id like `Etc/GMT-9`, whose last segment
has its sign reversed, so that zone is named by its real offset ("GMT+9")
instead, on the local row and on the face alike (`ZoneCatalog.hasPlaceName`).
instead, wherever a zone falls back to its id for a name (`ZoneCatalog.cityFallbackFor`).
The row is not stored. It is `WorldClockUiState.Loaded.local`, built per tick
by the source from the same `zones.current()` read the face uses, so a