From ecec2b61cfc76d16702eee41cc2b32da94a31c14 Mon Sep 17 00:00:00 2001
From: Ella Iseulde Van Dorpe <*@iseulde.com>
Date: Thu, 18 Jun 2015 12:59:28 +0000
Subject: [PATCH] TinyMCE: wptextpattern: escape should undo
Props azaozz.
See #31441.
Built from https://develop.svn.wordpress.org/trunk@32836
git-svn-id: http://core.svn.wordpress.org/trunk@32807 1a063a9b-81f0-0310-95a4-ce76da25c4cd
---
.../tinymce/plugins/wptextpattern/plugin.js | 5 +++--
.../plugins/wptextpattern/plugin.min.js | 2 +-
wp-includes/js/tinymce/wp-tinymce.js.gz | Bin 138847 -> 138864 bytes
wp-includes/version.php | 2 +-
4 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/wp-includes/js/tinymce/plugins/wptextpattern/plugin.js b/wp-includes/js/tinymce/plugins/wptextpattern/plugin.js
index f1962a248a..5886b1616a 100644
--- a/wp-includes/js/tinymce/plugins/wptextpattern/plugin.js
+++ b/wp-includes/js/tinymce/plugins/wptextpattern/plugin.js
@@ -13,6 +13,7 @@
( function( tinymce, setTimeout ) {
tinymce.PluginManager.add( 'wptextpattern', function( editor ) {
var $$ = editor.$,
+ VK = tinymce.util.VK,
patterns = [],
canUndo = false;
@@ -52,7 +53,7 @@
} );
editor.on( 'keydown', function( event ) {
- if ( canUndo && event.keyCode === tinymce.util.VK.BACKSPACE ) {
+ if ( canUndo && ( event.keyCode === VK.BACKSPACE || event.keyCode === 27 /* ESCAPE */ ) ) {
editor.undoManager.undo();
event.preventDefault();
}
@@ -61,7 +62,7 @@
editor.on( 'keyup', function( event ) {
var rng, node, text, parent, child;
- if ( event.keyCode !== tinymce.util.VK.SPACEBAR ) {
+ if ( event.keyCode !== VK.SPACEBAR ) {
return;
}
diff --git a/wp-includes/js/tinymce/plugins/wptextpattern/plugin.min.js b/wp-includes/js/tinymce/plugins/wptextpattern/plugin.min.js
index 1e3e7c867c..fdf5a65b71 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.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
+!function(a,b){a.PluginManager.add("wptextpattern",function(c){function d(a,b){g.push({regExp:a,callback:b})}var e=c.$,f=a.util.VK,g=[],h=!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(){h=!1}),c.on("keydown",function(a){!h||a.keyCode!==f.BACKSPACE&&27!==a.keyCode||(c.undoManager.undo(),a.preventDefault())}),c.on("keyup",function(d){var i,j,k,l,m;if(d.keyCode===f.SPACEBAR&&(i=c.selection.getRng(),j=i.startContainer,j&&3===j.nodeType&&(k=j.nodeValue,l=c.dom.getParent(j,"p")))){for(;(m=l.firstChild)&&3!==m.nodeType;)l=m;m.nodeValue||(m=m.nextSibling),m===j&&a.each(g,function(a){var d,f=k.replace(a.regExp,function(){return d=arguments,""});if(k!==f&&i.startOffset===k.length-f.length)return c.undoManager.add(),c.undoManager.transact(function(){var b;f?e(j).replaceWith(document.createTextNode(f)):(b=e(j.parentNode),e(j).remove(),b.html()||b.append("
")),c.selection.setCursorLocation(l),a.callback.apply(c,d)}),b(function(){h=!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 62afa32b6216409234a2ffc8714826129799ad66..e91ddfc955c5ff708efa55e6b18401f8b57db221 100644
GIT binary patch
delta 6115
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
delta 6098
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