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]: Sub-menus within a on overlay trigger sp-closed for the outer overlay-trigger element #4267

Open
1 task done
adixon-adobe opened this issue Apr 12, 2024 · 3 comments
Labels
bug Something isn't working Component: Overlay triage An issue needing triage

Comments

@adixon-adobe
Copy link
Collaborator

adixon-adobe commented Apr 12, 2024

Code of conduct

  • I agree to follow this project's code of conduct.

Impacted component(s)

overlay-trigger

Expected behavior

I can listen to sp-closed on overlay-trigger and only get close events for that trigger

Actual behavior

If I use sp-action-menu or sp-picker in the overlay rendered by overlay-trigger, closing these menus also triggers sp-closed for the outer menu. It does look like I can match the event.target to the original trigger button, but I could see this really throwing people for a loop.

How can we reproduce this issue?

I can look at getting a simpler reproduction when I have a bit more time.

@adixon-adobe adixon-adobe added bug Something isn't working triage An issue needing triage labels Apr 12, 2024
@adixon-adobe
Copy link
Collaborator Author

I'm not really sure if another event or better documentation is the right approach here, but it was tricky to figure this out, and I'm curious how this would work for manually triggered overlays as well.

@adixon-adobe
Copy link
Collaborator Author

As I think about this more, I think what I'm really asking for is an event that doesn't bubble. I just want to know if this overlay opened or closed. Using the same (bubbling) event that the overlay system gets confusing because it's less common, and surprising when you run into it.

So ideally there's be another event that doesn't bubble, which when documented should make the difference in behavior very clear. And all that said, I won't be too offended if you decide it's just simpler to improve the documentation. Just pointing out that this can be a real surprising gotcha.

@Westbrook
Copy link
Collaborator

Some quick documentation points:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working Component: Overlay triage An issue needing triage
Projects
None yet
Development

No branches or pull requests

3 participants