Ticket #2218: 2218_2.patch

File 2218_2.patch, 2.7 KB (added by Martin Kou, 11 years ago)
  • _whatsnew.html

     
    101101                        failed if there was no selection.</li>
    102102                <li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2188">#2188</a>] PreserveSessionOnFileBrowser
    103103                        is now removed as it was made obsolete with 2.6.</li>
     104                <li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2218">#2218</a>] Improved Gecko based browser
     105                        detection to accept Epiphany/Gecko as well.</li>
    104106        </ul>
    105107        <h3>
    106108                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/'),
     31        IsGecko         : navigator.product == 'Gecko',
    3232        IsSafari        : s.Contains(' applewebkit/'),          // Read "IsWebKit"
    3333        IsOpera         : !!window.opera,
    3434        IsAIR           : s.Contains(' adobeair/'),
     
    3838// Completes the browser info with further Gecko information.
    3939(function( browserInfo )
    4040{
     41        browserInfo.IsGecko = browserInfo.IsGecko && !browserInfo.IsSafari && !browserInfo.IsOpera ;
    4142        browserInfo.IsGeckoLike = ( browserInfo.IsGecko || browserInfo.IsSafari || browserInfo.IsOpera ) ;
    4243
    4344        if ( browserInfo.IsGecko )
    4445        {
    45                 var geckoVersion = s.match( /gecko\/(\d+)/ )[1] ;
     46                var geckoMatch = s.match( /\((?:[0-9a-z_:.\- ]+;){4} (rv:[0-9a-z.]+)\) gecko/ ) || s.match( /gecko\/(\d+)/ ) ;
     47                var geckoVersion = geckoMatch[1] ;
     48                var geckoRevision = geckoVersion.Contains( ':' ) && geckoVersion ;
    4649
    4750                // Actually "10" refers to Gecko versions before Firefox 1.5, when
    4851                // Gecko 1.8 (build 20051111) has been released.
     
    5154                // than 20051111, so we must also check for the revision number not to
    5255                // be 1.7 (we are assuming that rv < 1.7 will not have build > 20051111).
    5356
    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) ;
     57                if ( geckoRevision )
     58                {
     59                        browserInfo.IsGecko10 = /1\.7/.test( geckoRevision ) ;
     60                        browserInfo.IsGecko19 = /1\.9/.test( geckoRevision ) ;
     61                }
     62                else
     63                        browserInfo.IsGecko10 = geckoVersion < 20051111 ;
    5864        }
    5965        else
    6066                browserInfo.IsGecko10 = false ;
© 2003 – 2019 CKSource – Frederico Knabben. All rights reserved. | Terms of use | Privacy policy