Ticket #2113: 2113_4.patch

File 2113_4.patch, 2.6 KB (added by martinkou, 23 months ago)
  • _whatsnew.html

     
    6161                        IE6 bug which causes floating dialogs to appear blank after opening it for the first time.</li> 
    6262                <li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2136">#2136</a>] Fixed JavaScript error in IE  
    6363                        when opening the bullet list properties dialog.</li> 
     64                <li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2113">#2113</a>] Fixed unneeded &lt;span 
     65                        class=&quot;Apple-style-span&quot;&gt; created after inserting special characters.</li> 
    6466        </ul> 
    6567        <h3> 
    6668                Version 2.6</h3> 
  • editor/_source/internals/fck_gecko.js

     
    361361        this.EditorDocument.execCommand( 'inserthtml', false, html ) ; 
    362362        this.Focus() ; 
    363363 
     364        // Save the caret position before calling document processor. 
     365        var range = new FCKDomRange( this.EditorWindow ) ; 
     366        range.MoveToSelection() ; 
     367        var bookmark = range.CreateBookmark() ; 
     368 
    364369        FCKDocumentProcessor.Process( FCK.EditorDocument ) ; 
    365370 
     371        // Restore caret position, ignore any errors in case the document 
     372        // processor removed the bookmark <span>s for some reason. 
     373        try 
     374        { 
     375                range.MoveToBookmark( bookmark ) ; 
     376                range.Select() ; 
     377        } 
     378        catch ( e ) {} 
     379 
    366380        // For some strange reason the SaveUndoStep() call doesn't activate the undo button at the first InsertHtml() call. 
    367381        this.Events.FireEvent( "OnSelectionChange" ) ; 
    368382} 
  • editor/_source/internals/fckdocumentprocessor.js

     
    247247                fakeImg.className = 'FCK__Flash' ; 
    248248                fakeImg.setAttribute( '_fckflash', 'true', 0 ); 
    249249        } ) ; 
     250 
     251// Buggy <span class="Apple-style-span"> tags added by Safari. 
     252if ( FCKBrowserInfo.IsSafari ) 
     253{ 
     254        FCKDocumentProcessor.AppendNew().ProcessDocument = function( doc ) 
     255        { 
     256                var spans = doc.getElementsByClassName ? 
     257                        doc.getElementsByClassName( 'Apple-style-span' ) : 
     258                        Array.prototype.filter.call(  
     259                                        doc.getElementsByTagName( 'span' ),  
     260                                        function( item ){ return item.className == 'Apple-style-span' ; }  
     261                                        ) ; 
     262                for ( var i = spans.length - 1 ; i >= 0 ; i-- ) 
     263                        FCKDomTools.RemoveNode( spans[i], true ) ; 
     264        } 
     265}