Skip to content

Commit efc5945

Browse files
authored
RichText: Fix delete key in empty contenteditables (#5348)
1 parent f1d96b3 commit efc5945

File tree

2 files changed

+9
-2
lines changed

2 files changed

+9
-2
lines changed

lib/client-assets.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ function gutenberg_register_scripts_and_styles() {
8585
wp_register_script(
8686
'wp-utils',
8787
gutenberg_url( 'utils/build/index.js' ),
88-
array(),
88+
array( 'tinymce-latest' ),
8989
filemtime( gutenberg_dir_path() . 'utils/build/index.js' )
9090
);
9191
wp_register_script(

utils/dom.js

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
* External dependencies
33
*/
44
import { includes } from 'lodash';
5+
import tinymce from 'tinymce';
56

67
/**
78
* Browser dependencies
@@ -57,8 +58,14 @@ export function isHorizontalEdge( container, isReverse, collapseRanges = false )
5758
}
5859

5960
const maxOffset = node.nodeType === TEXT_NODE ? node.nodeValue.length : node.childNodes.length;
61+
const editor = tinymce.get( node.id );
6062

61-
if ( ! isReverse && offset !== maxOffset ) {
63+
if (
64+
! isReverse &&
65+
offset !== maxOffset &&
66+
// content editables with only a BR element are considered empty
67+
( ! editor || ! editor.dom.isEmpty( node ) )
68+
) {
6269
return false;
6370
}
6471

0 commit comments

Comments
 (0)