File tree Expand file tree Collapse file tree 2 files changed +13
-1
lines changed
packages/slate-react/src/components Expand file tree Collapse file tree 2 files changed +13
-1
lines changed Original file line number Diff line number Diff line change 1+ ---
2+ ' slate-react ' : patch
3+ ---
4+
5+ Ignores composition events when fired from nested input or textarea
Original file line number Diff line number Diff line change @@ -1274,6 +1274,9 @@ export const Editable = forwardRef(
12741274 ) }
12751275 onCompositionEnd = { useCallback (
12761276 ( event : React . CompositionEvent < HTMLDivElement > ) => {
1277+ if ( isDOMEventTargetInput ( event ) ) {
1278+ return
1279+ }
12771280 if ( ReactEditor . hasSelectableTarget ( editor , event . target ) ) {
12781281 if ( ReactEditor . isComposing ( editor ) ) {
12791282 Promise . resolve ( ) . then ( ( ) => {
@@ -1331,7 +1334,8 @@ export const Editable = forwardRef(
13311334 ( event : React . CompositionEvent < HTMLDivElement > ) => {
13321335 if (
13331336 ReactEditor . hasSelectableTarget ( editor , event . target ) &&
1334- ! isEventHandled ( event , attributes . onCompositionUpdate )
1337+ ! isEventHandled ( event , attributes . onCompositionUpdate ) &&
1338+ ! isDOMEventTargetInput ( event )
13351339 ) {
13361340 if ( ! ReactEditor . isComposing ( editor ) ) {
13371341 setIsComposing ( true )
@@ -1343,6 +1347,9 @@ export const Editable = forwardRef(
13431347 ) }
13441348 onCompositionStart = { useCallback (
13451349 ( event : React . CompositionEvent < HTMLDivElement > ) => {
1350+ if ( isDOMEventTargetInput ( event ) ) {
1351+ return
1352+ }
13461353 if ( ReactEditor . hasSelectableTarget ( editor , event . target ) ) {
13471354 androidInputManagerRef . current ?. handleCompositionStart (
13481355 event
You can’t perform that action at this time.
0 commit comments