Correct various minor diff copy behaviors


Correct various minor diff copy behaviors

Ref T12822. Fixes a few things:

  • Firefox selection of weird ranges with an inline between the start and end of the range now works correctly.
  • "Show More Context" rows now render, highlight, and select properly.
  • Prepares for nodes to have copy-text which is different from display-text.
  • Don't do anything too fancy in 1-up/unified mode. We don't copy line numbers after the content: attr(data-n) change, but that's as far as we go, because trying to do more than that is kind of weird and not terribly intuitive.

Test Plan:

  • Selected and copied weird ranges in Firefox.
  • Kept an eye on "Show More Context" rows across select and copy operations.
  • Generally poked around in Safari/Firefox/Chrome.

Reviewers: amckinley

Reviewed By: amckinley

Maniphest Tasks: T12822

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