Opened 17 years ago
Closed 17 years ago
#1060 closed Bug (fixed)
Not compatible with Firefox 3
Reported by: | Dr. Sharad Kelkar | Owned by: | |
---|---|---|---|
Priority: | Normal | Milestone: | FCKeditor 2.5 Beta |
Component: | General | Version: | SVN (FCKeditor) - Retired |
Keywords: | Confirmed Firefox | Cc: |
Description
I have been using FCK Editor in my web pages for quite some time. It works great in IE6/IE7, FireFox Versions 1/ 1.5 / 2
But to my surprise it just failed to appear in upcoming Fire Fox 3.
I have tested with Fire Fox Alpha 3 Build 7 ( Gran Paradiso )
I have downloaded Firefor 3 from :
http://developer.mozilla.org/devnews/index.php/2007/08/03/gran-paradiso-alpha-7-available-for-download/
I am worried : It is just a temporary bug or Firefox is going to drop support for Design Mode functionality all to gather.
Thanks
Sharad
Change History (10)
comment:1 Changed 17 years ago by
comment:2 Changed 17 years ago by
Component: | Project : FCKpackager → General |
---|---|
Milestone: | → FCKeditor 2.5 |
Version: | FCKeditor 2.4.3 → SVN |
By the way, I don't think it's a bug within the packager. I've tested the SVN version of FCKeditor (which isn't packaged) and it isn't working in Gran Paradiso.
Also, I think it would only make sense that we make FCKeditor 2.5 work in Firefox 3. Since FF3 is almost at the end of its alpha stage already.
comment:3 Changed 17 years ago by
I looked at this problem with the previous alpha and then it worked for me to use the same method to inject the FCKeditorAPI in the parent window as it's done for Safari: current code:
else if ( FCKBrowserInfo.IsSafari ) { // oParentWindow.eval in Safari executes in the calling window // environment, instead of the parent one. The following should make it work. var oParentDocument = oParentWindow.document ; var eScript = oParentDocument.createElement('script') ; eScript.appendChild( oParentDocument.createTextNode( sScript ) ) ; oParentDocument.documentElement.appendChild( eScript ) ; } else oParentWindow.eval( sScript ) ;
pseudoSolution:
else if ( FCKBrowserInfo.IsSafari || FCKBrowserInfo.IsGecko19) { // oParentWindow.eval in Safari executes in the calling window // environment, instead of the parent one. The following should make it work. var oParentDocument = oParentWindow.document ; var eScript = oParentDocument.createElement('script') ; eScript.appendChild( oParentDocument.createTextNode( sScript ) ) ; oParentDocument.documentElement.appendChild( eScript ) ; } else oParentWindow.eval( sScript ) ;
(of course now FCKBrowserInfo.IsGecko19 doesn't exist, it's just an idea about how to solve it if they don't change the behavior)
comment:4 Changed 17 years ago by
Keywords: | Confirmed Firefox added; gran paradiso firefox 3 removed |
---|
It seams that Firefox 3 will drop support for object.prototype.eval, and the work to remove it has also changed the scope in which evaluated expressions get executed. It seams that now the calling window will be the scope, instead of the window object (in our case oParentWindow). That's the exact way Safari works too.
I've opened a ticket at Mozilla's Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=391923
I'm not sure about their intentions in this field, but let's wait a little to see their feedback on this. In the negative case, we could think about dropping the last "else" block (oParentWindow.eval), using the Safari implementation as the default for all browsers, except IE and FF1.0... if it works well for them.
comment:5 Changed 17 years ago by
Summary: | FCK editor just fails totally in FireFox 3 Alpha Build 7 ( Gran Paradiso ) → Not compatible with Firefox 3 |
---|
comment:6 Changed 17 years ago by
[659] has enabled FCKeditor to run in Gran Paradiso, using Alfonso's suggestion.
However, FCKeditor dialog boxes are still not working in Gran Paradiso.
comment:7 Changed 17 years ago by
The following code in FCKDialog.Show(), fckdialog_gecko.js, is found to be not working under Gran Paradiso:
- oWindow.moveTo() and oWindow.resizeTo() - calling them would cause JavaScript exceptions;
- oWindow.location.href = pageUrl - this line does absolutely nothing in Gran Paradiso, it seems to be silently ignored;
- oWindow.dialogArguments = dialogInfo - this line causes JavaScript exception, saying that we're attempting to set a property with only a getter but not a setter.
comment:8 Changed 17 years ago by
[660] fixes the open dialog error in Gran Paradiso. It seems Gecko 1.9 has a bug with the "modal=yes" flag in window.open().
comment:9 Changed 17 years ago by
I've filed the modal=yes bug in Gran Paradiso under https://bugzilla.mozilla.org/show_bug.cgi?id=392018.
If they can solve both of the bugs mentioned here, then even older versions of FCKeditor (say, 2.4.x) should be able to work under Firefox 3.
comment:10 Changed 17 years ago by
Resolution: | → fixed |
---|---|
Status: | new → closed |
I can't find anything that doesn't work in Firefox 3 anymore. Closing ticket.
Don't worry, design mode functionality is not dropped in Gran Paradiso. The inner workings of the JavaScript engine in Gran Paradiso is changed, however. For example (just an example, I don't mean it's FCKeditor's problem), in Firefox 2, you can do something like this:
and it would still work. In Gran Paradiso, however, it wouldn't work. You can't really say that's "wrong", however, considering the OO syntax.