Nathan Sobo
26a66342dc
Merge pull request #5519 from atom/ns-optimize-editor-presenter
...
Optimize TextEditorPresenter
2015-02-12 11:57:20 -07:00
Ben Ogle
4a20dc9079
Return items from the opener, rather than using open
...
This way, options like `split: ‘left’` can be used with the config
URIs.
2015-02-12 10:43:35 -08:00
Nathan Sobo
b3d03d032a
🐎 Read TextEditor::cursors directly to avoid allocation
2015-02-12 11:34:45 -07:00
Nathan Sobo
205d1df7b4
Precompute ::startRow and ::endRow in presenter
2015-02-12 11:34:45 -07:00
Ben Ogle
dcbff35ef5
Handle EEXIST error with a better message
...
Closes #5518
2015-02-12 09:55:51 -08:00
Nathan Sobo
cc80378b29
Precompute ::scrollTop in presenter
2015-02-12 09:36:44 -07:00
Nathan Sobo
4f5b989cbb
Use property instead of non-existent method in OverlayManager
2015-02-11 23:04:49 -07: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
cf958ffeac
Don’t cascade computed values unless upstream values change
2015-02-11 22:34:42 -07:00
Nathan Sobo
a3f902104c
Precompute ::horizontalScrollbarHeight and ::verticalScrollbarWidth
2015-02-11 22:25:10 -07:00
Nathan Sobo
b6908b18b4
Precompute contentWidth
2015-02-11 22:06:11 -07:00
Nathan Sobo
be691b6a54
Precompute contentHeight and height
2015-02-11 22:04:05 -07:00
Nathan Sobo
6524da6594
🐎 Skip decoration marker changes if caused by text changes
...
We’re already updating all decorations when text changes anyway, so
marker changes caused by text changes don’t need to perform updates
again.
2015-02-11 19:41:39 -07:00
Kevin Sawicki
baf6795195
Use ATOM_HOME env var in protocol handler
...
Closes #5501
2015-02-11 12:20:24 -08:00
Nathan Sobo
e4168d70b7
Use computed clientWidth instead of contentFrameWidth as max scrollWidth
2015-02-11 11:47:18 -07:00
Nathan Sobo
009d945e1e
Destroy TextEditorPresenter when unmounting TextEditorComponent
...
Fixes atom/find-and-replace#348
2015-02-11 09:02:33 -07:00
Nathan Sobo
98e126b40d
Remove redundant require
2015-02-11 07:54:54 -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
746950a347
Default overdrawMargin to 15 even when passed as null from outside
2015-02-10 12:39:34 -07:00
Nathan Sobo
884556c200
Revert "Don’t override lineOverdrawMargin with null"
...
This reverts commit 04cb43d657 .
2015-02-10 12:39:34 -07:00
Nathan Sobo
04cb43d657
Don’t override lineOverdrawMargin with null
2015-02-10 10:15:44 -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
48195851d4
Assign line and character measurements on model via presenter
2015-02-09 15:32:14 -07:00
Nathan Sobo
4f0e1997cf
💄 CharWidth -> CharacterWidth in presenter
2015-02-09 15:28:17 -07:00
Nathan Sobo
d5719bfbd5
Initialize scopedCharacterWidthsChangeCount to 0
2015-02-09 15:03:31 -07:00
Nathan Sobo
bdfca8b902
Coalesce handling style sheet changes in editor with nextAnimationFrame
...
Previously, we were delaying handling, but still requesting redundant
handling by requesting multiple frames. Now we don’t request a new
update if there is already one outstanding.
2015-02-09 14:36:30 -07:00
Nathan Sobo
df01c8ab6f
Batch scoped character measurement in presenter
2015-02-09 14:33:18 -07: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
Kevin Sawicki
ac1cc87037
Use custom document to create test elements
2015-02-09 09:35:38 -08:00
Kevin Sawicki
784cd96bd0
Use custom elements when checking menu selectors
...
Closes #5462
2015-02-09 09:22:19 -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
Nathan Sobo
d93950a970
🎨
2015-02-06 13:40:38 -07:00
Nathan Sobo
a4f9413e6b
🎨
2015-02-06 13:31:04 -07:00
Kevin Sawicki
30419027a8
Show notification on config save failures
2015-02-05 15:34:17 -08:00
Kevin Sawicki
f7502d8508
Handle UNKNOWN save errors
2015-02-05 15:17:23 -08:00
Kevin Sawicki
c9f13afb72
Remove stray logging
2015-02-05 15:12:20 -08:00
Kevin Sawicki
e51c8f3407
Add specs for save/saveAs error handling
2015-02-05 15:07:42 -08:00
Kevin Sawicki
63ee46023d
Remove profiling
2015-02-05 14:57:09 -08:00
Kevin Sawicki
68e5839b14
Add missing error var
2015-02-05 14:44:16 -08:00
Kevin Sawicki
477801ba52
Remove save error reporting from Workspace
2015-02-05 14:43:50 -08:00