fix(select): prevent clicks on non-interactive elements inside ion-select to ensure correct popover size #697
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What is being delivered?
In some cases, when a user clicks on an individual element inside an
ion-select
, the size of the ion-popover changes unexpectedly. For example, clicking on the arrow icon of theion-select
can cause the options overlay to become very small, leading to a poor user experience.To prevent these extra clicks and ensure a consistent overlay size, the proposed solution is to add pointer-events: none to elements inside the ion-select that are not the label or icon.
Since ion-select is a web component, we must access its shadow DOM to apply this style.
What impacts?
ion-select
that are not the label or icon. This ensures that the popover opens with the correct size and prevents unexpected behavior, leading to a more consistent and improved user experience.Reversal plan
pointer-events: none
from the elements inside theion-select
.