Commit Graph

1172 Commits

Author SHA1 Message Date
Nathan Sobo
f87476b80b Streamline cursor movement specs in editor-spec 2012-06-12 15:20:15 -06:00
Nathan Sobo
918b8d95da Move some auto indent specs to edit-session-spec 2012-06-12 15:19:40 -06:00
Corey Johnson
e56e775d8d Merge branch 'dirty-buffer' 2012-06-12 14:13:23 -07:00
Nathan Sobo
b895122c24 Simplify Editor spec's mouse event integration specs
Test handling of non-corresponding buffer & screen positions in spec on setCursorScreenPosition in edit-session-spec instead of in editor-spec
2012-06-12 14:44:45 -06:00
Nathan Sobo
87bc5ad02a Make setBuffer spec lean on setActiveEditSessionIndex spec 2012-06-12 14:23:49 -06:00
Nathan Sobo
8a34ea20c4 Move undo/redo specs to edit-session-spec 2012-06-12 13:44:40 -06:00
Nathan Sobo
7b64066bf4 Remove stray console.log 2012-06-12 13:40:02 -06:00
Nathan Sobo
4f50a4735d Add specs for EditSession.proto.selectToScreenPosition. Move coverage of selection merging 2012-06-12 13:37:01 -06:00
Corey Johnson
1fb8852fc3 Saving a buffer sets its modified flag to false 2012-06-12 11:29:38 -07:00
Corey Johnson
8ab167fd00 Reloading when there are modified buffers pops up a dialog. 2012-06-12 10:52:11 -07:00
Corey Johnson
a2f60c141b Remove logs from spec 2012-06-12 10:52:11 -07:00
Corey Johnson
e56ef733ad Add save alert when closing a modified buffer 2012-06-12 10:52:11 -07:00
Corey Johnson
0fec1fc5ba Don't close edit session when its buffer is modified 2012-06-12 10:52:11 -07:00
Corey Johnson
9339791260 Set modified flag to true when there is a buffer change. 2012-06-12 10:52:11 -07:00
Nathan Sobo
5e4625ebf7 Move cursor merging specs to edit-session-spec 2012-06-12 10:55:48 -06:00
Nathan Sobo
1245252ca4 Move deleteToEndOfWord specs 2012-06-12 10:38:09 -06:00
Nathan Sobo
727e9b8156 Move specs for selectUp/Down/Left/Right w/ multiple selections 2012-06-12 10:25:42 -06:00
Nathan Sobo
5f263e63f0 Move cutToEndOfLine specs to edit-session-spec 2012-06-12 10:18:18 -06:00
Nathan Sobo
89f180524a Move coverage of multi-cursor text insertion, backspace, and delete to edit-session-spec 2012-06-12 10:12:12 -06:00
Nathan Sobo
4e74f1bf2e Fix issues with selections when switching between edit sessions
SelectionViews now update their appearance immediately when constructed. We can't assume they're empty. CursorView doesn't do a blanket `off()` call to its model when it's removed anymore, which was screwing up selection updates when switching back. Only attach selections / cursors when the editor is attached, and extract everything we do into a `renderWhenAttached` method.
2012-06-11 22:01:27 -06:00
Nathan Sobo
b51ab212f6 Un-F 2012-06-11 17:40:51 -06:00
Nathan Sobo
5f29f7e67d 💄 2012-06-11 17:40:37 -06:00
Nathan Sobo
09e0fb2a58 Delete irrelevant specs 2012-06-11 17:40:26 -06:00
Nathan Sobo
e619d84893 Move insertTab specs to edit-session-spec 2012-06-11 17:40:02 -06:00
Nathan Sobo
915707cd9c Move backspace, delete, and pasteboard operations specs to edit-session-spec 2012-06-11 17:35:13 -06:00
Nathan Sobo
dc6012dabd Merge branch 'master' of github.com:github/atom 2012-06-11 17:08:07 -06:00
Nathan Sobo
c2c48b9b38 Move more specs to EditSession. Auto indent and soft tabs settings are delegated to edit session. 2012-06-11 17:06:40 -06:00
Corey Johnson
a4f4b3a3bb Update tests to use editor.renderLines.css('top')
instead of editor.scrollView.scrollTop().
2012-06-11 15:48:03 -07:00
Corey Johnson
e2bd646e0f Scroll editor using css 'top' property instead of scrollTop 2012-06-11 15:48:03 -07:00
Nathan Sobo
41f08cc075 Start moving specs from editor-spec to edit-session-spec 2012-06-11 16:06:21 -06:00
Nathan Sobo
4d5760e287 Kill tabText ivar on EditSession 2012-06-11 16:06:02 -06:00
Nathan Sobo
cffadcf4a8 Remove CompositeCursor and Selection. Move their remaining methods into Editor 2012-06-11 10:11:33 -06:00
Nathan Sobo
8c52fedd0d Remove last of the extraneous CursorView methods 2012-06-10 21:53:54 -06:00
Nathan Sobo
80cd63227a Remove methods from CompositeCursor + more 💄 2012-06-08 19:08:44 -06:00
Nathan Sobo
2161336c78 Move logic out of CompositeSelection into EditSession 2012-06-08 17:46:14 -06:00
Nathan Sobo
873c80eaf2 Move most remaining logical methods from selection view into model 2012-06-08 15:26:54 -06:00
Nathan Sobo
7eb01272ed Move text insertion and auto indent/outdent code from the selection view to the model 2012-06-08 12:31:29 -06:00
Nathan Sobo
f3144fe0d8 Base the screen range of the selection view on the selection model 2012-06-08 11:22:12 -06:00
Nathan Sobo
608c4f48bf Remove more logic from cursor view 2012-06-07 16:58:45 -06:00
Nathan Sobo
d50c8f2d0e Merge branch 'master' of github.com:github/atom into edit-session-refactor 2012-06-07 11:40:01 -06:00
Corey Johnson
481ec16485 meta-w closes edit sessions until there are none left, then it closes the editor 2012-06-07 10:21:16 -07:00
Nathan Sobo
7387c553c3 Start introducing Cursor model in EditSession
The old cursor view still does most of the work, but to add a new cursor view we now must add a cursor model to the edit session at the correct position. The editor watches the 'add-cursor' event on edit session and add a corresponding CursorView to the CompositeCursor whenever a model is added. Next step: have the cursor view observe the cursor model and shadow its changes in position.
2012-06-06 21:52:19 -06:00
Nathan Sobo
ff52993c9e Fix bugs when switching between EditSessions 2012-06-06 17:00:02 -06:00
Nathan Sobo
1344d42061 Add spec to ensure we unsubscribe from every buffer when we remove editor 2012-06-06 12:48:45 -06:00
Nathan Sobo
e6af7a9515 Adjust the width of rendered lines to account for the longest line 2012-06-05 14:26:06 -06:00
Nathan Sobo
e433d106b8 Remove unnecessary construction of new editor 2012-06-05 14:25:32 -06:00
Nathan Sobo
3a776347ff Avoid leaking window resize subscriptions in editor spec 2012-06-05 14:25:08 -06:00
Nathan Sobo
e7ffaa1757 Merge branch 'master' of github.com:github/atom 2012-06-05 12:48:16 -06:00
Nathan Sobo
700c6d757a Fix call to renamed method 2012-06-05 12:47:53 -06:00
Nathan Sobo
911a417cb8 Rename maxLineLength to softWrapColumn 2012-06-05 12:47:39 -06:00
Corey Johnson
4f364e8cd8 Add newline-below event 2012-06-05 11:30:29 -07:00
Nathan Sobo
4dc41dcc21 💄 2012-06-05 11:09:40 -06:00
Nathan Sobo
c24b8a90b2 If lines are removed after a renderer change, update padding appropriately 2012-06-05 10:59:11 -06:00
Nathan Sobo
9cfbce826d WIP: Don't allow impossibly high scroll top values.
It fixes the move to bottom issues, but breaks some other tests. Not sure why yet...
2012-06-04 21:57:10 -06:00
Nathan Sobo
3c2facc7be Add a disabled failing spec for text rendering when moving to the end of the file 2012-06-04 21:11:32 -06:00
Nathan Sobo
de1086639d Add failing spec for folding more than a screen of text to less than a screen 2012-06-04 20:45:28 -06:00
Nathan Sobo
c3a157a544 Revert "Use renderTo and renderFrom (instead of firstVisible/lastVisible) to adjust visible lines."
This reverts commit 419d7b1dec.

Conflicts:

	spec/app/editor-spec.coffee
2012-06-04 20:29:40 -06:00
Corey Johnson
0cfb2e9ef4 Rename Editor.visibleLines to Editor.renderedLines 2012-06-04 17:53:58 -07:00
Corey Johnson
419d7b1dec Use renderTo and renderFrom (instead of firstVisible/lastVisible) to adjust visible lines.
Fix specs that had wrong assumptions,
2012-06-04 17:48:11 -07:00
Nathan Sobo
ded6281e0f Merge branch 'master' into toggle-comments 2012-06-04 12:07:54 -06:00
Nathan Sobo
d2a1da7ba6 Window spec no longer nukes the jasmine stylesheet 2012-06-04 12:07:37 -06:00
Nathan Sobo
a033d13c1a Merge branch 'master' of github.com:github/atom into toggle-comments 2012-06-04 11:55:15 -06:00
Nathan Sobo
b667ba4262 If selection is empty when toggling a line comment, keep it empty 2012-06-04 11:50:48 -06:00
Corey Johnson
2f6dd085ee Editor toggle-fold event toggles the largest fold at the cursor position 2012-06-04 09:44:20 -07:00
Corey Johnson & Nathan Sobo
fd152ef2a9 When a fold is created inside an existing fold, don't trigger change events or update line map. 2012-06-02 09:21:06 -07:00
Corey Johnson & Nathan Sobo
2f435e08f3 Add regression test for "can't create multiple folds over same region".
Am I using the term regression test correctly?
2012-06-02 08:56:02 -07:00
Nathan Sobo
14e399fdf0 Meta-/ comments out selected lines 2012-06-01 19:38:33 -06:00
Corey Johnson & Nathan Sobo
74a873999e Fix tests that blow up when number of files in fixture directory increased 2012-06-01 15:54:28 -07:00
Corey Johnson
ca4371d9ce The solution to all build problems 2012-06-01 15:35:38 -07:00
Corey Johnson
3983a25a98 Use requireStylesheet to load jasmine.css 2012-06-01 15:22:24 -07:00
Nathan Sobo
2c35a1f12d LineCommenter.proto.toggleLineCommentsInRange comments / uncomments lines in a selection 2012-06-01 14:28:40 -06:00
Nathan Sobo
d8b324e14f WIP: Starting on toggling comments. 2012-06-01 14:03:48 -06:00
Nathan Sobo
58c082445b Merge branch 'master' of github.com:github/atom 2012-06-01 14:01:44 -06:00
Nathan Sobo
74bd510e75 💄 rename ScreenLineFragment to ScreenLine
These objects always span an entire screen line now that we do line-wise folding
2012-06-01 14:01:33 -06:00
Nathan Sobo
2baf374937 Newline at end of file 💄 2012-06-01 14:01:00 -06:00
Corey Johnson
30d07fd1a0 Rename Buffer.numLines to Buffer.getLineCount 2012-06-01 11:25:58 -07:00
Nathan Sobo
37d423fb60 Fix broken build :-/ 2012-06-01 12:22:54 -06:00
Nathan Sobo
5b20bfd994 Method name 💄 for Highlighter 2012-06-01 12:15:26 -06:00
Corey Johnson
5a0eb5814d We are using scrollTop instead of -wekbit-transform, update specs to reflect this. 2012-06-01 11:06:14 -07:00
Corey Johnson
6952e09646 Moved font-size back to 'px' and fixed specs 2012-06-01 11:06:13 -07:00
Corey Johnson
2623724fd4 Add fold-all event to editor 2012-06-01 11:06:13 -07:00
Nathan Sobo
118a48bb47 Fix bug where canceling an autocomplete could delete a previously confirmed completion 2012-06-01 12:00:58 -06:00
Nathan Sobo
9cb067f162 Enable auto-indent for 1 more spec + 💄 2012-05-31 18:22:54 -06:00
Nathan Sobo
502208dcf4 Enable auto-indent for spec 2012-05-31 18:17:39 -06:00
Nathan Sobo
9f5a7ceefe Merge branch 'master' into structural-folding 2012-05-31 18:05:13 -06:00
Nathan Sobo
645f57bb40 Merge branch 'master' of github.com:github/atom 2012-05-31 17:49:31 -06:00
Nathan Sobo
acb01bba37 Correctly render lines when destroying a fold forces an autoscroll 2012-05-31 17:48:50 -06:00
Corey Johnson
4f5a03ee4d Merge branch 'master' into structural-folding 2012-05-31 16:24:01 -07:00
Corey Johnson
1a9566d954 Merge branch 'master' into binding-viewer 2012-05-31 15:55:23 -07:00
Corey Johnson
b03230cc6c Move auto indent/outdent to selection spec 2012-05-31 13:57:04 -07:00
Corey Johnson
516de1ede1 Merge branch 'master' into structural-folding 2012-05-31 11:46:23 -07:00
Corey Johnson
2df7c26353 Folding works with coffeescript 2012-05-31 11:30:06 -07:00
Nathan Sobo
fdb8ba8a2b Remove redundant gutter spec. Corey's is in a better spot. 2012-05-31 12:13:36 -06:00
Nathan Sobo
06fffe6c4b Merge branch 'master' of github.com:github/atom
Conflicts:
	src/app/editor.coffee
2012-05-31 12:11:07 -06:00
Nathan Sobo
c901417a19 When lines are added, remove any that get pushed down to exceed the max allowed row
This fixes issues where unfolding or pasting caused rendering artifacts below the last visible row.
2012-05-31 12:06:00 -06:00
Corey Johnson
17c0526bc3 Add test for gutter rendering of fold lines 2012-05-31 10:26:34 -07:00
Nathan Sobo
39fb14e5f5 Add a spec for line number updates after folding/unfolding 2012-05-31 10:57:04 -06:00
Nathan Sobo
6c64d2a13b spec 💄 2012-05-31 10:46:00 -06:00
Corey Johnson
17b50ee8dc Folds include their first line 2012-05-30 16:55:15 -07:00
Corey Johnson
42e743f44a Renderer.toggleFold works for folded, foldable and non-foldable lines
When a line is not foldable, we search upward for a suggested fold that contains it and apply that fold instead. If called with a row that is already folded, it unfolds it.
2012-05-30 16:29:45 -07:00
Corey Johnson
76f5d35eb9 Add toggle-fold event to editor 2012-05-30 15:43:21 -07:00
Corey Johnson & Nathan Sobo
63a87fd83e Renderer.createFoldAtBufferRow uses the fold suggester to determine which syntactic region to fold 2012-05-30 16:02:06 -06:00
Corey Johnson & Nathan Sobo
84318277ba FoldSuggester can return a row range of a foldable syntactic region starting at a given row 2012-05-30 16:01:21 -06:00
Corey Johnson & Nathan Sobo
e10383a9e9 Add Highlighter.findClosingBracket
Takes a position, and finds the position of the closing bracket that matches the opening bracket at that position. Only works with curly-braces for now.
2012-05-30 15:58:59 -06:00
Corey Johnson & Nathan Sobo
51ec8b4ca2 💄 2012-05-30 15:57:03 -06:00
Corey Johnson & Nathan Sobo
8a77a740f5 Renderer indicates when a screen line starts a foldable region 2012-05-30 12:27:01 -06:00
Corey Johnson
893564945e Add rootView.activeKeybindings().
This will return all active keybindings available for the focused element.
2012-05-29 15:46:38 -07:00
Corey Johnson
64bd26a392 Add Keymap.bindingsForElement method 2012-05-29 14:15:54 -07:00
Nathan Sobo
0ef4c7e172 Only re-render the gutter when we render new lines 2012-05-29 15:12:11 -06:00
Nathan Sobo
3e26386f98 Always re-render gutter from the first rendered to the last rendered screen row 2012-05-29 14:51:19 -06:00
Nathan Sobo
0700aba67f All specs pass again with overdraw 2012-05-29 13:39:13 -06:00
Nathan Sobo
6e34124f12 Overdraw gutter line numbers in addition to editor lines 2012-05-29 13:07:24 -06:00
Nathan Sobo
a9c9a854ac Only truncate change ranges to the last visible row if the last rendered row is smaller
This happens, for example, when the entire buffer is shorter than the number of rows on screen. In this case, the last rendered row is not smaller than the last possible visible row.
2012-05-29 13:03:29 -06:00
Nathan Sobo
c00c3317f0 Down to 2 failures by truncating change ranges to the range of the current rendered lines 2012-05-29 12:52:39 -06:00
Nathan Sobo
e9a67208e6 Adjust otherwise-passing spec for overflow 2012-05-29 11:50:54 -06:00
Nathan Sobo
8fba4ff935 Fix some off by one errors in the overdraw calculations 2012-05-26 13:52:48 -07:00
Nathan Sobo
328aa3ba6b WIP: Redoing overdraw code… it's broken 2012-05-26 13:05:25 -07:00
Nathan Sobo
351c283ed6 Merge branch 'master' into overdraw 2012-05-25 13:13:06 -07:00
Nathan Sobo
e2ca3814a9 Hide the cursor when it is on a fold line 2012-05-25 12:35:32 -07:00
Corey Johnson & Nathan Sobo
35b2f0e8c7 Buffer changes updates a stable list of folds 2012-05-25 11:05:45 -07:00
Corey Johnson & Nathan Sobo
f8c3d89e60 When folds are selected they are highlighted 2012-05-24 16:39:14 -07:00
Corey Johnson & Nathan Sobo
74594ed2be Destroy folds before inserting text on a fold line. Spec for deleting a fold line. 2012-05-24 13:53:48 -07:00
Corey Johnson & Nathan Sobo
f97912c160 💄 2012-05-24 11:43:09 -07:00
Corey Johnson & Nathan Sobo
9b83ce6545 renderer tells editor when the gutter needs to be updated 2012-05-24 11:17:37 -07:00
Corey Johnson & Nathan Sobo
c1197c1d0e spec 💄 2012-05-23 14:56:22 -07:00
Corey Johnson & Nathan Sobo
dd7fff4522 WIP: Adding specs for various fold corner cases… think we still have some issues and gutter updates are failing. 2012-05-23 11:03:33 -07:00
Corey Johnson & Nathan Sobo
04f4a9a765 WIP: Handle buffer change events correctly with respect to folded lines
We're handling changes that straddle the start row and are in the middle of the fold, but we're still screwing up when the old range straddles the end row.
2012-05-22 19:02:13 -07:00
Corey Johnson
7b4ebcdd42 Changes inside a fold correctly change the start/end row 2012-05-22 12:09:37 -07:00
Corey Johnson
a7d43c2cca meta-alt-u unfolds lines at cursor 2012-05-22 09:38:14 -07:00
Corey Johnson
50146ce3ae Merge branch 'fold-simplification' of github.com:github/atom into fold-simplification 2012-05-22 08:52:30 -07:00
Nathan Sobo
74008ab329 Fold placeholder lines are treated as if they're empty 2012-05-21 19:20:18 -07:00
Nathan Sobo
3f4c7deb30 Nuke stray call to Editor.logLines 2012-05-21 19:00:02 -07:00
Nathan Sobo
72f1874c5b Nuke more old fold specs 2012-05-21 18:55:05 -07:00
Nathan Sobo
031c04b888 Clean up remaining position translation spec for folds. It still has one legit failure though. 2012-05-21 18:48:28 -07:00
Nathan Sobo
f3cada9e20 Nuke some fold tests that don't matter anymore 2012-05-21 18:46:16 -07:00
Nathan Sobo
581998f94b Oh, un-F 2012-05-21 18:35:51 -07:00
Nathan Sobo
7744d6087b Merge branch 'fold-simplification' of github.com:github/atom into fold-simplification 2012-05-21 17:56:16 -07:00
Nathan Sobo
f39891b912 Folds are destroyed when their placeholder line is clicked 2012-05-21 17:55:58 -07:00
Corey Johnson
b4e8157172 💄 2012-05-21 15:27:36 -07:00
Corey Johnson
a5656400aa Merge branch 'fold-simplification' of github.com:github/atom into fold-simplification 2012-05-21 15:01:23 -07:00
Corey Johnson
d2899fa58a Folds handle change events 2012-05-21 15:01:14 -07:00
Nathan Sobo
7ad5830521 Convert failing specs to linewise code folding 2012-05-21 14:18:00 -07:00
Corey Johnson
8af289dde1 Merge branch 'fold-simplification' of github.com:github/atom into fold-simplification 2012-05-21 13:45:07 -07:00
Nathan Sobo
9beff8edbb Un-F 2012-05-21 13:36:19 -07:00
Nathan Sobo
4f60135d81 Remove random indent that was causing editor spec not to run 2012-05-21 13:35:54 -07:00
Corey Johnson
d7e1ffcdf2 Update render spec to new version of Renderer.createFold 2012-05-21 10:29:48 -07:00
Nathan Sobo
a57ccc1b7f Remove specs that don't matter anymore w/ linewise folding 2012-05-18 20:59:58 -06:00
Nathan Sobo
c491d92437 Nested folds can start at the same row as the fold that contains them
...still need to test destroying the outer fold though.
2012-05-18 20:14:05 -06:00
Nathan Sobo
9757786257 Add passing spec for nested folds (that start on different rows) 2012-05-18 19:39:23 -06:00
Nathan Sobo
03ae0bbbb6 Guts on the floor, but 2 line-wise fold specs are passing and the renderer is getting there 2012-05-18 19:22:56 -06:00
Corey Johnson & Nathan Sobo
39e02bbf9f wip: what nathan and corey did 2012-05-18 15:15:44 -07:00
Corey Johnson & Nathan Sobo
4c92be669e Remove non-passing unneeded spec 2012-05-18 14:12:41 -07:00
Corey Johnson & Nathan Sobo
8e9db80b58 wip: another failing fold test 2012-05-18 11:59:54 -07:00
Corey Johnson & Nathan Sobo
20c9b61b91 Fix issue where creating a second fold on a wrapped line fragment caused a duplicate line to be rendered 2012-05-18 12:22:40 -06:00
Corey Johnson & Nathan Sobo
87e6b0c517 a zero-index fixture file 2012-05-18 09:43:44 -07:00
Corey Johnson & Nathan Sobo
06d1f8a718 Create a failing fold spec 2012-05-17 17:20:17 -07:00
Corey Johnson & Nathan Sobo
608ccc38e8 Update rendered lines when buffer changes occur outside/straddling rendered region 2012-05-17 16:06:39 -07:00
Corey Johnson & Nathan Sobo
cfb49aeba9 two-hundred 2012-05-17 16:04:06 -07:00
Corey Johnson
857486bcf1 After buffer changes, remove any lines that are beyond the current last rendered screen row. 2012-05-17 10:34:54 -07:00
Corey Johnson
52fe580cf6 Test that inserting lines re-renders the gutter 2012-05-17 10:17:05 -07:00
Corey Johnson
0e09659d79 Gutter adjusts its width to account for the width of the last line number 2012-05-17 10:16:20 -07:00
Corey Johnson
7a82bf2679 💄 2012-05-17 08:49:03 -07:00
Nathan Sobo
0d093c3014 2012-05-16 17:28:07 -06:00
Nathan Sobo
5045d68be2 2012-05-16 14:47:09 -06:00
Nathan Sobo
a7b5f0c249 Un-F 2012-05-16 14:12:11 -06:00
Nathan Sobo
9aae2bc4e7 Fix breakage caused by method rename 2012-05-16 14:12:05 -06:00
Nathan Sobo
92395a9cfb Merge branch 'master' of github.com:github/atom
Conflicts:
	src/app/editor.coffee
2012-05-16 14:07:44 -06:00
Nathan Sobo
2d8ba3b1ee Use translate3d to scroll lines / gutter in attempt to improve repaint.
Also: Add custom scrollTop method to editor that manages all the custom optimizations we are doing around scrolling.
2012-05-16 13:47:59 -06:00
Corey Johnson
2c508f5a31 Fix tests
Certain tests resize the editor and expect the number of lines to adjust, this forces the test to meet that expectation.
2012-05-16 11:30:25 -07:00
Corey Johnson
3614ad6e76 Update lines when the font size changes 2012-05-16 10:58:19 -07:00
Corey Johnson
399fc71b3c Make Atom SpacePen view's default to empty object (where needed) 2012-05-16 10:35:50 -07:00
Corey Johnson
484b55800a Call updateLines when lines are removed from buffer 2012-05-15 14:27:22 -07:00
Corey Johnson
54a3823606 Buffer change events update the @lastRenderedScreenRow 2012-05-15 12:29:59 -07:00
Corey Johnson
6b3664a040 Vertical scrollbar height is updated when switching buffers 2012-05-15 10:02:56 -07:00
Corey Johnson & Nathan Sobo
78155de740 Un-F 2012-05-14 16:55:35 -06:00
Corey Johnson & Nathan Sobo
abc230eee3 Fix bug: file finder correctly focuses editor after opening a file. 2012-05-14 16:35:03 -06:00
Corey Johnson & Nathan Sobo
9079bcb103 Meta-a selects everything 2012-05-14 16:18:37 -06:00
Corey Johnson & Nathan Sobo
513e15e369 Make editor tall so that all line numbers are rendered for this test 2012-05-14 15:42:51 -06:00
Corey Johnson
b35a2502c6 Gutter line numbers are rendered similarly to the scroll view's lines 2012-05-14 12:32:53 -07:00
Corey Johnson
5e4aef95d0 Only visible lines numbers are rendered by the gutter 2012-05-14 09:53:58 -07:00
Nathan Sobo
f47abdead9 Merge branch 'render-visible' 2012-05-11 17:52:23 -06:00
Nathan Sobo
0c89db37a5 Editor scroll position is correctly restored on refresh.
When we attach the editor we need to scroll it to the correct position before rendering lines. But to scroll it to the right position, the lines container and the scrollbar need to be assigned a height that allows them to scroll. So now we call `prepareForVerticalScrolling` on attach, then set the scroll position based on the edit session and render the visible lines.
2012-05-11 17:51:47 -06:00
Corey Johnson & Nathan Sobo
af65bd785c fix test failures 2012-05-11 16:06:42 -07:00
Corey Johnson & Nathan Sobo
d51b229d56 When the editor buffer changes and the path is not visible in the TreeView, It selects the closes ancestor entry of that file. 2012-05-11 15:44:18 -07:00
Corey Johnson & Nathan Sobo
2f86a3a6e5 TreeView starts with root being selected 2012-05-11 14:31:48 -07:00
Nathan Sobo
96d92be230 Rename Editor.scrollbar to verticalScrollbar for clarity 2012-05-11 13:45:57 -06:00
Nathan Sobo
b64e9ae10f Rename Editor.scroller to Editor.scrollView to distinguish it from the vertical scrollbar.
Also, base edit session scroll top on the scrollbar instead of the scrollView.
2012-05-11 13:42:57 -06:00
Corey Johnson & Nathan Sobo
38582a22d3 These tests shall pass 2012-05-11 11:25:27 -07:00
Corey Johnson & Nathan Sobo
9427c82084 WIP: Getting specs passing with new stand-in vertical scrollbar 2012-05-11 11:52:03 -06:00
Corey Johnson & Nathan Sobo
02da32d372 Update visible lines when scrolling up 2012-05-10 16:11:05 -06:00
Corey Johnson & Nathan Sobo
43ac7edf0f Scrolling to bottom renders correct lines
When we scroll more than a single screen's worth of lines, the new first visible screen row ends up exceeding the previous last rendered screen row, so we need to use the maximum of the two when deciding which new rows to render.
2012-05-10 15:15:34 -06:00
Corey Johnson & Nathan Sobo
c5d2616155 WIP: Removing lines that are no longer visible 2012-05-10 12:08:58 -07:00
Corey Johnson & Nathan Sobo
22548141d7 Editor updates lines when it is resized 2012-05-10 11:14:03 -07:00
Corey Johnson & Nathan Sobo
f6e9d99865 Editor only does not pre-build lines, it only builds them when they are visible on the screen 2012-05-10 10:40:16 -07:00
Corey Johnson & Nathan Sobo
6eda0d345b 💄 2012-05-10 08:58:38 -07:00
Nathan Sobo
1e2d333a15 WIP: working on only rendering on-screen lines. still half-baked. 2012-05-10 09:27:04 -06:00
Corey Johnson & Nathan Sobo
5ae40a3cb8 Editor only renders lines when it is attached to the DOM 2012-05-09 19:19:54 -06:00
Nathan Sobo
5b7ea95a11 Meta+ and meta- change the editor font size 2012-05-09 10:57:25 -06:00
Nathan Sobo
f2f44b9ab6 Can match key patterns with the '-' character
Add a parser to parse keystroke patterns instead of splitting on '-' with a regex
2012-05-09 10:56:31 -06:00
Nathan Sobo
8b1ac28b89 Editor font sizes can be adjusted with RootView.proto.setFontSize 2012-05-09 08:34:08 -06:00