From 8b6ff4003840906f964a0174cc1f747d21bb2e72 Mon Sep 17 00:00:00 2001 From: Ella Iseulde Van Dorpe <*@iseulde.com> Date: Thu, 18 Jun 2015 11:34:25 +0000 Subject: [PATCH] TinyMCE: wptextpattern: fix issue that removes content * If the resulting text node is empty, don't remove all the content from the paragraph. * If there's an empty text node at the start of the paragraph, ignore it and consider the next node to be the start. See #31441. Built from https://develop.svn.wordpress.org/trunk@32832 git-svn-id: http://core.svn.wordpress.org/trunk@32803 1a063a9b-81f0-0310-95a4-ce76da25c4cd --- .../tinymce/plugins/wptextpattern/plugin.js | 14 +++++++++++++- .../plugins/wptextpattern/plugin.min.js | 2 +- wp-includes/js/tinymce/wp-tinymce.js.gz | Bin 138829 -> 138847 bytes wp-includes/version.php | 2 +- 4 files changed, 15 insertions(+), 3 deletions(-) diff --git a/wp-includes/js/tinymce/plugins/wptextpattern/plugin.js b/wp-includes/js/tinymce/plugins/wptextpattern/plugin.js index 7fac83774b..f1962a248a 100644 --- a/wp-includes/js/tinymce/plugins/wptextpattern/plugin.js +++ b/wp-includes/js/tinymce/plugins/wptextpattern/plugin.js @@ -87,6 +87,10 @@ } } + if ( ! child.nodeValue ) { + child = child.nextSibling; + } + if ( child !== node ) { return; } @@ -109,10 +113,18 @@ editor.undoManager.add(); editor.undoManager.transact( function() { + var $$parent; + if ( replace ) { $$( node ).replaceWith( document.createTextNode( replace ) ); } else { - $$( node.parentNode ).empty().append( '
' ); + $$parent = $$( node.parentNode ); + + $$( node ).remove(); + + if ( ! $$parent.html() ) { + $$parent.append( '
' ); + } } editor.selection.setCursorLocation( parent ); diff --git a/wp-includes/js/tinymce/plugins/wptextpattern/plugin.min.js b/wp-includes/js/tinymce/plugins/wptextpattern/plugin.min.js index 4e5ca356c1..1e3e7c867c 100644 --- a/wp-includes/js/tinymce/plugins/wptextpattern/plugin.min.js +++ b/wp-includes/js/tinymce/plugins/wptextpattern/plugin.min.js @@ -1 +1 @@ -!function(a,b){a.PluginManager.add("wptextpattern",function(c){function d(a,b){f.push({regExp:a,callback:b})}var e=c.$,f=[],g=!1;d(/^[*-]\s/,function(){this.execCommand("InsertUnorderedList")}),d(/^1[.)]\s/,function(){this.execCommand("InsertOrderedList")}),d(/^>\s/,function(){this.formatter.toggle("blockquote")}),d(/^(#{2,6})\s/,function(){this.formatter.toggle("h"+arguments[1].length)}),c.on("selectionchange",function(){g=!1}),c.on("keydown",function(b){g&&b.keyCode===a.util.VK.BACKSPACE&&(c.undoManager.undo(),b.preventDefault())}),c.on("keyup",function(d){var h,i,j,k,l;if(d.keyCode===a.util.VK.SPACEBAR&&(h=c.selection.getRng(),i=h.startContainer,i&&3===i.nodeType&&(j=i.nodeValue,k=c.dom.getParent(i,"p")))){for(;(l=k.firstChild)&&3!==l.nodeType;)k=l;l===i&&a.each(f,function(a){var d,f=j.replace(a.regExp,function(){return d=arguments,""});if(j!==f&&h.startOffset===j.length-f.length)return c.undoManager.add(),c.undoManager.transact(function(){f?e(i).replaceWith(document.createTextNode(f)):e(i.parentNode).empty().append("
"),c.selection.setCursorLocation(k),a.callback.apply(c,d)}),b(function(){g=!0}),!1})}})})}(window.tinymce,window.setTimeout); \ No newline at end of file +!function(a,b){a.PluginManager.add("wptextpattern",function(c){function d(a,b){f.push({regExp:a,callback:b})}var e=c.$,f=[],g=!1;d(/^[*-]\s/,function(){this.execCommand("InsertUnorderedList")}),d(/^1[.)]\s/,function(){this.execCommand("InsertOrderedList")}),d(/^>\s/,function(){this.formatter.toggle("blockquote")}),d(/^(#{2,6})\s/,function(){this.formatter.toggle("h"+arguments[1].length)}),c.on("selectionchange",function(){g=!1}),c.on("keydown",function(b){g&&b.keyCode===a.util.VK.BACKSPACE&&(c.undoManager.undo(),b.preventDefault())}),c.on("keyup",function(d){var h,i,j,k,l;if(d.keyCode===a.util.VK.SPACEBAR&&(h=c.selection.getRng(),i=h.startContainer,i&&3===i.nodeType&&(j=i.nodeValue,k=c.dom.getParent(i,"p")))){for(;(l=k.firstChild)&&3!==l.nodeType;)k=l;l.nodeValue||(l=l.nextSibling),l===i&&a.each(f,function(a){var d,f=j.replace(a.regExp,function(){return d=arguments,""});if(j!==f&&h.startOffset===j.length-f.length)return c.undoManager.add(),c.undoManager.transact(function(){var b;f?e(i).replaceWith(document.createTextNode(f)):(b=e(i.parentNode),e(i).remove(),b.html()||b.append("
")),c.selection.setCursorLocation(k),a.callback.apply(c,d)}),b(function(){g=!0}),!1})}})})}(window.tinymce,window.setTimeout); \ No newline at end of file diff --git a/wp-includes/js/tinymce/wp-tinymce.js.gz b/wp-includes/js/tinymce/wp-tinymce.js.gz index f3eb9039be19c98f2059e5ed04c28c1f03efcff9..62afa32b6216409234a2ffc8714826129799ad66 100644 GIT binary patch delta 7129 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 tV@t2j);5bRWZAkVFb%%l@9+u?NmD=3_bM?LPca