Skip to content

[Feature][Popover]: добавить подложку и блокировку скролла #9161

@inomdzhon

Description

@inomdzhon

Как сейчас?

При открытии Popover можно взаимодействовать со основным контентом страницы.

Как надо?

При открытии нужно:

  • создавать подложку, который блокирует взаимодействие за Popover
  • блокировать скролл, чтобы нельзя было скроллить основную страницу

ТЗ

  • Изменение структуры

    + backdrop
    host
      in
  • API

    • slotProps.backdrop – прокидвает пользовательские свойства в подложку
    • disableScrollLock – отключает блокировку скролла
    • disableBackdrop – отключает подложку

Чеклист

  • Нажатие на backdrop закрывает Popover
  • Блокировки и разблокировка скролла работает корректно
  • Проверить, что вложенный Popover работает корректно
  • ⚠️ Соблюдена обратная совместимость – v8 свойство disableBackdrop должно быть по умолчанию true, а в v9 по умолчанию false.
  • Добавить в website раздел про disableBackdrop={false}, так же предупреждение, что в v9 значение будет по умолчанию false.
  • Добавить JSDoc к свойствам. Для disableBackdrop={false} добавить предупреждение, что в v9 значение будет по умолчанию false, а сейчас true.
  • Добавить unit-тесты – проверить, что slotProps.backdrop, disableScrollLock, disableBackdrop корректно работают

Референс

https://mui.com/material-ui/react-popover/

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    Status

    🗃 Backlog

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions