Commit Graph

607 Commits

Author SHA1 Message Date
Nathan Sobo
82feef9f68 Don't render cursor line decorations in mini editors 2017-05-05 09:29:28 +02:00
Nathan Sobo
f00941f299 Only create EditorComponent once per editor 2017-05-05 09:29:28 +02:00
Nathan Sobo
6bfe08e9b0 Remove cyclic requires 2017-05-05 09:29:27 +02:00
Nathan Sobo
35753c3a8d Add specs for single-, triple-, and cmd-clicking 2017-05-05 09:29:27 +02:00
Nathan Sobo
9a38e8c0d1 Support scrollPastEnd option 2017-05-05 09:29:27 +02:00
Nathan Sobo
eacf0d8f64 Decorate cursors via private 'cursor' decoration type
This eliminates the need to query the selections marker layer more than
once per frame, since it is already queried for highlights and line
decorations associated with the selections.
2017-05-05 09:29:27 +02:00
Nathan Sobo
09f8a52b9d Implement special options for line and line number decorations
* onlyEmpty
* onlyNonEmpty
* onlyHead
* omitEmptyLastLine
2017-05-05 09:29:27 +02:00
Nathan Sobo
ff325c0151 Render line and line number decorations 2017-05-05 09:29:27 +02:00
Nathan Sobo
e15e7e3c96 Assign width and character dimensions on editor to update soft wraps 2017-05-05 09:29:27 +02:00
Nathan Sobo
f426471910 Replace decorationsByMarkerId with map keyed by decoration 2017-05-05 09:29:27 +02:00
Nathan Sobo
f8a0058f06 Convert DecorationManager to standard style and remove unused method 2017-05-05 09:29:27 +02:00
Nathan Sobo
3e87f9f889 Add horizontal autoscroll 2017-05-05 09:29:27 +02:00
Nathan Sobo
ed537fd61a Drop suppressLayerUpdateEvent flag
We now emit marker layer update events synchronously at the end of
transactions, so this isn't needed or supported by text-buffer.
2017-05-05 09:29:27 +02:00
Nathan Sobo
b362f746f8 Fix spurious selections marker layer update to avoid extra render 2017-05-05 09:29:27 +02:00
Nathan Sobo
d780b15248 Add cursor rendering tests 2017-05-05 09:29:27 +02:00
Nathan Sobo
f237d70357 WIP 2017-05-05 09:29:27 +02:00
Lee Dohm
6a76ef5dd6 Merge pull request #13764 from atom/wl-dont-soft-wrap-minis
Disable soft wrap on mini editors
2017-03-29 14:38:47 -07:00
Ian Olsen
4ef9a0502f Merge pull request #11803 from lexicalunit/lexicalunit/replace-selected-text-tweak
Following replaceSelectedText(), update the selected text range accordingly.
2017-03-13 14:46:50 -07:00
Dirk Thomas
865294f3c8 pass through line count options 2017-03-10 10:37:50 -08:00
Amy Troschinetz
ac7bb27e22 Select the replaced text post replacement. 2017-03-08 20:24:31 -06:00
Max Brunsfeld
c1d1bbcb18 Provide a fresh environment when deserializing in specs 2017-03-02 11:54:00 -08:00
Nathan Sobo
9e3999cab9 Cause an assertion failure if defaultMarkerLayer is destroyed early
This is to investigate a case where the default marker layer of the
editor is destroyed without the editor itself or its buffer being
destroyed, which is causing `Cannot decorate a destroyed marker`
exceptions.
2017-03-02 10:04:07 -07:00
Antonio Scandurra
acbe228901 Ignore ref and key properties in TextEditor.prototype.update 2017-02-27 11:15:53 +01:00
Antonio Scandurra
4acd477559 Merge pull request #13818 from atom/ns-as-return-all-decorations
Return decorations for markers from *all* marker layers from decorationsForScreenRowRange
2017-02-17 11:15:15 +01:00
Nathan Sobo
70c122ae23 Add metadata to track unexplained decorations of destroyed cursor marker 2017-02-15 18:12:21 -07:00
Max Brunsfeld
f50b197c58 Avoid hangs when opening minified files
* Force soft wraps for lines that exceed 500 chars
* Don't pass more than 500 chars to first-mate
2017-02-14 16:21:50 -08:00
Nathan Sobo
e736656380 Don't pass default marker layer to decoration manager 2017-02-14 11:44:56 -07:00
Wliu
d1c14e4f39 Remove un-necessary mini checks when initializing
In addition, the boolean check I added for softWrapColumn was incorrect.
2017-02-07 09:17:09 -05:00
Wliu
e5382215e5 Add supplementary logic 2017-02-06 22:59:15 -05:00
Wliu
42dda1a771 Disable soft wrap on mini editors 2017-02-06 22:40:00 -05:00
Lee Dohm
00d68c0d76 📝 🔥 broken TextEditorElement link 2017-02-06 07:53:29 -08:00
Ian Olsen
1cabda53fc Merge pull request #13657 from atom/io-close-deleted-tabs-option
Add option for closing deleted file tabs
2017-01-25 15:00:07 -08:00
Antonio Scandurra
e49ac783f8 Fix infinite recursion when calling getLastSelection from onDidAddCursor 2017-01-24 12:18:09 +01:00
Ian Olsen
22a881323c Move shouldDestroyBufferOnFileDelete callback to TextBuffer constructor
Also add setting the callback to buffers created via deserialization.
2017-01-20 13:52:49 -08:00
Andres Suarez
1ee9d7b0f9 Add showCursorOnSelection config 2017-01-20 08:53:28 -05:00
Ian Olsen
dcbd839059 Tell text-buffer to ask about destroying buffers for deleted files 2017-01-19 14:11:41 -08:00
Ian Olsen
66ae68828e Make stateStore.isConnected a method 2017-01-18 15:57:35 -08:00
Ian Olsen
64f53ee2db Check whether state store is connected when prompting to save files 2017-01-17 16:15:12 -08:00
Nathan Sobo
76d84a7890 Handle multiple selections intersecting a line in duplicateLines 2017-01-12 13:38:19 -07:00
Max Brunsfeld
126f5380ba Emit editor destroyed event after releasing the editor's buffer 2017-01-03 15:18:01 -08:00
Max Brunsfeld
6f13159549 Don't throw exceptions when using editor APIs after destroying the editor
Signed-off-by: Nathan Sobo <nathan@github.com>
2017-01-03 14:00:50 -08:00
Max Brunsfeld
d0d187f36a Reduce the impact of leaking Editor, Selection, & Cursor objects
Signed-off-by: Nathan Sobo <nathan@github.com>
2016-12-30 16:43:44 -08:00
Max Brunsfeld
34c8e25eff Avoid temporarily clearing DisplayLayer params in TextEditor.copy 2016-12-14 20:09:46 -08:00
Max Brunsfeld
39302aed35 Remove unnecessary comparisons to current params in TextEditor.update
Now the DisplayLayer internally avoids unnecessary work when reset() is
called with its existing parameters.
2016-12-14 20:09:46 -08:00
Max Brunsfeld
d7b86d9187 Merge remote-tracking branch 'origin/master' into mb-ns-integrate-new-display-layer 2016-12-14 12:16:50 -08:00
Nathan Sobo
5e8c3c7668 Constrain the followingRow to the line count in moveLineDown 2016-12-13 00:03:13 -07:00
Nathan Sobo
8a8819beb4 Use new boundary methods for moving lines up/down
Signed-off-by: Max Brunsfeld <maxbrunsfeld@github.com>
2016-12-12 17:13:13 -07:00
Max Brunsfeld
3cb64a97bd Enable soft wraps and folds in large file mode 2016-12-06 17:34:00 -08:00
Nathan Sobo
a8930dfeba Document avoidOverflow option 2016-11-28 15:08:34 -07:00
Nathan Sobo
f4c45c1e39 Rename stable: true to avoidOverlay: false and fix tests
As part of the test fixes, I’m honoring the `autoscroll: false` option
in `insertText` and `insertNewline` to avoid inadvertently scrolling the
editor during tests when the editor is modified.
2016-11-28 12:45:05 -07:00