initial commit
This commit is contained in:
commit
252dac3143
1516 changed files with 694271 additions and 0 deletions
103
FCKeditor/editor/_source/internals/fckdialog_gecko.js
Normal file
103
FCKeditor/editor/_source/internals/fckdialog_gecko.js
Normal file
|
@ -0,0 +1,103 @@
|
|||
/*
|
||||
* FCKeditor - The text editor for Internet - http://www.fckeditor.net
|
||||
* Copyright (C) 2003-2007 Frederico Caldeira Knabben
|
||||
*
|
||||
* == BEGIN LICENSE ==
|
||||
*
|
||||
* Licensed under the terms of any of the following licenses at your
|
||||
* choice:
|
||||
*
|
||||
* - GNU General Public License Version 2 or later (the "GPL")
|
||||
* http://www.gnu.org/licenses/gpl.html
|
||||
*
|
||||
* - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
|
||||
* http://www.gnu.org/licenses/lgpl.html
|
||||
*
|
||||
* - Mozilla Public License Version 1.1 or later (the "MPL")
|
||||
* http://www.mozilla.org/MPL/MPL-1.1.html
|
||||
*
|
||||
* == END LICENSE ==
|
||||
*
|
||||
* Dialog windows operations. (Gecko specific implementations)
|
||||
*/
|
||||
|
||||
FCKDialog.Show = function( dialogInfo, dialogName, pageUrl, dialogWidth, dialogHeight, parentWindow, resizable )
|
||||
{
|
||||
var iTop = (FCKConfig.ScreenHeight - dialogHeight) / 2 ;
|
||||
var iLeft = (FCKConfig.ScreenWidth - dialogWidth) / 2 ;
|
||||
|
||||
var sOption = "location=no,menubar=no,toolbar=no,dependent=yes,dialog=yes,minimizable=no,alwaysRaised=yes" +
|
||||
",resizable=" + ( resizable ? 'yes' : 'no' ) +
|
||||
",width=" + dialogWidth +
|
||||
",height=" + dialogHeight +
|
||||
",top=" + iTop +
|
||||
",left=" + iLeft ;
|
||||
|
||||
if ( !parentWindow )
|
||||
parentWindow = window ;
|
||||
|
||||
FCKFocusManager.Lock() ;
|
||||
|
||||
var oWindow = parentWindow.open( '', 'FCKeditorDialog_' + dialogName, sOption, true ) ;
|
||||
|
||||
if ( !oWindow )
|
||||
{
|
||||
alert( FCKLang.DialogBlocked ) ;
|
||||
FCKFocusManager.Unlock() ;
|
||||
return ;
|
||||
}
|
||||
|
||||
oWindow.moveTo( iLeft, iTop ) ;
|
||||
oWindow.resizeTo( dialogWidth, dialogHeight ) ;
|
||||
oWindow.focus() ;
|
||||
oWindow.location.href = pageUrl ;
|
||||
|
||||
oWindow.dialogArguments = dialogInfo ;
|
||||
|
||||
// On some Gecko browsers (probably over slow connections) the
|
||||
// "dialogArguments" are not set to the target window so we must
|
||||
// put it in the opener window so it can be used by the target one.
|
||||
parentWindow.FCKLastDialogInfo = dialogInfo ;
|
||||
|
||||
this.Window = oWindow ;
|
||||
|
||||
// Try/Catch must be used to avoid an error when using a frameset
|
||||
// on a different domain:
|
||||
// "Permission denied to get property Window.releaseEvents".
|
||||
try
|
||||
{
|
||||
window.top.parent.addEventListener( 'mousedown', this.CheckFocus, true ) ;
|
||||
window.top.parent.addEventListener( 'mouseup', this.CheckFocus, true ) ;
|
||||
window.top.parent.addEventListener( 'click', this.CheckFocus, true ) ;
|
||||
window.top.parent.addEventListener( 'focus', this.CheckFocus, true ) ;
|
||||
}
|
||||
catch (e)
|
||||
{}
|
||||
}
|
||||
|
||||
FCKDialog.CheckFocus = function()
|
||||
{
|
||||
// It is strange, but we have to check the FCKDialog existence to avoid a
|
||||
// random error: "FCKDialog is not defined".
|
||||
if ( typeof( FCKDialog ) != "object" )
|
||||
return false ;
|
||||
|
||||
if ( FCKDialog.Window && !FCKDialog.Window.closed )
|
||||
FCKDialog.Window.focus() ;
|
||||
else
|
||||
{
|
||||
// Try/Catch must be used to avoid an error when using a frameset
|
||||
// on a different domain:
|
||||
// "Permission denied to get property Window.releaseEvents".
|
||||
try
|
||||
{
|
||||
window.top.parent.removeEventListener( 'onmousedown', FCKDialog.CheckFocus, true ) ;
|
||||
window.top.parent.removeEventListener( 'mouseup', FCKDialog.CheckFocus, true ) ;
|
||||
window.top.parent.removeEventListener( 'click', FCKDialog.CheckFocus, true ) ;
|
||||
window.top.parent.removeEventListener( 'onfocus', FCKDialog.CheckFocus, true ) ;
|
||||
}
|
||||
catch (e)
|
||||
{}
|
||||
}
|
||||
return false ;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue