Commit Graph

11141 Commits

Author SHA1 Message Date
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