Вход Регистрация
Файл: wordpress/wp-includes/js/tinymce/plugins/fullscreen/plugin.js
Строк: 184
<?php
/**
 * plugin.js
 *
 * Copyright, Moxiecode Systems AB
 * Released under LGPL License.
 *
 * License: http://www.tinymce.com/license
 * Contributing: http://www.tinymce.com/contributing
 */

/*global tinymce:true */

tinymce.PluginManager.add('fullscreen', function(editor) {
    var 
fullscreenState falseDOM tinymce.DOMiframeWidthiframeHeightresizeHandler;
    var 
containerWidthcontainerHeight;

    if (
editor.settings.inline) {
        return;
    }

    function 
getWindowSize() {
        var 
whwin windowdoc document;
        var 
body doc.body;

        
// Old IE
        
if (body.offsetWidth) {
            
body.offsetWidth;
            
body.offsetHeight;
        }

        
// Modern browsers
        
if (win.innerWidth && win.innerHeight) {
            
win.innerWidth;
            
win.innerHeight;
        }

        return {
wwhh};
    }

    function 
toggleFullscreen() {
        var 
body document.bodydocumentElement document.documentElementeditorContainerStyle;
        var 
editorContaineriframeiframeStyle;

        function 
resize() {
            
DOM.setStyle(iframe'height'getWindowSize().- (editorContainer.clientHeight iframe.clientHeight));
        }

        
fullscreenState = !fullscreenState;

        
editorContainer editor.getContainer();
        
editorContainerStyle editorContainer.style;
        
iframe editor.getContentAreaContainer().firstChild;
        
iframeStyle iframe.style;

        if (
fullscreenState) {
            
iframeWidth iframeStyle.width;
            
iframeHeight iframeStyle.height;
            
iframeStyle.width iframeStyle.height '100%';
            
containerWidth editorContainerStyle.width;
            
containerHeight editorContainerStyle.height;
            
editorContainerStyle.width editorContainerStyle.height '';

            
DOM.addClass(body'mce-fullscreen');
            
DOM.addClass(documentElement'mce-fullscreen');
            
DOM.addClass(editorContainer'mce-fullscreen');

            
DOM.bind(window'resize'resize);
            
resize();
            
resizeHandler resize;
        } else {
            
iframeStyle.width iframeWidth;
            
iframeStyle.height iframeHeight;

            if (
containerWidth) {
                
editorContainerStyle.width containerWidth;
            }

            if (
containerHeight) {
                
editorContainerStyle.height containerHeight;
            }

            
DOM.removeClass(body'mce-fullscreen');
            
DOM.removeClass(documentElement'mce-fullscreen');
            
DOM.removeClass(editorContainer'mce-fullscreen');
            
DOM.unbind(window'resize'resizeHandler);
        }

        
editor.fire('FullscreenStateChanged', {statefullscreenState});
    }

    
editor.on('init', function() {
        
editor.addShortcut('Meta+Alt+F'''toggleFullscreen);
    });

    
editor.on('remove', function() {
        if (
resizeHandler) {
            
DOM.unbind(window'resize'resizeHandler);
        }
    });

    
editor.addCommand('mceFullScreen'toggleFullscreen);

    
editor.addMenuItem('fullscreen', {
        
text'Fullscreen',
        
shortcut'Meta+Alt+F',
        
selectabletrue,
        
onClicktoggleFullscreen,
        
onPostRender: function() {
            var 
self this;

            
editor.on('FullscreenStateChanged', function(e) {
                
self.active(e.state);
            });
        },
        
context'view'
    
});

    
editor.addButton('fullscreen', {
        
tooltip'Fullscreen',
        
shortcut'Meta+Alt+F',
        
onClicktoggleFullscreen,
        
onPostRender: function() {
            var 
self this;

            
editor.on('FullscreenStateChanged', function(e) {
                
self.active(e.state);
            });
        }
    });

    return {
        
isFullscreen: function() {
            return 
fullscreenState;
        }
    };
});
?>
Онлайн: 2
Реклама