[@mantine/core] Rating: Prevent emulated mouse events in touch devices #4976
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.
Fixes #4399
When using a touch device browsers will dispatch emulated mouse events which, in this case, will cause the
handleMouseLeave
callback to be called as soon as we click elsewhere. One of the ways to fix this is to prevent emulated events by preventing this behaviour inonTouchStart
andonTouchEnd
.Read more about emulated events here.
Issue fixed:
mobile.mov
I also noticed that when using the keyboard we are changing the rating when using arrow navigation and not waiting for the spacebar which IMO is not right, because we might just be passing by 🤷 ? I added this fix here but I can remove it if it doesn't fit.
Issue fixed:
keyboard.mov