P/F/M Zone Geometry — Wave 2
Статус: done.
Цель
Довести геометрию до явных zone-bounds и добавить визуальный overlay контуров зон без изменения контента.
Что сделано
- Расширен DTO кадра геометрии:
PresentationMainGridLayoutFrameтеперь содержитZoneBounds.PresentationZoneBoundописываетZone,StartNormalized,WidthNormalized.
- Расчёт bounds встроен в
PresentationMainGridLayoutFrameBuilder:- bounds строятся для первого экрана в порядке якорей.
- Добавлен overlay контуров зон в
MainWindow.axaml:SkiaZoneGeometryOverlayPfd/SkiaZoneGeometryOverlayForward/SkiaZoneGeometryOverlayMfd;- не меняет содержимое зон, только визуально подсвечивает границы.
- Добавлена настройка пользователя:
[display].show_skia_zone_geometry_overlay(модельDisplaySettings).- VM-свойства видимости overlay учитывают текущую геометрию колонок.
- Усилен debug snapshot log:
[MainGridGeometry]теперь логирует иbounds=[...].
- Тесты дополнены проверкой zone-bounds:
PresentationMainGridLayoutFrameBuilderTests.
Решение по rollout
- Полный dual-path для Wave 2 не вводится.
- Причина: внутренний продукт с одним потребителем; важнее скорость и простота.
- Контроль: debug snapshot + ручная визуальная валидация.
Definition of Done
- Геометрия зон доступна не только как строка колонок, но и как явные bounds DTO.
- Preview контуров можно включить через пользовательскую настройку без изменений контента.
- Сборка и таргетные тесты presentation-слоя проходят.