<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[59188] trunk/src: Editor: A11y: Fix tab order, state, and focus in classic editor.</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { white-space: pre-line; overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta" style="font-size: 105%">
<dt style="float: left; width: 6em; font-weight: bold">Revision</dt> <dd><a style="font-weight: bold" href="https://core.trac.wordpress.org/changeset/59188">59188</a><script type="application/ld+json">{"@context":"http://schema.org","@type":"EmailMessage","description":"Review this Commit","action":{"@type":"ViewAction","url":"https://core.trac.wordpress.org/changeset/59188","name":"Review Commit"}}</script></dd>
<dt style="float: left; width: 6em; font-weight: bold">Author</dt> <dd>joedolson</dd>
<dt style="float: left; width: 6em; font-weight: bold">Date</dt> <dd>2024-10-07 16:55:26 +0000 (Mon, 07 Oct 2024)</dd>
</dl>

<pre style='padding-left: 1em; margin: 2em 0; border-left: 2px solid #ccc; line-height: 1.25; font-size: 105%; font-family: sans-serif'>Editor: A11y: Fix tab order, state, and focus in classic editor.

Remove code that forced focus to skip from the title field to the editor. Add link to skip to editor to give the user control over their path. Set `aria-pressed` on editor selector buttons to communicate which editor is enabled. Make focus state visible on unselected editor button. Remove `wp_keep_scroll_position` flag used for IE compatibility. Add `role="presentation"` to table used as status info bar.

This addresses a long-standing accessibility problem in the classic editor which created a confusing keyboard navigation path by skipping all content between the title field and the content editor.

Props afercia, rcreators, benjamin_zekavica, sharonaustin, joedolson.
Fixes <a href="https://core.trac.wordpress.org/ticket/29838">#29838</a>.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunksrcjs_enqueuesadminpostjs">trunk/src/js/_enqueues/admin/post.js</a></li>
<li><a href="#trunksrcjs_enqueueswpeditorbasejs">trunk/src/js/_enqueues/wp/editor/base.js</a></li>
<li><a href="#trunksrcwpadmincsseditcss">trunk/src/wp-admin/css/edit.css</a></li>
<li><a href="#trunksrcwpadmineditformadvancedphp">trunk/src/wp-admin/edit-form-advanced.php</a></li>
<li><a href="#trunksrcwpincludesclasswpeditorphp">trunk/src/wp-includes/class-wp-editor.php</a></li>
<li><a href="#trunksrcwpincludescsseditorcss">trunk/src/wp-includes/css/editor.css</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunksrcjs_enqueuesadminpostjs"></a>
<div class="modfile"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Modified: trunk/src/js/_enqueues/admin/post.js</h4>
<pre class="diff"><span>
<span class="info" style="display: block; padding: 0 10px; color: #888">--- trunk/src/js/_enqueues/admin/post.js      2024-10-07 02:47:18 UTC (rev 59187)
+++ trunk/src/js/_enqueues/admin/post.js        2024-10-07 16:55:26 UTC (rev 59188)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -434,25 +434,6 @@
</span><span class="cx" style="display: block; padding: 0 10px">                $previewField.val('');
</span><span class="cx" style="display: block; padding: 0 10px">        });
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-        // This code is meant to allow tabbing from Title to Post content.
-       $('#title').on( 'keydown.editor-focus', function( event ) {
-               var editor;
-
-               if ( event.keyCode === 9 && ! event.ctrlKey && ! event.altKey && ! event.shiftKey ) {
-                       editor = typeof tinymce != 'undefined' && tinymce.get('content');
-
-                       if ( editor && ! editor.isHidden() ) {
-                               editor.focus();
-                       } else if ( $textarea.length ) {
-                               $textarea.trigger( 'focus' );
-                       } else {
-                               return;
-                       }
-
-                       event.preventDefault();
-               }
-       });
-
</del><span class="cx" style="display: block; padding: 0 10px">         // Auto save new posts after a title is typed.
</span><span class="cx" style="display: block; padding: 0 10px">        if ( $( '#auto_draft' ).val() ) {
</span><span class="cx" style="display: block; padding: 0 10px">                $( '#title' ).on( 'blur', function() {
</span></span></pre></div>
<a id="trunksrcjs_enqueueswpeditorbasejs"></a>
<div class="modfile"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Modified: trunk/src/js/_enqueues/wp/editor/base.js</h4>
<pre class="diff"><span>
<span class="info" style="display: block; padding: 0 10px; color: #888">--- trunk/src/js/_enqueues/wp/editor/base.js  2024-10-07 02:47:18 UTC (rev 59187)
+++ trunk/src/js/_enqueues/wp/editor/base.js    2024-10-07 16:55:26 UTC (rev 59188)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -79,6 +79,8 @@
</span><span class="cx" style="display: block; padding: 0 10px">                        var editorHeight, toolbarHeight, iframe,
</span><span class="cx" style="display: block; padding: 0 10px">                                editor = tinymce.get( id ),
</span><span class="cx" style="display: block; padding: 0 10px">                                wrap = $$( '#wp-' + id + '-wrap' ),
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                                htmlSwitch = wrap.find( '.switch-tmce' ),
+                               tmceSwitch = wrap.find( '.switch-html' ),
</ins><span class="cx" style="display: block; padding: 0 10px">                                 $textarea = $$( '#' + id ),
</span><span class="cx" style="display: block; padding: 0 10px">                                textarea = $textarea[0];
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -103,19 +105,8 @@
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="cx" style="display: block; padding: 0 10px">                                editorHeight = parseInt( textarea.style.height, 10 ) || 0;
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                                var keepSelection = false;
-                               if ( editor ) {
-                                       keepSelection = editor.getParam( 'wp_keep_scroll_position' );
-                               } else {
-                                       keepSelection = window.tinyMCEPreInit.mceInit[ id ] &&
-                                                                       window.tinyMCEPreInit.mceInit[ id ].wp_keep_scroll_position;
-                               }
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                         addHTMLBookmarkInTextAreaContent( $textarea );
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                                if ( keepSelection ) {
-                                       // Save the selection.
-                                       addHTMLBookmarkInTextAreaContent( $textarea );
-                               }
-
</del><span class="cx" style="display: block; padding: 0 10px">                                 if ( editor ) {
</span><span class="cx" style="display: block; padding: 0 10px">                                        editor.show();
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -130,15 +121,14 @@
</span><span class="cx" style="display: block; padding: 0 10px">                                                }
</span><span class="cx" style="display: block; padding: 0 10px">                                        }
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                                        if ( editor.getParam( 'wp_keep_scroll_position' ) ) {
-                                               // Restore the selection.
-                                               focusHTMLBookmarkInVisualEditor( editor );
-                                       }
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                                 focusHTMLBookmarkInVisualEditor( editor );
</ins><span class="cx" style="display: block; padding: 0 10px">                                 } else {
</span><span class="cx" style="display: block; padding: 0 10px">                                        tinymce.init( window.tinyMCEPreInit.mceInit[ id ] );
</span><span class="cx" style="display: block; padding: 0 10px">                                }
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="cx" style="display: block; padding: 0 10px">                                wrap.removeClass( 'html-active' ).addClass( 'tmce-active' );
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                                tmceSwitch.attr( 'aria-pressed', false );
+                               htmlSwitch.attr( 'aria-pressed', true );
</ins><span class="cx" style="display: block; padding: 0 10px">                                 $textarea.attr( 'aria-hidden', true );
</span><span class="cx" style="display: block; padding: 0 10px">                                window.setUserSetting( 'editor', 'tinymce' );
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -168,9 +158,7 @@
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="cx" style="display: block; padding: 0 10px">                                        var selectionRange = null;
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                                        if ( editor.getParam( 'wp_keep_scroll_position' ) ) {
-                                               selectionRange = findBookmarkedPosition( editor );
-                                       }
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                                 selectionRange = findBookmarkedPosition( editor );
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="cx" style="display: block; padding: 0 10px">                                        editor.hide();
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -184,6 +172,8 @@
</span><span class="cx" style="display: block; padding: 0 10px">                                }
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="cx" style="display: block; padding: 0 10px">                                wrap.removeClass( 'tmce-active' ).addClass( 'html-active' );
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                                tmceSwitch.attr( 'aria-pressed', true );
+                               htmlSwitch.attr( 'aria-pressed', false );
</ins><span class="cx" style="display: block; padding: 0 10px">                                 $textarea.attr( 'aria-hidden', false );
</span><span class="cx" style="display: block; padding: 0 10px">                                window.setUserSetting( 'editor', 'html' );
</span><span class="cx" style="display: block; padding: 0 10px">                        }
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -520,7 +510,7 @@
</span><span class="cx" style="display: block; padding: 0 10px">                 * Focuses the selection markers in Visual mode.
</span><span class="cx" style="display: block; padding: 0 10px">                 *
</span><span class="cx" style="display: block; padding: 0 10px">                 * The method checks for existing selection markers inside the editor DOM (Visual mode)
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                 * and create a selection between the two nodes using the DOM `createRange` selection API
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+          * and create a selection between the two nodes using the DOM `createRange` selection API.
</ins><span class="cx" style="display: block; padding: 0 10px">                  *
</span><span class="cx" style="display: block; padding: 0 10px">                 * If there is only a single node, select only the single node through TinyMCE's selection API
</span><span class="cx" style="display: block; padding: 0 10px">                 *
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -545,9 +535,7 @@
</span><span class="cx" style="display: block; padding: 0 10px">                                }
</span><span class="cx" style="display: block; padding: 0 10px">                        }
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                        if ( editor.getParam( 'wp_keep_scroll_position' ) ) {
-                               scrollVisualModeToStartElement( editor, startNode );
-                       }
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                 scrollVisualModeToStartElement( editor, startNode );
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="cx" style="display: block; padding: 0 10px">                        removeSelectionMarker( startNode );
</span><span class="cx" style="display: block; padding: 0 10px">                        removeSelectionMarker( endNode );
</span></span></pre></div>
<a id="trunksrcwpadmincsseditcss"></a>
<div class="modfile"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Modified: trunk/src/wp-admin/css/edit.css</h4>
<pre class="diff"><span>
<span class="info" style="display: block; padding: 0 10px; color: #888">--- trunk/src/wp-admin/css/edit.css   2024-10-07 02:47:18 UTC (rev 59187)
+++ trunk/src/wp-admin/css/edit.css     2024-10-07 16:55:26 UTC (rev 59188)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -75,6 +75,14 @@
</span><span class="cx" style="display: block; padding: 0 10px">        pointer-events: none;
</span><span class="cx" style="display: block; padding: 0 10px"> }
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+#titlewrap .skiplink:focus {
+       clip: inherit;
+       clip-path: inherit;
+       right: 4px;
+       top: 4px;
+       width: auto;
+}
+
</ins><span class="cx" style="display: block; padding: 0 10px"> input#link_description,
</span><span class="cx" style="display: block; padding: 0 10px"> input#link_url {
</span><span class="cx" style="display: block; padding: 0 10px">        width: 100%;
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -1038,6 +1046,14 @@
</span><span class="cx" style="display: block; padding: 0 10px">                white-space: normal;
</span><span class="cx" style="display: block; padding: 0 10px">                line-height: 1.8;
</span><span class="cx" style="display: block; padding: 0 10px">        }
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+
+       #edit-slug-box {
+               padding: 0;
+       }
+
+       #titlewrap .skiplink:focus {
+               top: 5px;
+       }
</ins><span class="cx" style="display: block; padding: 0 10px"> }
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="cx" style="display: block; padding: 0 10px"> @media only screen and (max-width: 1004px) {
</span></span></pre></div>
<a id="trunksrcwpadmineditformadvancedphp"></a>
<div class="modfile"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Modified: trunk/src/wp-admin/edit-form-advanced.php</h4>
<pre class="diff"><span>
<span class="info" style="display: block; padding: 0 10px; color: #888">--- trunk/src/wp-admin/edit-form-advanced.php 2024-10-07 02:47:18 UTC (rev 59187)
+++ trunk/src/wp-admin/edit-form-advanced.php   2024-10-07 16:55:26 UTC (rev 59188)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -546,6 +546,7 @@
</span><span class="cx" style="display: block; padding: 0 10px">        ?>
</span><span class="cx" style="display: block; padding: 0 10px">        <label class="screen-reader-text" id="title-prompt-text" for="title"><?php echo $title_placeholder; ?></label>
</span><span class="cx" style="display: block; padding: 0 10px">        <input type="text" name="post_title" size="30" value="<?php echo esc_attr( $post->post_title ); ?>" id="title" spellcheck="true" autocomplete="off" />
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+        <a href="#content" class="button-secondary screen-reader-text skiplink" onclick="if (tinymce) { tinymce.execCommand( 'mceFocus', false, 'content' ); }"><?php esc_html_e( 'Skip to Editor' ); ?></a>
</ins><span class="cx" style="display: block; padding: 0 10px"> </div>
</span><span class="cx" style="display: block; padding: 0 10px">        <?php
</span><span class="cx" style="display: block; padding: 0 10px">        /**
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -621,18 +622,16 @@
</span><span class="cx" style="display: block; padding: 0 10px">                array(
</span><span class="cx" style="display: block; padding: 0 10px">                        '_content_editor_dfw' => $_content_editor_dfw,
</span><span class="cx" style="display: block; padding: 0 10px">                        'drag_drop_upload'    => true,
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                        'tabfocus_elements'   => 'content-html,save-post',
</del><span class="cx" style="display: block; padding: 0 10px">                         'editor_height'       => 300,
</span><span class="cx" style="display: block; padding: 0 10px">                        'tinymce'             => array(
</span><span class="cx" style="display: block; padding: 0 10px">                                'resize'                  => false,
</span><span class="cx" style="display: block; padding: 0 10px">                                'wp_autoresize_on'        => $_wp_editor_expand,
</span><span class="cx" style="display: block; padding: 0 10px">                                'add_unload_trigger'      => false,
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                                'wp_keep_scroll_position' => ! $is_IE,
</del><span class="cx" style="display: block; padding: 0 10px">                         ),
</span><span class="cx" style="display: block; padding: 0 10px">                )
</span><span class="cx" style="display: block; padding: 0 10px">        );
</span><span class="cx" style="display: block; padding: 0 10px">        ?>
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-<table id="post-status-info"><tbody><tr>
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+<table id="post-status-info" role="presentation"><tbody><tr>
</ins><span class="cx" style="display: block; padding: 0 10px">         <td id="wp-word-count" class="hide-if-no-js">
</span><span class="cx" style="display: block; padding: 0 10px">        <?php
</span><span class="cx" style="display: block; padding: 0 10px">        printf(
</span></span></pre></div>
<a id="trunksrcwpincludesclasswpeditorphp"></a>
<div class="modfile"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Modified: trunk/src/wp-includes/class-wp-editor.php</h4>
<pre class="diff"><span>
<span class="info" style="display: block; padding: 0 10px; color: #888">--- trunk/src/wp-includes/class-wp-editor.php 2024-10-07 02:47:18 UTC (rev 59187)
+++ trunk/src/wp-includes/class-wp-editor.php   2024-10-07 16:55:26 UTC (rev 59188)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -188,10 +188,12 @@
</span><span class="cx" style="display: block; padding: 0 10px">                                if ( 'html' !== $default_editor ) {
</span><span class="cx" style="display: block; padding: 0 10px">                                        $default_editor = 'tinymce';
</span><span class="cx" style="display: block; padding: 0 10px">                                }
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                                $tmce_active = ( 'html' === $default_editor ) ? ' aria-pressed="true"' : '';
+                               $html_active = ( 'html' === $default_editor ) ? '' : ' aria-pressed="true"';
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                                $buttons .= '<button type="button" id="' . $editor_id_attr . '-tmce" class="wp-switch-editor switch-tmce"' .
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                         $buttons .= '<button type="button" id="' . $editor_id_attr . '-tmce"' . $html_active . ' class="wp-switch-editor switch-tmce"' .
</ins><span class="cx" style="display: block; padding: 0 10px">                                         ' data-wp-editor-id="' . $editor_id_attr . '">' . _x( 'Visual', 'Name for the Visual editor tab' ) . "</button>\n";
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                                $buttons .= '<button type="button" id="' . $editor_id_attr . '-html" class="wp-switch-editor switch-html"' .
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                         $buttons .= '<button type="button" id="' . $editor_id_attr . '-html"' . $tmce_active . ' class="wp-switch-editor switch-html"' .
</ins><span class="cx" style="display: block; padding: 0 10px">                                         ' data-wp-editor-id="' . $editor_id_attr . '">' . _x( 'Text', 'Name for the Text editor tab (formerly HTML)' ) . "</button>\n";
</span><span class="cx" style="display: block; padding: 0 10px">                        } else {
</span><span class="cx" style="display: block; padding: 0 10px">                                $default_editor = 'tinymce';
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -1113,7 +1115,6 @@
</span><span class="cx" style="display: block; padding: 0 10px">                        'end_container_on_empty_block' => true,
</span><span class="cx" style="display: block; padding: 0 10px">                        'wpeditimage_html5_captions'   => true,
</span><span class="cx" style="display: block; padding: 0 10px">                        'wp_lang_attr'                 => get_bloginfo( 'language' ),
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                        'wp_keep_scroll_position'      => false,
</del><span class="cx" style="display: block; padding: 0 10px">                         'wp_shortcut_labels'           => wp_json_encode( $shortcut_labels ),
</span><span class="cx" style="display: block; padding: 0 10px">                );
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span></span></pre></div>
<a id="trunksrcwpincludescsseditorcss"></a>
<div class="modfile"><h4 style="background-color: #eee; color: inherit; margin: 1em 0; padding: 1.3em; font-size: 115%">Modified: trunk/src/wp-includes/css/editor.css</h4>
<pre class="diff"><span>
<span class="info" style="display: block; padding: 0 10px; color: #888">--- trunk/src/wp-includes/css/editor.css      2024-10-07 02:47:18 UTC (rev 59187)
+++ trunk/src/wp-includes/css/editor.css        2024-10-07 16:55:26 UTC (rev 59188)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -1140,12 +1140,6 @@
</span><span class="cx" style="display: block; padding: 0 10px">        color: #1d2327;
</span><span class="cx" style="display: block; padding: 0 10px"> }
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-.wp-switch-editor:active,
-.html-active .switch-html:focus,
-.tmce-active .switch-tmce:focus {
-       box-shadow: none;
-}
-
</del><span class="cx" style="display: block; padding: 0 10px"> .wp-switch-editor:active {
</span><span class="cx" style="display: block; padding: 0 10px">        background-color: #f6f7f7;
</span><span class="cx" style="display: block; padding: 0 10px">        box-shadow: none;
</span></span></pre>
</div>
</div>

</body>
</html>