TinyMCE: Fix keyboard navigation when the `dfw` button is present but hidden. Ensure that button is added last in the DOM to match where it appears visually.

Props afercia, azaozz.
Fixes #46640.
Built from https://develop.svn.wordpress.org/trunk@45172


git-svn-id: http://core.svn.wordpress.org/trunk@44981 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
Andrew Ozz 2019-04-12 18:08:53 +00:00
parent 44d977b2af
commit 77e87830ae
12 changed files with 32 additions and 12 deletions

View File

@ -1273,12 +1273,10 @@ table.links-table {
/* DFW 2 /* DFW 2
-------------------------------------------------------------- */ -------------------------------------------------------------- */
#wp-content-wrap .mce-wp-dfw,
#qt_content_dfw { #qt_content_dfw {
display: none; display: none;
} }
.wp-editor-expand #wp-content-wrap .mce-wp-dfw,
.wp-editor-expand #qt_content_dfw { .wp-editor-expand #qt_content_dfw {
display: inline-block; display: inline-block;
} }

File diff suppressed because one or more lines are too long

View File

@ -1273,12 +1273,10 @@ table.links-table {
/* DFW 2 /* DFW 2
-------------------------------------------------------------- */ -------------------------------------------------------------- */
#wp-content-wrap .mce-wp-dfw,
#qt_content_dfw { #qt_content_dfw {
display: none; display: none;
} }
.wp-editor-expand #wp-content-wrap .mce-wp-dfw,
.wp-editor-expand #qt_content_dfw { .wp-editor-expand #qt_content_dfw {
display: inline-block; display: inline-block;
} }

File diff suppressed because one or more lines are too long

View File

@ -1473,12 +1473,20 @@
onPostRender: function() { onPostRender: function() {
var button = this; var button = this;
editor.on( 'init', function() {
if ( button.disabled() ) {
button.hide();
}
} );
$document $document
.on( 'dfw-activate.focus', function() { .on( 'dfw-activate.focus', function() {
button.disabled( false ); button.disabled( false );
button.show();
} ) } )
.on( 'dfw-deactivate.focus', function() { .on( 'dfw-deactivate.focus', function() {
button.disabled( true ); button.disabled( true );
button.hide();
} ) } )
.on( 'dfw-on.focus', function() { .on( 'dfw-on.focus', function() {
button.active( true ); button.active( true );

File diff suppressed because one or more lines are too long

View File

@ -587,13 +587,15 @@ final class _WP_Editors {
if ( ! wp_is_mobile() ) { if ( ! wp_is_mobile() ) {
if ( $set['_content_editor_dfw'] ) { if ( $set['_content_editor_dfw'] ) {
$mce_buttons[] = 'wp_adv';
$mce_buttons[] = 'dfw'; $mce_buttons[] = 'dfw';
} else { } else {
$mce_buttons[] = 'fullscreen'; $mce_buttons[] = 'fullscreen';
}
}
$mce_buttons[] = 'wp_adv'; $mce_buttons[] = 'wp_adv';
}
} else {
$mce_buttons[] = 'wp_adv';
}
/** /**
* Filters the first-row list of TinyMCE buttons (Visual tab). * Filters the first-row list of TinyMCE buttons (Visual tab).

View File

@ -1269,6 +1269,13 @@ i.mce-i-wp_code:before {
position: absolute; position: absolute;
top: 0; top: 0;
left: 0; left: 0;
}
.mce-toolbar .mce-btn-group .mce-btn.mce-wp-dfw {
margin: 7px 0 0 7px;
}
.qt-dfw {
margin: 5px 0 0 5px; margin: 5px 0 0 5px;
} }

File diff suppressed because one or more lines are too long

View File

@ -1269,6 +1269,13 @@ i.mce-i-wp_code:before {
position: absolute; position: absolute;
top: 0; top: 0;
right: 0; right: 0;
}
.mce-toolbar .mce-btn-group .mce-btn.mce-wp-dfw {
margin: 7px 7px 0 0;
}
.qt-dfw {
margin: 5px 5px 0 0; margin: 5px 5px 0 0;
} }

File diff suppressed because one or more lines are too long

View File

@ -13,7 +13,7 @@
* *
* @global string $wp_version * @global string $wp_version
*/ */
$wp_version = '5.2-beta2-45171'; $wp_version = '5.2-beta2-45172';
/** /**
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema. * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.