Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Closed
MrZillaGold opened this issue Jun 10, 2024 · 5 comments · Fixed by #7006

Comments

@MrZillaGold
Copy link
Contributor

MrZillaGold commented Jun 10, 2024

Описание

Если вложить в 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>
@inomdzhon
Copy link
Contributor

inomdzhon commented Jun 11, 2024

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 обёртку.

@MrZillaGold
Copy link
Contributor Author

MrZillaGold commented Jun 11, 2024

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

@MrZillaGold
Copy link
Contributor Author

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

@inomdzhon
Copy link
Contributor

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

в целом можем так сделать

@BlackySoul поправим плиз в PR на логику, которую @ MrZillaGold предложил? учитывая изменения из #6382, нужно будет написать свою логику наведения

@vkcom-publisher
Copy link
Contributor

v6.2.1 🎉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

4 participants