Use `<td class="n" data-n="3">` instead of `<th>3</th>` for line numbers


Use <td class="n" data-n="3"> instead of <th>3</th> for line numbers

Ref T13161. Ref T12822. See PHI870. Long ago, the web was simple. You could leave your doors unlocked, you knew all your neighbors, crime hadn't been invented yet, and <th>3</th> was a perfectly fine way to render a line number cell containing the number "3".

But times have changed!

  • In PHI870, this isn't good for screenreaders. We can't do much about this, so switch to <td>.
  • In D19349 / T13105 and elsewhere, this ::after { content: attr(data-n); } approach seems like the least bad general-purpose approach for preventing line numbers from being copied. Although Differential needs even more magic beyond this in the two-up view, this is likely good enough for the one-up view, and is consistent with other views (paste, harbormaster logs, general source display) where this technique is sufficient on its own.

The chance this breaks something is pretty much 100%, but we've got a week to figure out what it breaks. I couldn't find any issues immediately.

Test Plan:

  • Created, edited, deleted inlines in 1-up and 2-up views.
  • Replied, keyboard-navigated, keyboard-replied, drag-selected, poked and prodded everything.

Reviewers: amckinley

Reviewed By: amckinley

Maniphest Tasks: T13161, T12822

Differential Revision: https://secure.phabricator.com/D20188