Commit Graph

2531 Commits

Author SHA1 Message Date
Corey Johnson & Nathan Sobo
9c0f1d428f Rename updateAppearance to updateDisplay 2012-11-13 11:21:46 -08:00
Corey Johnson
1d3a26e253 Fix other WrapGuide specs 2012-11-12 09:31:54 -08:00
Corey Johnson
885717864e Place WrapGuide on the Editor's underlayer element (instead of on lines) 2012-11-12 09:19:07 -08:00
Corey Johnson
e9f69ee203 EditSession.isFoldedAtScreenRow returns false for screen rows that do not exist. 2012-11-12 09:12:47 -08:00
Nathan Sobo
3bc11ede77 Set the lines div height explicitly so it can be > 100% of parent
All editor specs pass
2012-11-09 14:25:59 -07:00
Nathan Sobo
538c44f82b Fix bug caused by the fact that 0 <= null ===> true. God. damn. it. 2012-11-09 14:02:13 -07:00
Nathan Sobo
ee9ae449f3 💄 2012-11-09 13:43:28 -07:00
Nathan Sobo
5519929d8e Kill console.log 2012-11-09 13:38:27 -07:00
Corey Johnson & Nathan Sobo
e014f60f39 Update overdraw if scrolling beyond rendered lines in either direction
Also a few refactorings, and handle scroll height change in update lines
2012-11-09 13:27:05 -07:00
Corey Johnson & Nathan Sobo
507c12a0fa Highlight cursor line after updating rendered lines 2012-11-09 11:24:47 -07:00
Corey Johnson & Nathan Sobo
1996eaeb54 Preliminary approach to updating the gutter
This is just to get specs passing. We want to use the intact ranges to only render the exact lines that changed.
2012-11-09 11:17:42 -07:00
Corey Johnson & Nathan Sobo
7c16c48e2a Ensure underlayer and overlayer are always the same width as lines
Also… simplify CSS rules for lines element. No display table or padding, instead we just set the min width when typing.
2012-11-09 11:12:33 -07:00
Corey Johnson & Nathan Sobo
d739736997 Add underlayer / overlayer for the selection and cursor
The renderedLines div can now only contain actual lines, nothing else. Thes divs are designed to match the lines div in dimensions and make it easy to put things in front of or behind the text.
2012-11-09 10:43:58 -07:00
Corey Johnson & Nathan Sobo
e6f5a60b44 Hack to open unstable windows from atom-stable 2012-11-09 10:23:02 -07:00
Nathan Sobo
1f94b2aacc WIP: Handling display buffer changes. Cursor, selection specs failing
That's because the new CodeMirror-inspired line update code assumes that lines are the only thing in the rendered lines div.
2012-11-09 08:46:33 -07:00
Nathan Sobo
1d46da55da WIP: Borrowing from code mirror to update lines. Scrolling / resizing work, but not much else 2012-11-09 07:31:30 -07:00
Nathan Sobo
13117d9a61 Move checkout-head binding to alt-meta-z (meta-Z shadows redo)
This is my fault since I told Kevin to use this binding. Ooops.
2012-11-08 10:49:38 -07:00
Nathan Sobo
cc7cd4df9a Oops. Fix broken specs. 2012-11-07 19:50:00 -07:00
Nathan Sobo
312f64d200 Don't make hidden input a child of Editor's scrollView
If the input element is a child of the scroll view, then focusing it can end up changing the scroll position of the view behind our backs. We *only* want to scroll the view via our interface on editor, because a bunch of of special code needs to run when we scroll. We can't just have the browser scrolling that view around willy-nilly.
2012-11-07 19:47:31 -07:00
Corey Johnson
3860fe1de7 Add atom.log (passes message directly to NSLog) 2012-11-07 15:45:44 -08:00
Nathan Sobo
19fedbcffc 💄 2012-11-07 16:24:07 -07:00
Nathan Sobo
ce033ad6f7 Multiple changes by s///g commands are undone as a single transaction 2012-11-07 16:23:44 -07:00
Nathan Sobo
19c8a39fc8 Don't autoscroll to bottom of buffer on selectAll 2012-11-07 16:01:10 -07:00
Nathan Sobo
144cfadb15 Update selection rendering when font size changes 2012-11-07 14:22:43 -07:00
Nathan Sobo
df392359f9 When font size changes, correctly adjust scrollable height
This requires updating the padding of the rendered lines and then adjusting the vertical scrollbar content height before updating any of the rendered lines. This fixes (hopefully all of) the rendering issues when adjusting the font size.
2012-11-07 14:09:31 -07:00
Nathan Sobo
693b110f1c 💄 2012-11-07 13:52:55 -07:00
Nathan Sobo
f33af85154 Backfill specs for not scrolling left when activating autocomplete 2012-11-07 13:26:00 -07:00
Nathan Sobo
cd9e3b774a Always move the hidden input element to the cursor's screen location
This avoids spuriously auto-scrolling to the left when opening an autocomplete in an editor that's scrolled to the right.
2012-11-07 13:04:54 -07:00
Nathan Sobo
d44e116321 Don't highlight the current line unless the selection is empty 2012-11-07 12:11:33 -07:00
Corey Johnson
920a81f7c9 Merge pull request #94 from github/atomic-soft-tabs
Atomic soft tabs
2012-11-06 11:56:39 -08:00
Corey Johnson & Nathan Sobo
8184c0248b Don't store tabLength on EditSession 2012-11-06 11:56:18 -08:00
Corey Johnson & Nathan Sobo
b8beec6f55 Remove foldable from ScreenLine 2012-11-06 11:41:48 -08:00
Corey Johnson & Nathan Sobo
139f5d0b50 EditSession.setTabLength assigns tabLength on the TokenizedBuffer. 2012-11-06 11:35:13 -08:00
Corey Johnson & Nathan Sobo
78a24e1e9c Remove @fold from Token 2012-11-06 11:15:18 -08:00
Corey Johnson & Nathan Sobo
dacb5f063f Remove unused references to stateForScreenRow 2012-11-06 11:13:42 -08:00
Corey Johnson & Nathan Sobo
874af0f2bc Eliminate reference to TokenizedBuffer on EditSession 2012-11-06 11:09:38 -08:00
Corey Johnson & Nathan Sobo
10090219cb TokenizedBuffer change events reference the precipitating Buffer change event. 2012-11-06 10:56:05 -08:00
Corey Johnson & Nathan Sobo
0e0f747764 TokenizedBuffer.setTabLength retokenizes the entire buffer 2012-11-06 10:44:50 -08:00
Corey Johnson & Nathan Sobo
2c14bc7ebd Optimize breakOutAtomicTokens 2012-11-06 10:44:03 -08:00
Corey Johnson & Nathan Sobo
be424c365f 💄 2012-11-06 10:03:02 -08:00
Corey Johnson
d65f13b218 💄 2012-11-06 09:41:35 -08:00
Corey Johnson
a63f838cdb Simplify breakOutAtomicTokens method 2012-11-06 09:39:44 -08:00
Corey Johnson
b85a95eaa1 Make leading spaces atomic (length based on tabLength) 2012-11-06 09:03:54 -08:00
Corey Johnson & Nathan Sobo
89ef3f0f20 Build Token objects in TextMateGrammar. Tokenization-related renames. 2012-11-05 16:03:19 -07:00
Corey Johnson & Nathan Sobo
c3e43b753c 💄 2012-11-05 15:28:55 -07:00
Nathan Sobo
b87d7cd0df Auto-indent skips cursor over leading whitespace before inserting more
This preserves the user's intent to bring the line's total amount of leading whitespace to the desired indent level.
2012-11-05 15:15:00 -07:00
Kevin Sawicki
18ac2eb528 Update checkout HEAD keybinding to meta-Z 2012-11-05 13:31:18 -08:00
Nathan Sobo
8cd79dae49 Don't defer update of cursor position in status bar
We have to update it eventually, so it just adds complexity to delay it and we'll still pay a price during an extended burst of typing once the timer does fire.
2012-11-05 14:29:14 -07:00
Corey Johnson & Nathan Sobo
3b213e2960 Use single quotes when shelling out to ag.
This prevents `sh` from interpreting $ and \ as special characters.
2012-11-05 12:18:28 -08:00
Corey Johnson & Nathan Sobo
6613d336af Only interpret escaped characters in replacement text of substitutions 2012-11-05 12:18:27 -08:00