WordPress.org

Make WordPress Core

Ticket #19389: 19389.patch

File 19389.patch, 2.9 KB (added by azaozz, 22 months ago)
  • wp-admin/js/editor.dev.js

     
    209209                if ( preserve_br ) 
    210210                        pee = pee.replace(/<wp-temp-br([^>]*)>/g, '<br$1>'); 
    211211 
     212                if ( typeof(tinymce) != 'undefined' && tinymce.isIE ) 
     213                        pee = pee.replace(/<p>&nbsp;<\/p>/gi, '<p></p>'); 
     214 
    212215                return pee; 
    213216        }, 
    214217 
  • wp-admin/js/media-upload.dev.js

     
    2626 
    2727                if ( h.indexOf('[caption') === 0 ) { 
    2828                        if ( ed.wpSetImgCaption ) 
    29                                 h = ed.wpSetImgCaption(h); 
     29                                h = ed.wpSetImgCaption(h, true); 
    3030                } else if ( h.indexOf('[gallery') === 0 ) { 
    3131                        if ( ed.plugins.wpgallery ) 
    3232                                h = ed.plugins.wpgallery._do_gallery(h); 
     
    7979                        var ed; 
    8080 
    8181                        if ( typeof(tinymce) != 'undefined' && tinymce.isIE && ( ed = tinymce.get(wpActiveEditor) ) && !ed.isHidden() ) { 
    82                                 ed.focus(); 
    83                                 ed.windowManager.insertimagebookmark = ed.selection.getBookmark(); 
     82                                ed.windowManager.insertimagebookmark = ed.selection.getBookmark(2); 
    8483                        } 
    8584                }); 
    8685        }); 
  • wp-includes/js/tinymce/plugins/wpeditimage/editor_plugin_src.js

     
    124124                        }); 
    125125 
    126126                        ed.onPostProcess.add(function(ed, o) { 
    127                                 if (o.get) 
     127                                if ( o.get ) 
    128128                                        o.content = ed.wpGetImgCaption(o.content); 
    129129                        }); 
    130130 
    131                         ed.wpSetImgCaption = function(content) { 
    132                                 return t._do_shcode(content); 
     131                        ed.wpSetImgCaption = function(str, insert) { 
     132                                return t._do_shcode(str, insert); 
    133133                        }; 
    134134 
    135                         ed.wpGetImgCaption = function(content) { 
    136                                 return t._get_shcode(content); 
     135                        ed.wpGetImgCaption = function(str) { 
     136                                return t._get_shcode(str); 
    137137                        }; 
    138138                }, 
    139139 
    140                 _do_shcode : function(content) { 
    141                         return content.replace(/(?:<p>)?\[(?:wp_)?caption([^\]]+)\]([\s\S]+?)\[\/(?:wp_)?caption\](?:<\/p>)?/g, function(a,b,c){ 
     140                _do_shcode : function(str, insert) { 
     141                        var ed = this.editor, n; 
     142 
     143                        if ( insert ) { // new image with caption inserted 
     144                                n = ed.selection.getNode(); 
     145 
     146                                if ( n && n.nodeName === 'P' && /^(?:&nbsp;|<br[^>]*>|\s|\uFEFF|\u200B)*$/.test(n.innerHTML) ) { 
     147                                        // add a paragraph after the caption, the caret would go there 
     148                                        if ( tinymce.isIE ) { 
     149                                                str += '<p>' 
     150                                        } else { 
     151                                                ed.selection.select(n); 
     152                                                str += '<p></p>' 
     153                                        } 
     154                                } 
     155                        } 
     156 
     157                        return str.replace(/(?:<p>)?\[(?:wp_)?caption([^\]]+)\]([\s\S]+?)\[\/(?:wp_)?caption\](?:<\/p>)?/g, function(a,b,c){ 
    142158                                var id, cls, w, cap, div_cls, img, trim = tinymce.trim; 
    143159 
    144160                                id = b.match(/id=['"]([^'"]*)['"] ?/);