Commit Graph

2734 Commits

Author SHA1 Message Date
Kevin Sawicki & Nathan Sobo
b5b408d134 Open new window when joining collaboration session 2013-06-28 04:39:27 -06:00
Kevin Sawicki
31d872fbfe Add atom.openWindow() 2013-06-28 04:39:26 -06:00
Kevin Sawicki & Nathan Sobo
0851b4d011 Replicate pane splitting and removal
We're using Peer.js to stream changes to shared telepath documents
between participants.

We're replacing the rootView of joiners in a somewhat hacky way,
but replication of pane splits and items is fully tested.
2013-06-28 04:39:26 -06:00
Kevin Sawicki & Nathan Sobo
6480e956af Keep resident window state object 2013-06-28 04:39:26 -06:00
Kevin Sawicki & Nathan Sobo
9c95a4751b Return telepath documents from getWindowState() 2013-06-28 04:39:25 -06:00
Cheng Zhao
e434f7c0a9 💄 2013-06-27 22:39:41 +08:00
Cheng Zhao
e7aac2ef6e Show confirm close dialog as sheet. 2013-06-27 21:30:47 +08:00
Cheng Zhao
45ce8e1d63 Ask for close confirmation in beforeunload handler. 2013-06-27 18:39:29 +08:00
Cheng Zhao
bdbec54f24 Make PaneContainer.confirmClose() synchronous. 2013-06-27 16:21:14 +08:00
Cheng Zhao
6c0f4c09d9 Make Pane.promptToSaveItem synchronous. 2013-06-27 12:40:36 +08:00
Kevin Sawicki
e67676b01c Use deleteSelectedText() instead of delete()
Selection.delete() adds to the selection if it is empty which
we don't want to do when replacing selected text.

Closes #603
2013-06-26 19:03:45 -07:00
Kevin Sawicki
f3b50eed3b Migrate close bindings from editor namespace to pane
These were left over from the pane migration still under
the editor namespace and were previously not accessible via
a keybinding.
2013-06-25 13:15:39 -07:00
Kevin Sawicki
86c8343107 Score grammar matches using longest fileType match
Previously the score for two grammars matching on path
was equal and so the first one would be selected.

Now the longer match will have a higher score and will be selected
over other grammars with shorter fileType match lengths.

Closes #602
2013-06-24 18:23:54 -07:00
Kevin Sawicki
a7ee5985db Separate variable from requires 2013-06-24 16:56:52 -07:00
Kevin Sawicki
be354f78a6 Focus root view if previously focused element is no longer attached
This can be the case when a select list is triggered while a different
select list is already open and so the second list to open has no
element to restore focus to when it closes.
2013-06-24 16:46:36 -07:00
Kevin Sawicki
d6513e9aa9 Use BufferedProcess for apm commands
This ensures the path to node is always available in the environment.
2013-06-24 16:44:40 -07:00
Kevin Sawicki
6879f0d0ac Update initialPath on project path changes
atom.setPathToOpen() is now longer available and instead
the load settings should be updated.
2013-06-24 10:41:44 -07:00
Kevin Sawicki
d31d18360b Store untitled window state under load settings
This keeps untitled windows from contaminating each other by
storing to the same state path on disk but still stores state
across reloads of the windows.

Closes #599
2013-06-24 10:37:53 -07:00
Kevin Sawicki
aeee3c9ade Remove unused methods 2013-06-24 08:53:15 -07:00
probablycorey
0328c77be1 Don't copy themes to .atom dir 2013-06-20 17:15:51 -07:00
Kevin Sawicki & Nathan Sobo
266548d75c Implement dev window opening with meta-O 2013-06-20 16:12:11 -07:00
Nathan Sobo
44e73200ff Default editor.normalizeIndentOnPaste to true 2013-06-19 13:01:23 -06:00
Nathan Sobo
48b4c62696 Add editor.normalizeIndentOnPaste to the config panel 2013-06-19 13:01:01 -06:00
Corey Johnson & Nathan Sobo
b9accadb70 When normalizing indent, ignore leading spaces of first line
Fixes #594
2013-06-19 12:21:05 -06:00
Kevin Sawicki
1764677b7d Unsubscribe markers when destroying display buffer
Previously the display buffer markers would still fire events
even after a display buffer was destroyed since they were not
being unsubscribed from their underlying buffer marker which
could still fire events in the case of an editor split on the
same buffer.

Closes #593
2013-06-19 09:56:55 -07:00
Kevin Sawicki & Nathan Sobo
01a7b5fbc6 Throw exception when referencing a non-existent screen line 2013-06-18 14:34:23 -06:00
Kevin Sawicki
1178d844d0 Look before and after empty lines for max indent level
Previously the indentation guide level for empty lines was
derived by only looking after the empty line which caused gaps
in certain cases.

Now the indentation for an empty line is the higher value of the
previous non-empty line indentation and the following non-empty
line indentation.

Closes #588
2013-06-18 09:56:31 -07:00
Kevin Sawicki
bc2d0ff0cc Only check ending rules when stack size increases
Previously on zero length matches the last two rules were compared
and if they had the same scope name then the last rule was popped
and the remaining line was tokenized using the current scope stack
to prevent infinite parsing loops.

This caused nested method calls in Java to not tokenize correctly
since method rules were sequential in the stack but did not constitute
an infinite loop of zero matches since the stack was currently decreasing.

Now the last two rules are only compared when the stack size is increasing
to prevent this false positive.

Closes #587
2013-06-17 13:08:10 -07:00
Kevin Sawicki
289b270c85 Use Task.once for repository status handler 2013-06-17 12:11:26 -07:00
Kevin Sawicki
8280b3a3ff Update repository status to use new task style 2013-06-17 12:11:25 -07:00
Kevin Sawicki
a1d6ae010e 💄 2013-06-17 12:11:25 -07:00
Kevin Sawicki
cd1c88a1b5 Correct typo in git docs 2013-06-16 22:08:18 -07:00
Kevin Sawicki
e8c0f46afb Relativize exact path matches to the empty string 2013-06-14 09:20:28 -07:00
Kevin Sawicki
772a99012d Focus window when atom.focus() is called
Previously listeners bound to $(window).focus() would not get
events when Atom initially started or on reloads.
2013-06-14 08:39:32 -07:00
Kevin Sawicki
f408406ef0 Support symlinks in .relativize() and .contains() 2013-06-14 08:29:21 -07:00
Kevin Sawicki
1fa319a8f3 Hide status and branch info for non-project files 2013-06-13 23:11:07 -07:00
Kevin Sawicki
ff7c639b64 Don't use error class in select list
Use a subtler error message that displays in the same place as the
loading message but does not change the entire background of the
view.

Also, extending classes can now customize the message displayed
when there are no items and also no filtered items to allow for
different messages for these two cases.
2013-06-13 11:31:09 -07:00
Kevin Sawicki
77172800a8 Remove link to deleted method 2013-06-13 10:10:59 -07:00
Kevin Sawicki
6615e0f2db Use triple # internal comment 2013-06-13 10:03:54 -07:00
Kevin Sawicki
0f562330cf Remove unused functions and specs 2013-06-13 10:02:13 -07:00
Kevin Sawicki
d60c255703 Rename nodePath to path 2013-06-13 08:31:04 -07:00
Kevin Sawicki
0e52a3bcee Remove fsUtils.makeDirectory()
fsUtils.makeTree() was sufficient for all current uses.
2013-06-12 20:39:40 -07:00
Kevin Sawicki
ed3a4a33e2 Rename .write() to writeSync() 2013-06-12 20:38:26 -07:00
Kevin Sawicki
f35724daa9 Revert incorrect rename to isDirectorySync() 2013-06-12 20:29:14 -07:00
Kevin Sawicki
58fd786fda Rename readPlist() to readPlistSync() 2013-06-12 18:32:36 -07:00
Kevin Sawicki
d8de321074 Rename readObject() to readObjectSync() 2013-06-12 18:28:25 -07:00
Kevin Sawicki
27d9da15dc Rename list() to listSync() 2013-06-12 18:25:42 -07:00
Kevin Sawicki
400aa93bf3 Rename isFile() to isFileSync() 2013-06-12 18:21:57 -07:00
Kevin Sawicki
86952ff85e Rename isDirectory() to isDirectorySync() 2013-06-12 18:16:31 -07:00
Kevin Sawicki
10f92836e6 Rename path variables to prevent collisions 2013-06-12 17:19:16 -07:00