Ticket #2218: 2218_4.patch

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

     
    120120                        when FCKeditor is installed to a different domain.</li>  
    121121                <li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2066">#2066</a>] Added a workaround for a Mac 
    122122                        Safari 3.1 browser bug which caused the Fit Window button to give a blank screen.</li>  
     123                <li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2218">#2218</a>] Improved Gecko based browser 
     124                        detection to accept Epiphany/Gecko as well.</li> 
    123125        </ul> 
    124126        <h3> 
    125127                Version 2.6</h3> 
  • editor/_source/internals/fckbrowserinfo.js

     
    2828        IsIE            : /*@cc_on!@*/false, 
    2929        IsIE7           : /*@cc_on!@*/false && ( parseInt( s.match( /msie (\d+)/ )[1], 10 ) >= 7 ), 
    3030        IsIE6           : /*@cc_on!@*/false && ( parseInt( s.match( /msie (\d+)/ )[1], 10 ) >= 6 ), 
    31         IsGecko         : s.Contains('gecko/'), 
    3231        IsSafari        : s.Contains(' applewebkit/'),          // Read "IsWebKit" 
    3332        IsOpera         : !!window.opera, 
    3433        IsAIR           : s.Contains(' adobeair/'), 
     
    3837// Completes the browser info with further Gecko information. 
    3938(function( browserInfo ) 
    4039{ 
     40        browserInfo.IsGecko = ( navigator.product == 'Gecko' ) && !browserInfo.IsSafari && !browserInfo.IsOpera ; 
    4141        browserInfo.IsGeckoLike = ( browserInfo.IsGecko || browserInfo.IsSafari || browserInfo.IsOpera ) ; 
    4242 
    4343        if ( browserInfo.IsGecko ) 
    4444        { 
    45                 var geckoVersion = s.match( /gecko\/(\d+)/ )[1] ; 
     45                var geckoMatch = s.match( /rv:(\d+\.\d+)/ ) ; 
     46                var geckoVersion = geckoMatch && parseFloat( geckoMatch[1] ) ; 
    4647 
    4748                // Actually "10" refers to Gecko versions before Firefox 1.5, when 
    4849                // Gecko 1.8 (build 20051111) has been released. 
     
    5152                // than 20051111, so we must also check for the revision number not to 
    5253                // be 1.7 (we are assuming that rv < 1.7 will not have build > 20051111). 
    5354 
    54                 // TODO: Future versions may consider the rv number only, but it is 
    55                 // still to check that all Gecko based browser present the rv number. 
    56                 browserInfo.IsGecko10 = ( ( geckoVersion < 20051111 ) || ( /rv:1\.7/.test(s) ) ) ; 
    57                 browserInfo.IsGecko19 = /rv:1\.9/.test(s) ; 
     55                if ( geckoVersion ) 
     56                { 
     57                        browserInfo.IsGecko10 = ( geckoVersion < 1.8 ) ; 
     58                        browserInfo.IsGecko19 = ( geckoVersion > 1.8 ) ; 
     59                } 
    5860        } 
    59         else 
    60                 browserInfo.IsGecko10 = false ; 
    6161})(FCKBrowserInfo) ;