Ticket #3672: 3672.patch
File 3672.patch, 5.7 KB (added by , 15 years ago) |
---|
-
_source/plugins/dialog/plugin.js
329 329 330 330 if ( CKEDITOR.env.ie6Compat ) 331 331 { 332 var coverDoc = CKEDITOR.document.getById( 'cke_dialog_background_iframe' ).getFrameDocument();332 var coverDoc = coverElement.getFrameDocument(); 333 333 coverDoc.on( 'keydown', focusKeydownHandler, this, null, 0 ); 334 334 } 335 335 } ); … … 1400 1400 1401 1401 if ( CKEDITOR.env.ie6Compat ) 1402 1402 { 1403 var coverDoc = CKEDITOR.document.getById( 'cke_dialog_background_iframe' ).getFrameDocument();1403 var coverDoc = coverElement.getFrameDocument(); 1404 1404 coverDoc.removeListener( 'mousemove', mouseMoveHandler ); 1405 1405 coverDoc.removeListener( 'mouseup', mouseUpHandler ); 1406 1406 } … … 1416 1416 1417 1417 if ( CKEDITOR.env.ie6Compat ) 1418 1418 { 1419 var coverDoc = CKEDITOR.document.getById( 'cke_dialog_background_iframe' ).getFrameDocument();1419 var coverDoc = coverElement.getFrameDocument(); 1420 1420 coverDoc.on( 'mousemove', mouseMoveHandler ); 1421 1421 coverDoc.on( 'mouseup', mouseUpHandler ); 1422 1422 } … … 1474 1474 1475 1475 if ( CKEDITOR.env.ie6Compat ) 1476 1476 { 1477 var coverDoc = CKEDITOR.document.getById( 'cke_dialog_background_iframe' ).getFrameDocument();1477 var coverDoc = coverElement.getFrameDocument(); 1478 1478 coverDoc.on( 'mousemove', mouseMoveHandler, dialog, { part : partName } ); 1479 1479 coverDoc.on( 'mouseup', mouseUpHandler, dialog, { part : partName } ); 1480 1480 } … … 1545 1545 1546 1546 if ( CKEDITOR.env.ie6Compat ) 1547 1547 { 1548 var coverDoc = CKEDITOR.document.getById( 'cke_dialog_background_iframe' ).getFrameDocument();1548 var coverDoc = coverElement.getFrameDocument(); 1549 1549 coverDoc.removeListener( 'mouseup', mouseUpHandler ); 1550 1550 coverDoc.removeListener( 'mousemove', mouseMoveHandler ); 1551 1551 } … … 1569 1569 } 1570 1570 1571 1571 var resizeCover; 1572 var coverElement; 1572 1573 1573 1574 var addCover = function( editor ) 1574 1575 { 1575 1576 var win = CKEDITOR.document.getWindow(); 1576 1577 1577 var html = [ 1578 '<div style="position: ', ( CKEDITOR.env.ie6Compat ? 'absolute' : 'fixed' ), 1579 '; z-index: ', editor.config.baseFloatZIndex, 1580 '; top: 0px; left: 0px; ', 1581 'background-color: ', editor.config.dialog_backgroundCoverColor, 1582 '" id="cke_dialog_background_cover">' 1583 ]; 1578 if ( !coverElement ) 1579 { 1580 var html = [ 1581 '<div style="position: ', ( CKEDITOR.env.ie6Compat ? 'absolute' : 'fixed' ), 1582 '; z-index: ', editor.config.baseFloatZIndex, 1583 '; top: 0px; left: 0px; ', 1584 'background-color: ', editor.config.dialog_backgroundCoverColor, 1585 '" id="cke_dialog_background_cover">' 1586 ]; 1584 1587 1585 if ( CKEDITOR.env.ie6Compat ) 1586 { 1587 // Support for custom document.domain in IE. 1588 var isCustomDomain = CKEDITOR.env.isCustomDomain(); 1588 1589 if ( CKEDITOR.env.ie6Compat ) 1590 { 1591 // Support for custom document.domain in IE. 1592 var isCustomDomain = CKEDITOR.env.isCustomDomain(); 1589 1593 1590 html.push(1591 '<iframe' +1592 ' hidefocus="true"' +1593 ' frameborder="0"' +1594 ' id="cke_dialog_background_iframe"' +1595 ' src="javascript:' );1594 html.push( 1595 '<iframe' + 1596 ' hidefocus="true"' + 1597 ' frameborder="0"' + 1598 ' id="cke_dialog_background_iframe"' + 1599 ' src="javascript:' ); 1596 1600 1597 html.push(1598 isCustomDomain ?1599 'void((function(){' +1600 'document.open();' +1601 'document.domain=\'' + document.domain + '\';' +1602 'document.close();' +1603 '})())'1604 :1605 '\'\'' );1601 html.push( 1602 isCustomDomain ? 1603 'void((function(){' + 1604 'document.open();' + 1605 'document.domain=\'' + document.domain + '\';' + 1606 'document.close();' + 1607 '})())' 1608 : 1609 '\'\'' ); 1606 1610 1607 html.push(1608 '"' +1609 ' style="' +1610 'position:absolute;' +1611 'left:0;' +1612 'top:0;' +1613 'width:100%;' +1614 'height: 100%;' +1615 'progid:DXImageTransform.Microsoft.Alpha(opacity=0)">' +1616 '</iframe>' );1617 }1611 html.push( 1612 '"' + 1613 ' style="' + 1614 'position:absolute;' + 1615 'left:0;' + 1616 'top:0;' + 1617 'width:100%;' + 1618 'height: 100%;' + 1619 'progid:DXImageTransform.Microsoft.Alpha(opacity=0)">' + 1620 '</iframe>' ); 1621 } 1618 1622 1619 html.push( '</div>' );1623 html.push( '</div>' ); 1620 1624 1621 var element = CKEDITOR.dom.element.createFromHtml( html.join( '' ) ); 1625 coverElement = CKEDITOR.dom.element.createFromHtml( html.join( '' ) ); 1626 } 1622 1627 1628 var element = coverElement; 1629 1623 1630 var resizeFunc = function() 1624 1631 { 1625 1632 var size = win.getViewPaneSize(); … … 1672 1679 1673 1680 var removeCover = function() 1674 1681 { 1675 var element = CKEDITOR.document.getById( 'cke_dialog_background_cover' ),1676 win = CKEDITOR.document.getWindow();1677 if ( element )1678 {1679 element.remove();1680 1682 if ( !coverElement ) 1683 return; 1684 1685 var win = CKEDITOR.document.getWindow(); 1686 coverElement.remove(); 1687 win.removeListener( 'resize', resizeCover ); 1681 1688 1682 if ( CKEDITOR.env.ie6Compat ) 1683 { 1684 win.$.setTimeout( function() 1685 { 1686 var prevScrollHandler = window.onscroll && window.onscroll.prevScrollHandler; 1687 window.onscroll = prevScrollHandler || null; 1688 }, 0 ); 1689 } 1690 resizeCover = null; 1691 } 1689 if ( CKEDITOR.env.ie6Compat ) 1690 { 1691 win.$.setTimeout( function() 1692 { 1693 var prevScrollHandler = window.onscroll && window.onscroll.prevScrollHandler; 1694 window.onscroll = prevScrollHandler || null; 1695 }, 0 ); 1696 } 1697 resizeCover = null; 1692 1698 }; 1693 1699 1694 1700 var accessKeyProcessors = {};