Index: _whatsnew.html
===================================================================
--- _whatsnew.html (revision 2359)
+++ _whatsnew.html (working copy)
@@ -43,7 +43,8 @@
Fixed Bugs:
-
+ - [#2467] Fixed JavaScript
+ error with the fit window command in source mode.
See previous versions history
Index: editor/_source/commandclasses/fckfitwindow.js
===================================================================
--- editor/_source/commandclasses/fckfitwindow.js (revision 2359)
+++ editor/_source/commandclasses/fckfitwindow.js (working copy)
@@ -38,9 +38,19 @@
var eParent ;
// Save the current selection and scroll position.
- var oRange = new FCKDomRange( FCK.EditorWindow ) ;
- oRange.MoveToSelection() ;
- var oEditorScrollPos = FCKTools.GetScrollPosition( FCK.EditorWindow ) ;
+ var oRange, oEditorScrollPos ;
+ if ( FCK.EditMode == FCK_EDITMODE_WYSIWYG )
+ {
+ oRange = new FCKDomRange( FCK.EditorWindow ) ;
+ oRange.MoveToSelection() ;
+ oEditorScrollPos = FCKTools.GetScrollPosition( FCK.EditorWindow ) ;
+ }
+ else
+ {
+ var eTextarea = FCK.EditingArea.Textarea ;
+ oRange = !FCKBrowserInfo.IsIE && [ eTextarea.selectionStart, eTextarea.selectionEnd ] ;
+ oEditorScrollPos = [ eTextarea.scrollLeft, eTextarea.scrollTop ] ;
+ }
// No original style properties known? Go fullscreen.
if ( !this.IsMaximized )
@@ -167,8 +177,21 @@
FCK.Focus() ;
// Restore the selection and scroll position of inside the document.
- oRange.Select() ;
- FCK.EditorWindow.scrollTo( oEditorScrollPos.X, oEditorScrollPos.Y ) ;
+ if ( FCK.EditMode == FCK_EDITMODE_WYSIWYG )
+ {
+ oRange.Select() ;
+ FCK.EditorWindow.scrollTo( oEditorScrollPos.X, oEditorScrollPos.Y ) ;
+ }
+ else
+ {
+ if ( !FCKBrowserInfo.IsIE )
+ {
+ eTextarea.selectionStart = oRange[0] ;
+ eTextarea.selectionEnd = oRange[1] ;
+ }
+ eTextarea.scrollLeft = oEditorScrollPos[0] ;
+ eTextarea.scrollTop = oEditorScrollPos[1] ;
+ }
}
FCKFitWindow.prototype.GetState = function()