Commit Graph

3379 Commits

Author SHA1 Message Date
Nathan Sobo
bd3cfda2bb Merge branch 'master' into ns-telepathic-atom-global
Conflicts:
	src/atom.coffee
2013-12-16 18:18:06 -07:00
Ben Ogle
75153388cc Use tab char 2013-12-16 15:50:26 -08:00
Ben Ogle
77b5fd47ca Dont re-atomicize atomic tokens.
Fixes #1318
2013-12-16 15:34:27 -08:00
Nathan Sobo
e67e8ff0f5 Restore Atom::getLoadSettings and spy on it in window spec
I initially ripped out Atom::getLoadSettings in favor of a mutable
property because window spec was making an assumption that such a
property existed anyway. Since load settings need to be available from
class methods, the instance method just delegates to the class method.
But that means there's no ::loadSettings property to mutate in that
spec. I replaced the former approach with a spy which has the added
advantage of not polluting windowSettings for subsequent specs.
2013-12-13 12:02:48 -08:00
Ben Ogle
e8c5027026 💄 Update specs to use ::function() format 2013-12-13 10:28:38 -08:00
Nathan Sobo
beb2fb08ea Merge branch 'master' into ns-telepathic-atom-global
Conflicts:
	package.json
2013-12-13 09:32:13 -08:00
Ben Ogle
a25812dca7 Move cmd-s and cmd-S to workspaceView 2013-12-12 17:50:15 -08:00
Ben Ogle
1f9a7599b7 cmd-w works anywhere in the editor 2013-12-12 17:50:15 -08:00
Nathan Sobo
bfcb24f517 Fix pesky workspace view serialization spec
This isn't beautiful, but this whole approach is slated to be replaced
in the recent future.
2013-12-12 16:36:34 -08:00
Nathan Sobo
208ed09109 Use atom.state instead of defunct windowState in spec 2013-12-12 16:35:56 -08:00
Nathan Sobo
a564cc66f6 Replace Atom::getLoadSettings with a ::loadSettings property
We assign a value into ::loadSettings anyway in a spec, so there's not
much point leaving it a method. Eventually I'd like to pass all these
settings in when constructing the Atom object and eliminate awareness
of the loadSettings altogether from the Atom global.
2013-12-12 16:33:30 -08:00
Nathan Sobo
ebe77065cc Destroy orphans after each spec 2013-12-12 15:45:16 -08:00
Nathan Sobo
30b0fed60f Remove packageStates from atom state after specs just in case 2013-12-12 15:11:59 -08:00
probablycorey
90f3726c5c Fix window specs 2013-12-12 15:10:01 -08:00
Nathan Sobo
5f10c48219 Kill double project assignment 2013-12-12 14:40:12 -08:00
Nathan Sobo
23957d7f66 WIP: Make atom global a telepath model
Specs seem to be green but hang on what I'm assuming to be a long GC
pause near the end. I need to investigate what's going on memory wise.
2013-12-12 14:33:50 -08:00
probablycorey
132194337e Merge remote-tracking branch 'origin/master' into cj-deleted-files-not-modified 2013-12-12 11:00:17 -08:00
probablycorey
f414c0955b Specs don't prompt to save editors by default. 2013-12-12 10:35:11 -08:00
Ben Ogle
4dbca94d32 spec 💄 2013-12-12 10:34:08 -08:00
Ben Ogle
1f69963982 Apply text to buffer via diff on reload
Previously, it would blindly read from disk on reload, and set the text 
into the editor. This was problematic as it would mess with markers and 
folds. No longer. 

Fixes #1285 and fixes atom/bookmarks#3
2013-12-12 10:34:08 -08:00
probablycorey
787b6fb677 Revert "Don't pop-up save dialog in specs"
This reverts commit e0ad22d0bd.
2013-12-12 10:09:41 -08:00
probablycorey
2d5b04579f Merge branch 'master' into cj-deleted-files-not-modified
Conflicts:
	src/pane.coffee
2013-12-12 09:57:28 -08:00
Kevin Sawicki
29b85a1bb9 Clear the goal column when the cursor moves
Previously it was only cleared when changing the position explicitly
and not as a result of the underlying marker changing such as during a
text insertion.

Closes #1295
2013-12-11 18:02:52 -08:00
probablycorey
e0ad22d0bd Don't pop-up save dialog in specs 2013-12-11 14:51:44 -08:00
probablycorey
115203cbd2 Update spec description 2013-12-11 14:48:12 -08:00
Nathan Sobo
8a8df8d6cb Add Atom::isReleasedVersion, which determines if the version is a SHA 2013-12-11 12:28:20 -08:00
Nathan Sobo
f3cdb6e0a2 Merge remote-tracking branch 'origin/master' into ns-teleditor 2013-12-10 19:10:09 -08:00
Nathan Sobo
c4fc75215b Reintroduce editor serialization specs
I added some features to telepath that make it easier to test model
objects.

- First, you can now call replicate on any telepath document/model
  object. The entire underlying database will be replicated and you will
  be handed the equivalent of that object in the replicated world. This
  is easier than forcing you to attach the model to the window state 
  and then call replicate there. However, remember that the entire
  window state is actually being replicated so any references the model
  has will also be replicated.

- Second, you can also replicate orphaned objects. Most objects in these
  specs we're converting are orphans because there's no reason to attach
  them to the root document just to test them in isolation.
2013-12-10 19:07:50 -08:00
Nathan Sobo
425c076221 Make Editor a telepath.Model subclass 2013-12-10 17:32:34 -08:00
Nathan Sobo
18a712a1f7 Reopen closed pane items in workspace – by uri instead of deserializing
Serializing and deserializing closed pane items was turning into a pain
with the new telepath changes that are phasing out this kind of on the
fly serialization. Reopening by uri saves memory and simplifies panes
enormously. If we want non-uri reopening we can revisit it later when
telepath models are better integrated.
2013-12-10 17:19:44 -08:00
probablycorey
4bfcdf4d5b Remove unmodified editors from pane when the buffer is deleted 2013-12-10 17:08:07 -08:00
probablycorey
24c84fe09c Merge remote-tracking branch 'origin/master' into cj-deleted-files-not-modified 2013-12-10 14:46:26 -08:00
Ben Ogle
43bf47fa26 Upgrade to underscore-plus@0.4.0 2013-12-10 11:47:53 -08:00
probablycorey
19da22d440 Revert "Project doesn't serialize non-modified buffers that don't exist on disk"
This reverts commit ec3e139632.
2013-12-10 10:15:03 -08:00
Nathan Sobo
43495f05ba Restore package specs in suite. Didn't mean to commit these comments. 2013-12-10 01:31:04 -08:00
Nathan Sobo
5ff47f3aa1 Call atom.create with TokenizedBuffer before testing it 2013-12-09 12:28:13 -08:00
probablycorey
ec3e139632 Project doesn't serialize non-modified buffers that don't exist on disk 2013-12-09 11:41:57 -08:00
probablycorey
63e3be8630 Only mark a deleted file as modified if it was previously modified.
Fixes #693
2013-12-09 11:06:29 -08:00
Nathan Sobo
ee1f21439d Merge branch 'ns-latest-telepath' into ns-teleditor 2013-12-07 13:59:35 -08:00
Nathan Sobo
f25d8d83c5 Merge branch 'master' into ns-latest-telepath 2013-12-07 13:58:53 -08:00
Nathan Sobo
b4270b1e9e Merge branch 'ns-mock-cson-in-config-specs' 2013-12-07 13:52:00 -08:00
Kevin Sawicki
34f71a2623 Observe editor.tabLength config in TokenizedBuffer
Closes #1224
2013-12-07 11:43:48 -08:00
Nathan Sobo
1ccc93c50b Make DisplayBuffer a telepath model subclass 2013-12-07 03:07:15 -08:00
Nathan Sobo
a4d2b4d21a Make TokenizedBuffer a telepath.Model subclass
There's a bunch of improvised code to make this work right now because
of the circularity of this refactoring. It will stabilize over time.
2013-12-07 02:25:47 -08:00
Nathan Sobo
88eb803d91 Mock season.writeFileSyne instead of fs.writeFileSync in config specs
The spec suite has been overwriting my config directory in weird cases.
While investigating it I noticed that we mock writeFileSync directly in
these specs, but we actually use season to write the config cson. This
makes this spec a bit simpler because it doesn't have to parse the CSON
in the spec. Lower level assertions belong on the season package itself.
2013-12-06 22:10:26 -08:00
Nathan Sobo
b61654b52f Upgrade to telepath 0.61.0
This version adds a bunch of reactive primitives and ensures we destroy
documents when they are no longer referenced.
2013-12-06 21:55:57 -08:00
Kevin Sawicki
e45aeecb0a Update specs now that syntax themes have stylesheets folders 2013-12-06 13:24:34 -08:00
Kevin Sawicki
433b64d581 Update spec for new hard tab span text length 2013-12-06 08:27:00 -08:00
Kevin Sawicki & Nathan Sobo
94e4fef108 Use DisplayBuffer::lineForRow in EditorView::positionLeftForLineAndColumn
Previously the tokenized lines were obtained from the tokenized buffer
which skipped the translation to screen coordinates.

Closes #1231
2013-12-06 08:26:59 -08:00
Kevin Sawicki
8af0a59c52 Pop stack when rule is pushed without position advancement
Previously only the scope name was checked which allowed cases
were rules without scope names to grow the stack infinitely without
advancing the position.

Closes atom/language-ruby-on-rails#1
2013-12-04 15:18:33 -08:00