VKCOM/VKUI

[Bug][ImageBase.Overlay]: Компонент скрывается при наведении на вложенный Tappable

MrZillaGold opened this issue · 5 comments

Описание

Если вложить в ImageBase.Overlay Tappable компонент и попробовать навести на него курсор в on-hover visibility, то компонент спрячется

Версия

6.0.0

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

Chrome

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

Компонент остается в видимом состоянии при наведении на вложенный Tappable

Скриншоты

Снимок экрана 2024-06-10 в 12 52 26
2024-06-10.12.53.19.mov

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

<Image.Overlay>
  <Button>test</Button>
</Image.Overlay>

Image.Overlay уже использует Tappable.

Делать так

<Image.Overlay>
  <Button>test</Button>
</Image.Overlay>

не валидно, т.к. получается, что кнопка в кнопке

<div role="button">
  <button>test</button>
</div>

Если необходимо сделать две кнопки, то стоит написать свой Image.Overlay.

В v7 уберём Tappable из Image.Overlay, чтобы пользователь сам передавал экшен:

<Image.Overlay>
  <Button>test</Button>
</Image.Overlay>

К сожалению, by design не предполагалось, что будет несколько экшенов внутри Image.Overlay 😩

В целом можно и в рамках v6 внести изменение – через параметр отключать Tappable обёртку.

Мб попробовать без наличия интерактивных пропов (onClick) на Overlay просто убирать обертку Tappable для 6 версии, потом пересмотреть компонент в общем в следующей мажорке?

Свои обертки на нашей стороне не хотелось бы придумывать, чтобы потом не было проблем с синхронизацией дизайна и API в случае чего, да и поддерживать такой компонент в общем на своей стороне не хочется