Ticket #31441: 31441.30.patch
File 31441.30.patch, 1.6 KB (added by , 10 years ago) |
---|
-
src/wp-includes/js/tinymce/plugins/wptextpattern/plugin.js
13 13 ( function( tinymce, setTimeout ) { 14 14 tinymce.PluginManager.add( 'wptextpattern', function( editor ) { 15 15 var VK = tinymce.util.VK, 16 canUndo = false,17 16 spacePatterns = [ 18 17 { regExp: /^[*-]\s/, cmd: 'InsertUnorderedList' }, 19 18 { regExp: /^1[.)]\s/, cmd: 'InsertOrderedList' } … … 26 25 { start: '######', format: 'h6' }, 27 26 { start: '>', format: 'blockquote' } 28 27 ], 29 refNode, refPattern;28 canUndo, refNode, refPattern; 30 29 31 30 editor.on( 'selectionchange', function() { 32 canUndo = false;31 canUndo = null; 33 32 } ); 34 33 35 34 editor.on( 'keydown', function( event ) { 36 if ( canUndo && ( event.keyCode === VK.BACKSPACE || event.keyCode === 27 /* ESCAPE */) ) {35 if ( ( canUndo && event.keyCode === 27 /* ESCAPE */ ) || ( canUndo === 'space' && event.keyCode === VK.BACKSPACE ) ) { 37 36 editor.undoManager.undo(); 38 37 event.preventDefault(); 39 38 } … … 115 114 116 115 // We need to wait for native events to be triggered. 117 116 setTimeout( function() { 118 canUndo = true;117 canUndo = 'space'; 119 118 } ); 120 119 121 120 return false; … … 168 167 editor.formatter.apply( refPattern.format, {}, refNode ); 169 168 refNode.deleteData( 0, refPattern.start.length ); 170 169 } ); 170 171 // We need to wait for native events to be triggered. 172 setTimeout( function() { 173 canUndo = 'enter'; 174 } ); 171 175 } 172 176 173 177 refNode = null;