Make WordPress Core

Ticket #32593: 32593.2.patch

File 32593.2.patch, 1.8 KB (added by iseulde, 10 years ago)
  • src/wp-includes/js/mce-view.js

     
    501501                                        }
    502502                                } );
    503503
     504                                if ( self.iframeHeight ) {
     505                                        dom.add( contentNode, 'div', { style: {
     506                                                width: '100%',
     507                                                height: self.iframeHeight
     508                                        } } );
     509                                }
     510
    504511                                // Seems the browsers need a bit of time to insert/set the view nodes,
    505512                                // or the iframe will fail especially when switching Text => Visual.
    506513                                setTimeout( function() {
    507                                         var iframe, iframeDoc, observer, i;
     514                                        var iframe, iframeDoc, observer, i, block;
    508515
    509516                                        contentNode.innerHTML = '';
    510517
     
    518525                                                style: {
    519526                                                        width: '100%',
    520527                                                        display: 'block'
    521                                                 }
     528                                                },
     529                                                height: self.iframeHeight
    522530                                        } );
    523531
    524532                                        dom.add( contentNode, 'div', { 'class': 'wpview-overlay' } );
     
    561569                                        iframeDoc.close();
    562570
    563571                                        function resize() {
    564                                                 var $iframe, iframeDocHeight;
     572                                                var $iframe;
     573
     574                                                if ( block ) {
     575                                                        return;
     576                                                }
    565577
    566578                                                // Make sure the iframe still exists.
    567579                                                if ( iframe.contentWindow ) {
    568580                                                        $iframe = $( iframe );
    569                                                         iframeDocHeight = $( iframeDoc.body ).height();
     581                                                        self.iframeHeight = $( iframeDoc.body ).height();
    570582
    571                                                         if ( $iframe.height() !== iframeDocHeight ) {
    572                                                                 $iframe.height( iframeDocHeight );
     583                                                        if ( $iframe.height() !== self.iframeHeight ) {
     584                                                                $iframe.height( self.iframeHeight );
    573585                                                                editor.nodeChanged();
    574586                                                        }
    575587                                                }
    576588                                        }
    577589
     590                                        if ( self.iframeHeight ) {
     591                                                block = true;
     592
     593                                                setTimeout( function () {
     594                                                        block = false;
     595                                                        resize();
     596                                                }, 2000 );
     597                                        }
     598
    578599                                        $( iframe.contentWindow ).on( 'load', resize );
    579600
    580601                                        if ( MutationObserver ) {