<!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>[33016] trunk/src/wp-admin: List tables: A better responsive view.</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 { 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/33016">33016</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/33016","name":"Review Commit"}}</script></dd>
<dt style="float: left; width: 6em; font-weight: bold">Author</dt> <dd>helen</dd>
<dt style="float: left; width: 6em; font-weight: bold">Date</dt> <dd>2015-07-01 01:30:23 +0000 (Wed, 01 Jul 2015)</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'>List tables: A better responsive view.

Instead of truncating columns, the data that's already in the markup can now be toggled into view. Only seems appropriate to celebrate four years of contributing by finally doing the first thing I ever mocked up.

Known issues / concerns:
* Custom list tables that don't define a primary column will show nothing at all. These are not extremely common, as `WP_List_Table` isn't really recommended for plugin consumption, but it happens. We need to come up with some kind of fallback.
* Some visual elements, particularly whitespace, could use refining.
* Needs a11y review.
* Touch performance on iOS feels sluggish - is there anything we can do about that?
* Would this be better accordion-style (only one expanded at a time)?
* Is `wp_strip_all_tags()` good enough for column titles that have HTML in them? It's essentially a workaround for the fact that core's comments column does that for the icon, which maybe it shouldn't. Perhaps worth another ticket, as a markup change would be fairly independent.
* Visual hierarchy is not great when expanded (also worthy of another ticket).
* Quick edit now becomes noticeably more annoying to cancel out of, as you have to scroll all the way down and you lose your position from before it was opened. Again, worthy of another ticket.

props Michael Arestad, helen.
see <a href="https://core.trac.wordpress.org/ticket/32395">#32395</a>.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunksrcwpadmincsslisttablescss">trunk/src/wp-admin/css/list-tables.css</a></li>
<li><a href="#trunksrcwpadminincludesclasswpcommentslisttablephp">trunk/src/wp-admin/includes/class-wp-comments-list-table.php</a></li>
<li><a href="#trunksrcwpadminincludesclasswplisttablephp">trunk/src/wp-admin/includes/class-wp-list-table.php</a></li>
<li><a href="#trunksrcwpadminincludesclasswpmssiteslisttablephp">trunk/src/wp-admin/includes/class-wp-ms-sites-list-table.php</a></li>
<li><a href="#trunksrcwpadminincludesclasswpmsuserslisttablephp">trunk/src/wp-admin/includes/class-wp-ms-users-list-table.php</a></li>
<li><a href="#trunksrcwpadminincludesclasswppostslisttablephp">trunk/src/wp-admin/includes/class-wp-posts-list-table.php</a></li>
<li><a href="#trunksrcwpadminincludesclasswpuserslisttablephp">trunk/src/wp-admin/includes/class-wp-users-list-table.php</a></li>
<li><a href="#trunksrcwpadminjscommonjs">trunk/src/wp-admin/js/common.js</a></li>
<li><a href="#trunksrcwpadminjsinlineeditpostjs">trunk/src/wp-admin/js/inline-edit-post.js</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<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    2015-07-01 01:05:29 UTC (rev 33015)
+++ trunk/src/wp-admin/css/list-tables.css      2015-07-01 01:30:23 UTC (rev 33016)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -428,6 +428,60 @@
</span><span class="cx" style="display: block; padding: 0 10px">        content: '\f140';
</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">+.wp-list-table .toggle-row {
+       position: absolute;
+       right: 8px;
+       top: 10px;
+       display: none;
+       padding: 0;
+       width: 40px;
+       height: 40px;
+       border: none;
+       outline: none;
+       background: transparent;
+}
+
+.wp-list-table .toggle-row:hover {
+       cursor: pointer;
+}
+
+.wp-list-table .toggle-row:focus {
+    -webkit-box-shadow:
+       0 0 0 1px #5b9dd9,
+               0 0 2px 1px rgba(30, 140, 190, .8);
+    box-shadow:
+       0 0 0 1px #5b9dd9,
+               0 0 2px 1px rgba(30, 140, 190, .8);
+}
+
+.ie8 .wp-list-table .toggle-row:focus {
+       outline: #5b9dd9 solid 1px;
+}
+
+.wp-list-table .toggle-row:active {
+       -webkit-box-shadow: none;
+       box-shadow: none;
+}
+
+.wp-list-table .toggle-row:before {
+       position: absolute;
+       top: 0;
+       left: 10px;
+       display: block;
+       padding: 0;
+       color: #666;
+       content: '\f140';
+       font: normal 20px/1 'dashicons';
+       line-height: 10px;
+       -webkit-font-smoothing: antialiased;
+       -moz-osx-font-smoothing: grayscale;
+       speak: none;
+}
+
+.wp-list-table .is-expanded .toggle-row:before {
+       content: '\f142';
+}
+
</ins><span class="cx" style="display: block; padding: 0 10px"> tr.wp-locked .locked-indicator {
</span><span class="cx" style="display: block; padding: 0 10px">        margin-left: 6px;
</span><span class="cx" style="display: block; padding: 0 10px">        height: 20px;
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -1303,7 +1357,8 @@
</span><span class="cx" style="display: block; padding: 0 10px">        content: '\f147';
</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">-.plugins .plugin-update-tr .plugin-update {
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+.wp-list-table.plugins tbody tr.plugin-update-tr td.plugin-update {
+       overflow: hidden; /* clearfix */
</ins><span class="cx" style="display: block; padding: 0 10px">         padding: 0;
</span><span class="cx" style="display: block; padding: 0 10px">        -webkit-box-shadow: inset 0 -1px 0 rgba(0,0,0,0.1);
</span><span class="cx" style="display: block; padding: 0 10px">        box-shadow: inset 0 -1px 0 rgba(0,0,0,0.1);
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -1676,32 +1731,75 @@
</span><span class="cx" style="display: block; padding: 0 10px">                font-size: 14px;
</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">-        /* Columns to hide */
-       .fixed .column-date,
-       .fixed .column-author,
-       .column-categories,
-       .column-tags,
-       .tags .column-description,
-       .media .column-parent,
-       .media .column-comments,
-       .users .column-email,
-       .users .column-name,
-       .sites .column-registered,
-       .sites .column-users {
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+ .wp-list-table th:not(.column-primary),
+       .wp-list-table th:not(.column-primary),
+       .wp-list-table tr:not(.inline-edit-row) td:not(.column-primary):not(.check-column) {
</ins><span class="cx" style="display: block; padding: 0 10px">                 display: 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">+        /* Checkboxes need to show */
+       .wp-list-table tr th.check-column {
+               display: table-cell;
+               width: 35px;
+       }
+
+       .wp-list-table .toggle-row {
+               display: block;
+       }
+
+       .wp-list-table tr:not(.inline-edit-row) td:not(.check-column) {
+               position: relative;
+               clear: both;
+               display: block;
+               width: auto !important; /* needs to override some columns that are more specifically targeted */
+       }
+
+       .wp-list-table td.column-primary {
+               padding-right: 50px; /* space for toggle button */
+       }
+
+       .wp-list-table tr:not(.inline-edit-row) td:not(.column-primary):not(.check-column) {
+               padding: 3px 8px 3px 35%;
+       }
+
+       .wp-list-table tr:not(.inline-edit-row) td:not(.column-primary)::before {
+               position: absolute;
+               left: 10px; /* match padding of regular table cell */
+               display: block;
+               overflow: hidden;
+               width: 32%; /* leave a little space for a gutter */
+               content: attr(data-colname);
+               white-space: nowrap;
+               text-overflow: ellipsis;
+       }
+
+       .wp-list-table .is-expanded td:not(.hidden) {
+               display: block !important;
+               overflow: hidden; /* clearfix */
+       }
+
+       /* Special cases */
+       .widefat .num,
+       .column-posts {
+               text-align: left;
+       }
+
+       #comments-form .fixed .column-author {
+               display: none !important;
+       }
+
</ins><span class="cx" style="display: block; padding: 0 10px">         .fixed .column-comment .comment-author {
</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">-        /* Posts */
-       .column-title {
-               width: 85%;
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+ #the-comment-list .is-expanded td {
+               -webkit-box-shadow: none;
+               box-shadow: none;
</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">-        .fixed .column-comments, .widefat .check-column {
-               width: 35px
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+ #the-comment-list .is-expanded td:last-child {
+               -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.1);
+               box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.1);
</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">        .widefat thead .check-column, .widefat tfoot .check-column {
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -1712,11 +1810,6 @@
</span><span class="cx" style="display: block; padding: 0 10px">                word-wrap: normal;
</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">-        /* Media */
-       .media .column-title {
-               width: auto;
-       }
-
</del><span class="cx" style="display: block; padding: 0 10px">         /* Quick Edit and Bulk Edit */
</span><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">        #wpbody-content .quick-edit-row-post .inline-edit-col-right,
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -1792,30 +1885,6 @@
</span><span class="cx" style="display: block; padding: 0 10px">                height: 22px;
</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">-        /* Taxonomies */
-       .tags .column-posts {
-               width: 74px;
-       }
-
-       .tags .column-slug {
-               width: 30%;
-       }
-
-       /* Comments */
-       .comments .column-response {
-               width: 35%;
-       }
-
-       /* Users */
-       .users .column-role {
-               width: 35%;
-       }
-
-       /* Network admin sites */
-       .sites .column-blogname {
-               width: 55%;
-       }
-
</del><span class="cx" style="display: block; padding: 0 10px">         /* Updates */
</span><span class="cx" style="display: block; padding: 0 10px">        #wpbody-content #update-themes-table .plugin-title {
</span><span class="cx" style="display: block; padding: 0 10px">                width: auto;
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -1831,32 +1900,18 @@
</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">        /* Plugin/Theme Management Page */
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-        .wp-list-table.plugins {
-               position: relative;
-               margin-bottom: 15px;
-       }
-
-       #wpbody-content .wp-list-table.plugins thead .column-description,
-       #wpbody-content .wp-list-table.plugins tfoot .column-description,
-       .wp-list-table.plugins th#description {
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+ .wp-list-table.plugins .toggle-row {
</ins><span class="cx" style="display: block; padding: 0 10px">                 display: 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">-        #wpbody-content .wp-list-table.plugins,
-       #wpbody-content .wp-list-table.plugins thead,
-       #wpbody-content .wp-list-table.plugins tbody,
-       #wpbody-content .wp-list-table.plugins tr,
-       #wpbody-content .wp-list-table.plugins .column-description,
-       #wpbody-content .wp-list-table.plugins .plugin-title,
-       #wpbody-content .wp-list-table.plugins .theme-title,
-       #wpbody-content .wp-list-table.plugins .plugin-update,
-       #wpbody-content .wp-list-table.plugins .manage-column.column-name {
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+ #wpbody-content .wp-list-table.plugins td {
</ins><span class="cx" style="display: block; padding: 0 10px">                 display: block;
</span><span class="cx" style="display: block; padding: 0 10px">                width: auto;
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                padding: 10px 9px; /* reset from other list tables that have a label at this width */
</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">-        .active, .inactive {
-               padding-top: 0;
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+ #wpbody-content .wp-list-table.plugins .column-description {
+               padding-top: 2px;
</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">        .wp-list-table.plugins .plugin-title,
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -1865,11 +1920,9 @@
</span><span class="cx" style="display: block; padding: 0 10px">                padding-bottom: 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">-        .plugins tr.active + tr.inactive th.check-column,
</del><span class="cx" style="display: block; padding: 0 10px">         .plugins tr.active + tr.inactive td,
</span><span class="cx" style="display: block; padding: 0 10px">        .wp-list-table.plugins .plugin-title,
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-        .wp-list-table.plugins .theme-title,
-       .wp-list-table.plugins tbody th {
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+ .wp-list-table.plugins .theme-title {
</ins><span class="cx" style="display: block; padding: 0 10px">                 -webkit-box-shadow: none;
</span><span class="cx" style="display: block; padding: 0 10px">                box-shadow: none;
</span><span class="cx" style="display: block; padding: 0 10px">        }
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -1878,7 +1931,9 @@
</span><span class="cx" style="display: block; padding: 0 10px">                padding: 1px 0 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">-        .plugins tr.active + tr.inactive td.column-description {
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+ .plugins tr.active + tr.inactive th.check-column,
+       .plugins tr.active + tr.inactive td.column-description,
+       .plugins .plugin-update-tr:before {
</ins><span class="cx" style="display: block; padding: 0 10px">                 -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.1);
</span><span class="cx" style="display: block; padding: 0 10px">                box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.1);
</span><span class="cx" style="display: block; padding: 0 10px">        }
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -1888,71 +1943,25 @@
</span><span class="cx" style="display: block; padding: 0 10px">                border-top: 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">-        .wp-list-table.plugins .column-description {
-               padding-top: 0;
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+ /* mimic the checkbox th */
+       .plugins .plugin-update-tr:before {
+               content: '';
+               display: table-cell;
</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">-        .wp-list-table.plugins .manage-column.column-name,
-       .wp-list-table.plugins .column-description,
-       .wp-list-table.plugins .plugin-title,
-       .wp-list-table.plugins .theme-title {
-               padding-right: 12px;
-               padding-left: 46px;
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+ .plugins .active.update + .plugin-update-tr:before {
+               border-left: 4px solid #d54e21;
+               background-color: #fef7f1;
</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">-        .wp-list-table.plugins .manage-column.column-name {
-               padding-top: 11px;
-               padding-bottom: 12px;
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+ .plugins .plugin-update-tr .plugin-update {
+               border-left: none;
</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">-        .wp-list-table.plugins .manage-column.column-name.sortable {
-               padding: 4px 12px 4px 36px;
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+ .plugin-update-tr .update-message {
+               margin-left: 0;
</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">-        .wp-list-table.plugins tr {
-               position: relative;
-       }
-
-       .wp-list-table.plugins th.check-column,
-       .wp-list-table.plugins thead td.check-column,
-       .wp-list-table.plugins tfoot td.check-column,
-       .wp-list-table.plugins tr.update th.check-column {
-               position: absolute;
-               height: auto;
-               top: 0;
-               bottom: 0;
-               left: 0;
-               padding-left: 2px;
-               padding-top: 18px;
-       }
-
-       .wp-list-table.plugins thead td.check-column,
-       .wp-list-table.plugins tfoot td.check-column {
-               padding-left: 3px;
-               padding-top: 11px;
-               background: none;
-       }
-
-       .plugins tbody th.check-column input[type="checkbox"] {
-               margin-top: -3px;
-               margin-left: 9px;
-       }
-
-       .plugins tbody .active th.check-column input[type="checkbox"],
-       .plugins tbody .active.update th.check-column input[type="checkbox"] {
-               margin-left: 5px;
-       }
-
-       .wp-list-table.plugins thead .check-column input,
-       .wp-list-table.plugins tfoot .check-column input {
-               margin-top: -2px;
-               margin-left: 8px;
-       }
-
-       .wp-list-table.plugins .active th.check-column {
-               background: none;
-       }
-
</del><span class="cx" style="display: block; padding: 0 10px">         .wp-list-table.plugins .plugin-title strong,
</span><span class="cx" style="display: block; padding: 0 10px">        .wp-list-table.plugins .theme-title strong {
</span><span class="cx" style="display: block; padding: 0 10px">                font-size: 1.4em;
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -1991,13 +2000,3 @@
</span><span class="cx" style="display: block; padding: 0 10px">                box-shadow: inset 0 -1px 0 rgba(0,0,0,0.1);
</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">-
-/* Smartphone */
-@media screen and (max-width: 600px) {
-       /* Remove slug column from taxonomy list page
-          and role column from users list page */
-       .tags .column-slug,
-       .users .column-role {
-               display: none;
-       }
-}
</del></span></pre></div>
<a id="trunksrcwpadminincludesclasswpcommentslisttablephp"></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-comments-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-comments-list-table.php      2015-07-01 01:05:29 UTC (rev 33015)
+++ trunk/src/wp-admin/includes/class-wp-comments-list-table.php        2015-07-01 01:30:23 UTC (rev 33016)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -395,7 +395,7 @@
</span><span class="cx" style="display: block; padding: 0 10px">                $this->display_tablenav( 'top' );
</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 class="<?php echo implode( ' ', $this->get_table_classes() ); ?>">
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+<table class="wp-list-table <?php echo implode( ' ', $this->get_table_classes() ); ?>">
</ins><span class="cx" style="display: block; padding: 0 10px">         <thead>
</span><span class="cx" style="display: block; padding: 0 10px">        <tr>
</span><span class="cx" style="display: block; padding: 0 10px">                <?php $this->print_column_headers(); ?>
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -466,98 +466,102 @@
</span><span class="cx" style="display: block; padding: 0 10px">                        return;
</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">+                if ( $primary !== $column_name ) {
+                       return '';
+               }
+
</ins><span class="cx" style="display: block; padding: 0 10px">                 $post = get_post();
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="cx" style="display: block; padding: 0 10px">                $the_comment_status = wp_get_comment_status( $comment->comment_ID );
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="cx" style="display: block; padding: 0 10px">                $out = '';
</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 ( $primary === $column_name ) {
-                       $del_nonce = esc_html( '_wpnonce=' . wp_create_nonce( "delete-comment_$comment->comment_ID" ) );
-                       $approve_nonce = esc_html( '_wpnonce=' . wp_create_nonce( "approve-comment_$comment->comment_ID" ) );
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+         $del_nonce = esc_html( '_wpnonce=' . wp_create_nonce( "delete-comment_$comment->comment_ID" ) );
+               $approve_nonce = esc_html( '_wpnonce=' . wp_create_nonce( "approve-comment_$comment->comment_ID" ) );
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                        $url = "comment.php?c=$comment->comment_ID";
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+         $url = "comment.php?c=$comment->comment_ID";
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                        $approve_url = esc_url( $url . "&action=approvecomment&$approve_nonce" );
-                       $unapprove_url = esc_url( $url . "&action=unapprovecomment&$approve_nonce" );
-                       $spam_url = esc_url( $url . "&action=spamcomment&$del_nonce" );
-                       $unspam_url = esc_url( $url . "&action=unspamcomment&$del_nonce" );
-                       $trash_url = esc_url( $url . "&action=trashcomment&$del_nonce" );
-                       $untrash_url = esc_url( $url . "&action=untrashcomment&$del_nonce" );
-                       $delete_url = esc_url( $url . "&action=deletecomment&$del_nonce" );
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+         $approve_url = esc_url( $url . "&action=approvecomment&$approve_nonce" );
+               $unapprove_url = esc_url( $url . "&action=unapprovecomment&$approve_nonce" );
+               $spam_url = esc_url( $url . "&action=spamcomment&$del_nonce" );
+               $unspam_url = esc_url( $url . "&action=unspamcomment&$del_nonce" );
+               $trash_url = esc_url( $url . "&action=trashcomment&$del_nonce" );
+               $untrash_url = esc_url( $url . "&action=untrashcomment&$del_nonce" );
+               $delete_url = esc_url( $url . "&action=deletecomment&$del_nonce" );
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                        // Preorder it: Approve | Reply | Quick Edit | Edit | Spam | Trash.
-                       $actions = array(
-                               'approve' => '', 'unapprove' => '',
-                               'reply' => '',
-                               'quickedit' => '',
-                               'edit' => '',
-                               'spam' => '', 'unspam' => '',
-                               'trash' => '', 'untrash' => '', 'delete' => ''
-                       );
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+         // Preorder it: Approve | Reply | Quick Edit | Edit | Spam | Trash.
+               $actions = array(
+                       'approve' => '', 'unapprove' => '',
+                       'reply' => '',
+                       'quickedit' => '',
+                       'edit' => '',
+                       'spam' => '', 'unspam' => '',
+                       'trash' => '', 'untrash' => '', 'delete' => ''
+               );
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                        // Not looking at all comments.
-                       if ( $comment_status && 'all' != $comment_status ) {
-                               if ( 'approved' == $the_comment_status ) {
-                                       $actions['unapprove'] = "<a href='$unapprove_url' data-wp-lists='delete:the-comment-list:comment-$comment->comment_ID:e7e7d3:action=dim-comment&amp;new=unapproved' class='vim-u vim-destructive' title='" . esc_attr__( 'Unapprove this comment' ) . "'>" . __( 'Unapprove' ) . '</a>';
-                               } elseif ( 'unapproved' == $the_comment_status ) {
-                                       $actions['approve'] = "<a href='$approve_url' data-wp-lists='delete:the-comment-list:comment-$comment->comment_ID:e7e7d3:action=dim-comment&amp;new=approved' class='vim-a vim-destructive' title='" . esc_attr__( 'Approve this comment' ) . "'>" . __( 'Approve' ) . '</a>';
-                               }
-                       } else {
-                               $actions['approve'] = "<a href='$approve_url' data-wp-lists='dim:the-comment-list:comment-$comment->comment_ID:unapproved:e7e7d3:e7e7d3:new=approved' class='vim-a' title='" . esc_attr__( 'Approve this comment' ) . "'>" . __( 'Approve' ) . '</a>';
-                               $actions['unapprove'] = "<a href='$unapprove_url' data-wp-lists='dim:the-comment-list:comment-$comment->comment_ID:unapproved:e7e7d3:e7e7d3:new=unapproved' class='vim-u' title='" . esc_attr__( 'Unapprove this comment' ) . "'>" . __( 'Unapprove' ) . '</a>';
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+         // Not looking at all comments.
+               if ( $comment_status && 'all' != $comment_status ) {
+                       if ( 'approved' == $the_comment_status ) {
+                               $actions['unapprove'] = "<a href='$unapprove_url' data-wp-lists='delete:the-comment-list:comment-$comment->comment_ID:e7e7d3:action=dim-comment&amp;new=unapproved' class='vim-u vim-destructive' title='" . esc_attr__( 'Unapprove this comment' ) . "'>" . __( 'Unapprove' ) . '</a>';
+                       } elseif ( 'unapproved' == $the_comment_status ) {
+                               $actions['approve'] = "<a href='$approve_url' data-wp-lists='delete:the-comment-list:comment-$comment->comment_ID:e7e7d3:action=dim-comment&amp;new=approved' class='vim-a vim-destructive' title='" . esc_attr__( 'Approve this comment' ) . "'>" . __( 'Approve' ) . '</a>';
</ins><span class="cx" style="display: block; padding: 0 10px">                         }
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                } else {
+                       $actions['approve'] = "<a href='$approve_url' data-wp-lists='dim:the-comment-list:comment-$comment->comment_ID:unapproved:e7e7d3:e7e7d3:new=approved' class='vim-a' title='" . esc_attr__( 'Approve this comment' ) . "'>" . __( 'Approve' ) . '</a>';
+                       $actions['unapprove'] = "<a href='$unapprove_url' data-wp-lists='dim:the-comment-list:comment-$comment->comment_ID:unapproved:e7e7d3:e7e7d3:new=unapproved' class='vim-u' title='" . esc_attr__( 'Unapprove this comment' ) . "'>" . __( 'Unapprove' ) . '</a>';
+               }
</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 ( 'spam' != $the_comment_status ) {
-                               $actions['spam'] = "<a href='$spam_url' data-wp-lists='delete:the-comment-list:comment-$comment->comment_ID::spam=1' class='vim-s vim-destructive' title='" . esc_attr__( 'Mark this comment as spam' ) . "'>" . /* translators: mark as spam link */ _x( 'Spam', 'verb' ) . '</a>';
-                       } elseif ( 'spam' == $the_comment_status ) {
-                               $actions['unspam'] = "<a href='$unspam_url' data-wp-lists='delete:the-comment-list:comment-$comment->comment_ID:66cc66:unspam=1' class='vim-z vim-destructive'>" . _x( 'Not Spam', 'comment' ) . '</a>';
-                       }
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+         if ( 'spam' != $the_comment_status ) {
+                       $actions['spam'] = "<a href='$spam_url' data-wp-lists='delete:the-comment-list:comment-$comment->comment_ID::spam=1' class='vim-s vim-destructive' title='" . esc_attr__( 'Mark this comment as spam' ) . "'>" . /* translators: mark as spam link */ _x( 'Spam', 'verb' ) . '</a>';
+               } elseif ( 'spam' == $the_comment_status ) {
+                       $actions['unspam'] = "<a href='$unspam_url' data-wp-lists='delete:the-comment-list:comment-$comment->comment_ID:66cc66:unspam=1' class='vim-z vim-destructive'>" . _x( 'Not Spam', 'comment' ) . '</a>';
+               }
</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 ( 'trash' == $the_comment_status ) {
-                               $actions['untrash'] = "<a href='$untrash_url' data-wp-lists='delete:the-comment-list:comment-$comment->comment_ID:66cc66:untrash=1' class='vim-z vim-destructive'>" . __( 'Restore' ) . '</a>';
-                       }
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+         if ( 'trash' == $the_comment_status ) {
+                       $actions['untrash'] = "<a href='$untrash_url' data-wp-lists='delete:the-comment-list:comment-$comment->comment_ID:66cc66:untrash=1' class='vim-z vim-destructive'>" . __( 'Restore' ) . '</a>';
+               }
</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 ( 'spam' == $the_comment_status || 'trash' == $the_comment_status || !EMPTY_TRASH_DAYS ) {
-                               $actions['delete'] = "<a href='$delete_url' data-wp-lists='delete:the-comment-list:comment-$comment->comment_ID::delete=1' class='delete vim-d vim-destructive'>" . __( 'Delete Permanently' ) . '</a>';
-                       } else {
-                               $actions['trash'] = "<a href='$trash_url' data-wp-lists='delete:the-comment-list:comment-$comment->comment_ID::trash=1' class='delete vim-d vim-destructive' title='" . esc_attr__( 'Move this comment to the trash' ) . "'>" . _x( 'Trash', 'verb' ) . '</a>';
-                       }
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+         if ( 'spam' == $the_comment_status || 'trash' == $the_comment_status || !EMPTY_TRASH_DAYS ) {
+                       $actions['delete'] = "<a href='$delete_url' data-wp-lists='delete:the-comment-list:comment-$comment->comment_ID::delete=1' class='delete vim-d vim-destructive'>" . __( 'Delete Permanently' ) . '</a>';
+               } else {
+                       $actions['trash'] = "<a href='$trash_url' data-wp-lists='delete:the-comment-list:comment-$comment->comment_ID::trash=1' class='delete vim-d vim-destructive' title='" . esc_attr__( 'Move this comment to the trash' ) . "'>" . _x( 'Trash', 'verb' ) . '</a>';
+               }
</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 ( 'spam' != $the_comment_status && 'trash' != $the_comment_status ) {
-                               $actions['edit'] = "<a href='comment.php?action=editcomment&amp;c={$comment->comment_ID}' title='" . esc_attr__( 'Edit comment' ) . "'>". __( 'Edit' ) . '</a>';
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+         if ( 'spam' != $the_comment_status && 'trash' != $the_comment_status ) {
+                       $actions['edit'] = "<a href='comment.php?action=editcomment&amp;c={$comment->comment_ID}' title='" . esc_attr__( 'Edit comment' ) . "'>". __( 'Edit' ) . '</a>';
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                                $format = '<a data-comment-id="%d" data-post-id="%d" data-action="%s" class="%s" title="%s" href="#">%s</a>';
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                 $format = '<a data-comment-id="%d" data-post-id="%d" data-action="%s" class="%s" title="%s" href="#">%s</a>';
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                                $actions['quickedit'] = sprintf( $format, $comment->comment_ID, $post->ID, 'edit', 'vim-q comment-inline',esc_attr__( 'Edit this item inline' ), __( 'Quick&nbsp;Edit' ) );
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                 $actions['quickedit'] = sprintf( $format, $comment->comment_ID, $post->ID, 'edit', 'vim-q comment-inline',esc_attr__( 'Edit this item inline' ), __( 'Quick&nbsp;Edit' ) );
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                                $actions['reply'] = sprintf( $format, $comment->comment_ID, $post->ID, 'replyto', 'vim-r comment-inline', esc_attr__( 'Reply to this comment' ), __( 'Reply' ) );
-                       }
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                 $actions['reply'] = sprintf( $format, $comment->comment_ID, $post->ID, 'replyto', 'vim-r comment-inline', esc_attr__( 'Reply to this comment' ), __( 'Reply' ) );
+               }
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                        /** This filter is documented in wp-admin/includes/dashboard.php */
-                       $actions = apply_filters( 'comment_row_actions', array_filter( $actions ), $comment );
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+         /** This filter is documented in wp-admin/includes/dashboard.php */
+               $actions = apply_filters( 'comment_row_actions', array_filter( $actions ), $comment );
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                        $i = 0;
-                       $out .= '<div class="row-actions">';
-                       foreach ( $actions as $action => $link ) {
-                               ++$i;
-                               ( ( ( 'approve' == $action || 'unapprove' == $action ) && 2 === $i ) || 1 === $i ) ? $sep = '' : $sep = ' | ';
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+         $i = 0;
+               $out .= '<div class="row-actions">';
+               foreach ( $actions as $action => $link ) {
+                       ++$i;
+                       ( ( ( 'approve' == $action || 'unapprove' == $action ) && 2 === $i ) || 1 === $i ) ? $sep = '' : $sep = ' | ';
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                                // Reply and quickedit need a hide-if-no-js span when not added with ajax
-                               if ( ( 'reply' == $action || 'quickedit' == $action ) && ! defined('DOING_AJAX') )
-                                       $action .= ' hide-if-no-js';
-                               elseif ( ( $action == 'untrash' && $the_comment_status == 'trash' ) || ( $action == 'unspam' && $the_comment_status == 'spam' ) ) {
-                                       if ( '1' == get_comment_meta( $comment->comment_ID, '_wp_trash_meta_status', true ) )
-                                               $action .= ' approve';
-                                       else
-                                               $action .= ' unapprove';
-                               }
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                 // Reply and quickedit need a hide-if-no-js span when not added with ajax
+                       if ( ( 'reply' == $action || 'quickedit' == $action ) && ! defined('DOING_AJAX') )
+                               $action .= ' hide-if-no-js';
+                       elseif ( ( $action == 'untrash' && $the_comment_status == 'trash' ) || ( $action == 'unspam' && $the_comment_status == 'spam' ) ) {
+                               if ( '1' == get_comment_meta( $comment->comment_ID, '_wp_trash_meta_status', true ) )
+                                       $action .= ' approve';
+                               else
+                                       $action .= ' unapprove';
+                       }
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                                $out .= "<span class='$action'>$sep$link</span>";
-                       }
-                       $out .= '</div>';
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                 $out .= "<span class='$action'>$sep$link</span>";
</ins><span class="cx" style="display: block; padding: 0 10px">                 }
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                $out .= '</div>';
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                $out .= '<button type="button" class="toggle-row"><span class="screen-reader-text">' . __( 'Show more details' ) . '</span></button>';
+
</ins><span class="cx" style="display: block; padding: 0 10px">                 return $out;
</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="trunksrcwpadminincludesclasswplisttablephp"></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-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-list-table.php       2015-07-01 01:05:29 UTC (rev 33015)
+++ trunk/src/wp-admin/includes/class-wp-list-table.php 2015-07-01 01:30:23 UTC (rev 33016)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -497,6 +497,8 @@
</span><span class="cx" style="display: block; padding: 0 10px">                }
</span><span class="cx" style="display: block; padding: 0 10px">                $out .= '</div>';
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                $out .= '<button type="button" class="toggle-row"><span class="screen-reader-text">' . __( 'Show more details' ) . '</span></button>';
+
</ins><span class="cx" style="display: block; padding: 0 10px">                 return $out;
</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">@@ -943,7 +945,7 @@
</span><span class="cx" style="display: block; padding: 0 10px">         * @param bool $with_id Whether to set the id attribute or not
</span><span class="cx" style="display: block; padding: 0 10px">         */
</span><span class="cx" style="display: block; padding: 0 10px">        public function print_column_headers( $with_id = true ) {
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                list( $columns, $hidden, $sortable ) = $this->get_column_info();
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+         list( $columns, $hidden, $sortable, $primary ) = $this->get_column_info();
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="cx" style="display: block; padding: 0 10px">                $current_url = set_url_scheme( 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] );
</span><span class="cx" style="display: block; padding: 0 10px">                $current_url = remove_query_arg( 'paged', $current_url );
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -977,6 +979,10 @@
</span><span class="cx" style="display: block; padding: 0 10px">                        elseif ( in_array( $column_key, array( 'posts', 'comments', 'links' ) ) )
</span><span class="cx" style="display: block; padding: 0 10px">                                $class[] = 'num';
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                        if ( $column_key === $primary ) {
+                               $class[] = 'column-primary';
+                       }
+
</ins><span class="cx" style="display: block; padding: 0 10px">                         if ( isset( $sortable[$column_key] ) ) {
</span><span class="cx" style="display: block; padding: 0 10px">                                list( $orderby, $desc_first ) = $sortable[$column_key];
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -1163,8 +1169,12 @@
</span><span class="cx" style="display: block; padding: 0 10px">                                $classes .= ' hidden';
</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">-                        $attributes = "class='$classes'";
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                 // Comments column uses HTML in the display name with screen reader text.
+                       // Instead of using esc_attr(), we strip tags to get closer to a user-friendly string.
+                       $data = 'data-colname="' . wp_strip_all_tags( $column_display_name ) . '"';
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                        $attributes = "class='$classes' $data";
+
</ins><span class="cx" style="display: block; padding: 0 10px">                         if ( 'cb' == $column_name ) {
</span><span class="cx" style="display: block; padding: 0 10px">                                echo '<th scope="row" class="check-column">';
</span><span class="cx" style="display: block; padding: 0 10px">                                echo $this->column_cb( $item );
</span></span></pre></div>
<a id="trunksrcwpadminincludesclasswpmssiteslisttablephp"></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-ms-sites-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-ms-sites-list-table.php      2015-07-01 01:05:29 UTC (rev 33015)
+++ trunk/src/wp-admin/includes/class-wp-ms-sites-list-table.php        2015-07-01 01:30:23 UTC (rev 33016)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -403,8 +403,10 @@
</span><span class="cx" style="display: block; padding: 0 10px">                                $classes .= ' hidden';
</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">-                        $attributes = "class='$classes'";
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                 $data = 'data-colname="' . wp_strip_all_tags( $column_display_name ) . '"';
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                        $attributes = "class='$classes' $data";
+
</ins><span class="cx" style="display: block; padding: 0 10px">                         if ( 'cb' === $column_name ) {
</span><span class="cx" style="display: block; padding: 0 10px">                                echo '<th scope="row" class="check-column">';
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span></span></pre></div>
<a id="trunksrcwpadminincludesclasswpmsuserslisttablephp"></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-ms-users-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-ms-users-list-table.php      2015-07-01 01:05:29 UTC (rev 33015)
+++ trunk/src/wp-admin/includes/class-wp-ms-users-list-table.php        2015-07-01 01:30:23 UTC (rev 33016)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -336,8 +336,10 @@
</span><span class="cx" style="display: block; padding: 0 10px">                                $classes .= ' hidden';
</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">-                        $attributes = "class='$classes'";
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                 $data = 'data-colname="' . wp_strip_all_tags( $column_display_name ) . '"';
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                        $attributes = "class='$classes' $data";
+
</ins><span class="cx" style="display: block; padding: 0 10px">                         if ( 'cb' === $column_name ) {
</span><span class="cx" style="display: block; padding: 0 10px">                                echo '<th scope="row" class="check-column">';
</span><span class="cx" style="display: block; padding: 0 10px"> 
</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 2015-07-01 01:05:29 UTC (rev 33015)
+++ trunk/src/wp-admin/includes/class-wp-posts-list-table.php   2015-07-01 01:30:23 UTC (rev 33016)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -973,8 +973,12 @@
</span><span class="cx" style="display: block; padding: 0 10px">                                $classes .= ' hidden';
</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">-                        $attributes = "class='$classes'";
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                 // Comments column uses HTML in the display name with screen reader text.
+                       // Instead of using esc_attr(), we strip tags to get closer to a user-friendly string.
+                       $data = 'data-colname="' . wp_strip_all_tags( $column_display_name ) . '"';
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                        $attributes = "class='$classes' $data";
+
</ins><span class="cx" style="display: block; padding: 0 10px">                         if ( 'cb' === $column_name ) {
</span><span class="cx" style="display: block; padding: 0 10px">                                echo '<th scope="row" class="check-column">';
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span></span></pre></div>
<a id="trunksrcwpadminincludesclasswpuserslisttablephp"></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-users-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-users-list-table.php 2015-07-01 01:05:29 UTC (rev 33015)
+++ trunk/src/wp-admin/includes/class-wp-users-list-table.php   2015-07-01 01:30:23 UTC (rev 33016)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -419,8 +419,10 @@
</span><span class="cx" style="display: block; padding: 0 10px">                                $classes .= ' hidden';
</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">-                        $attributes = "class='$classes'";
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                 $data = 'data-colname="' . wp_strip_all_tags( $column_display_name ) . '"';
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+                        $attributes = "class='$classes' $data";
+
</ins><span class="cx" style="display: block; padding: 0 10px">                         if ( 'cb' === $column_name ) {
</span><span class="cx" style="display: block; padding: 0 10px">                                $r .= "<th scope='row' class='check-column'>$checkbox</th>";
</span><span class="cx" style="display: block; padding: 0 10px">                        } else {
</span></span></pre></div>
<a id="trunksrcwpadminjscommonjs"></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/js/common.js</h4>
<pre class="diff"><span>
<span class="info" style="display: block; padding: 0 10px; color: #888">--- trunk/src/wp-admin/js/common.js   2015-07-01 01:05:29 UTC (rev 33015)
+++ trunk/src/wp-admin/js/common.js     2015-07-01 01:30:23 UTC (rev 33016)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -487,6 +487,11 @@
</span><span class="cx" style="display: block; padding: 0 10px">                }
</span><span class="cx" style="display: block; padding: 0 10px">        }, 'td.has-row-actions' );
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+        // Toggle list table rows on small screens
+       $( 'tbody' ).on( 'click', '.toggle-row', function() {
+               $( this ).closest( 'tr' ).toggleClass( 'is-expanded' );
+       });
+
</ins><span class="cx" style="display: block; padding: 0 10px">         $('#default-password-nag-no').click( function() {
</span><span class="cx" style="display: block; padding: 0 10px">                setUserSetting('default_password_nag', 'hide');
</span><span class="cx" style="display: block; padding: 0 10px">                $('div.default-password-nag').hide();
</span></span></pre></div>
<a id="trunksrcwpadminjsinlineeditpostjs"></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/js/inline-edit-post.js</h4>
<pre class="diff"><span>
<span class="info" style="display: block; padding: 0 10px; color: #888">--- trunk/src/wp-admin/js/inline-edit-post.js 2015-07-01 01:05:29 UTC (rev 33015)
+++ trunk/src/wp-admin/js/inline-edit-post.js   2015-07-01 01:30:23 UTC (rev 33016)
</span><span class="lines" style="display: block; padding: 0 10px; color: #888">@@ -133,7 +133,7 @@
</span><span class="cx" style="display: block; padding: 0 10px">                editRow = $('#inline-edit').clone(true);
</span><span class="cx" style="display: block; padding: 0 10px">                $( 'td', editRow ).attr( 'colspan', $( 'th:visible, td:visible', '.widefat:first thead' ).length );
</span><span class="cx" style="display: block; padding: 0 10px"> 
</span><del style="background-color: #fdd; text-decoration:none; display:block; padding: 0 10px">-                $(t.what+id).hide().after(editRow).after('<tr class="hidden"></tr>');
</del><ins style="background-color: #dfd; text-decoration:none; display:block; padding: 0 10px">+         $(t.what+id).removeClass('is-expanded').hide().after(editRow).after('<tr class="hidden"></tr>');
</ins><span class="cx" style="display: block; padding: 0 10px"> 
</span><span class="cx" style="display: block; padding: 0 10px">                // populate the data
</span><span class="cx" style="display: block; padding: 0 10px">                rowData = $('#inline_'+id);
</span></span></pre>
</div>
</div>

</body>
</html>