Skip to content

stop propagation for MouseEvent of Editable#1135

Merged
raineorshine merged 1 commit intodevfrom
fix-touch-event-bubbling
May 12, 2021
Merged

stop propagation for MouseEvent of Editable#1135
raineorshine merged 1 commit intodevfrom
fix-touch-event-bubbling

Conversation

@onurpolattimur
Copy link
Contributor

Fixes for the case: #1029 (comment)


Reason

I had added e.stopPropagation() in onTap to block the triggering onMouseDown event of Content element(event bubbling). But this also blocks the calling onTouchEnd event in TouchMonitor.tsx

Solution:

In onTap function we need to stop propagation if event type is a MouseEvents. As I said before, for touch events e.stopPropagation() won't block the event bubbling for mouse events. It only blocks the event bubbling for touch events. So, it blocks the calling onTouchEnd event of TouchMonitor.

There will be no problem for TouchEvents because this is an edge case scenario, and in this case the onTap gets onMouseDown event not onTouchEnd event, because touch is not ended on Editable element, touch is ended on Content. You can see the case at #1128 (comment)

@raineorshine
Copy link
Contributor

raineorshine commented May 12, 2021

Works great! I tested it very thoroughly on iOS with all of the #1128 subissues and could not reproduce any of them.

@raineorshine raineorshine merged commit 034f67a into dev May 12, 2021
@raineorshine raineorshine deleted the fix-touch-event-bubbling branch May 12, 2021 21:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants