--- a/wp/wp-includes/class-wp-editor.php Tue Dec 15 15:52:01 2020 +0100
+++ b/wp/wp-includes/class-wp-editor.php Wed Sep 21 18:19:35 2022 +0200
@@ -249,7 +249,7 @@
$toolbar_id = 'qt_' . $editor_id_attr . '_toolbar';
}
- $quicktags_toolbar = '<div id="' . $toolbar_id . '" class="quicktags-toolbar"></div>';
+ $quicktags_toolbar = '<div id="' . $toolbar_id . '" class="quicktags-toolbar hide-if-no-js"></div>';
}
/**
@@ -1300,8 +1300,8 @@
'Row' => __( 'Row' ),
'Rows' => __( 'Rows' ),
- 'Column' => _x( 'Column', 'table column' ),
- 'Cols' => _x( 'Cols', 'table columns' ),
+ 'Column' => __( 'Column' ),
+ 'Cols' => __( 'Columns' ),
'Cell' => _x( 'Cell', 'table cell' ),
'Header cell' => __( 'Header cell' ),
'Header' => _x( 'Header', 'table header' ),
@@ -1663,20 +1663,31 @@
?>
( function() {
- var init, id, $wrap;
+ var initialized = [];
+ var initialize = function() {
+ var init, id, inPostbox, $wrap;
+ var readyState = document.readyState;
- if ( typeof tinymce !== 'undefined' ) {
- if ( tinymce.Env.ie && tinymce.Env.ie < 11 ) {
- tinymce.$( '.wp-editor-wrap ' ).removeClass( 'tmce-active' ).addClass( 'html-active' );
+ if ( readyState !== 'complete' && readyState !== 'interactive' ) {
return;
}
for ( id in tinyMCEPreInit.mceInit ) {
- init = tinyMCEPreInit.mceInit[id];
- $wrap = tinymce.$( '#wp-' + id + '-wrap' );
+ if ( initialized.indexOf( id ) > -1 ) {
+ continue;
+ }
+
+ init = tinyMCEPreInit.mceInit[id];
+ $wrap = tinymce.$( '#wp-' + id + '-wrap' );
+ inPostbox = $wrap.parents( '.postbox' ).length > 0;
- if ( ( $wrap.hasClass( 'tmce-active' ) || ! tinyMCEPreInit.qtInit.hasOwnProperty( id ) ) && ! init.wp_skip_init ) {
+ if (
+ ! init.wp_skip_init &&
+ ( $wrap.hasClass( 'tmce-active' ) || ! tinyMCEPreInit.qtInit.hasOwnProperty( id ) ) &&
+ ( readyState === 'complete' || ( ! inPostbox && readyState === 'interactive' ) )
+ ) {
tinymce.init( init );
+ initialized.push( id );
if ( ! window.wpActiveEditor ) {
window.wpActiveEditor = id;
@@ -1685,6 +1696,18 @@
}
}
+ if ( typeof tinymce !== 'undefined' ) {
+ if ( tinymce.Env.ie && tinymce.Env.ie < 11 ) {
+ tinymce.$( '.wp-editor-wrap ' ).removeClass( 'tmce-active' ).addClass( 'html-active' );
+ } else {
+ if ( document.readyState === 'complete' ) {
+ initialize();
+ } else {
+ document.addEventListener( 'readystatechange', initialize );
+ }
+ }
+ }
+
if ( typeof quicktags !== 'undefined' ) {
for ( id in tinyMCEPreInit.qtInit ) {
quicktags( tinyMCEPreInit.qtInit[id] );