From 500bfe7a5415a040821a72540d06d279cadd5d05 Mon Sep 17 00:00:00 2001 From: Andrew Ozz Date: Thu, 29 May 2014 07:51:14 +0000 Subject: [PATCH] TinyMCE: fix problems with undo/redo after resizing an image several times. Fixes #28389. Built from https://develop.svn.wordpress.org/trunk@28614 git-svn-id: http://core.svn.wordpress.org/trunk@28438 1a063a9b-81f0-0310-95a4-ce76da25c4cd --- .../js/tinymce/plugins/wpeditimage/plugin.js | 50 +++++++++++------- .../tinymce/plugins/wpeditimage/plugin.min.js | 2 +- .../js/tinymce/skins/wordpress/wp-content.css | 10 ++-- wp-includes/js/tinymce/wp-tinymce.js.gz | Bin 125422 -> 125460 bytes 4 files changed, 36 insertions(+), 26 deletions(-) diff --git a/wp-includes/js/tinymce/plugins/wpeditimage/plugin.js b/wp-includes/js/tinymce/plugins/wpeditimage/plugin.js index 8894cd8f57..0b9d2a0140 100644 --- a/wp-includes/js/tinymce/plugins/wpeditimage/plugin.js +++ b/wp-includes/js/tinymce/plugins/wpeditimage/plugin.js @@ -435,10 +435,10 @@ tinymce.PluginManager.add( 'wpeditimage', function( editor ) { dom.setAttrib( node, 'data-wp-imgselect', 1 ); rectangle = dom.getRect( node ); - toolbarHtml = '
' + - '
'; + toolbarHtml = '' + + ''; - toolbar = dom.create( 'div', { + toolbar = dom.create( 'p', { 'id': 'wp-image-toolbar', 'data-mce-bogus': '1', 'contenteditable': false @@ -753,28 +753,31 @@ tinymce.PluginManager.add( 'wpeditimage', function( editor ) { }); editor.on( 'ObjectResized', function( event ) { - var parent, width, - node = event.target, - dom = editor.dom; + var node = event.target; if ( node.nodeName === 'IMG' ) { - node.className = node.className.replace( /\bsize-[^ ]+/, '' ); + editor.undoManager.transact( function() { + var parent, width, + dom = editor.dom; - if ( parent = dom.getParent( node, '.wp-caption' ) ) { - width = event.width || dom.getAttrib( node, 'width' ); + node.className = node.className.replace( /\bsize-[^ ]+/, '' ); - if ( width ) { - width = parseInt( width, 10 ); + if ( parent = dom.getParent( node, '.wp-caption' ) ) { + width = event.width || dom.getAttrib( node, 'width' ); - if ( ! editor.getParam( 'wpeditimage_html5_captions' ) ) { - width += 10; + if ( width ) { + width = parseInt( width, 10 ); + + if ( ! editor.getParam( 'wpeditimage_html5_captions' ) ) { + width += 10; + } + + dom.setStyle( parent, 'width', width + 'px' ); } - - dom.setStyle( parent, 'width', width + 'px' ); } - } - // refresh toolbar - addToolbar( node ); + // refresh toolbar + addToolbar( node ); + }); } }); @@ -921,7 +924,7 @@ tinymce.PluginManager.add( 'wpeditimage', function( editor ) { return; } - if ( node.nodeName === 'DIV' && dom.getParent( node, '#wp-image-toolbar' ) ) { + if ( node.nodeName === 'I' && dom.getParent( node, '#wp-image-toolbar' ) ) { image = dom.select( 'img[data-wp-imgselect]' )[0]; if ( image ) { @@ -940,6 +943,11 @@ tinymce.PluginManager.add( 'wpeditimage', function( editor ) { } }); + // Remove toolbar from undo levels + editor.on( 'BeforeAddUndo', function( event ) { + event.level.content = event.level.content.replace( /

]*data-mce-bogus[^>]+>[\s\S]*<\/p>/g, '' ); + }); + editor.on( 'cut', function() { removeToolbar(); }); @@ -953,7 +961,9 @@ tinymce.PluginManager.add( 'wpeditimage', function( editor ) { }; editor.on( 'BeforeSetContent', function( event ) { - event.content = editor.wpSetImgCaption( event.content ); + if ( event.format !== 'raw' ) { + event.content = editor.wpSetImgCaption( event.content ); + } }); editor.on( 'PostProcess', function( event ) { diff --git a/wp-includes/js/tinymce/plugins/wpeditimage/plugin.min.js b/wp-includes/js/tinymce/plugins/wpeditimage/plugin.min.js index 7445d5a889..836637565d 100644 --- a/wp-includes/js/tinymce/plugins/wpeditimage/plugin.min.js +++ b/wp-includes/js/tinymce/plugins/wpeditimage/plugin.min.js @@ -1 +1 @@ -tinymce.PluginManager.add("wpeditimage",function(a){function b(b){return b.replace(/(?:

)?\[(?:wp_)?caption([^\]]+)\]([\s\S]+?)\[\/(?:wp_)?caption\](?:<\/p>)?/g,function(b,c,d){var e,f,g,h,i,j,k=tinymce.trim;return e=c.match(/id=['"]([^'"]*)['"] ?/),e&&(c=c.replace(e[0],"")),f=c.match(/align=['"]([^'"]*)['"] ?/),f&&(c=c.replace(f[0],"")),g=c.match(/width=['"]([0-9]*)['"] ?/),g&&(c=c.replace(g[0],"")),d=k(d),i=d.match(/((?:]+>)?]+>(?:<\/a>)?)([\s\S]*)/i),i&&i[2]?(h=k(i[2]),i=k(i[1])):(h=k(c).replace(/caption=['"]/,"").replace(/['"]$/,""),i=d),e=e&&e[1]?e[1]:"",f=f&&f[1]?f[1]:"alignnone",!g&&i&&(g=i.match(/width=['"]([0-9]*)['"]/)),g&&g[1]&&(g=g[1]),g&&h?(j=parseInt(g,10),a.getParam("wpeditimage_html5_captions")||(j+=10),'

'+i+'
'+h+"
"):d})}function c(a){return a.replace(/
]*>([\s\S]+?)<\/div>/g,function(a,b){var c="";return-1===b.indexOf("]+>([\s\S]+?)<\/dd>/i),c&&c[1]?"

"+c[1]+"

":""):(c=b.replace(/
]+)>\s*
]+>([\s\S]+?)<\/dt>\s*
]+>([\s\S]*?)<\/dd>\s*<\/dl>/gi,function(a,b,c,d){var e,f,g;return g=c.match(/width="([0-9]*)"/),g=g&&g[1]?g[1]:"",g&&d?(e=b.match(/id="([^"]*)"/),e=e&&e[1]?e[1]:"",f=b.match(/class="([^"]*)"/),f=f&&f[1]?f[1]:"",f=f.match(/align[a-z]+/)||"alignnone",d=d.replace(/\r\n|\r/g,"\n").replace(/<[a-zA-Z0-9]+( [^<>]+)?>/g,function(a){return a.replace(/[\r\n\t]+/," ")}),d=d.replace(/\s*\n\s*/g,"
"),'[caption id="'+e+'" align="'+f+'" width="'+g+'"]'+c+" "+d+"[/caption]"):c}),0!==c.indexOf("[caption")&&(c=b.replace(/[\s\S]*?((?:
]+>)?]+>(?:<\/a>)?)(

[\s\S]*<\/p>)?[\s\S]*/gi,"

$1

$2")),c)})}function d(b){var c,d,e,f,g,h,i,j,k=a.dom,l=/^\d+$/;return e={attachment_id:!1,size:"custom",caption:"",align:"none",extraClasses:"",link:!1,linkUrl:"",linkClassName:"",linkTargetBlank:!1,linkRel:"",title:""},e.url=k.getAttrib(b,"src"),e.alt=k.getAttrib(b,"alt"),e.title=k.getAttrib(b,"title"),i=k.getAttrib(b,"width"),j=k.getAttrib(b,"height"),(!l.test(i)||parseInt(i,10)<1)&&(i=b.naturalWidth||b.width),(!l.test(j)||parseInt(j,10)<1)&&(j=b.naturalHeight||b.height),e.customWidth=e.width=i,e.customHeight=e.height=j,c=tinymce.explode(b.className," "),d=[],tinymce.each(c,function(a){/^wp-image/.test(a)?e.attachment_id=parseInt(a.replace("wp-image-",""),10):/^align/.test(a)?e.align=a.replace("align",""):/^size/.test(a)?e.size=a.replace("size-",""):d.push(a)}),e.extraClasses=d.join(" "),f=k.getParents(b,".wp-caption"),f.length&&(f=f[0],c=f.className.split(" "),tinymce.each(c,function(a){/^align/.test(a)&&(e.align=a.replace("align",""))}),g=k.select("dd.wp-caption-dd",f),g.length&&(g=g[0],e.caption=a.serializer.serialize(g).replace(/]*>/g,"$&\n").replace(/^

/,"").replace(/<\/p>$/,""))),b.parentNode&&"A"===b.parentNode.nodeName&&(h=b.parentNode,e.linkUrl=k.getAttrib(h,"href"),e.linkTargetBlank="_blank"===k.getAttrib(h,"target")?!0:!1,e.linkRel=k.getAttrib(h,"rel"),e.linkClassName=h.className),e}function e(a){return a&&!(!a.textContent&&!a.innerText)}function f(b,c){var d,f,g,h,j,k,l,m,n,o,p,q,r,s,t,u=a.dom;d=tinymce.explode(c.extraClasses," "),d||(d=[]),c.caption||d.push("align"+c.align),c.attachment_id&&(d.push("wp-image-"+c.attachment_id),c.size&&"custom"!==c.size&&d.push("size-"+c.size)),s=c.width,t=c.height,"custom"===c.size&&(s=c.customWidth,t=c.customHeight),q={src:c.url,width:s||null,height:t||null,alt:c.alt,title:c.title||null,"class":d.join(" ")||null},u.setAttribs(b,q),r={href:c.linkUrl,rel:c.linkRel||null,target:c.linkTargetBlank?"_blank":null,"class":c.linkClassName||null},b.parentNode&&"A"===b.parentNode.nodeName&&!e(b.parentNode)?c.linkUrl?u.setAttribs(b.parentNode,r):u.remove(b.parentNode,!0):c.linkUrl&&((l=u.getParent(b,"a"))&&u.insertAfter(b,l),l=u.create("a",r),b.parentNode.insertBefore(l,b),l.appendChild(b)),m=a.dom.getParent(b,".mceTemp"),g=b.parentNode&&"A"===b.parentNode.nodeName&&!e(b.parentNode)?b.parentNode:b,c.caption?(p=c.attachment_id?"attachment_"+c.attachment_id:null,f="wp-caption align"+(c.align||"none"),a.getParam("wpeditimage_html5_captions")||(s=parseInt(s,10),s+=10),m?(o=u.select("dl.wp-caption",m),o.length&&u.setAttribs(o,{id:p,"class":f,style:"width: "+s+"px"}),n=u.select(".wp-caption-dd",m),n.length&&u.setHTML(n[0],c.caption)):(p=p?'id="'+p+'" ':"",h="

'+u.getOuterHTML(g)+'
'+c.caption+"
",(j=u.getParent(g,"p"))?(k=u.create("div",{"class":"mceTemp"},h),j.parentNode.insertBefore(k,j),u.remove(g),u.isEmpty(j)&&u.remove(j)):u.setOuterHTML(g,'
'+h+"
"))):m&&(j=u.create("p"),m.parentNode.insertBefore(j,m),j.appendChild(g),u.remove(m)),wp.media.events&&wp.media.events.trigger("editor:image-update",{editor:a,metadata:c,image:b}),a.nodeChanged(),i(b)}function g(b){var c,e,g;return"undefined"!=typeof wp&&wp.media?(g=d(b),wp.media.events.trigger("editor:image-edit",{editor:a,metadata:g,image:b}),c=wp.media({frame:"image",state:"image-details",metadata:g}),wp.media.events.trigger("editor:frame-create",{frame:c}),e=function(d){a.focus(),a.undoManager.transact(function(){f(b,d)}),c.detach()},c.state("image-details").on("update",e),c.state("replace-image").on("replace",e),c.on("close",function(){a.focus(),c.detach()}),void c.open()):void a.execCommand("mceImage")}function h(b){var c;"DIV"===b.nodeName&&a.dom.hasClass(b,"mceTemp")?c=b:("IMG"===b.nodeName||"DT"===b.nodeName||"A"===b.nodeName)&&(c=a.dom.getParent(b,"div.mceTemp")),c?(a.selection.select(c.nextSibling?c.nextSibling:c.previousSibling?c.previousSibling:c.parentNode),a.selection.collapse(!0),a.nodeChanged(),a.dom.remove(c)):a.dom.remove(b),j()}function i(b){var c,d,e,f,g=a.dom;j(),b&&"IMG"===b.nodeName&&!k(b)&&(g.setAttrib(b,"data-wp-imgselect",1),c=g.getRect(b),d='
',e=g.create("div",{id:"wp-image-toolbar","data-mce-bogus":"1",contenteditable:!1},d),f=a.rtl?c.x+c.w-82:c.x,a.getBody().appendChild(e),g.setStyles(e,{top:c.y,left:f}),l=!0)}function j(){var b=a.dom.get("wp-image-toolbar");b&&a.dom.remove(b),a.dom.setAttrib(a.dom.select("img[data-wp-imgselect]"),"data-wp-imgselect",null),l=!1}function k(b){var c=a.dom;return c.hasClass(b,"mceItem")||c.getAttrib(b,"data-mce-placeholder")||c.getAttrib(b,"data-mce-object")?!0:!1}var l=!1;return a.on("init",function(){var b=a.dom,c=a.getParam("wpeditimage_html5_captions")?"html5-captions":"html4-captions";b.addClass(a.getBody(),c),a.on("wpLoadImageForm",function(b){if(!a.getParam("wpeditimage_disable_captions")){var c={type:"textbox",flex:1,name:"caption",minHeight:60,multiline:!0,scroll:!0,label:"Image caption"};b.data.splice(b.data.length-1,0,c)}}),a.on("wpNewImageRefresh",function(a){var c,d;(c=b.getParent(a.node,"dl.wp-caption"))&&(c.style.width||(d=parseInt(a.node.clientWidth,10)+10,d=d?d+"px":"50%",b.setStyle(c,"width",d)))}),a.on("wpImageFormSubmit",function(c){var d,e,f,g,h,i=c.imgData.data,j=c.imgData.node,k=c.imgData.caption,l="",m="",n="";return i.id="__wp-temp-img-id",c.imgData.cancel=!0,i.style||(i.style=null),i.src?(k&&(k=k.replace(/\r\n|\r/g,"\n").replace(/<\/?[a-zA-Z0-9]+( [^<>]+)?>/g,function(a){return a.replace(/[\r\n\t]+/," ")}),k=k.replace(/(]*>)\s*\n\s*/g,"$1").replace(/\s*\n\s*/g,"
")),j?(h=j.id||null,b.setAttribs(j,i),d=b.getParent(j,"dl.wp-caption"),k?d?(e=b.select("dd.wp-caption-dd",d)[0])&&(e.innerHTML=k):(j.className&&(l=j.className.match(/wp-image-([0-9]+)/),m=j.className.match(/align(left|right|center|none)/)),m?(m=m[0],j.className=j.className.replace(/align(left|right|center|none)/g,"")):m="alignnone",m=' class="wp-caption '+m+'"',l&&(l=' id="attachment_'+l[1]+'"'),n=i.width||j.clientWidth,n&&(n=parseInt(n,10),a.getParam("wpeditimage_html5_captions")||(n+=10),n=' style="width: '+n+'px"'),j.parentNode&&"A"===j.parentNode.nodeName?(g=b.getOuterHTML(j.parentNode),f=j.parentNode):(g=b.getOuterHTML(j),f=j),g="
'+g+'
'+k+"
",(e=b.getParent(j,"p"))?(d=b.create("div",{"class":"mceTemp"},g),b.insertAfter(d,e),a.selection.select(d),a.nodeChanged(),b.remove(f),b.isEmpty(e)&&b.remove(e)):a.selection.setContent('
'+g+"
")):d&&(g=b.getOuterHTML("A"===j.parentNode.nodeName?j.parentNode:j),e=b.create("p",{},g),b.insertAfter(e,d.parentNode),a.selection.select(e),a.nodeChanged(),b.remove(d.parentNode))):(g=b.createHTML("img",i),k?(f=a.selection.getNode(),i.width&&(n=parseInt(i.width,10),a.getParam("wpeditimage_html5_captions")||(n+=10),n=' style="width: '+n+'px"'),g='
'+g+'
'+k+"
",e="P"===f.nodeName?f:b.getParent(f,"p"),e&&"P"===e.nodeName?(d=b.create("div",{"class":"mceTemp"},g),e.parentNode.insertBefore(d,e),a.selection.select(d),a.nodeChanged(),b.isEmpty(e)&&b.remove(e)):a.selection.setContent('
'+g+"
")):a.selection.setContent(g)),j=b.get("__wp-temp-img-id"),b.setAttrib(j,"id",h),void(c.imgData.node=j)):void(j&&(b.remove((d=b.getParent(j,"div.mceTemp"))?d:"A"===j.parentNode.nodeName?j.parentNode:j),a.nodeChanged()))}),a.on("wpLoadImageData",function(c){var d,e=c.imgData.data,f=c.imgData.node;(d=b.getParent(f,"dl.wp-caption"))&&(d=b.select("dd.wp-caption-dd",d)[0],d&&(e.caption=a.serializer.serialize(d).replace(/]*>/g,"$&\n").replace(/^

/,"").replace(/<\/p>$/,"")))}),b.bind(a.getDoc(),"dragstart",function(c){var d=a.selection.getNode();"IMG"===d.nodeName&&b.getParent(d,".wp-caption")&&c.preventDefault(),j()}),tinymce.Env.ie&&tinymce.Env.ie>10&&(b.bind(a.getBody(),"mscontrolselect",function(c){"IMG"===c.target.nodeName&&b.getParent(c.target,".wp-caption")?a.getBody().focus():"DL"===c.target.nodeName&&b.hasClass(c.target,"wp-caption")&&c.target.focus()}),a.on("click",function(c){"IMG"===c.target.nodeName&&b.getAttrib(c.target,"data-wp-imgselect")&&b.getParent(c.target,"dl.wp-caption")&&a.getBody().focus()}))}),a.on("ObjectResized",function(b){var c,d,e=b.target,f=a.dom;"IMG"===e.nodeName&&(e.className=e.className.replace(/\bsize-[^ ]+/,""),(c=f.getParent(e,".wp-caption"))&&(d=b.width||f.getAttrib(e,"width"),d&&(d=parseInt(d,10),a.getParam("wpeditimage_html5_captions")||(d+=10),f.setStyle(c,"width",d+"px"))),i(e))}),a.on("BeforeExecCommand",function(b){var c,d,e,f,g=b.command,h=a.dom;if("mceInsertContent"===g){if((c=h.getParent(a.selection.getNode(),"div.mceTemp"))&&(d=h.create("p"),h.insertAfter(d,c),a.selection.setCursorLocation(d,0),a.nodeChanged(),tinymce.Env.ie>8))return setTimeout(function(){a.selection.setCursorLocation(d,0),a.selection.setContent(b.value)},500),!1}else if("JustifyLeft"===g||"JustifyRight"===g||"JustifyCenter"===g){if(c=a.selection.getNode(),f=g.substr(7).toLowerCase(),f="align"+f,j(),e=h.is(c,"dl.wp-caption")?c:h.getParent(c,"dl.wp-caption"))return h.hasClass(e,f)?(h.removeClass(e,f),h.addClass(e,"alignnone")):(e.className=e.className.replace(/align[^ ]+/g,""),h.addClass(e,f)),!1;"IMG"===c.nodeName&&(h.hasClass(c,f)?h.addClass(c,"alignnone"):h.removeClass(c,"alignnone"))}}),a.on("keydown",function(b){var c,d,e,f,g=a.selection,i=b.keyCode,k=a.dom;if(i===tinymce.util.VK.ENTER)c=g.getNode(),d=k.getParent(c,"div.mceTemp"),d&&(k.events.cancel(b),tinymce.each(k.select("dt, dd",d),function(a){k.isEmpty(a)&&k.remove(a)}),f=tinymce.Env.ie&&tinymce.Env.ie<11?"":'
',e=k.create("p",null,f),"DD"===c.nodeName?k.insertAfter(e,d):d.parentNode.insertBefore(e,d),a.nodeChanged(),g.setCursorLocation(e,0));else if(i===tinymce.util.VK.DELETE||i===tinymce.util.VK.BACKSPACE){if(c=g.getNode(),"DIV"===c.nodeName&&k.hasClass(c,"mceTemp")?d=c:("IMG"===c.nodeName||"DT"===c.nodeName||"A"===c.nodeName)&&(d=k.getParent(c,"div.mceTemp")),d)return k.events.cancel(b),h(c),!1;j()}if(l){if(b.ctrlKey||b.metaKey||b.altKey||48>i&&i>90||i>186)return;j()}}),a.on("mousedown",function(b){a.dom.getParent(b.target,"#wp-image-toolbar")?tinymce.Env.ie&&b.preventDefault():"IMG"!==b.target.nodeName&&j()}),a.on("mouseup",function(b){var c,d=b.target,e=a.dom;b.button&&b.button>1||("DIV"===d.nodeName&&e.getParent(d,"#wp-image-toolbar")?(c=e.select("img[data-wp-imgselect]")[0],c&&(a.selection.select(c),e.hasClass(d,"remove")?h(c):e.hasClass(d,"edit")&&g(c))):"IMG"!==d.nodeName||a.dom.getAttrib(d,"data-wp-imgselect")||k(d)?"IMG"!==d.nodeName&&j():i(d))}),a.on("cut",function(){j()}),a.wpSetImgCaption=function(a){return b(a)},a.wpGetImgCaption=function(a){return c(a)},a.on("BeforeSetContent",function(b){b.content=a.wpSetImgCaption(b.content)}),a.on("PostProcess",function(b){b.get&&(b.content=a.wpGetImgCaption(b.content),b.content=b.content.replace(/ data-wp-imgselect="1"/g,""))}),{_do_shcode:b,_get_shcode:c}}); \ No newline at end of file +tinymce.PluginManager.add("wpeditimage",function(a){function b(b){return b.replace(/(?:

)?\[(?:wp_)?caption([^\]]+)\]([\s\S]+?)\[\/(?:wp_)?caption\](?:<\/p>)?/g,function(b,c,d){var e,f,g,h,i,j,k=tinymce.trim;return e=c.match(/id=['"]([^'"]*)['"] ?/),e&&(c=c.replace(e[0],"")),f=c.match(/align=['"]([^'"]*)['"] ?/),f&&(c=c.replace(f[0],"")),g=c.match(/width=['"]([0-9]*)['"] ?/),g&&(c=c.replace(g[0],"")),d=k(d),i=d.match(/((?:]+>)?]+>(?:<\/a>)?)([\s\S]*)/i),i&&i[2]?(h=k(i[2]),i=k(i[1])):(h=k(c).replace(/caption=['"]/,"").replace(/['"]$/,""),i=d),e=e&&e[1]?e[1]:"",f=f&&f[1]?f[1]:"alignnone",!g&&i&&(g=i.match(/width=['"]([0-9]*)['"]/)),g&&g[1]&&(g=g[1]),g&&h?(j=parseInt(g,10),a.getParam("wpeditimage_html5_captions")||(j+=10),'

"):d})}function c(a){return a.replace(/
]*>([\s\S]+?)<\/div>/g,function(a,b){var c="";return-1===b.indexOf("]+>([\s\S]+?)<\/dd>/i),c&&c[1]?"

"+c[1]+"

":""):(c=b.replace(/
]+)>\s*
]+>([\s\S]+?)<\/dt>\s*
]+>([\s\S]*?)<\/dd>\s*<\/dl>/gi,function(a,b,c,d){var e,f,g;return g=c.match(/width="([0-9]*)"/),g=g&&g[1]?g[1]:"",g&&d?(e=b.match(/id="([^"]*)"/),e=e&&e[1]?e[1]:"",f=b.match(/class="([^"]*)"/),f=f&&f[1]?f[1]:"",f=f.match(/align[a-z]+/)||"alignnone",d=d.replace(/\r\n|\r/g,"\n").replace(/<[a-zA-Z0-9]+( [^<>]+)?>/g,function(a){return a.replace(/[\r\n\t]+/," ")}),d=d.replace(/\s*\n\s*/g,"
"),'[caption id="'+e+'" align="'+f+'" width="'+g+'"]'+c+" "+d+"[/caption]"):c}),0!==c.indexOf("[caption")&&(c=b.replace(/[\s\S]*?((?:
]+>)?]+>(?:<\/a>)?)(

[\s\S]*<\/p>)?[\s\S]*/gi,"

$1

$2")),c)})}function d(b){var c,d,e,f,g,h,i,j,k=a.dom,l=/^\d+$/;return e={attachment_id:!1,size:"custom",caption:"",align:"none",extraClasses:"",link:!1,linkUrl:"",linkClassName:"",linkTargetBlank:!1,linkRel:"",title:""},e.url=k.getAttrib(b,"src"),e.alt=k.getAttrib(b,"alt"),e.title=k.getAttrib(b,"title"),i=k.getAttrib(b,"width"),j=k.getAttrib(b,"height"),(!l.test(i)||parseInt(i,10)<1)&&(i=b.naturalWidth||b.width),(!l.test(j)||parseInt(j,10)<1)&&(j=b.naturalHeight||b.height),e.customWidth=e.width=i,e.customHeight=e.height=j,c=tinymce.explode(b.className," "),d=[],tinymce.each(c,function(a){/^wp-image/.test(a)?e.attachment_id=parseInt(a.replace("wp-image-",""),10):/^align/.test(a)?e.align=a.replace("align",""):/^size/.test(a)?e.size=a.replace("size-",""):d.push(a)}),e.extraClasses=d.join(" "),f=k.getParents(b,".wp-caption"),f.length&&(f=f[0],c=f.className.split(" "),tinymce.each(c,function(a){/^align/.test(a)&&(e.align=a.replace("align",""))}),g=k.select("dd.wp-caption-dd",f),g.length&&(g=g[0],e.caption=a.serializer.serialize(g).replace(/]*>/g,"$&\n").replace(/^

/,"").replace(/<\/p>$/,""))),b.parentNode&&"A"===b.parentNode.nodeName&&(h=b.parentNode,e.linkUrl=k.getAttrib(h,"href"),e.linkTargetBlank="_blank"===k.getAttrib(h,"target")?!0:!1,e.linkRel=k.getAttrib(h,"rel"),e.linkClassName=h.className),e}function e(a){return a&&!(!a.textContent&&!a.innerText)}function f(b,c){var d,f,g,h,j,k,l,m,n,o,p,q,r,s,t,u=a.dom;d=tinymce.explode(c.extraClasses," "),d||(d=[]),c.caption||d.push("align"+c.align),c.attachment_id&&(d.push("wp-image-"+c.attachment_id),c.size&&"custom"!==c.size&&d.push("size-"+c.size)),s=c.width,t=c.height,"custom"===c.size&&(s=c.customWidth,t=c.customHeight),q={src:c.url,width:s||null,height:t||null,alt:c.alt,title:c.title||null,"class":d.join(" ")||null},u.setAttribs(b,q),r={href:c.linkUrl,rel:c.linkRel||null,target:c.linkTargetBlank?"_blank":null,"class":c.linkClassName||null},b.parentNode&&"A"===b.parentNode.nodeName&&!e(b.parentNode)?c.linkUrl?u.setAttribs(b.parentNode,r):u.remove(b.parentNode,!0):c.linkUrl&&((l=u.getParent(b,"a"))&&u.insertAfter(b,l),l=u.create("a",r),b.parentNode.insertBefore(l,b),l.appendChild(b)),m=a.dom.getParent(b,".mceTemp"),g=b.parentNode&&"A"===b.parentNode.nodeName&&!e(b.parentNode)?b.parentNode:b,c.caption?(p=c.attachment_id?"attachment_"+c.attachment_id:null,f="wp-caption align"+(c.align||"none"),a.getParam("wpeditimage_html5_captions")||(s=parseInt(s,10),s+=10),m?(o=u.select("dl.wp-caption",m),o.length&&u.setAttribs(o,{id:p,"class":f,style:"width: "+s+"px"}),n=u.select(".wp-caption-dd",m),n.length&&u.setHTML(n[0],c.caption)):(p=p?'id="'+p+'" ':"",h="

'+u.getOuterHTML(g)+'
'+c.caption+"
",(j=u.getParent(g,"p"))?(k=u.create("div",{"class":"mceTemp"},h),j.parentNode.insertBefore(k,j),u.remove(g),u.isEmpty(j)&&u.remove(j)):u.setOuterHTML(g,'
'+h+"
"))):m&&(j=u.create("p"),m.parentNode.insertBefore(j,m),j.appendChild(g),u.remove(m)),wp.media.events&&wp.media.events.trigger("editor:image-update",{editor:a,metadata:c,image:b}),a.nodeChanged(),i(b)}function g(b){var c,e,g;return"undefined"!=typeof wp&&wp.media?(g=d(b),wp.media.events.trigger("editor:image-edit",{editor:a,metadata:g,image:b}),c=wp.media({frame:"image",state:"image-details",metadata:g}),wp.media.events.trigger("editor:frame-create",{frame:c}),e=function(d){a.focus(),a.undoManager.transact(function(){f(b,d)}),c.detach()},c.state("image-details").on("update",e),c.state("replace-image").on("replace",e),c.on("close",function(){a.focus(),c.detach()}),void c.open()):void a.execCommand("mceImage")}function h(b){var c;"DIV"===b.nodeName&&a.dom.hasClass(b,"mceTemp")?c=b:("IMG"===b.nodeName||"DT"===b.nodeName||"A"===b.nodeName)&&(c=a.dom.getParent(b,"div.mceTemp")),c?(a.selection.select(c.nextSibling?c.nextSibling:c.previousSibling?c.previousSibling:c.parentNode),a.selection.collapse(!0),a.nodeChanged(),a.dom.remove(c)):a.dom.remove(b),j()}function i(b){var c,d,e,f,g=a.dom;j(),b&&"IMG"===b.nodeName&&!k(b)&&(g.setAttrib(b,"data-wp-imgselect",1),c=g.getRect(b),d='',e=g.create("p",{id:"wp-image-toolbar","data-mce-bogus":"1",contenteditable:!1},d),f=a.rtl?c.x+c.w-82:c.x,a.getBody().appendChild(e),g.setStyles(e,{top:c.y,left:f}),l=!0)}function j(){var b=a.dom.get("wp-image-toolbar");b&&a.dom.remove(b),a.dom.setAttrib(a.dom.select("img[data-wp-imgselect]"),"data-wp-imgselect",null),l=!1}function k(b){var c=a.dom;return c.hasClass(b,"mceItem")||c.getAttrib(b,"data-mce-placeholder")||c.getAttrib(b,"data-mce-object")?!0:!1}var l=!1;return a.on("init",function(){var b=a.dom,c=a.getParam("wpeditimage_html5_captions")?"html5-captions":"html4-captions";b.addClass(a.getBody(),c),a.on("wpLoadImageForm",function(b){if(!a.getParam("wpeditimage_disable_captions")){var c={type:"textbox",flex:1,name:"caption",minHeight:60,multiline:!0,scroll:!0,label:"Image caption"};b.data.splice(b.data.length-1,0,c)}}),a.on("wpNewImageRefresh",function(a){var c,d;(c=b.getParent(a.node,"dl.wp-caption"))&&(c.style.width||(d=parseInt(a.node.clientWidth,10)+10,d=d?d+"px":"50%",b.setStyle(c,"width",d)))}),a.on("wpImageFormSubmit",function(c){var d,e,f,g,h,i=c.imgData.data,j=c.imgData.node,k=c.imgData.caption,l="",m="",n="";return i.id="__wp-temp-img-id",c.imgData.cancel=!0,i.style||(i.style=null),i.src?(k&&(k=k.replace(/\r\n|\r/g,"\n").replace(/<\/?[a-zA-Z0-9]+( [^<>]+)?>/g,function(a){return a.replace(/[\r\n\t]+/," ")}),k=k.replace(/(]*>)\s*\n\s*/g,"$1").replace(/\s*\n\s*/g,"
")),j?(h=j.id||null,b.setAttribs(j,i),d=b.getParent(j,"dl.wp-caption"),k?d?(e=b.select("dd.wp-caption-dd",d)[0])&&(e.innerHTML=k):(j.className&&(l=j.className.match(/wp-image-([0-9]+)/),m=j.className.match(/align(left|right|center|none)/)),m?(m=m[0],j.className=j.className.replace(/align(left|right|center|none)/g,"")):m="alignnone",m=' class="wp-caption '+m+'"',l&&(l=' id="attachment_'+l[1]+'"'),n=i.width||j.clientWidth,n&&(n=parseInt(n,10),a.getParam("wpeditimage_html5_captions")||(n+=10),n=' style="width: '+n+'px"'),j.parentNode&&"A"===j.parentNode.nodeName?(g=b.getOuterHTML(j.parentNode),f=j.parentNode):(g=b.getOuterHTML(j),f=j),g="
'+g+'
'+k+"
",(e=b.getParent(j,"p"))?(d=b.create("div",{"class":"mceTemp"},g),b.insertAfter(d,e),a.selection.select(d),a.nodeChanged(),b.remove(f),b.isEmpty(e)&&b.remove(e)):a.selection.setContent('
'+g+"
")):d&&(g=b.getOuterHTML("A"===j.parentNode.nodeName?j.parentNode:j),e=b.create("p",{},g),b.insertAfter(e,d.parentNode),a.selection.select(e),a.nodeChanged(),b.remove(d.parentNode))):(g=b.createHTML("img",i),k?(f=a.selection.getNode(),i.width&&(n=parseInt(i.width,10),a.getParam("wpeditimage_html5_captions")||(n+=10),n=' style="width: '+n+'px"'),g='
'+g+'
'+k+"
",e="P"===f.nodeName?f:b.getParent(f,"p"),e&&"P"===e.nodeName?(d=b.create("div",{"class":"mceTemp"},g),e.parentNode.insertBefore(d,e),a.selection.select(d),a.nodeChanged(),b.isEmpty(e)&&b.remove(e)):a.selection.setContent('
'+g+"
")):a.selection.setContent(g)),j=b.get("__wp-temp-img-id"),b.setAttrib(j,"id",h),void(c.imgData.node=j)):void(j&&(b.remove((d=b.getParent(j,"div.mceTemp"))?d:"A"===j.parentNode.nodeName?j.parentNode:j),a.nodeChanged()))}),a.on("wpLoadImageData",function(c){var d,e=c.imgData.data,f=c.imgData.node;(d=b.getParent(f,"dl.wp-caption"))&&(d=b.select("dd.wp-caption-dd",d)[0],d&&(e.caption=a.serializer.serialize(d).replace(/]*>/g,"$&\n").replace(/^

/,"").replace(/<\/p>$/,"")))}),b.bind(a.getDoc(),"dragstart",function(c){var d=a.selection.getNode();"IMG"===d.nodeName&&b.getParent(d,".wp-caption")&&c.preventDefault(),j()}),tinymce.Env.ie&&tinymce.Env.ie>10&&(b.bind(a.getBody(),"mscontrolselect",function(c){"IMG"===c.target.nodeName&&b.getParent(c.target,".wp-caption")?a.getBody().focus():"DL"===c.target.nodeName&&b.hasClass(c.target,"wp-caption")&&c.target.focus()}),a.on("click",function(c){"IMG"===c.target.nodeName&&b.getAttrib(c.target,"data-wp-imgselect")&&b.getParent(c.target,"dl.wp-caption")&&a.getBody().focus()}))}),a.on("ObjectResized",function(b){var c=b.target;"IMG"===c.nodeName&&a.undoManager.transact(function(){var d,e,f=a.dom;c.className=c.className.replace(/\bsize-[^ ]+/,""),(d=f.getParent(c,".wp-caption"))&&(e=b.width||f.getAttrib(c,"width"),e&&(e=parseInt(e,10),a.getParam("wpeditimage_html5_captions")||(e+=10),f.setStyle(d,"width",e+"px"))),i(c)})}),a.on("BeforeExecCommand",function(b){var c,d,e,f,g=b.command,h=a.dom;if("mceInsertContent"===g){if((c=h.getParent(a.selection.getNode(),"div.mceTemp"))&&(d=h.create("p"),h.insertAfter(d,c),a.selection.setCursorLocation(d,0),a.nodeChanged(),tinymce.Env.ie>8))return setTimeout(function(){a.selection.setCursorLocation(d,0),a.selection.setContent(b.value)},500),!1}else if("JustifyLeft"===g||"JustifyRight"===g||"JustifyCenter"===g){if(c=a.selection.getNode(),f=g.substr(7).toLowerCase(),f="align"+f,j(),e=h.is(c,"dl.wp-caption")?c:h.getParent(c,"dl.wp-caption"))return h.hasClass(e,f)?(h.removeClass(e,f),h.addClass(e,"alignnone")):(e.className=e.className.replace(/align[^ ]+/g,""),h.addClass(e,f)),!1;"IMG"===c.nodeName&&(h.hasClass(c,f)?h.addClass(c,"alignnone"):h.removeClass(c,"alignnone"))}}),a.on("keydown",function(b){var c,d,e,f,g=a.selection,i=b.keyCode,k=a.dom;if(i===tinymce.util.VK.ENTER)c=g.getNode(),d=k.getParent(c,"div.mceTemp"),d&&(k.events.cancel(b),tinymce.each(k.select("dt, dd",d),function(a){k.isEmpty(a)&&k.remove(a)}),f=tinymce.Env.ie&&tinymce.Env.ie<11?"":'
',e=k.create("p",null,f),"DD"===c.nodeName?k.insertAfter(e,d):d.parentNode.insertBefore(e,d),a.nodeChanged(),g.setCursorLocation(e,0));else if(i===tinymce.util.VK.DELETE||i===tinymce.util.VK.BACKSPACE){if(c=g.getNode(),"DIV"===c.nodeName&&k.hasClass(c,"mceTemp")?d=c:("IMG"===c.nodeName||"DT"===c.nodeName||"A"===c.nodeName)&&(d=k.getParent(c,"div.mceTemp")),d)return k.events.cancel(b),h(c),!1;j()}if(l){if(b.ctrlKey||b.metaKey||b.altKey||48>i&&i>90||i>186)return;j()}}),a.on("mousedown",function(b){a.dom.getParent(b.target,"#wp-image-toolbar")?tinymce.Env.ie&&b.preventDefault():"IMG"!==b.target.nodeName&&j()}),a.on("mouseup",function(b){var c,d=b.target,e=a.dom;b.button&&b.button>1||("I"===d.nodeName&&e.getParent(d,"#wp-image-toolbar")?(c=e.select("img[data-wp-imgselect]")[0],c&&(a.selection.select(c),e.hasClass(d,"remove")?h(c):e.hasClass(d,"edit")&&g(c))):"IMG"!==d.nodeName||a.dom.getAttrib(d,"data-wp-imgselect")||k(d)?"IMG"!==d.nodeName&&j():i(d))}),a.on("BeforeAddUndo",function(a){a.level.content=a.level.content.replace(/

]*data-mce-bogus[^>]+>[\s\S]*<\/p>/g,"")}),a.on("cut",function(){j()}),a.wpSetImgCaption=function(a){return b(a)},a.wpGetImgCaption=function(a){return c(a)},a.on("BeforeSetContent",function(b){"raw"!==b.format&&(b.content=a.wpSetImgCaption(b.content))}),a.on("PostProcess",function(b){b.get&&(b.content=a.wpGetImgCaption(b.content),b.content=b.content.replace(/ data-wp-imgselect="1"/g,""))}),{_do_shcode:b,_get_shcode:c}}); \ No newline at end of file diff --git a/wp-includes/js/tinymce/skins/wordpress/wp-content.css b/wp-includes/js/tinymce/skins/wordpress/wp-content.css index 8fceb8ef63..972c07f330 100644 --- a/wp-includes/js/tinymce/skins/wordpress/wp-content.css +++ b/wp-includes/js/tinymce/skins/wordpress/wp-content.css @@ -261,7 +261,7 @@ audio { } .wpview-wrap .toolbar div, -#wp-image-toolbar div { +#wp-image-toolbar i { margin-top: 7px; margin-left: 7px; padding: 2px; @@ -277,8 +277,8 @@ audio { .ie8 .wpview-wrap .toolbar div, .ie7 .wpview-wrap .toolbar div, -.ie8 #wp-image-toolbar div, -.ie7 #wp-image-toolbar div { +.ie8 #wp-image-toolbar i, +.ie7 #wp-image-toolbar i { display: inline; padding: 0; } @@ -319,7 +319,7 @@ audio { .wpview-wrap .toolbar div:hover, -#wp-image-toolbar div:hover { +#wp-image-toolbar i:hover { box-shadow: 0 1px 3px rgba(0,0,0,0.8); background-color: #000; color: #2ea2cc; @@ -471,7 +471,7 @@ img.wp-oembed { } .rtl .wpview-wrap .toolbar div, -.rtl #wp-image-toolbar div { +.rtl #wp-image-toolbar i { margin-left: auto; margin-right: 7px; } diff --git a/wp-includes/js/tinymce/wp-tinymce.js.gz b/wp-includes/js/tinymce/wp-tinymce.js.gz index 0c8384b1ac3735b45a99c4098b8dc6928351a898..defde138131f8f36918bd81dfedf2a49bdee38d1 100644 GIT binary patch delta 20296 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 delta 20243 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