Commit Graph

5597 Commits

Author SHA1 Message Date
Antonio Scandurra
3b5a0b292d 📝 Better and consistent naming across specs and docs 2015-03-12 12:32:59 +01:00
Antonio Scandurra
faa2944232 Cover edge case scenario
...where buffer rows are less than rows fitting on screen
2015-03-12 10:33:19 +01:00
Antonio Scandurra
912dd732a9 🎨 Uniform new tests structure 2015-03-12 10:17:26 +01:00
Antonio Scandurra
9f1bb82451 Adjust DisplayBuffer#getVisibleRowRange logic
This fixes #4596, where the calculation returned a wrong range.

* 📝 State clearly that we'll return a closed interval in docs
*  Write tests to ensure a correct behavior
2015-03-12 10:08:02 +01:00
Antonio Scandurra
2b98192276 Destroy only containing folds on selection 2015-03-11 16:16:45 +01:00
Max Brunsfeld
f1375ca849 Merge pull request #5875 from atom/mb-multi-folder-all-the-time
Always open all CLI paths in the same window
2015-03-10 14:31:42 -07:00
liuxiong332
9b77d303a5 add specs for pane axis element 2015-03-10 21:29:16 +08:00
Antonio Scandurra
8c297ba1fc Verify corrupted state graceful handling 2015-03-09 13:43:33 +01:00
Max Brunsfeld
a6e8f8a08a Always open all CLI paths in the same window
No more 'atom --multi-folder'
2015-03-05 15:23:28 -08:00
Kevin Sawicki
7a3065e0fb Add spec for invalid settings notification 2015-03-04 11:18:15 -08:00
Kevin Sawicki
f02fa4a245 Add spec for invalid grammar notification 2015-03-04 11:12:09 -08:00
Kevin Sawicki
59c3dea77b Show notification for invalid context menu selector 2015-03-04 10:02:04 -08:00
Kevin Sawicki
a2d9ba2d2e Only try to require main module once 2015-03-04 10:02:04 -08:00
Kevin Sawicki
628380ff3d Unfocus spec 2015-03-04 10:02:04 -08:00
Kevin Sawicki
6c87dc05f3 Migrate specs from console.warn to notifications 2015-03-04 10:02:03 -08:00
Kevin Sawicki
fa2eab5b7e Show notification when parsing package.json fails 2015-03-04 10:02:03 -08:00
Kevin Sawicki
a7bd20f08f Remove unused fixture 2015-03-04 10:02:03 -08:00
Kevin Sawicki
5902bc42e9 Throw error when adding context menu with invalid selector 2015-03-04 10:02:03 -08:00
Kevin Sawicki
333a495d55 Catch errors adding activation commands 2015-03-04 10:02:03 -08:00
Kevin Sawicki
8ba098b640 Throw an error when adding an invalid selector 2015-03-04 10:02:03 -08:00
Michael Bolin
a0a4dac571 Fix a bug when a URI is passed to atom.project.removePath(). 2015-03-03 21:44:54 -08:00
Ben Ogle
5f7015f303 Remove isInitialEmptyEditor 2015-03-03 13:18:02 -08:00
Ben Ogle
80b1d89c62 Check getLoadSettings to decide to open initial buffer 2015-03-03 12:34:54 -08:00
Ben Ogle
80cd20193a Move the logic for opening empty initial buffer to renderer 2015-03-03 11:39:38 -08:00
Ivan Zuzak
e452070847 Merge branch 'master' into iz-gutter-click-select-whole-soft-wrapped-line 2015-03-03 15:40:56 +01:00
Ivan Zuzak
03a064b6e9 Add specs for mouse interactions on gutter with soft wrap 2015-03-03 13:59:46 +01:00
Max Brunsfeld
8fac0e8778 Merge pull request #5795 from mostafaeweda/master
Default directory provider should handle only local filesystem directories
2015-03-02 16:04:54 -08:00
Mostafa Eweda
b74a688baa Bare minimum fix to the default directory provider 2015-03-02 14:28:01 -08:00
Antonio Scandurra
a12bf66e41 Merge branch 'master' into batch-updates 2015-02-28 10:21:48 +01:00
Antonio Scandurra
78a1a724db 🎨 More expressive specs 2015-02-28 09:55:49 +01:00
Antonio Scandurra
436322fc41 Call it onDidUpdateState 2015-02-28 09:36:56 +01:00
Antonio Scandurra
0dca5a5fcd Encapsulate state update inside TextEditorPresenter#getState 2015-02-28 09:25:53 +01:00
Ivan Zuzak
574158dc6d Add test for foldable icons on soft wrapped lines 2015-02-27 15:30:24 +01:00
Nathan Sobo
f15c029938 Merge pull request #5759 from atom/as-soft-wrap-hangs-on-small-windows
Do not hang on soft wrapping when editor is very small
2015-02-27 01:00:20 -07:00
Antonio Scandurra
efefc0dc66 DisplayBuffer#getEditorWidthInChars must always be >= 0 2015-02-27 00:55:03 +01:00
Nathan Sobo
6a9abd1f66 🐎 Don’t blink cursors when editor isn’t focused
Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2015-02-26 15:23:11 -07:00
Nathan Sobo
cd310dbe58 Rename ‘blinkCursorsOff’ to ‘cursorsVisible’ in presenter state 2015-02-26 15:21:47 -07:00
Max Brunsfeld
ddcb874f6b Base state file path on sorted project paths 2015-02-26 12:50:56 -08:00
Max Brunsfeld
72147be4bc Merge pull request #5768 from atom/mb-save-state-based-on-project-paths
Base state path on project paths
2015-02-26 11:55:17 -08:00
Max Brunsfeld
173502bab4 Base state path on project paths 2015-02-26 11:21:44 -08:00
Max Brunsfeld
25edc9d565 Merge pull request #5753 from atom/mb-project-split-path
Add API for getting paths relative to project dirs
2015-02-26 09:13:11 -08:00
Max Brunsfeld
69b1a08ef5 Rename .splitPath -> .relativizePath 2015-02-26 08:46:00 -08:00
Nathan Sobo
c9ce9f41c2 Merge pull request #5567 from as-cii/indent-soft-wrap
Indent soft wrap
2015-02-25 19:06:35 -07:00
Max Brunsfeld
b307024218 Add API for getting paths relative to project dirs 2015-02-25 17:15:08 -08:00
Kevin Sawicki
d0f7444f86 Merge pull request #5744 from atom/ks-optional-activate
Make package activation function optional
2015-02-25 14:17:53 -08:00
Nathan Sobo
986e8bf85f Allow multiple space-delimited classes for highlight decorations
Fixes #5747
2015-02-25 14:35:32 -07:00
Kevin Sawicki
bfe3bc3659 Make package activate optional 2015-02-25 11:16:09 -08:00
Kevin Sawicki
96fb179d71 Merge pull request #5707 from atom/bf-grim-6to5
Report deprecation warning when 'use 6to5' is used instead of 'use babel'.
2015-02-25 10:07:39 -08:00
Kevin Sawicki
feb37c5df6 📝 Mention deprecations 2015-02-25 09:42:49 -08:00
Kevin Sawicki
e51f8b298e Add specs for pragma deprecations 2015-02-25 09:37:42 -08:00
Max Brunsfeld
88c2cef91f Make :checkout-head-revision command work w/ multiple repos 2015-02-24 15:30:04 -08:00
Max Brunsfeld
cbefdd6c5e Make Workspace::scan work w/ multiple root directories 2015-02-24 14:22:39 -08:00
Max Brunsfeld
a1ba470c5b Don't add project paths when opening a file in an existing window 2015-02-24 12:09:10 -08:00
Max Brunsfeld
cd9a1ccb9f 🎨 organize integration spec 2015-02-24 11:40:29 -08:00
Nathan Sobo
0bf0c0527f Don’t tokenize spaces preceding combining chars as leading whitespace
Fixes #5349
2015-02-24 12:10:25 -07:00
Nathan Sobo
5fdb3cde08 Fix ::longestScreenRow update for changes directly above longest line
Fixes #5716
2015-02-24 11:36:01 -07:00
Antonio Scandurra
088b3193e9 Merge branch 'master' into indent-soft-wrap 2015-02-24 08:30:36 +01:00
Max Brunsfeld
0be34a892f Merge pull request #5660 from atom/bf-git-repository-provider-should-not-throw
Make sure that GitRepositoryProvider.repositoryForDirectorySync() return...
2015-02-23 17:21:48 -08:00
Nathan Sobo
2e8c5855d4 Don’t attempt to preserve mouseWheelScreenRow if it’s deleted
Fixes #5527
2015-02-23 10:51:16 -08:00
Michael Bolin
61fb408777 Tighten up comment. 2015-02-23 10:10:37 -08:00
Michael Bolin
6bd6a8ccdd Introduce use of beforeEach() in unit test. 2015-02-23 09:59:16 -08:00
Michael Bolin
07039ba47a Check whether existsSync() is available in GitRepositoryProvider before trying to call it. 2015-02-23 09:30:43 -08:00
Antonio Scandurra
007ec75fbf Merge branch 'master' into indent-soft-wrap 2015-02-21 12:14:05 +01:00
Michael Bolin
6d24aaf497 Make sure that GitRepositoryProvider.repositoryForDirectorySync() returns null rather than throws.
The UI locks up if this method does not return.
2015-02-21 00:07:40 -08:00
Kevin Sawicki
25befa7368 Update fixture path in compile cache spec 2015-02-20 15:55:41 -08:00
Kevin Sawicki
631c95643d to5 -> babel 2015-02-20 15:24:21 -08:00
Kevin Sawicki
caff9e0866 Merge pull request #5579 from sebmck/babel
Rename 6to5 to Babel
2015-02-20 15:04:26 -08:00
Nathan Sobo
964809373b Merge branch 'ns-manual-dom-updates' 2015-02-20 15:29:33 -07:00
Nathan Sobo
32d393d26f Pause polling when updates are requested, but don’t start polling over
The blinking cursor was ensuring that we never polled in certain cases.
We need to allow the interval to continue polling at a normal pace, but
just avoid doing any work that could delay the next animation frame.
2015-02-20 09:51:11 -07:00
Antonio Scandurra
0258531a3c Use softWrapIndentation name consistently 2015-02-20 10:28:27 +01:00
Antonio Scandurra
ab5c79d009 Revert softWrapAtNewline attempt
...now we use `skipSoftWrapIndentation: true` when moving up and down.
2015-02-20 10:02:34 +01:00
Antonio Scandurra
ed77358515 Show guide on soft wrapped lines with indentation
* Rename phantomToken to softWrapIndent and use it consistently
* Build multiple softWrapIndent tokens in order to show guides
* Memoize softWrapIndentTokens and softWrapIndentDelta
2015-02-20 09:29:37 +01:00
Michael Bolin
d5abd87643 reword it() message 2015-02-19 21:35:07 -08:00
Michael Bolin
54c7070648 kill assertions about directoryProviders 2015-02-19 21:16:30 -08:00
Michael Bolin
bf9c4132b2 Create a comprehensive test for the new behavior in Project. 2015-02-19 21:02:31 -08:00
Michael Bolin
461cd8c5fe Introduce atom.directory-provider service.
A `Project` will always have a `DefaultDirectoryProvider` that
will be used if there are no other `DirectoryProvider` objects
that can produce a `Directory` for a path.
2015-02-19 20:26:06 -08:00
Michael Bolin
c728ad6d57 Introduce atom.directory-provider service.
A `Project` will always have a `DefaultDirectoryProvider` that
will be used if there are no other `DirectoryProvider` objects
that can produce a `Directory` for a path.
2015-02-19 17:57:18 -08:00
Nathan Sobo
1d84d74e50 Centralize text editor DOM interaction through atom.views
This ensures that DOM writing, reading, and polling properly interleaves
with DOM interactions from other text editors and any other code that
coordinates via atom.views. Not sure about the location of it though.
2015-02-19 17:14:58 -07:00
Nathan Sobo
de4d995190 Add document coordination methods to ViewRegistry
These will assist in updating and reading the DOM in a non-blocking
manner across components.
2015-02-19 17:14:57 -07:00
Nathan Sobo
7033b27207 Make EditorComponent a plain JS object rather than a React component 2015-02-19 17:14:57 -07:00
Nathan Sobo
5ecefe7213 Update scoped config values in presenter when grammar changes 2015-02-19 17:14:56 -07:00
Nathan Sobo
2fba4979f9 Use presenter to determine gutter visibility 2015-02-19 17:14:56 -07:00
Nathan Sobo
156569f19e Add TextEditorPresenter::state.gutter.visible 2015-02-19 17:14:55 -07:00
Nathan Sobo
bf29a020e1 Use presenter for focused state in EditorComponent 2015-02-19 17:14:55 -07:00
Nathan Sobo
4654bad543 Add .focused to presenter state
Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2015-02-19 17:14:55 -07:00
Nathan Sobo
52a9a76b2a Use presenter state in InputComponent 2015-02-19 17:14:54 -07:00
Nathan Sobo
8e27d8215a Store hidden input data in TextEditorPresenter::state 2015-02-19 17:14:54 -07:00
Nathan Sobo
168df987d7 Make GutterComponent a plain JS object instead of a React component 2015-02-19 17:14:53 -07:00
Nathan Sobo
c06e100fae Make LinesComponent a normal object instead of a React component
Also, remove ability to disable hardware acceleration since there’s
no longer a need for it and it complicated this conversion.
2015-02-19 17:14:53 -07:00
Nathan Sobo
883af7a83e Update cursor nodes manually 2015-02-19 17:14:52 -07:00
Kevin Sawicki
54290e0717 Merge pull request #5643 from atom/ks-deprecations-in-tasks
Report deprecations from tasks
2015-02-19 15:14:35 -08:00
Kevin Sawicki
ebefc3b36d Assert stack trace location 2015-02-19 14:53:15 -08:00
Max Brunsfeld
0674244f5c Always create new window when opening w/ no path
Fixes #5631
2015-02-19 14:35:22 -08:00
Kevin Sawicki
d721cc62e3 Report deprecations in tasks 2015-02-19 14:12:48 -08:00
Antonio Scandurra
59cc10a1ee Bring in @nathansobo PR changes
...as they were needed to pass specs
2015-02-19 21:09:06 +01:00
Antonio Scandurra
79c16a0d00 Use softWrapAtNewLines in moveDown and moveUp
/cc: @nathansobo
2015-02-19 20:01:37 +01:00
Max Brunsfeld
cf60855245 Don't destroy repo in ::removePath if it is still needed 2015-02-19 10:28:54 -08:00
Max Brunsfeld
d4298bf077 Add Project::removePath
The tree-view needs to be able to remove a path from
the project
2015-02-19 10:02:37 -08:00
Antonio Scandurra
67ef17e0c8 💚 Fix soft wrapping scroll spec 2015-02-19 16:23:59 +01:00
Antonio Scandurra
85e202ee0a Get rid of wrapAtPhantomTokens 2015-02-19 16:23:51 +01:00
Max Brunsfeld
a9adfa6a76 Fix bug in Project::relativize 2015-02-18 16:47:35 -08:00
Max Brunsfeld
8c3988a790 Fix race when starting atom twice in spec 2015-02-18 13:37:06 -08:00
Antonio Scandurra
8184ad9a77 Ensure phantom tabs are correctly tokenized 2015-02-18 21:31:00 +01:00
Antonio Scandurra
bef1e862cc Fix failing specs (and add new ones)
When fixing failing specs, I adapted existing expectations to match the "soft
wrap indenting" behaviour: this means that there's no need to write a new spec
for it.
2015-02-18 21:20:04 +01:00
Max Brunsfeld
0eb742566f Always open w/ one untitled buffer when no paths are given
Fixes #5607
2015-02-18 11:17:52 -08:00
Max Brunsfeld
39a225821e Reuse current window if it has no project path
Fixes #5615
2015-02-18 10:29:48 -08:00
Kevin Sawicki
63af713a3f Guard against detected repository that does not open
Closes #5609
2015-02-18 09:16:06 -08:00
Sebastian McKenzie
52506a0df2 Rename 6to5 to Babel 2015-02-18 12:23:58 +11:00
Max Brunsfeld
bcfa4ef608 Restore old behavior for multiple path CLI args
Signed-off-by: Nathan Sobo <nathan@github.com>
2015-02-17 15:25:50 -08:00
Max Brunsfeld
a857932d6f Merge pull request #5537 from atom/try-assign-repo-after-provider-is-registered
Try to set the Project's repo if it does not have one when a new Reposit...
2015-02-17 10:48:08 -08:00
Michael Bolin
222db8af21 ./script/grunt lint and temp.mkdirSync('atom-project') instead of 'tmp'. 2015-02-17 10:14:35 -08:00
Michael Bolin
5805bf9675 Try to set the Project's repo if it does not have one when a new RepositoryProvider is registered.
I tested this using my test `HgRepositoryProvider`. Now when I run the following from the
command line:

    atom <path-to-directory-with-hg-repository>

And then run the following in the console:

    atom.project.getRepositories()

I get an array with an `HgRepository` in it. Previously, I got an empty array because the
`Project`'s paths were set before my `HgRepositoryProvider` was registered.
2015-02-13 22:27:13 -08:00
Nathan Sobo
55a70da3cf Hide scrollbars on mini editors
Fixes #5548
2015-02-13 19:37:27 -07:00
Max Brunsfeld
9517410ef4 Incrementally initialize presenter in random mutation spec
Fix resulting failures

Signed-off-by: Nathan Sobo <nathan@github.com>
2015-02-13 18:05:05 -08:00
Nathan Sobo
7e32dc6e7d Tempororily disable random presenter spec 2015-02-13 14:33:24 -07:00
Max Brunsfeld
ac78cee584 🔥 ncp; use fs.copySync 2015-02-12 22:14:02 -08:00
Max Brunsfeld
30bd85d8cc Add some waiting in integration test
* Give chromedriver a few millis to start up
* Wait for atom-workspace element to appear before querying
  active panes.
2015-02-12 21:18:20 -08:00
Max Brunsfeld
8cc0372432 Avoid unhandled promise rejection warning 2015-02-12 21:18:20 -08:00
Max Brunsfeld
a5b28b2833 Rename test helper method 2015-02-12 21:18:20 -08:00
Max Brunsfeld
476876e479 Restore behavior of reusing focused window for opened files 2015-02-12 21:18:20 -08:00
Max Brunsfeld
e0aa8e7f5c Move ncp dependency to build/package.json 2015-02-12 21:18:20 -08:00
Max Brunsfeld
f7e1629cfc Set multiple project paths for multiple cmd-line paths
Signed-off-by: Jessica Lord <jlord@github.com>
2015-02-12 21:18:18 -08:00
Max Brunsfeld
81d07e2804 Improve error-handling in integration spec 2015-02-12 21:18:17 -08:00
Max Brunsfeld
ba789800b7 Fix handling of args and env in atom-launcher script
Signed-off-by: Jessica Lord <jlord@github.com>
2015-02-12 21:18:16 -08:00
Max Brunsfeld
4ebfd22e3d Add Project::addPath 2015-02-12 21:16:26 -08:00
Max Brunsfeld
8ab4ad54d8 Allow Project::setPaths to handle multiple paths
Signed-off-by: Jessica Lord <jlord@github.com>
2015-02-12 21:16:15 -08:00
Nathan Sobo
01512989f7 Comment out json-diff module require
This is only for use locally to troubleshoot failing specs.

Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2015-02-12 18:04:40 -07:00
Kevin Sawicki
ef7726ba35 Uncomment env var check 2015-02-12 16:04:27 -08:00
Kevin Sawicki
2470d44dd2 Use temp directory for ATOM_HOME 2015-02-12 15:51:55 -08:00
Kevin Sawicki
a372c892f0 Set chromedriver path in integration spec helper 2015-02-12 15:04:33 -08:00
Kevin Sawicki
20b2be51d9 Add initial compile cache spec 2015-02-12 14:22:46 -08:00
Max Brunsfeld
aa59c38264 Merge pull request #5491 from bolinfest/repository-provider
Set up the atom.repository-provider service and implement GitRepositoryP...
2015-02-12 11:00:05 -08:00
Nathan Sobo
205d1df7b4 Precompute ::startRow and ::endRow in presenter 2015-02-12 11:34:45 -07:00
Michael Bolin
653bd32a3f Introduce local promise variable to simplify assertion. 2015-02-12 09:52:48 -08:00
Michael Bolin
248e958628 Move most test logic into waitsForPromise in git-repository-provider-spec.coffee 2015-02-12 09:49:40 -08:00
Michael Bolin
603a672629 Moved the bulk of the test into waitsForPromise to eliminate some extra variables. 2015-02-12 09:47:11 -08:00
Michael Bolin
efd9e505eb split up one of the tests in git-repository-provider-spec.coffee 2015-02-12 09:43:17 -08:00
Michael Bolin
673dae9f5b Remove snake-case variable names in tests. 2015-02-12 09:38:29 -08:00
Michael Bolin
5cbfc2473d Remove snake-case variable names in tests. 2015-02-12 09:33:25 -08:00
Michael Bolin
ca31c08e22 Remove reference to private atom.project.repositoryForDirectory property in unit test. 2015-02-12 09:31:44 -08:00
Michael Bolin
a3286f1f1d Fix up assertion messages. Make some .then() calls one-liners. 2015-02-12 09:28:26 -08:00
Michael Bolin
7a89366146 excise outdated comment 2015-02-12 09:22:27 -08:00
Michael Bolin
ddd0ef5eb1 change describe() to it() so runs() is nested in an it() 2015-02-12 09:20:17 -08:00
Nathan Sobo
cc80378b29 Precompute ::scrollTop in presenter 2015-02-12 09:36:44 -07:00
Michael Bolin
bdae2f99a8 Add a unit test for GitRepositoryProvider. 2015-02-11 23:27:59 -08:00
Michael Bolin
485a4deb83 Fix an assertion that was failing but was being reported as part of the wrong test. 2015-02-11 23:01:19 -08:00
Michael Bolin
5b03cfe878 Added unit test for Project::repositoryForDirectory and fixed the bug
that my unit test caught.
2015-02-11 22:38:02 -08:00
Nathan Sobo
54fcaa6132 Precompute ::scrollHeight and cache ::scrollPastEnd config value 2015-02-11 23:01:08 -07:00
Nathan Sobo
05554d03e4 Precompute ::scrollWidth 2015-02-11 22:53:38 -07:00
Nathan Sobo
fc603aaa0d Precompute ::clientHeight and ::clientWidth 2015-02-11 22:42:32 -07:00
Nathan Sobo
be691b6a54 Precompute contentHeight and height 2015-02-11 22:04:05 -07:00
Nathan Sobo
e4168d70b7 Use computed clientWidth instead of contentFrameWidth as max scrollWidth 2015-02-11 11:47:18 -07:00
Nathan Sobo
7f0110f49e Update cursors as soon as all required measurements are assigned 2015-02-10 15:16:58 -07:00
Nathan Sobo
f5294454e6 Keep a minimum of 3 lines on screen when scrolling past end 2015-02-10 14:38:20 -07:00
Nathan Sobo
3e9b48ef71 Expand computed scrollHeight when editor.scrollPastEnd is enabled 2015-02-10 14:19:06 -07:00
Nathan Sobo
a4fd589616 Don’t render line numbers if scrolled past end 2015-02-10 10:11:20 -07:00
Nathan Sobo
711f0a227c Honor the editor.scrollPastEnd option in TextEditorPresenter 2015-02-10 09:47:24 -07:00
Nathan Sobo
89d5dd339e Merge pull request #5293 from atom/ns-editor-presenters
Move all text editor view state into a presenter object
2015-02-09 15:43:14 -07:00
Nathan Sobo
4f0e1997cf 💄 CharWidth -> CharacterWidth in presenter 2015-02-09 15:28:17 -07:00
Max Brunsfeld
3e28eff755 Remove logic for different promise types in waitsForPromise
I added that logic when using the selenium-webdriver library, but
then switched to using webdriverio, which has the same Promise
interface as Q.
2015-02-09 14:22:13 -08:00
Max Brunsfeld
ef9ae8e7d7 Merge pull request #5404 from atom/mb-integration-test
Add integration test to cover browser-side code
2015-02-09 13:11:53 -08:00
Nathan Sobo
0d1ba90561 Update presenter’s gutter background state when background color changes 2015-02-09 13:54:25 -07:00
Nathan Sobo
62c8244bf2 Merge branch 'master' into ns-editor-presenters 2015-02-09 13:37:27 -07:00
Max Brunsfeld
26b5c2712a Put socket in new temp dir on every test run 2015-02-08 11:55:45 -08:00
Max Brunsfeld
6bfe3bf3b4 Specify ATOM_HOME when starting Atom in integration test
Otherwise, tests may fail because the Welcome pane may appear,
depending on the content of `~/.atom/config.cson`
2015-02-08 11:55:45 -08:00
Max Brunsfeld
56a4e6b7bf Use webdriverio, not selenium-webdriver 2015-02-06 20:38:26 -08:00
Nathan Sobo
c8c13b8b40 Use cached .foldable values on TokenizedBuffer instead of recomputing 2015-02-06 18:54:34 -07:00
Nathan Sobo
f326c818fd Update .foldable on tokenized lines based on indentation 2015-02-06 18:54:13 -07:00
Nathan Sobo
0081fa283e Cache .foldable on tokenized lines based on block comments
Still need to handle indentation
2015-02-06 14:53:07 -07:00
Max Brunsfeld
6430bbb460 Wait for chromedriver's startup message on stdout 2015-02-05 22:40:17 -08:00
Kevin Sawicki
30419027a8 Show notification on config save failures 2015-02-05 15:34:17 -08:00
Kevin Sawicki
5de95759cd Spy on editor.save 2015-02-05 15:24:00 -08:00
Kevin Sawicki
e51c8f3407 Add specs for save/saveAs error handling 2015-02-05 15:07:42 -08:00
Max Brunsfeld
56677e71e4 Enable integration tests with environment var
I think this makes more sense then running them via a separate command,
since that command would only make sense for atom-core, unlike the
current 'run-package-specs' command, which works for any atom package.

This way, they won't run by default, but you can opt in to running them
on the command line by setting an env var, or in the spec runner by
temporarily editing the code, like we do for focused tests anyway.
2015-02-05 13:02:08 -08:00
Kevin Sawicki
fd1d872840 Prompt split editors to save on close
Previously an editor that was split into multiple panes would not
prompt to save correctly when the window was unloading.

This adds a new `windowCloseRequested` option passed through from the
beforeunload handler to the editor so that it can specially handle this
case.

Closes #5257
2015-02-04 17:14:46 -08:00
Kevin Sawicki
6e3d41f433 Suppress deprecations in BufferedNodeProcess
This keeps it consistent with the render process which also suppresses
deprecations

Closes #5383
2015-02-04 15:27:17 -08:00
Max Brunsfeld
28f280183e Use which(1), not bash's type function 2015-02-04 15:22:51 -08:00
Max Brunsfeld
f1df254a66 Use varargs in integration-test helper fn 2015-02-04 15:20:44 -08:00
Max Brunsfeld
af28083a6f Add integration test coverage for reusing windows w/ the same dir 2015-02-04 15:07:08 -08:00
Nathan Sobo
77599c799c Rename TextEditorPresenter::height to ::explicitHeight
This clarifies that the height is being assigned externally rather than
derived from the content.
2015-02-04 15:10:58 -07:00
Nathan Sobo
b94576dc09 Pass view measurements to model via presenter
Someday, we won’t need to pass measurements to the model anymore.
2015-02-04 14:48:17 -07:00
Max Brunsfeld
d0757c87c8 Move selenium-webdriver dependency to build/package.json 2015-02-04 13:11:33 -08:00
Max Brunsfeld
c19d99e9e2 Add integration test for starting atom w/ different arguments 2015-02-04 12:59:26 -08:00
Nathan Sobo
3973939de1 Don’t constrain scrollTop/Left until required measurements are assigned
This commit also adds to the list of required measurements and updates
the spec with a buildPresenter helper to more easily supply default
values for required measurements in each spec when they aren’t relevant
to that spec’s content.
2015-02-04 11:13:24 -07:00
Nathan Sobo
b792190693 Constrain scrollLeft based on computed clientWith and scrollWidth 2015-02-04 10:22:29 -07:00
Nathan Sobo
1ae25ed85d Make randomized presenter spec failures easier to reproduce 2015-02-04 10:05:47 -07:00
Nathan Sobo
5bb3095ffa Constrain scrollTop based on clientHeight and scrollHeight 2015-02-04 09:38:00 -07:00
Nathan Sobo
3e6669cf3e Log code for repeatable randomized presenter spec failures 2015-02-04 08:42:06 -07:00
Nathan Sobo
ba6d11e24e Merge branch 'master' into ns-editor-presenters 2015-02-04 07:57:04 -07:00
Nathan Sobo
86991bbec2 Merge branch 'driskell-bugs/ident_guide_whitespace_only' 2015-02-03 21:26:25 -07:00
Nathan Sobo
973d7ebf13 Add spec coverage for indent guides + invisibles on blank lines 2015-02-03 21:26:01 -07:00
Kevin Sawicki
a4976c32ae Remove release notes from event payload
The release notes are provided by Squirrel on Mac but not by Squirrel for
Windows and the release notes package pulls them down manually anyway
so this field is no longer needed.

Checking for the presence of the release notes previously was preventing the
event from firing on Windows which would cause old release notes to show in
the package.

Closes #3757
2015-02-03 14:57:33 -08:00
Nathan Sobo
78b8039384 Don’t require sync update before measuring when autoHeight changes
Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2015-02-03 15:05:45 -07:00
Nathan Sobo
cd77870286 In presenter, handle the first line being soft-wrapped
Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2015-02-03 15:05:44 -07:00
Nathan Sobo
edd595a72f Access mouseWheelScreenRow property instead of calling removed method 2015-02-03 15:05:43 -07:00
Nathan Sobo
cf50ec1861 Fix action logging in random spec 2015-02-03 15:05:42 -07:00
Nathan Sobo
de5c1fc28d Add randomized fuzz test for TextEditorPresenter
This test performs random operations on the editor and assigns random
measurements from the view. After each operation, the state of a
pre-existing presenter is compared with that of a new presenter created
with the same parameters.

Since it’s easier to reason about building fresh state than it is to
reason about state updates, I hope this will catch any bugs in our
update logic as we optimize it and explore every corner case.
2015-02-03 15:05:33 -07:00
Nathan Sobo
510520d2c7 🎨 rename ::getStart/EndRow to ::computeStart/EndRow 2015-02-03 15:05:32 -07:00
Nathan Sobo
f005b2005f Add specs for updating scrollWidth when the longest line changes 2015-02-03 15:05:32 -07:00
Nathan Sobo
b521e8dc97 Handle auto-height in TextEditorPresenter 2015-02-03 15:05:32 -07:00
Nathan Sobo
bbc1a264b5 Make each section of presenter state self-contained
This means we have some duplicated values in different parts of the
tree, but it’s cleaner in the view since each component only consumes
a single object. Seems like the presenter should convey the correct
data to the correct locations and minimize the logic in the view. A
few duplicated integers is a reasonable trade-off.
2015-02-03 15:05:31 -07:00
Nathan Sobo
efdba9fc24 Use presenter state for scrollbars and scrollbar corner 2015-02-03 15:05:31 -07:00
Nathan Sobo
0910e86357 Add .right and .bottom to presenter scrollbar states 2015-02-03 15:05:31 -07:00
Nathan Sobo
14776e3f0a Give each scrollbar its own state object and track visibility 2015-02-03 15:05:30 -07:00
Nathan Sobo
42ab02d7d2 Rename ::clientHeight/Width to ::height and ::contentFrameWidth
The term “client” was actually a misnomer here because it typically
means the height excluding the scrollbars, which wasn’t how we were
using it here.
2015-02-03 15:05:30 -07:00
Nathan Sobo
1b5be9aef8 Track horizontal/vertical scrollbar height/width in presenter 2015-02-03 15:05:30 -07:00
Nathan Sobo
9de8ab949f Drop TextEditorComponent::getRenderedRowRange 2015-02-03 15:05:30 -07:00
Nathan Sobo
6108c04f40 Add spec coverage for deprecated ‘cursor:moved’ event
So we don’t accidentally drop it during this transition
2015-02-03 15:05:30 -07:00
Nathan Sobo
76241fb779 Handle line and line number preservation in presenter
The target of mousewheel events needs to be preserved when scrolling.
It used to be dealt with in the view, but now we can do it in the
presenter for a simpler view implementation.
2015-02-03 15:05:29 -07:00
Nathan Sobo
d9a5d141eb Clear ::mouseWheelScreenRow after delay even if we don’t actually scroll 2015-02-03 15:05:29 -07:00
Nathan Sobo
37a040a620 Preserve line numbers in presenter based on ::mouseWheelScreenRow 2015-02-03 15:05:29 -07:00
Nathan Sobo
35d3690088 Preserve lines in TextEditorPresenter based on ::mouseWheelScreenRow 2015-02-03 15:05:29 -07:00
Nathan Sobo
578a76ba6b Make “mouse wheel” 2 words in presenter API
Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2015-02-03 15:05:28 -07:00
Nathan Sobo
da5ee3fa86 Add TextEditorPresenter::state.mousewheelScreenRow 2015-02-03 15:05:28 -07:00
Nathan Sobo
ac25596002 Wait for required measurements before building some presenter state
Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2015-02-03 15:05:27 -07:00
Max Brunsfeld
9cc7ecb1be Add maxLineNumberDigits to presenter state 2015-02-03 15:05:27 -07:00
Max Brunsfeld
60fca8d8b2 Use presenter state for gutter background color
Signed-off-by: Nathan Sobo <nathan@github.com>
2015-02-03 15:05:27 -07:00
Max Brunsfeld
fd4f28911d Use presenter state for placeholder text
Signed-off-by: Nathan Sobo <nathan@github.com>
2015-02-03 15:05:27 -07:00
Nathan Sobo
f5fa3b837e Set content.indentGuidesVisible in presenter if editor is mini 2015-02-03 15:05:26 -07:00
Nathan Sobo
d4517b1ab0 Add TextEditorPresenter::state.scrollingVertically
This is used by the view to defer measuring new lines until we stop
scrolling.
2015-02-03 15:05:26 -07:00
Nathan Sobo
71a27de7ac Add TextEditorPresenter::state.content.backgroundColor 2015-02-03 15:05:25 -07:00
Nathan Sobo
e4c95d8ac3 Add overlay decorations to TextEditorPresenter::state 2015-02-03 15:05:25 -07:00
Nathan Sobo
c4b5a0f411 Honor the ‘onlyHead’ option for line and line-number decorations 2015-02-03 15:05:24 -07:00
Nathan Sobo
af8c38ad80 🎨 2015-02-03 15:05:24 -07:00
Nathan Sobo
0802b9bdd1 Don’t decorate soft-wrapped lines/line numbers unless spanned by marker 2015-02-03 15:05:24 -07:00
Nathan Sobo
20838accc1 Key line numbers by buffer row and soft-wrap count
…instead of an array. This will make things simpler to diff in the
view.
2015-02-03 15:05:24 -07:00
Max Brunsfeld
f218e985cf Update presenter scrollHeight when clientHeight changes
Signed-off-by: Nathan Sobo <nathan@github.com>
2015-02-03 15:05:23 -07:00
Max Brunsfeld
33081cefda Move .lineNumbers onto .gutter property of presenter state
Signed-off-by: Nathan Sobo <nathan@github.com>
2015-02-03 15:05:23 -07:00
Nathan Sobo
d26e8a2df1 Move vertical scroll state to root of presenter state object
Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2015-02-03 15:05:23 -07:00
Nathan Sobo
1ff0b20cea Add ‘foldable’ to line number presenter state 2015-02-03 15:05:23 -07:00
Nathan Sobo
66c35d6e3e Reflect changes to line number decorations in presenter state
Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2015-02-03 15:05:22 -07:00
Nathan Sobo
970936f96d Start on TextEditorPresenter::state.lineNumbers
Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2015-02-03 15:05:22 -07:00
Nathan Sobo
49bf3bb14e Use presenter to render flashes
Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2015-02-03 15:05:22 -07:00
Nathan Sobo
8ebd057b0c Use presenter to render highlights
Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2015-02-03 15:05:22 -07:00
Nathan Sobo
2f526c59c5 Add highlights state to TextEditorPresenter
Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2015-02-03 15:05:21 -07:00
Nathan Sobo
764139c25e Fix spec organization
Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2015-02-03 15:05:21 -07:00
Nathan Sobo
3b93f3d71b Blink cursors based on presenter state
Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2015-02-03 15:05:21 -07:00
Nathan Sobo
b412c2642d Add TextEditorPresenter::onDidUpdateState
And ensure observers are invoked whenever the state changes in spec.
2015-02-03 15:05:20 -07:00
Nathan Sobo
3c6c385ec8 Add TextEditorPresenter::state.content.blinkCursorsOff 2015-02-03 15:05:20 -07:00
Nathan Sobo
06b5eba17c Fix 0-width cursors in presenter instead of view 2015-02-03 15:05:20 -07:00
Nathan Sobo
c8b58761ba Add TextEditorPresenter::state.content.cursors 2015-02-03 15:05:20 -07:00
Nathan Sobo
f479e9d029 Add ::state.content.scrollTop/Left to TextEditorPresenter 2015-02-03 15:05:19 -07:00
Nathan Sobo
2c5888e25a Add ::state.content.scrollHeight to TextEditorPresenter 2015-02-03 15:05:19 -07:00
Nathan Sobo
de0b5c4c62 Reorganize specs on TextEditorPresenter to mirror structure of state 2015-02-03 15:05:18 -07:00
Nathan Sobo
59b109654e Fix spec 2015-02-03 15:05:18 -07:00
Nathan Sobo
fe5ee524a8 Show/hide line decorations when TextEditor::mini changes 2015-02-03 15:05:18 -07:00
Nathan Sobo
9a496e62cb Don’t apply line decorations to mini editors 2015-02-03 15:05:18 -07:00
Nathan Sobo
a513cf260c Don’t apply line decorations to last line if it ends at column 0 2015-02-03 15:05:17 -07:00
Nathan Sobo
62a1210604 Honor the ‘onlyEmpty’ and ‘onlyNonEmpty’ line decoration options 2015-02-03 15:05:17 -07:00
Nathan Sobo
773482467e Handle updates to line decorations in TextEditorPresenter
This isn’t a super efficient approach, but it is simple and should be
correct. Once we move all state to the presenter we can perform a more
efficient synchronous update when markers change.
2015-02-03 15:05:17 -07:00
Nathan Sobo
5d8f831136 Instantiate presenter with minimal parameters in specs 2015-02-03 15:05:17 -07:00
Nathan Sobo
9c1efb6ba0 Simplify assertions 2015-02-03 15:05:17 -07:00
Nathan Sobo
568b9f6999 Add lineStateForScreenRow helper
The access pattern is pretty noisy in the specs
2015-02-03 15:05:16 -07:00
Nathan Sobo
06ef0792ce Add .decorationClasses to line state on initial render 2015-02-03 15:05:16 -07:00
Nathan Sobo
32a1854b7c Use TextEditorPresenter::state.content.indentGuidesVisible 2015-02-03 15:05:16 -07:00
Nathan Sobo
590391a0ce Update .content.indentGuidesVisible when editor’s grammar changes 2015-02-03 15:05:15 -07:00
Nathan Sobo
d0b52538b2 Add content.indentGuidesVisible to TextEditorPresenter::state 2015-02-03 15:05:15 -07:00
Nathan Sobo
0a9f7586ae Add top-level .content object to presenter state
It contains the .scrollWidth and then all the lines in a nested .lines
object. The .width has been removed from each line and replaced with
.content.scrollWidth.
2015-02-03 15:05:15 -07:00
Nathan Sobo
115d764725 Handle scoped character widths in TextEditorPresenter
Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2015-02-03 15:05:14 -07:00
Nathan Sobo
a3fb8b3aaa Disable spec until presenter approach stabilizes 2015-02-03 15:05:14 -07:00
Nathan Sobo
e2693da225 Fix endRow calculation 2015-02-03 15:05:14 -07:00
Nathan Sobo
9a070e7f6d Include endOfLineInvisibles in presenter state 2015-02-03 15:05:14 -07:00
Nathan Sobo
7095ccd32b Make all lines visible if no external client height is assigned 2015-02-03 15:05:13 -07:00
Nathan Sobo
ac463143dd Add 1 pixel to scrollWidth to account for cursor if not soft-wrapped 2015-02-03 15:05:13 -07:00
Nathan Sobo
2296d2d378 Account for overdrawMargin of startRow when computing the endRow 2015-02-03 15:05:13 -07:00
Nathan Sobo
0f4bcac8d4 Add 1 to the last row to ensure it’s visible 2015-02-03 15:05:12 -07:00
Nathan Sobo
b09b54800f Include line text in presenter state 2015-02-03 15:05:12 -07:00
Nathan Sobo
f4d8ef8315 Add width to lines state based on the computed scrollWidth
This is based on the ::baseCharacterWidth property for now. To be fully
correct, we need to base the scrollWidth on the actual width of
individual characters.
2015-02-03 15:05:12 -07:00
Nathan Sobo
a1c2e1bb66 Update TextEditorPresenter when the editor’s content changes 2015-02-03 15:05:12 -07:00
Nathan Sobo
5a2bbc945b Handle changing ::lineHeight in TextEditorPresenter 2015-02-03 15:05:12 -07:00
Nathan Sobo
9c2ed478cd Handle changing ::clientHeight in TextEditorPresenter 2015-02-03 15:05:11 -07:00
Nathan Sobo
880e1ce1f0 Handle changing ::scrollTop in TextEditorPresenter 2015-02-03 15:05:11 -07:00
Nathan Sobo
f0920bf63b Start on TextEditorPresenter with lines state 2015-02-03 15:05:11 -07:00
Kevin Sawicki
853ad9cee3 Re-throw stylesheet compile errors
This makes it consistent with other read errors. Previously a Notification
was returned in the error case causing errors downstream where the package's
stylesheets array was assumed to be a path/content tuple.

Closes atom/deprecation-cop#22
2015-02-02 17:55:36 -08:00
Max Brunsfeld
3739995ddb Merge pull request #5277 from atom/mb-package-json-services
Allow packages to specify services in their package.json files
2015-02-02 17:07:41 -08:00
Kevin Sawicki
f9f7cf6d34 Add more 6to5 specs 2015-02-02 13:29:20 -08:00
Kevin Sawicki
3b8b569d0c 🎨 2015-02-02 13:13:39 -08:00
Kevin Sawicki
8365ccb064 Merge pull request #5299 from bolinfest/6to5
Transpile all .js files beginning with the "use 6to5"; pragma with 6to5.
2015-02-02 13:11:33 -08:00
Max Brunsfeld
14969c0522 Avoid using private serviceHub in package manager test
Signed-off-by: Nathan Sobo <nathan@github.com>
2015-02-02 10:01:56 -08:00
Max Brunsfeld
65f2ffa55e Rename service keys in package.json
* serviceProvisions -> providedServices
* serviceDependencies -> consumedServices

Signed-off-by: Nathan Sobo <nathan@github.com>
2015-02-02 10:01:50 -08:00
Max Brunsfeld
5638c7fb6a Remove atom.services global
Signed-off-by: Nathan Sobo <nathan@github.com>
2015-02-02 10:01:34 -08:00
Max Brunsfeld
cb8b254502 Use version-ranges in fixture package with service deps 2015-02-02 10:00:53 -08:00
Max Brunsfeld
027ebc78c4 Respect service{Provisions,Dependencies} in packages' metadata 2015-02-02 10:00:53 -08:00
Max Brunsfeld
d9fb54ad6f Reset atom.services between specs 2015-02-02 10:00:53 -08:00
Ben Ogle
7263ca8faa 🎨 Fix spec title 2015-01-29 17:54:41 -08:00
Ben Ogle
083bafdb33 Handle unschema’d items in objects.
This is required for packages that still use configDefaults
2015-01-29 17:54:41 -08:00
Ben Ogle
26b450fe49 🎨 Clean up spec naming 2015-01-29 17:54:41 -08:00
Ben Ogle
5d273d0ee6 Add a bit more coverage to the specs 2015-01-29 17:54:41 -08:00
Ben Ogle
b9b2b4bca2 Adhere to the schemas when loading the user’s config 2015-01-29 17:54:41 -08:00
Ben Ogle
79094ee889 Reset all user config values when the schema changes. 2015-01-29 17:54:40 -08:00
Michael Bolin
52f2c0ec69 rename esnext to 6to5 2015-01-29 17:29:02 -08:00
Michael Bolin
32b3c4076f More fixes for @kevinsawicki 2015-01-29 12:15:10 -08:00
Michael Bolin
242fce3d79 Transpile all .js files with 6to5.
In the spirit of supporting JavaScript development for Atom packages,
this adds default support for es.next transpilation support in the way
that Atom already has default support for CoffeeScript transpilation.
There are many new features in ES6+ that make JavaScript development
easier and more enjoyable, particularly in terms of support for async code.

For reference, this was a much faster way to iterate on this than running `./script/build`
each time:

```
cp /Users/mbolin/src/atom/static/index.js /Applications/Atom.app/Contents/Resources/app/static/index.js
coffee --output /Applications/Atom.app/Contents/Resources/app/src --compile /Users/mbolin/src/atom/src/esnext.coffee
```

Run the following in the console to see how warm the cache was after startup:

```
global.require('../src/esnext/').getCacheHits()
global.require('../src/esnext/').getCacheMisses()
```
2015-01-29 11:56:32 -08:00
Ben Ogle
db41b022c2 Merge pull request #5228 from atom/bo-fix-wait-promise
Make waitsForPromise() work with es6 promises as well as Q promises
2015-01-23 10:33:20 -08:00
Max Brunsfeld
d4cc549a01 Add jasmine.useRealClock
This is the only way to unmock the _.now function uses
by _.debounce and _.throttle, since package specs don't
necessarily have access to core's copy of underscore-plus

Signed-off-by: Nathan Sobo <nathan@github.com>
2015-01-22 17:59:18 -08:00
Ben Ogle
76a5da8be8 Make waitsForPromise() work with es6 promises as well as Q promises. 2015-01-22 17:26:15 -08:00
Kevin Sawicki
63335f6b60 Return Color object when in cloned objects
This adds a custom deepClone that clones any Color objects
correctly.
2015-01-22 10:48:07 -08:00
Max Brunsfeld
528267b7d7 Preserve relative indentation of pasted lines when auto-indenting 2015-01-22 08:34:20 -08:00
Kevin Sawicki
c378ef0649 Merge pull request #5044 from russlescai/rl-scoped-file-encoding
Allow scoped default File Encoding
2015-01-21 11:22:17 -08:00
postcasio
867f920329 Handle EROFS errors when saving 2015-01-20 09:56:00 +00:00
Ben Ogle
bac10d60c4 Merge pull request #5114 from atom/bo-readonly
Allow opening of readonly files
2015-01-16 11:41:30 -08:00
Ben Ogle
11bda1b47a Add error handling for EBUSY as well 2015-01-16 11:07:32 -08:00
Ben Ogle
93f109fbba Add a better message for EPERM errors. 2015-01-16 10:45:48 -08:00
Max Brunsfeld
0a59d13d56 Fix Config::unset with no scope-selector
Closes #5095
2015-01-16 10:23:12 -08:00
Kevin Sawicki
d736ebff38 Don't deserialize buffers with inaccessible paths 2015-01-16 09:33:42 -08:00
Kevin Sawicki
16cc9f76c4 📝 Tweak spec description 2015-01-16 09:33:42 -08:00
Kevin Sawicki
6ad8aa7e5c Ignore buffer errors when the path is a directory
This would previously cause Atom to fail to launch if a buffer's
serialized path was now a directory on launch.
2015-01-16 09:33:42 -08:00
Nathan Sobo
c69f4baa04 Merge pull request #5068 from atom/ns-line-number-decorations
Rename 'gutter' decorations to 'line-number'
2015-01-14 20:04:02 -07:00
Nathan Sobo
49699bddf2 Fix styleSheets manifest key in package.json of fixtures 2015-01-14 19:52:26 -07:00
Nathan Sobo
8c574bfd30 Rename 'gutter' decorations to 'line-number' decorations 2015-01-14 19:49:46 -07:00
Nathan Sobo
fb4956dde6 Fix deprecated styleSheets manifest key 2015-01-14 18:48:27 -07:00
Ben Ogle
274ae6cd57 Use buffer.getPath not @getPath in project
😬
2015-01-14 16:15:53 -08:00
Ben Ogle
7d3fe78eed Remove Pane require from workspace view specs 2015-01-14 16:15:53 -08:00
Ben Ogle
3dc908c5ff Use eventType from pathwatcher's watch errors in messages 2015-01-14 16:15:53 -08:00
Ben Ogle
683203a9a1 Attempt to fix theme manager specs
They work for me!
2015-01-14 16:15:53 -08:00
Ben Ogle
3ec3c2b69d Fix theme manager specs 2015-01-14 16:15:53 -08:00
Ben Ogle
1bc2248fc2 Fix config specs 2015-01-14 16:15:53 -08:00
Ben Ogle
4be793f465 Post notifications when the user’s sheet cannot be loaded / parsed 2015-01-14 16:15:53 -08:00
Ben Ogle
3454249b58 Allow ENOENT errors in project.open 2015-01-14 16:15:52 -08:00
Ben Ogle
cbd42ac20c Don’t need the pane in workspace.open 2015-01-14 16:15:52 -08:00
Ben Ogle
b8efbedee1 Create a warning notification when buffer has a watch error 2015-01-14 16:15:52 -08:00
Ben Ogle
8435826e8a Remove linter errors 2015-01-14 16:15:52 -08:00
Ben Ogle
16468eb65d Move workspace specs to workspace. 2015-01-14 16:15:52 -08:00
Ben Ogle
d5e04e883e Use the error.code and path in the error 2015-01-14 16:15:52 -08:00
Ben Ogle
c20d3a8182 Throw an error when the error is unhandled 2015-01-14 16:15:51 -08:00
Ben Ogle
ca1f66d197 Post a notification when the user cannot access a file 2015-01-14 16:15:51 -08:00
Ben Ogle
4138b95146 Remove unnecessary < chars. wtf 2015-01-14 16:15:51 -08:00
Ben Ogle
11d4222c9f Handle error when opening a file that doesn’t exist 2015-01-14 16:15:51 -08:00
Ben Ogle
bc454f14e0 Add a warning notification for oversize file open 2015-01-14 16:15:51 -08:00
Russell Lescai
c538857cfa Removed unnecessary braces. 2015-01-15 08:57:25 +10:30
Nathan Sobo
e60a9e45f7 Display package name correctly for ::getUri deprecation warnings
We capture the package name during the call to ::addOpener and use it
if any open items have the deprecated ::getUri method.

Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2015-01-14 14:23:17 -07:00
Max Brunsfeld
0d5a707ffb Fix folding with splits
Fixes #4099

Signed-off-by: Nathan Sobo <nathan@github.com>
2015-01-14 09:43:20 -08:00
Russell Lescai
6716e544f0 Fix spec it function. 2015-01-14 15:07:42 +10:30
Russell Lescai
2f3a9c9e35 Updated js scope selector. 2015-01-14 14:08:23 +10:30
Russell Lescai
3d1baaf3f3 Added spec. Changed argument order for config get/set. 2015-01-14 13:46:21 +10:30
Kevin Sawicki
e693254913 Prevent form submits from changing the window URL
Refs atom/settings-view#341
2015-01-13 16:01:24 -08:00
Nathan Sobo
49cd3eb5da Clear window.setTimeout mock before each spec
This fixes a failure in the keymap spec where we assert that setTimeout
hasn’t been called.
2015-01-13 10:17:48 -07:00
Nathan Sobo
7f8ab72f53 Capitalize initialisms
Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2015-01-12 22:00:24 -08:00
Kevin Sawicki
640f8920fb Fix bounds checking of alpha 2015-01-12 17:34:43 -08:00
Kevin Sawicki
44939a12a0 Validate color properties when set 2015-01-12 17:34:43 -08:00
Kevin Sawicki
b8822b32db Only coerce strings and plain objects 2015-01-12 17:34:43 -08:00
Kevin Sawicki
8c39818670 Don't blow up when asking for schema at non-existent path 2015-01-12 17:34:43 -08:00
Kevin Sawicki
5a2c208804 Add specs with invalid objects 2015-01-12 17:34:43 -08:00
Kevin Sawicki
fc899f54cf Add specs for setting with an object 2015-01-12 17:34:42 -08:00
Kevin Sawicki
b923b57bcc Add specs for hsl and hsla colors 2015-01-12 17:34:42 -08:00
Kevin Sawicki
319ec244e1 Add spec for invalid values 2015-01-12 17:34:42 -08:00
Kevin Sawicki
1267a1e14e Add spec for default color value 2015-01-12 17:34:42 -08:00
Kevin Sawicki
0411f1584c Add color schema type 2015-01-12 17:34:42 -08:00
Nathan Sobo
dd80226c23 Revert "Handle addition/removal of ‘gutter-hidden’ attribute"
This reverts commit 6926236268.

There seems to be some bug or timing issue that prevents the
attachedCallback from being called in all cases when the
attributeChangedCallback is defined. We can figure this out at
a later time.
2015-01-12 17:39:07 -07:00
Nathan Sobo
6926236268 Handle addition/removal of ‘gutter-hidden’ attribute
Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2015-01-12 16:21:31 -07:00