Diff expansion controls now have a delay before appearing.

Review Request #6583 — Created Nov. 13, 2014 and submitted — Latest diff uploaded

Review Board
reviewboard, students

Diff fragment expansion controls will only expand if the mouse hovers
over the diff fragment for a half of a second. This unifies behaviour
in Firefox in Chrome so that when you scroll down a review request,
the diff fragment controls won't expand as you scroll by.

Scrolling to a diff fragment and stopping now works correctly in both
Firefox and Chrome. That is, the diff fragment will expand as long as
the mouse stays it for half of a second.

The diffFragmentQueueView now maintains the number of mouse watchers
so that multiple mouse move event handlers are not added and the event
handler is only removed once there are no active mouse watchers. This
behaviour is used in the case of multiple diff fragment expansion
events and/or scrolling over diff fragments occuring near the same

Verified in Firefox, Chrome, and Safari.