Skip to content

Commit

Permalink
[Tiny PR] Paste: do not force blocks for empty rich text (#17140)
Browse files Browse the repository at this point in the history
* Paste: do not force blocks for empty rich text

* Enable embed on URL paste in paragraph block
  • Loading branch information
ellatrix authored Sep 4, 2019
1 parent e420ac2 commit 5774046
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 10 deletions.
20 changes: 10 additions & 10 deletions packages/block-editor/src/components/rich-text/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ import {
import { withFilters, IsolatedEventContainer } from '@wordpress/components';
import { createBlobURL } from '@wordpress/blob';
import deprecated from '@wordpress/deprecated';
import { isURL } from '@wordpress/url';

/**
* Internal dependencies
Expand Down Expand Up @@ -129,6 +130,7 @@ class RichTextWrapper extends Component {
tagName,
canUserUseUnfilteredHTML,
multiline,
__unstableEmbedURLOnPaste,
} = this.props;

if ( image && ! html ) {
Expand All @@ -138,12 +140,11 @@ class RichTextWrapper extends Component {
mode: 'BLOCKS',
tagName,
} );
const shouldReplace = onReplace && isEmpty( value );

// Allows us to ask for this information when we get a report.
window.console.log( 'Received item:\n\n', file );

if ( shouldReplace ) {
if ( onReplace && isEmpty( value ) ) {
onReplace( content );
} else {
this.onSplit( value, content );
Expand All @@ -152,15 +153,14 @@ class RichTextWrapper extends Component {
return;
}

const canReplace = onReplace && isEmpty( value );
const canSplit = onReplace && onSplit;

let mode = 'INLINE';
let mode = onReplace && onSplit ? 'AUTO' : 'INLINE';

if ( canReplace ) {
if (
__unstableEmbedURLOnPaste &&
isEmpty( value ) &&
isURL( plainText.trim() )
) {
mode = 'BLOCKS';
} else if ( canSplit ) {
mode = 'AUTO';
}

const content = pasteHandler( {
Expand All @@ -182,7 +182,7 @@ class RichTextWrapper extends Component {

onChange( insert( value, valueToInsert ) );
} else if ( content.length > 0 ) {
if ( canReplace ) {
if ( onReplace && isEmpty( value ) ) {
onReplace( content );
} else {
this.onSplit( value, content );
Expand Down
1 change: 1 addition & 0 deletions packages/block-library/src/paragraph/edit.js
Original file line number Diff line number Diff line change
Expand Up @@ -195,6 +195,7 @@ class ParagraphBlock extends Component {
onRemove={ onReplace ? () => onReplace( [] ) : undefined }
aria-label={ content ? __( 'Paragraph block' ) : __( 'Empty block; start writing or type forward slash to choose a block' ) }
placeholder={ placeholder || __( 'Start writing or type / to choose a block' ) }
__unstableEmbedURLOnPaste
/>
</>
);
Expand Down

0 comments on commit 5774046

Please sign in to comment.