The window was previously flashing white if atom.show() was called
directly after window.startup()
Wrapping the call in a setTimeout with a zero delay seems to prevent
the white flash and the perceived amount of time to display the contents
appears to be the same.
Previously Atom would crash if a path was opened when there
was already a window open that did not have a path, such as
the specs window.
Now window controllers without a path are skipped during the
checks to activate an existing window for an opened path.
Closes#351
When Sparkle updates Atom, it deletes the app and replaces it. This
causes the `atom` cli to fail when called within this brief time
period. This gives `atom` a five second grace period if it is not
found.
Previously the width was set to the width of a single character which
caused issues if the char width was currently zero and since the hidden
input no longer has padding or border the width of the input would end
up being zero which would prevent it from gaining focus.
The .tree-view-wrapper element is renamed to `.tree-view-resizer` to
clarify its purpose, and the actual draggable div is renamed to
`.tree-view-resize-handle`. Then a new div is introduced beneath the
resized wrapper called `tree-view-scroller`. This element has 100%
width/height and overflow scroll, allowing the actual tree view list
to *not* scroll. It uses the cutting edge `min-content` property as
its min width, which ensures it's always wide enough to contain its
content even when the scroller wrapper is narrower. This allows the
absolutely-positioned highlights to always extend *at least* across
the full width of the list elements.