<!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>[53096] trunk/src: Quick/Bulk Edit: Fix initial focus and keyboard operability.</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/53096">53096</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/53096","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>2022-04-07 16:42:11 +0000 (Thu, 07 Apr 2022)</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'>Quick/Bulk Edit: Fix initial focus and keyboard operability.

Fix the quick and bulk edit forms to set an appropriate initial focus, use native HTML controls for all interactions, and set appropriate labels for controls. Improve the semantics of HTML wrappers so lists are enumerable by screen readers.

Props afercia, azaozz.
Fixes <a href="https://core.trac.wordpress.org/ticket/35483">#35483</a>.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunksrcjs_enqueuesadmininlineeditpostjs">trunk/src/js/_enqueues/admin/inline-edit-post.js</a></li>
<li><a href="#trunksrcwpadmincsscommoncss">trunk/src/wp-admin/css/common.css</a></li>
<li><a href="#trunksrcwpadmincsslisttablescss">trunk/src/wp-admin/css/list-tables.css</a></li>
<li><a href="#trunksrcwpadminincludesclasswppostslisttablephp">trunk/src/wp-admin/includes/class-wp-posts-list-table.php</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunksrcjs_enqueuesadmininlineeditpostjs"></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/inline-edit-post.js</h4>
<pre class="diff"><span>
<span class="info" style="display: block; padding: 0 10px; color: #888">--- trunk/src/js/_enqueues/admin/inline-edit-post.js  2022-04-07 13:51:07 UTC (rev 53095)
+++ trunk/src/js/_enqueues/admin/inline-edit-post.js    2022-04-07 16:42:11 UTC (rev 53096)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -131,7 +131,7 @@
</span><span class="cx" style="display: block; padding: 0 10px">                $('#bulk-edit').find('fieldset:first').after(
</span><span class="cx" style="display: block; padding: 0 10px">                        $('#inline-edit fieldset.inline-edit-categories').clone()
</span><span class="cx" style="display: block; padding: 0 10px">                ).siblings( 'fieldset:last' ).prepend(
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                        $('#inline-edit label.inline-edit-tags').clone()
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                 $( '#inline-edit .inline-edit-tags-wrap' ).clone()
</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">                $('select[name="_status"] option[value="future"]', bulkRow).remove();
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -197,9 +197,15 @@
</span><span class="cx" style="display: block; padding: 0 10px">                        // If the checkbox for a post is selected, add the post to the edit list.
</span><span class="cx" style="display: block; padding: 0 10px">                        if ( $(this).prop('checked') ) {
</span><span class="cx" style="display: block; padding: 0 10px">                                c = false;
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                                var id = $(this).val(), theTitle;
-                               theTitle = $('#inline_'+id+' .post_title').html() || wp.i18n.__( '(no title)' );
-                               te += '<div id="ttle'+id+'"><a id="_'+id+'" class="ntdelbutton" title="'+ wp.i18n.__( 'Remove From Bulk Edit' ) +'">X</a>'+theTitle+'</div>';
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                         var id = $( this ).val(),
+                                       theTitle = $( '#inline_' + id + ' .post_title' ).html() || wp.i18n.__( '(no title)' ),
+                                       buttonVisuallyHiddenText = wp.i18n.sprintf(
+                                               /* translators: %s: Post title. */
+                                               wp.i18n.__( 'Remove &#8220;%s&#8221; from Bulk Edit' ),
+                                               theTitle
+                                       );
+
+                               te += '<li class="ntdelitem"><button type="button" id="_' + id + '" class="button-link ntdelbutton"><span class="screen-reader-text">' + buttonVisuallyHiddenText + '</span></button><span class="ntdeltitle" aria-hidden="true">' + theTitle + '</span></li>';
</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"> 
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -208,18 +214,34 @@
</span><span class="cx" style="display: block; padding: 0 10px">                        return this.revert();
</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">-                // Add onclick events to the delete-icons in the bulk editors the post title list.
-               $('#bulk-titles').html(te);
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+         // Populate the list of items to bulk edit.
+               $( '#bulk-titles' ).html( '<ul id="bulk-titles-list" role="list">' + te + '</ul>' );
+
</ins><span class="cx" style="display: block; padding: 0 10px">                 /**
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                 * Binds on click events to the checkboxes before the posts in the table.
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+          * Binds on click events to handle the list of items to bulk edit.
</ins><span class="cx" style="display: block; padding: 0 10px">                  *
</span><span class="cx" style="display: block; padding: 0 10px">                 * @listens click
</span><span class="cx" style="display: block; padding: 0 10px">                 */
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                $('#bulk-titles a').on( 'click', function(){
-                       var id = $(this).attr('id').substr(1);
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+         $( '#bulk-titles .ntdelbutton' ).click( function() {
+                       var $this = $( this ),
+                               id = $this.attr( 'id' ).substr( 1 ),
+                               $prev = $this.parent().prev().children( '.ntdelbutton' ),
+                               $next = $this.parent().next().children( '.ntdelbutton' );
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                        $('table.widefat input[value="' + id + '"]').prop('checked', false);
-                       $('#ttle'+id).remove();
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                 $( 'table.widefat input[value="' + id + '"]' ).prop( 'checked', false );
+                       $( '#_' + id ).parent().remove();
+                       wp.a11y.speak( wp.i18n.__( 'Item removed.' ), 'assertive' );
+
+                       // Move focus to a proper place when items are removed.
+                       if ( $next.length ) {
+                               $next.focus();
+                       } else if ( $prev.length ) {
+                               $prev.focus();
+                       } else {
+                               $( '#bulk-titles-list' ).remove();
+                               inlineEditPost.revert();
+                               wp.a11y.speak( wp.i18n.__( 'All selected items have been removed. Select new items to use Bulk Actions.' ) );
+                       }
</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">                // Enable auto-complete for tags when editing posts.
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -238,6 +260,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"> 
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                // Set initial focus on the Bulk Edit region.
+               $( '#bulk-edit .inline-edit-wrapper' ).attr( 'tabindex', '-1' ).focus();
</ins><span class="cx" style="display: block; padding: 0 10px">                 // Scrolls to the top of the table where the editor is rendered.
</span><span class="cx" style="display: block; padding: 0 10px">                $('html, body').animate( { scrollTop: 0 }, 'fast' );
</span><span class="cx" style="display: block; padding: 0 10px">        },
</span></span></pre></div>
<a id="trunksrcwpadmincsscommoncss"></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/common.css</h4>
<pre class="diff"><span>
<span class="info" style="display: block; padding: 0 10px; color: #888">--- trunk/src/wp-admin/css/common.css 2022-04-07 13:51:07 UTC (rev 53095)
+++ trunk/src/wp-admin/css/common.css   2022-04-07 16:42:11 UTC (rev 53096)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -789,7 +789,7 @@
</span><span class="cx" style="display: block; padding: 0 10px"> /* @todo can we combine these into a class or use an existing dashicon one? */
</span><span class="cx" style="display: block; padding: 0 10px"> .welcome-panel .welcome-panel-close:before,
</span><span class="cx" style="display: block; padding: 0 10px"> .tagchecklist .ntdelbutton .remove-tag-icon:before,
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-#bulk-titles div a:before,
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+#bulk-titles .ntdelbutton:before,
</ins><span class="cx" style="display: block; padding: 0 10px"> .notice-dismiss:before {
</span><span class="cx" style="display: block; padding: 0 10px">        background: none;
</span><span class="cx" style="display: block; padding: 0 10px">        color: #787c82;
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -808,10 +808,6 @@
</span><span class="cx" style="display: block; padding: 0 10px">        margin: 0;
</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">-#bulk-titles div a:before {
-       margin: 1px 0;
-}
-
</del><span class="cx" style="display: block; padding: 0 10px"> .tagchecklist .ntdelbutton .remove-tag-icon:before {
</span><span class="cx" style="display: block; padding: 0 10px">        margin-left: 2px;
</span><span class="cx" style="display: block; padding: 0 10px">        border-radius: 50%;
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -826,8 +822,8 @@
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="cx" style="display: block; padding: 0 10px"> .tagchecklist .ntdelbutton:hover .remove-tag-icon:before,
</span><span class="cx" style="display: block; padding: 0 10px"> .tagchecklist .ntdelbutton:focus .remove-tag-icon:before,
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-#bulk-titles div a:hover:before,
-#bulk-titles div a:focus:before {
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+#bulk-titles .ntdelbutton:hover:before,
+#bulk-titles .ntdelbutton:focus:before {
</ins><span class="cx" style="display: block; padding: 0 10px">         color: #d63638;
</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="trunksrcwpadmincsslisttablescss"></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/list-tables.css</h4>
<pre class="diff"><span>
<span class="info" style="display: block; padding: 0 10px; color: #888">--- trunk/src/wp-admin/css/list-tables.css    2022-04-07 13:51:07 UTC (rev 53095)
+++ trunk/src/wp-admin/css/list-tables.css      2022-04-07 16:42:11 UTC (rev 53096)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -858,18 +858,37 @@
</span><span class="cx" style="display: block; padding: 0 10px"> /*     Layout */
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="cx" style="display: block; padding: 0 10px"> #wpbody-content .inline-edit-row fieldset {
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-        font-size: 12px;
</del><span class="cx" style="display: block; padding: 0 10px">         float: left;
</span><span class="cx" style="display: block; padding: 0 10px">        margin: 0;
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-        padding: 0;
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+ padding: 0 12px 0 0;
</ins><span class="cx" style="display: block; padding: 0 10px">         width: 100%;
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+        box-sizing: border-box;
</ins><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">-tr.inline-edit-row td,
-#wpbody-content .inline-edit-row fieldset .inline-edit-col {
-       padding: 0 0.5em;
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+#wpbody-content .inline-edit-row td fieldset:last-of-type {
+       padding-right: 0;
</ins><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">+tr.inline-edit-row td {
+       padding: 0;
+       /* Prevents the focus style on .inline-edit-wrapper from being cutted-off */
+       position: relative;
+}
+
+.inline-edit-wrapper {
+       display: flow-root;
+       padding: 0 12px;
+       border: 1px solid transparent;
+       border-radius: 4px;
+}
+
+.inline-edit-wrapper:focus {
+       border-color: #2271b1;
+       box-shadow: 0 0 0 1px #2271b1;
+       /* Only visible in Windows High Contrast mode */
+       outline: 2px solid transparent;
+}
+
</ins><span class="cx" style="display: block; padding: 0 10px"> #wpbody-content .quick-edit-row-post .inline-edit-col-left {
</span><span class="cx" style="display: block; padding: 0 10px">        width: 40%;
</span><span class="cx" style="display: block; padding: 0 10px"> }
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -888,7 +907,7 @@
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="cx" style="display: block; padding: 0 10px"> #wpbody-content .quick-edit-row-page .inline-edit-col-right,
</span><span class="cx" style="display: block; padding: 0 10px"> #wpbody-content .bulk-edit-row-post .inline-edit-col-right {
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-        width: 49%;
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+ width: 50%;
</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"> #wpbody-content .bulk-edit-row .inline-edit-col-left {
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -918,8 +937,8 @@
</span><span class="cx" style="display: block; padding: 0 10px">        flex-wrap: wrap;
</span><span class="cx" style="display: block; padding: 0 10px">        align-items: center;
</span><span class="cx" style="display: block; padding: 0 10px">        clear: both;
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-        padding: 0.5em;
-       margin: 0.5em 0 0;
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+ margin: 0;
+       padding: 0.5em 0 1em;
</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"> .inline-edit-save.submit .button {
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -947,15 +966,11 @@
</span><span class="cx" style="display: block; padding: 0 10px"> /* Needs higher specificity for the padding */
</span><span class="cx" style="display: block; padding: 0 10px"> #the-list .inline-edit-row .inline-edit-legend {
</span><span class="cx" style="display: block; padding: 0 10px">        margin: 0;
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-        padding: 0.2em 0.5em 0;
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+ padding: 0.2em 0;
</ins><span class="cx" style="display: block; padding: 0 10px">         line-height: 2.5;
</span><span class="cx" style="display: block; padding: 0 10px">        font-weight: 600;
</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">-#the-list #bulk-edit.inline-edit-row .inline-edit-legend {
-       padding: 0.2em 0.5em;
-}
-
</del><span class="cx" style="display: block; padding: 0 10px"> .inline-edit-row fieldset span.title,
</span><span class="cx" style="display: block; padding: 0 10px"> .inline-edit-row fieldset span.checkbox-title {
</span><span class="cx" style="display: block; padding: 0 10px">        margin: 0;
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -1062,24 +1077,8 @@
</span><span class="cx" style="display: block; padding: 0 10px">        width: 8em;
</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">-ul.cat-checklist {
-       height: 12em;
-       border: solid 1px #dcdcde;
-       overflow-y: scroll;
-       padding: 0 5px;
-       margin: 0;
-       background-color: #fff;
-}
-
-#bulk-titles {
-       display: block;
-       height: 12em;
-       border: 1px solid #dcdcde;
-       overflow-y: scroll;
-       padding: 0 5px;
-       margin: 0 0 5px;
-}
-
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+#bulk-titles-list,
+#bulk-titles-list li,
</ins><span class="cx" style="display: block; padding: 0 10px"> .inline-edit-row fieldset ul.cat-checklist li,
</span><span class="cx" style="display: block; padding: 0 10px"> .inline-edit-row fieldset ul.cat-checklist input {
</span><span class="cx" style="display: block; padding: 0 10px">        margin: 0;
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -1086,10 +1085,9 @@
</span><span class="cx" style="display: block; padding: 0 10px">        position: relative; /* RTL fix, #WP27629 */
</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">-.inline-edit-row fieldset ul.cat-checklist label,
-.inline-edit-row #bulk-titles div {
-       font-style: normal;
-       font-size: 11px;
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+.inline-edit-row fieldset ul.cat-checklist input {
+       margin-top: -1px;
+       margin-left: 3px;
</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"> .inline-edit-row fieldset label input.inline-edit-menu-order-input {
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -1109,29 +1107,50 @@
</span><span class="cx" style="display: block; padding: 0 10px">        float: left;
</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">-#bulk-titles {
-       line-height: 140%;
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+#bulk-titles,
+ul.cat-checklist {
+       height: 14em;
+       border: 1px solid #ddd;
+       margin: 0 0 5px;
+       padding: 0.2em 5px;
+       overflow-y: scroll;
</ins><span class="cx" style="display: block; padding: 0 10px"> }
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-#bulk-titles div {
-       margin: 0.2em 0.3em;
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+
+#bulk-titles .ntdelbutton,
+#bulk-titles .ntdeltitle,
+.inline-edit-row fieldset ul.cat-checklist label {
+       display: inline-block;
+       margin: 0;
+       padding: 3px 0;
+       line-height: 20px;
+       vertical-align: top;
</ins><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">-#bulk-titles div a {
-       cursor: pointer;
-       display: block;
-       float: left;
-       height: 18px;
-       margin: 0 3px 0 -2px;
-       overflow: hidden;
-       position: relative;
-       width: 20px;
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+#bulk-titles .ntdelitem {
+       padding-left: 23px;
</ins><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">-#bulk-titles div a:before {
-       position: relative;
-       top: -3px;
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+#bulk-titles .ntdelbutton {
+       width: 26px;
+       height: 26px;
+       margin: 0 0 0 -26px;
+       text-align: center;
+       border-radius: 3px;
</ins><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">+#bulk-titles .ntdelbutton:before {
+       display: inline-block;
+       vertical-align: top;
+}
+
+#bulk-titles .ntdelbutton:focus {
+       box-shadow: 0 0 0 2px #3582c4;
+       /* Only visible in Windows High Contrast mode */
+       outline: 2px solid transparent;
+       /* Reset inherited offset from Gutenberg */
+       outline-offset: 0;
+}
+
</ins><span class="cx" style="display: block; padding: 0 10px"> /*------------------------------------------------------------------------------
</span><span class="cx" style="display: block; padding: 0 10px">   17.0 - Plugins
</span><span class="cx" style="display: block; padding: 0 10px"> ------------------------------------------------------------------------------*/
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -1945,8 +1964,22 @@
</span><span class="cx" style="display: block; padding: 0 10px">        #wpbody-content .bulk-edit-row .inline-edit-col-bottom {
</span><span class="cx" style="display: block; padding: 0 10px">                float: none;
</span><span class="cx" style="display: block; padding: 0 10px">                width: 100%;
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                padding: 0;
</ins><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">+        #the-list .inline-edit-row .inline-edit-legend,
+       .inline-edit-row span.title {
+               font-size: 16px;
+       }
+
+       .inline-edit-row p.howto {
+               font-size: 14px;
+       }
+
+       #wpbody-content .inline-edit-row-page .inline-edit-col-right {
+               margin-top: 0;
+       }
+
</ins><span class="cx" style="display: block; padding: 0 10px">         #wpbody-content .quick-edit-row fieldset .inline-edit-col label,
</span><span class="cx" style="display: block; padding: 0 10px">        #wpbody-content .quick-edit-row fieldset .inline-edit-group label,
</span><span class="cx" style="display: block; padding: 0 10px">        #wpbody-content .bulk-edit-row fieldset .inline-edit-col label,
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -1972,20 +2005,35 @@
</span><span class="cx" style="display: block; padding: 0 10px">                padding: 3px 4px;
</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">-        .inline-edit-row fieldset ul.cat-checklist label,
-       .inline-edit-row #bulk-titles div {
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+ #bulk-titles .ntdelbutton,
+       #bulk-titles .ntdeltitle,
+       .inline-edit-row fieldset ul.cat-checklist label {
+               padding: 6px 0;
</ins><span class="cx" style="display: block; padding: 0 10px">                 font-size: 16px;
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                line-height: 28px;
</ins><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">+        #bulk-titles .ntdelitem {
+               padding-left: 37px;
+       }
+
+       #bulk-titles .ntdelbutton {
+               width: 40px;
+               height: 40px;
+               margin: 0 0 0 -40px;
+               overflow: hidden;
+       }
+
+       #bulk-titles .ntdelbutton:before {
+               font-size: 20px;
+               line-height: 28px;
+       }
+
</ins><span class="cx" style="display: block; padding: 0 10px">         .inline-edit-row fieldset label span.title,
</span><span class="cx" style="display: block; padding: 0 10px">        .inline-edit-row fieldset.inline-edit-date legend {
</span><span class="cx" style="display: block; padding: 0 10px">                float: none;
</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">-        .inline-edit-row fieldset label.inline-edit-tags {
-               padding: 0 0.5em;
-       }
-
</del><span class="cx" style="display: block; padding: 0 10px">         .inline-edit-row fieldset .inline-edit-col label.inline-edit-tags {
</span><span class="cx" style="display: block; padding: 0 10px">                padding: 0;
</span><span class="cx" style="display: block; padding: 0 10px">        }
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -2015,14 +2063,6 @@
</span><span class="cx" style="display: block; padding: 0 10px">                display: block;
</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">-        #bulk-titles div {
-               margin: 0.8em 0.3em;
-       }
-
-       #bulk-titles div a {
-               height: 22px;
-       }
-
</del><span class="cx" style="display: block; padding: 0 10px">         /* Updates */
</span><span class="cx" style="display: block; padding: 0 10px">        #wpbody-content .updates-table .plugin-title {
</span><span class="cx" style="display: block; padding: 0 10px">                width: auto;
</span></span></pre></div>
<a id="trunksrcwpadminincludesclasswppostslisttablephp"></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/includes/class-wp-posts-list-table.php</h4>
<pre class="diff"><span>
<span class="info" style="display: block; padding: 0 10px; color: #888">--- trunk/src/wp-admin/includes/class-wp-posts-list-table.php 2022-04-07 13:51:07 UTC (rev 53095)
+++ trunk/src/wp-admin/includes/class-wp-posts-list-table.php   2022-04-07 16:42:11 UTC (rev 53096)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -1611,9 +1611,9 @@
</span><span class="cx" style="display: block; padding: 0 10px">                        ?>
</span><span class="cx" style="display: block; padding: 0 10px">                        <tr id="<?php echo $bulk ? 'bulk-edit' : 'inline-edit'; ?>" class="<?php echo $classes; ?>" style="display: none">
</span><span class="cx" style="display: block; padding: 0 10px">                        <td colspan="<?php echo $this->get_column_count(); ?>" class="colspanchange">
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                 <div class="inline-edit-wrapper" role="region" aria-labelledby="inline-edit-legend">
</ins><span class="cx" style="display: block; padding: 0 10px">                         <fieldset class="inline-edit-col-left">
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                                <legend class="inline-edit-legend"><?php echo $bulk ? __( 'Bulk Edit' ) : __( 'Quick Edit' ); ?></legend>
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                         <legend class="inline-edit-legend" id="inline-edit-legend"><?php echo $bulk ? __( 'Bulk Edit' ) : __( 'Quick Edit' ); ?></legend>
</ins><span class="cx" style="display: block; padding: 0 10px">                                 <div class="inline-edit-col">
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="cx" style="display: block; padding: 0 10px">                                <?php if ( post_type_supports( $screen->post_type, 'title' ) ) : ?>
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -1828,12 +1828,13 @@
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="cx" style="display: block; padding: 0 10px">                                                <?php if ( current_user_can( $taxonomy->cap->assign_terms ) ) : ?>
</span><span class="cx" style="display: block; padding: 0 10px">                                                        <?php $taxonomy_name = esc_attr( $taxonomy->name ); ?>
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                                                 <div class="inline-edit-tags-wrap">
</ins><span class="cx" style="display: block; padding: 0 10px">                                                         <label class="inline-edit-tags">
</span><span class="cx" style="display: block; padding: 0 10px">                                                                <span class="title"><?php echo esc_html( $taxonomy->labels->name ); ?></span>
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                                                                <textarea data-wp-taxonomy="<?php echo $taxonomy_name; ?>" cols="22" rows="1" name="tax_input[<?php echo $taxonomy_name; ?>]" class="tax_input_<?php echo $taxonomy_name; ?>"></textarea>
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                                                         <textarea data-wp-taxonomy="<?php echo $taxonomy_name; ?>" cols="22" rows="1" name="tax_input[<?php echo esc_attr( $taxonomy->name ); ?>]" class="tax_input_<?php echo esc_attr( $taxonomy->name ); ?>" aria-describedby="inline-edit-<?php echo esc_attr( $taxonomy->name ); ?>-desc"></textarea>
</ins><span class="cx" style="display: block; padding: 0 10px">                                                         </label>
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                                                 <p class="howto" id="inline-edit-<?php echo esc_attr( $taxonomy->name ); ?>-desc"><?php echo esc_html( $taxonomy->labels->separate_items_with_commas ); ?></p>
+                                                       </div>
</ins><span class="cx" style="display: block; padding: 0 10px">                                                 <?php endif; // current_user_can( 'assign_terms' ) ?>
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="cx" style="display: block; padding: 0 10px">                                        <?php endforeach; // $flat_taxonomies as $taxonomy ?>
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -2030,6 +2031,7 @@
</span><span class="cx" style="display: block; padding: 0 10px">                                        <p class="error"></p>
</span><span class="cx" style="display: block; padding: 0 10px">                                </div>
</span><span class="cx" style="display: block; padding: 0 10px">                        </div>
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                </div> <!-- end of .inline-edit-wrapper -->
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="cx" style="display: block; padding: 0 10px">                        </td></tr>
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span></span></pre>
</div>
</div>

</body>
</html>