Clean up the RB.TextCommentRowSelector

Review Request #10192 — Created Oct. 3, 2018 and submitted — Latest diff uploaded


Review Board


The RB.TextCommentRowSelector has been cleaned up, modernized, and
ported to ES6. All the method documentation is now aligned with our
documentation standards.

There were two cases of event handlers (for mousedown and mouseup)
which were sometimes returning False to prevent the default event
from ocurring. However, this behaviour is not actually supported; the
DOM events for mousedown and mouseup do not have preventDefault in
their prototypes and so the default behaviour cannot be prevented.

The _copySelectionToClipboard has been modernized to not do repeated
string concatentation. Instead it builds up an array of strings and
joins them with the detected platform's newline character.

In addition, a function that _copySelectionToClipboard was defining
has been pulled out into the prototype to make it clear that it does not
close over any variables in the method.

Ran JS tests.