TinyMCE: fix editor height when loaded hidden.

Props nnikolov, azaozz.
Fixes #45461.

git-svn-id: https://develop.svn.wordpress.org/trunk@44832 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Andrew Ozz 2019-03-12 20:13:14 +00:00
parent e6442466f9
commit da7b514926
1 changed files with 11 additions and 5 deletions

View File

@ -19,7 +19,7 @@ tinymce.PluginManager.add( 'wordpress', function( editor ) {
}
function toggleToolbars( state ) {
var initial, toolbars,
var initial, toolbars, iframeHeight,
pixels = 0,
classicBlockToolbar = tinymce.$( '.block-library-classic__toolbar' );
@ -44,18 +44,24 @@ tinymce.PluginManager.add( 'wordpress', function( editor ) {
if ( i > 0 ) {
if ( state === 'hide' ) {
toolbar.hide();
pixels += 30;
pixels += 34;
} else {
toolbar.show();
pixels -= 30;
pixels -= 34;
}
}
});
}
// Resize editor iframe, not needed for iOS and inline instances.
if ( pixels && ! tinymce.Env.iOS && editor.iframeElement ) {
DOM.setStyle( editor.iframeElement, 'height', editor.iframeElement.clientHeight + pixels );
// Don't resize if the editor is in a hidden container.
if ( pixels && ! tinymce.Env.iOS && editor.iframeElement && editor.iframeElement.clientHeight ) {
iframeHeight = editor.iframeElement.clientHeight + pixels;
// Keep min-height.
if ( iframeHeight > 50 ) {
DOM.setStyle( editor.iframeElement, 'height', iframeHeight );
}
}
if ( ! initial ) {