Index: _whatsnew.html
===================================================================
--- _whatsnew.html (revision 2052)
+++ _whatsnew.html (working copy)
@@ -120,6 +120,8 @@
when FCKeditor is installed to a different domain.
[#2066] Added a workaround for a Mac
Safari 3.1 browser bug which caused the Fit Window button to give a blank screen.
+ [#2218] Improved Gecko based browser
+ detection to accept Epiphany/Gecko as well.
Version 2.6
Index: editor/_source/internals/fckbrowserinfo.js
===================================================================
--- editor/_source/internals/fckbrowserinfo.js (revision 2050)
+++ editor/_source/internals/fckbrowserinfo.js (working copy)
@@ -28,7 +28,6 @@
IsIE : /*@cc_on!@*/false,
IsIE7 : /*@cc_on!@*/false && ( parseInt( s.match( /msie (\d+)/ )[1], 10 ) >= 7 ),
IsIE6 : /*@cc_on!@*/false && ( parseInt( s.match( /msie (\d+)/ )[1], 10 ) >= 6 ),
- IsGecko : s.Contains('gecko/'),
IsSafari : s.Contains(' applewebkit/'), // Read "IsWebKit"
IsOpera : !!window.opera,
IsAIR : s.Contains(' adobeair/'),
@@ -38,11 +37,13 @@
// Completes the browser info with further Gecko information.
(function( browserInfo )
{
+ browserInfo.IsGecko = ( navigator.product == 'Gecko' ) && !browserInfo.IsSafari && !browserInfo.IsOpera ;
browserInfo.IsGeckoLike = ( browserInfo.IsGecko || browserInfo.IsSafari || browserInfo.IsOpera ) ;
if ( browserInfo.IsGecko )
{
- var geckoVersion = s.match( /gecko\/(\d+)/ )[1] ;
+ var geckoMatch = s.match( /rv:(\d+\.\d+)/ ) ;
+ var geckoVersion = geckoMatch && parseFloat( geckoMatch[1] ) ;
// Actually "10" refers to Gecko versions before Firefox 1.5, when
// Gecko 1.8 (build 20051111) has been released.
@@ -51,11 +52,10 @@
// than 20051111, so we must also check for the revision number not to
// be 1.7 (we are assuming that rv < 1.7 will not have build > 20051111).
- // TODO: Future versions may consider the rv number only, but it is
- // still to check that all Gecko based browser present the rv number.
- browserInfo.IsGecko10 = ( ( geckoVersion < 20051111 ) || ( /rv:1\.7/.test(s) ) ) ;
- browserInfo.IsGecko19 = /rv:1\.9/.test(s) ;
+ if ( geckoVersion )
+ {
+ browserInfo.IsGecko10 = ( geckoVersion < 1.8 ) ;
+ browserInfo.IsGecko19 = ( geckoVersion > 1.8 ) ;
+ }
}
- else
- browserInfo.IsGecko10 = false ;
})(FCKBrowserInfo) ;