diff --git a/packages/editor/src/components/rich-text/index.js b/packages/editor/src/components/rich-text/index.js index de0e7dd5aa3633..c7f8633c1bc0f4 100644 --- a/packages/editor/src/components/rich-text/index.js +++ b/packages/editor/src/components/rich-text/index.js @@ -688,9 +688,14 @@ export class RichText extends Component { if ( shouldReapply ) { const record = this.formatToValue( value ); - // Maintain the previous selection: - record.start = this.state.start; - record.end = this.state.end; + // If we always specify this the selection will go to this RichText + // regardless whether is is actually the currently selected one. + // So check if this RichText is the selected one. + if ( this.props.isSelected ) { + // Maintain the previous selection: + record.start = this.state.start; + record.end = this.state.end; + } this.applyRecord( record ); }