assume a line contain both english text and persian (rtl) text, like this
```
Sample Text متن نمونه sample text
```
atom always look at first rect size of Text Element and calculate position, this cause cursor to place in wrong position
in our example `Range.getClientRects()` return three rects, look at this pen
http://codepen.io/farnabaz/pen/rWxrGW
Context: I'm trying to run atom in the browser and have strict mode enabled and it threw on this line. We need it to be a fat arrow otherwise it's adding it to the window (or undefined in strict mode).
Inside of Nuclide, we have multiple places where we have multiple icons close together that have a tooltip: the left toolbar, the bottom status bar, the debugger icons...
The current behavior is very frustrating as you've got to wait for the delay on every single one of them. But, we have a clear signal that the user wants a tooltip when s/he waits the time to see it and it's likely that moving the mouse over the next item quickly means that s/he wants to see it as well.
This pull request introduces the concept of follow through: if you have seen a tooltip, you're going to instantly see tooltip on the next element you mouse over within a short timer (300ms right now).
Test Plan:
Video before:

Video after:

Released under CC0
Simply replace ::shadow with .editor to preserve the specificity of the
transformed rule. This isn't beautiful, but it's the only way to
guarantee that the styling transition is smooth enough to justify not
bumping the major.
This is needed because some packages may still rely on the ability
to pass null/undefined to path.dirname and friends
Signed-off-by: Nathan Sobo <nathan@github.com>