Commit Graph

5597 Commits

Author SHA1 Message Date
Antonio Scandurra
6dfcc582b3 Increase defaultTimeoutInterval for Travis 2015-04-10 21:07:14 +02:00
Antonio Scandurra
9a269178cd Merge branch 'master' into as-public-ci 2015-04-10 17:56:22 +02:00
Kevin Sawicki
4160a8c239 Merge pull request #6230 from mnquintana/coffeelint-plus
Lint for more styleguide errors
2015-04-08 12:07:23 -07:00
Machiste Quintana
adbd539302 Revert 👕 2015-04-08 14:36:00 -04:00
Antonio Scandurra
b08bd79e02 Disable focus methods on CI 2015-04-08 10:27:03 +02:00
Antonio Scandurra
f9f5213cdf Handle http.on('error') for webdriver polling 2015-04-08 08:57:26 +02:00
Antonio Scandurra
dee626ab69 Investigate timeouts issues (again) 2015-04-08 08:36:46 +02:00
Antonio Scandurra
8720af76a4 Merge branch 'master' into as-public-ci 2015-04-08 08:30:58 +02:00
Machiste Quintana
ec11c89a74 Revert 👕 for spec fixtures 2015-04-07 19:24:29 -04:00
Max Brunsfeld
c7a5ebf725 Merge pull request #6291 from atom/mb-rename-add-root-folder
Rename 'add-root-folder' -> 'add-project-folder'
2015-04-07 12:30:37 -07:00
Max Brunsfeld
f39c67411a Rename 'add-root-folder' -> 'add-project-folder' 2015-04-07 12:10:12 -07:00
Kevin Sawicki
06b8195fb8 Remove template config.cson file
This old template file had several problems:

  * The entries in this file are already the schema defaults so they
    would get unset anyway when initially loaded
  * The file was in the old format that didn't have scope selectors
  * A race condition could occur when the file was copied, inited, and written
    to all during the very first run of Atom.

Closes #6226
2015-04-07 11:47:36 -07:00
Antonio Scandurra
73fb36590d Use a 15s timeout for webdriver startup 2015-04-07 19:28:10 +02:00
Antonio Scandurra
4c12b6767e Stop focusing on integration specs 2015-04-07 17:55:01 +02:00
Antonio Scandurra
d494966759 Relax polling to check only every 100ms 2015-04-07 17:53:05 +02:00
Antonio Scandurra
1c7b473243 Wait for chromedriver to initialize
Via a polling mechanism inspired by
https://github.com/SeleniumHQ/selenium/blob/master/dotnet/src/webdriver/DriverService.cs#L173-205
2015-04-07 17:46:46 +02:00
Antonio Scandurra
efa2a34fd6 Use a large value in waits
...to confirm that it is the culprit of Travis build errors.
2015-04-07 15:36:58 +02:00
Antonio Scandurra
127253bea3 Revert "Reduce chromedriver waiting time to 500ms"
This reverts commit 722705bb4c.
2015-04-07 15:01:46 +02:00
Antonio Scandurra
722705bb4c Reduce chromedriver waiting time to 500ms 2015-04-07 14:40:36 +02:00
Antonio Scandurra
32ae7945ff Fine tune waiting time 2015-04-07 13:48:50 +02:00
Antonio Scandurra
a244c0fa07 🔥 Delete useless line in spec 2015-04-07 12:30:51 +02:00
Antonio Scandurra
59a5dc42a8 Merge branch 'master' into as-fix-delete-line 2015-04-07 12:12:36 +02:00
Antonio Scandurra
a090a81767 Bump chromedriver wait timeout 2015-04-07 11:46:42 +02:00
Antonio Scandurra
f3a7cc1b9d wip: focus on integration specs only 2015-04-07 11:24:12 +02:00
Machiste Quintana
5d2392ea67 👕 Fix new coffeelint errors 2015-04-06 23:59:54 -04:00
Kevin Sawicki
e02e8c91a6 Use TextEditor::onDidChangeCursorPosition in spec 2015-04-06 16:29:12 -07:00
Kevin Sawicki
9b7870d503 Snapshot deprecations around calls to Project::eachBuffer 2015-04-06 16:22:31 -07:00
Kevin Sawicki
50d9fee0d3 Use Project::onDidAddBuffer 2015-04-06 16:21:09 -07:00
Kevin Sawicki
188b2e5a74 Report core deprecations in specs 2015-04-06 15:55:51 -07:00
Max Brunsfeld
5df56fc50a Add workspace element command for 'add root folder' 2015-04-06 15:19:40 -07:00
Max Brunsfeld
decab183b7 Fix screen/buffer range error in paragraph cursor motions 2015-04-03 10:34:21 -07:00
Antonio Scandurra
42521900e8 📝 Improve naming 2015-04-03 18:10:43 +02:00
Antonio Scandurra
1cf5822d20 Merge intersecting selections by row before deleting lines 2015-04-03 18:06:28 +02:00
Antonio Scandurra
544f3e1af2 Merge pull request #6167 from FoldingText/upstream
Clip positions above the first row
2015-04-02 19:52:55 +02:00
Antonio Scandurra
21df0d0401 Use component.measureDimensions() 2015-04-02 19:06:41 +02:00
Jesse Grosjean
82da0865bc Merge branch 'master' of https://github.com/atom/atom into upstream 2015-04-02 12:23:03 -04:00
Antonio Scandurra
b3bdad084f Always mutate selections in order 2015-04-02 16:35:26 +02:00
Antonio Scandurra
44d88e082c 🐛 Always copy selections in order 2015-04-02 16:28:22 +02:00
Ben Ogle
dff2453b65 Attempt to fix spec 2015-04-01 18:05:17 -07:00
Ben Ogle
44d1302402 Fix text-editor-component spec 2015-04-01 17:41:00 -07:00
Ben Ogle
48c05210fa Remove specs from text-editor-component 2015-04-01 17:41:00 -07:00
Ben Ogle
48a06868c8 Add specs from the text-editor-component 2015-04-01 17:41:00 -07:00
Ben Ogle
bed09cf0ef Presenter positions overlays when the overlay doesn’t have a size
Fix presenter specs
2015-04-01 17:41:00 -07:00
Ben Ogle
32572c0106 Add ViewRegistry::pollAfterNextUpdate
Closes #6196
2015-04-01 17:41:00 -07:00
Ben Ogle
b0794bbb68 Move the overlay calculation into the presenter. 2015-04-01 17:40:59 -07:00
Ben Ogle
01905ae55b Add specs for margin handling 2015-04-01 17:40:59 -07:00
Ben Ogle
6b5a74e3b6 Update specs for overlay rendering 2015-04-01 17:40:59 -07:00
Jesse Grosjean
409775b53e Improved specs for clipping pixel positions above/below display buffer 2015-04-01 12:39:22 -04:00
Jesse Grosjean
b067a6175f add screenPositionForPixelPosition spec 2015-03-30 13:52:28 -04:00
Nikolaus Wittenstein
b28ee92896 Add tests for DisplayBuffer::screenPositionForBufferPosition around soft tabs
This makes sure that a buffer position in the middle of a soft tab will
correctly clip to the closest edge by default.
2015-03-29 19:43:25 -04:00
Nikolaus Wittenstein
5a3f2035a1 Replace skipAtomicTokens with clip
When clipping a screen position, callers used to have to pick between
clipping to the left edge or the right edge when the position was in the
middle of an atomic token. This change allows them to choose the closest
edge, and makes this the default.

This makes selecting hard tabs (or any other atomic tokens) work in a
similar manner as in other text editors; that is, when clicking near
the middle of a tab, the insertion point will move to the closest edge
rather than the left edge.
2015-03-29 19:43:25 -04:00
Nikolaus Wittenstein
372fb49c88 TokenizedLine::screenColumnForBufferColumn calculates more accurately
screenColumnForBufferColumn used to break only if the current column
was strictly greater than the target column. This commit changes it so
it breaks when greater or equal, which is how bufferColumnForScreenColumn
works.

This also adds some unit tests for screenColumnForBufferColumn's
interactions with hard tab characters.
2015-03-29 19:43:25 -04:00
Max Brunsfeld
230eb12a8a Fix double autoscroll when moving cursor 2015-03-27 10:27:24 -07:00
Kevin Sawicki
ffdf7ac558 Remove unneeded failed count check 2015-03-26 16:36:01 -07:00
Kevin Sawicki
c2fecacdbe Fail CI build when deprecations exist 2015-03-26 16:36:01 -07:00
Nathan Sobo
127e0fbf6b Merge pull request #6114 from atom/mb-ns-fix-autoscroll
Fix autoscroll on undo
2015-03-26 17:34:39 -06:00
Nathan Sobo
ae4f7f6170 Explicitly autoscroll when needed
Rather than when the selection’s marker changes. This is simpler than
suppressing autoscroll via state when we don’t want it. It also captures
the intent to autoscroll when attempting to move the cursor at the
beginning or end of the document.

Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2015-03-26 16:48:24 -06:00
Nathan Sobo
99c437ccec Allow autoscroll override option in cursor/selection methods
Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2015-03-26 16:48:21 -06:00
Kevin Sawicki
14d1fc2269 Merge pull request #5898 from basarat/master
Transpile all .ts files
2015-03-26 14:33:04 -07:00
Nathan Sobo
10458a5b45 Always autoscroll when the range of the last selection changes
Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2015-03-26 15:30:53 -06:00
Max Brunsfeld
2f5d975338 Remove autoscroll-related legacy editor view support
Signed-off-by: Nathan Sobo <nathan@github.com>
2015-03-26 11:12:37 -07:00
Basarat Syed
6f1b061dac Added TypeScript to the compile-cache 2015-03-24 18:05:30 +11:00
Cheng Zhao
2620c95d86 String.contains is not a standard method in Chrome 41 2015-03-24 12:06:03 +08:00
Michael Bolin
14316b1cd7 Add Repository::getType().
For `GitRepository`, this will return `"git"`.
2015-03-23 15:38:38 -07:00
liuxiong332
78f760aa08 make pane resize behavior be valid when split or close panes dynamically. 2015-03-23 20:47:20 +08:00
liuxiong332
e54c5b0cb8 delete some not used statement 2015-03-23 20:04:35 +08:00
liuxiong332
47742768a2 add specs which simulate mouse action in PaneResizeHandleElement to test the resize behavior. 2015-03-23 19:47:05 +08:00
Nathan Sobo
5f76979fc8 Fix random editor spec now for indented soft-wrap
We previously implemented soft-wrap logic again just for this test.
Since the purpose of this test is just to make sure that mutation occurs
correctly, we now instead construct a fresh editor for comparison so
that changes to soft-wrap logic are reflected.

/cc @as-cii Took care of this, so you don’t need to worry about my
previous comment on your PR. Sorry for the noise.
2015-03-19 15:08:48 -06:00
Jessica Lord
390e95e220 Merge branch 'master' into jlks-missing-services-fix 2015-03-19 10:19:56 -07:00
Antonio Scandurra
61cc9b97ea 💚 Fix failing spec 2015-03-19 11:45:54 +01:00
Antonio Scandurra
56020b11b0 🐛 Avoid soft-wrapping on indentation 2015-03-19 11:36:55 +01:00
Basarat Syed
c2f258c679 Addressed code review 2015-03-19 11:45:13 +11:00
Jessica Lord
2c46748307 add spec to check missing service methods are skipped
Signed-off-by: Kevin Sawicki <kevin@github.com>
2015-03-18 15:38:13 -07:00
Jessica Lord
cac361e6df add packages for new spec
Signed-off-by: Kevin Sawicki <kevin@github.com>
2015-03-18 15:34:28 -07:00
Nathan Sobo
609a661174 Merge pull request #6010 from atom/as-soft-wrap-hanging-indent
Soft wrap hanging indentation spaces
2015-03-18 11:39:27 -06:00
Antonio Scandurra
fbfe19825b Even more descriptive specs 2015-03-18 18:00:31 +01:00
Antonio Scandurra
8559526215 Write a more comprehensive spec 2015-03-18 17:42:25 +01:00
Antonio Scandurra
7c33b9bf41 🎨 Rename to softWrapHangingIndent 2015-03-18 14:18:27 +01:00
Antonio Scandurra
f0b9bb7ce3 Show indent guides on hanging indentation too 2015-03-18 11:17:34 +01:00
Basarat Syed
8793bebfab tests for typescript transpiling 2015-03-18 17:53:15 +11:00
liuxiong332
8b137719a0 replace 'fdescribe' with 'describe' in pane-axis-element-spec.coffee 2015-03-18 13:36:23 +08:00
liuxiong332
60434b1a7d simplify the pane-axis-element-spec spec files 2015-03-18 13:33:47 +08:00
Kevin Sawicki
cd5adb6ab7 Clear invalid rows when short-circuiting for null grammar 2015-03-17 17:41:22 -07:00
Kevin Sawicki
eb63556b27 Use - in socket file name 2015-03-17 16:51:52 -07:00
Kevin Sawicki
a64e1c9ca8 Merge pull request #5960 from Bjoernsen/patch-1
Enable multiple users
2015-03-17 16:50:00 -07:00
Antonio Scandurra
6ac8af2a6e Check leading spaces as well 2015-03-17 22:58:14 +01:00
Antonio Scandurra
6d39bd3657 Verify that hanging indentation is tokenized 2015-03-17 22:21:07 +01:00
Kevin Sawicki
46e881739c Set themes names at beginning of spec 2015-03-16 15:11:12 -07:00
Nathan Sobo
010154f802 Merge pull request #5959 from atom/as-fix-select-above-below
Use screen ranges to select above and below
2015-03-16 11:26:54 -06:00
Bjoernsen
d6338b0a2c Update start-atom.coffee 2015-03-16 08:38:01 +01:00
Antonio Scandurra
6633c90af8 Use buffer ranges when merging selections 2015-03-14 10:05:04 +01:00
Antonio Scandurra
0a23a21953 🎨 Get rid of goalBufferRange 2015-03-14 09:48:19 +01:00
Antonio Scandurra
bfe8f7c740 Fix soft-wrapping specs 2015-03-14 09:26:35 +01:00
Max Brunsfeld
587ebd7538 Fix Project::relativePath w/ URLs 2015-03-13 15:07:56 -07:00
Max Brunsfeld
eb355118ad Merge pull request #5961 from atom/mb-batch-services-providers-by-package
Batch service providers by package
2015-03-13 13:28:41 -07:00
Max Brunsfeld
7ec46933bd Batch service providers by package 2015-03-13 11:42:30 -07:00
Nathan Sobo
a4257ed513 Merge pull request #5936 from atom/as-destroy-containing-folds-on-selection
Destroy only containing folds on selection
2015-03-13 11:28:46 -07:00
Antonio Scandurra
8ac4848805 Skip soft-wrap indentation tokens while selecting
* 🎨 Restructure specs a bit
*  Write specs for this new behavior
2015-03-13 12:05:18 +01:00
Antonio Scandurra
c319b80464 Write specs for atomic tokens 2015-03-13 11:56:00 +01:00
Antonio Scandurra
02ad2e8ff7 Write specs for soft-wrapped lines selection 2015-03-13 11:32:42 +01:00
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