Problem: The GPU layer added to the .gutter .tiles cause the surounding UI to also composite layers, like the tas or the status-bar. This disables subpixel anti-aliasing and text doesn't look that sharp.
Eventough the `.gutter` has `overflow: hidden`, it seems Chrome still thinks there is a chance of overlapping and thus creates the extra layers.
Solution: Creating an own stacking context for the `.gutter` seems to fix it.
Issue #7904
* Mark `dismiss` as an "extended" API because its use case is uncommon.
* Mark event handler functions as public because responding to a
notification being displayed or dismissed is useful.
Because the target environment in Atom supports for/of natively,
do not transpile for/of using Babel. Without this change, the following code:
```
var arr = ['foo', 'bar', 'baz'];
for (var item of arr) console.log(item);
```
would be unnecessarily be transpiled to:
```
var arr = ['foo', 'bar', 'baz'];
var _iteratorNormalCompletion = true;
var _didIteratorError = false;
var _iteratorError = undefined;
try {
for (var _iterator = arr[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
var item = _step.value;
console.log(item);
}
} catch (err) {
_didIteratorError = true;
_iteratorError = err;
} finally {
try {
if (!_iteratorNormalCompletion && _iterator['return']) {
_iterator['return']();
}
} finally {
if (_didIteratorError) {
throw _iteratorError;
}
}
}
```
The fix to ignore invisibles () introduces a new bug when pasting lines
from the clipboard (see screencast below).
As the commit takes the content of `@buffer.lineFromRow(bufferRow)` to
test against the `decreaseIndentRegex`, it will actually test the
content of the row the cursor is on instead of the content that is
being pasted. And this (of course) could cause unexpected indentations.
When we have an unexpected display-buffer or tokenized-buffer state,
we can include the change counts to make sure that every change to the
buffer has been processed by display-buffer and tokenized-buffer. If
they haven’t, there’s something wrong with our event ordering. If they
have, there’s a logic error somewhere else.