The recording map is edge-to-edge and drew behind the system status bar, leaving its icons unreadable over the tiles (the map controls were already offset by --safe-area-top, so the design intended a visible bar). Paint a solid strip the height of the top inset behind the bar — like the header on every other screen. Disabled in the rotated landscape modes.
2.1 KiB
Сессия 2026-09-07: статус-бар на экране записи
Проблема
При включённом трекинге не видно системный статус-бар. Пользователь: перекрывают его только карты, остальное приложение ведёт себя нормально. Просьба — сделать бар видимым (не рисовать свой индикатор батареи).
Причина
Карта на экране записи (.rec-map-wrap/.rec-map) рисуется edge-to-edge и заходит под системный
статус-бар. Контролы карты (компас, зум-кнопки leaflet) уже сдвинуты вниз на --safe-area-top
(строки 1155, 1161 styles.css) — то есть дизайн задумывался с видимым статус-баром, но у самого бара
нет подложки: иконки теряются на тайлах карты. На остальных экранах подложку даёт «шапка»
(padding-top: calc(... + var(--safe-area-top)); background: var(--surface)).
Решение (только CSS, без сдвига координат карты)
Псевдоэлемент .rec-map-wrap::before — сплошная полоса высотой var(--safe-area-top) цвета
var(--surface), z-index:1100, pointer-events:none. Даёт статус-бару подложку как «шапка».
Контролы карты уже начинаются ниже полосы, наложения нет. В ландшафте (rot-90/270) полоса отключена
(display:none) — там карта повёрнута и инсет физически в другом месте.
--safe-area-top ставится из нативных инсетов (main.js:189, get_safe_insets), на устройстве ненулевой.
Файлы
- frontend/css/styles.css —
.rec-map-wrap::before+ отключение в rot-90/270.