Дизайн: новый тип popup — «Promo Sheet» (webview-шторка)

Цель

Дать продукту переиспользуемый, управляемый с бэкенда контейнер для промо/лендингов внутри приложения — без релиза нового экрана под каждую акцию.

Метрика успеха

Время до запуска новой промо-кампании: сейчас = релиз с новым экраном, цель = конфиг на бэкенде.

Как это меняет процесс

Контент и дизайн акции живут на веб-странице и обновляются без релиза приложения.

Триггер и логика показа

  • Показывается при открытии приложения (splash → home), поверх основного экрана
  • Частота/таргетинг — backend-driven: сервер отдаёт {show: bool, url, campaign_id}; приложение просто рендерит то, что пришло, без своей логики капов
решаем позже В эту версию не включаю webview↔native bridge (передача телефона/токена, closePopup() из JS) — отмечено как «решить позже» в спеке, чтобы не блокировать дизайн.

Структура popup

  • Полноэкранная шторка снизу, с отступом сверху (видна часть home-экрана / статус-бар просвечивает) — не modal-затемнение с маленькой карточкой, а почти full-screen sheet
  • Нативная тонкая шапка (~44–48pt) поверх webview: полупрозрачный/приглушённый крестик слева, не перетягивает внимание с контента. Шапка не скроллится вместе со страницей — фиксирована
  • Ниже шапки — webview с лендингом (как promo.goodline.info/wifi_test), вертикальный скролл, никаких горизонтальных слайдов

Поведение и анимация

01

Вход

Slide-up снизу вверх — стандартный sheet-transition, не fade.

02

Тап на крестик

Закрытие шторки, возврат к home.

03

Свайп вниз от шапки

Native gesture закрытия, как стандартный Android back.

04

Скролл контента

Скролл внутри webview не закрывает popup — в отличие от свайпа именно за шапку/пустую область.

Отличие от текущих шторок и онбординга

Шторки / онбординг сейчасPromo Sheet
КонтентНативный, короткий, фиксирован на релизеWebview-контейнер + нативная шапка, контент живёт на веб-странице
ОбновлениеТребует релиза приложенияОбновляется без релиза, конфигом с бэкенда
Визуал/маркетингЗашит в приложениеПолностью на стороне веб-страницы

Интерактивный прототип

Экран 1:1 из Figma «LocalWork» — тап по баннеру открывает Promo Sheet с реальным лендингом внутри

9:41 98
Весенняя, 11
Умный домофон
Новая услуга
Управление голосом
Забота от Goodline
Большое ТВ по акции
Интернет и ТВАктивно
Баланс
1 100,67 ₽
Пополнить
баланс
Личный
кабинет
Goodline город
Все
ЖКХ Кузбасс
Кузбасс Онлайн
Нейросеть
Городские камеры
Для бизнеса
Главная
Домофоны
Магазин
Мой город
Помощь
tap баннер открывает Promo Sheet, крестик или тёмная область — закрывают
Крестик — за пределами шторки. Плавает в верхнем зазоре над sheet, поверх затемнённого фона, не в её шапке.
У шторки нет собственной шапки. Webview-контент сразу начинается с закруглённого верхнего края.
Внутри — настоящий лендинг promo.goodline.info/wifi_test, а не мокап.