Skip to content

[Bug]: PanelHeader: включать боковые отступы на основе area-insets в fixed режиме только на iOS платформе. #8115

@andrey-medvedev-vk

Description

@andrey-medvedev-vk

Описание

Проблема более глобальная.
Если взять приложение, которое имеет ограниченную ширину, скажем ограниченную контейнером в 600px, то на iOS (например на симуляторе), в горизонтальной ориентации экрана, PanelHeader в режиме fixed будет уже чем само приложение.

Всё потому, что у нас применяются боковые паддинги для FixedLayout со значением safe-area-inset-left/right

padding-inline: var(--vkui_internal--safe_area_inset_left)
var(--vkui_internal--safe_area_inset_right);

В качестве решения можно было предоставить проп для отключения этих паддингов, чтобы пользователи сами могли настраивать через js реакцию на safe-area-inset.
Либо включать эти паддинги только для iOS платформы, как мы делаем для Panel

:global(.vkuiInternalView--ios) .Panel__in {
padding-block: 0 var(--vkui_internal--safe_area_inset_bottom);
padding-inline: var(--vkui_internal--safe_area_inset_left)
var(--vkui_internal--safe_area_inset_right);
}

Ни одно из этих решений не является идеальным. Надо подумать над лучшим решением, если это возможно.

Версия

v6, v7.1.0

В каких браузерах воспроизводится проблема?

Safari

Шаги воспроизведения

No response

Ожидаемое поведение

No response

Скриншоты

Внимание на паддинги (то что элемент чуть вправо выпадает, это другая особенность FixedLayout и примера)

Screenshot 2024-12-20 at 16 48 10 Screenshot 2024-12-20 at 16 48 45

Пример с воспроизведением

No response

Metadata

Metadata

Assignees

Type

Projects

Status

✅ Done

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions