]> scripts.mit.edu Git - autoinstalls/wordpress.git/blobdiff - wp-admin/js/editor-expand.js
Wordpress 4.5.3-scripts
[autoinstalls/wordpress.git] / wp-admin / js / editor-expand.js
index 75496c26ce096a1bfa6e69eebc913a068b000350..ba5b095203aefa014c8bdc67fcba40f309947e71 100644 (file)
@@ -15,7 +15,7 @@
                        $visualEditor = $(),
                        $textTop = $( '#ed_toolbar' ),
                        $textEditor = $( '#content' ),
-                       $textEditorClone = $( '<div id="content-textarea-clone"></div>' ),
+                       $textEditorClone = $( '<div id="content-textarea-clone" class="wp-exclude-emoji"></div>' ),
                        $bottom = $( '#post-status-info' ),
                        $menuBar = $(),
                        $statusBar = $(),
                                var node = editor.selection.getNode(),
                                        range, view, offset;
 
-                               if ( editor.plugins.wpview && ( view = editor.plugins.wpview.getView( node ) ) ) {
+                               if ( editor.wp && editor.wp.getView && ( view = editor.wp.getView( node ) ) ) {
                                        offset = view.getBoundingClientRect();
                                } else {
                                        range = editor.selection.getRng();
                        var windowPos = $window.scrollTop(),
                                type = event && event.type,
                                resize = type !== 'scroll',
-                               visual = ( mceEditor && ! mceEditor.isHidden() ),
+                               visual = mceEditor && ! mceEditor.isHidden(),
                                buffer = autoresizeMinHeight,
                                postBodyTop = $postBody.offset().top,
                                borderWidth = 1,
                                topHeight = heights.textTopHeight;
                        }
 
+                       // TinyMCE still intializing.
+                       if ( ! visual && ! $top.length ) {
+                               return;
+                       }
+
                        topPos = $top.parent().offset().top;
                        editorPos = $editor.offset().top;
                        editorHeight = $editor.outerHeight();
                                                width: contentWrapWidth - ( borderWidth * 2 ) - ( visual ? 0 : ( $top.outerWidth() - $top.width() ) )
                                        } );
 
-                                       $statusBar.add( $bottom ).attr( 'style', '' );
+                                       $statusBar.attr( 'style', advanced ? '' : 'visibility: hidden;' );
+                                       $bottom.attr( 'style', '' );
                                }
                        } else {
                                // Maybe pin the top.
                                                ( windowPos + heights.windowHeight ) > ( editorPos + editorHeight + heights.bottomHeight + heights.statusBarHeight - borderWidth ) ) ) {
                                        fixedBottom = false;
 
-                                       $statusBar.add( $bottom ).attr( 'style', '' );
-
-                                       if ( ! advanced ) {
-                                               $statusBar.css( 'visibility', 'hidden' );
-                                       }
+                                       $statusBar.attr( 'style', advanced ? '' : 'visibility: hidden;' );
+                                       $bottom.attr( 'style', '' );
                                }
                        }
 
                }
 
                function off() {
-                       var height = window.getUserSetting('ed_size');
+                       var height = parseInt( window.getUserSetting( 'ed_size', 300 ), 10 );
+
+                       if ( height < 50 ) {
+                               height = 50;
+                       } else if ( height > 5000 ) {
+                               height = 5000;
+                       }
 
                        // Scroll to the top when triggering this from JS.
                        // Ensures toolbars are reset properly.
                }
 
                function fadeOut( event ) {
-                       var key = event && event.keyCode;
+                       var isMac,
+                               key = event && event.keyCode;
+
+                       if ( window.navigator.platform ) {
+                               isMac = ( window.navigator.platform.indexOf( 'Mac' ) > -1 );
+                       }
 
-                       // fadeIn and return on Escape and keyboard shortcut Alt+Shift+W.
-                       if ( key === 27 || ( key === 87 && event.altKey && event.shiftKey ) ) {
+                       // fadeIn and return on Escape and keyboard shortcut Alt+Shift+W and Ctrl+Opt+W.
+                       if ( key === 27 || ( key === 87 && event.altKey && ( ( ! isMac && event.shiftKey ) || ( isMac && event.ctrlKey ) ) ) ) {
                                fadeIn( event );
                                return;
                        }
                        } );
 
                        editor.addCommand( 'wpToggleDFW', toggle );
-                       editor.addShortcut( 'alt+shift+w', '', 'wpToggleDFW' );
+                       editor.addShortcut( 'access+w', '', 'wpToggleDFW' );
                } );
 
                $document.on( 'tinymce-editor-init.focus', function( event, editor ) {
                                $document.on( 'dfw-on.focus', mceBind ).on( 'dfw-off.focus', mceUnbind );
 
                                // Make sure the body focuses when clicking outside it.
-                               editor.on( 'click', function( event ) {
+                               editor.on( 'click', function( event ) {
                                        if ( event.target === editor.getDoc().documentElement ) {
                                                editor.focus();
                                        }