Commit Graph

938 Commits

Author SHA1 Message Date
Nathan Sobo
fdd8c7ad41 Unbind default events in window.shutDown to prevent spurious triggering in specs 2012-03-07 12:40:39 -07:00
Corey Johnson
29c697faaa Disable auto-scroll and make overflow-x hidden when soft-wrap is enabled 2012-03-07 11:29:33 -08:00
Nathan Sobo
461dd5cd37 Gutter renders correctly with line wrapping and folds 2012-03-07 12:19:30 -07:00
Nathan Sobo
c18341dea8 💄 2012-03-07 10:51:31 -07:00
Nathan Sobo
43653d7f03 Merge remote-tracking branch 'origin/master' into gutter
Conflicts:
	src/atom/highlighter.coffee
2012-03-07 10:42:21 -07:00
Nathan Sobo
4f1c8da132 Individual tokens no longer need an isAtomic property 2012-03-06 19:24:14 -07:00
Nathan Sobo
47ee8d599d Rename input/output to buffer/screen in LineMap
Now that we don't have two translation steps, it's not a lie to refer
to the coordinate spaces being translated by the line map as buffer and
screen
2012-03-06 19:20:28 -07:00
Nathan Sobo
da6a708b46 Remove LineWrapper and LineFolder
They are supplanted by Renderer
2012-03-06 19:16:50 -07:00
Nathan Sobo
55a5f1b30e Install Renderer in Editor instead of LineWrapper & LineFolder 2012-03-06 19:15:13 -07:00
Nathan Sobo
a5b4c0af2f Add Renderer.clipScreenPosition 2012-03-06 18:27:24 -07:00
Nathan Sobo
fbd4b7e990 Renderer can place a fold placeholder directly before a soft-wrap 2012-03-06 18:27:06 -07:00
Corey Johnson
0703578820 autoIndent is enabled by default. 2012-03-06 16:34:59 -08:00
Corey Johnson
0737529f07 Auto-outdent maintains proper cursor positon. 2012-03-06 16:34:43 -08:00
Corey Johnson
fe07e45ebc Refactor Ace specific code into its own adapter class. 2012-03-06 16:17:32 -08:00
Corey Johnson
f00632a96e Paste uses Editor.insertText 2012-03-06 15:53:54 -08:00
Corey Johnson
e5f15758af 💄 2012-03-06 15:34:17 -08:00
Corey Johnson
a4011ef6d5 Moved default bindings from Global keymap constructor to a separate method. 2012-03-06 15:07:59 -08:00
Nathan Sobo
7e4aae7b4f Add position translation methods to Renderer 2012-03-06 15:33:29 -07:00
Corey Johnson
668022fb3b Outdent works with Ace's Mode classes 2012-03-06 11:14:50 -08:00
Nathan Sobo
03d5509cca Renderer handles buffer change events for wrapping & folding 2012-03-06 12:11:21 -07:00
Corey Johnson
79edb3fcdf Store tabText in atom.
This is a combination of tabsOrSpaces and tabSize. I imagine things like these will be stored in a settings object on `atom` at some point.
2012-03-06 11:08:20 -08:00
Nathan Sobo
c61510ce99 Ensure line wrapping interacts cleanly with folding 2012-03-05 19:15:03 -07:00
Nathan Sobo
59bcb27079 WIP: Start handling nested folds. 2012-03-05 17:29:12 -07:00
Nathan Sobo
d02817af21 Add spec for single-line folds 2012-03-05 17:09:03 -07:00
Nathan Sobo
764c827134 WIP: Add fold handling to renderer… still needs refinement. 2012-03-05 17:03:06 -07:00
Corey Johnson & Nathan Sobo
53fc625534 Inserting a newline indents the cursor (based on information from previous line) 2012-03-05 15:51:56 -08:00
Corey Johnson & Nathan Sobo
3ff8a1e92c Remove insertNewline method 2012-03-05 15:41:03 -08:00
Nathan Sobo
955bb383dd WIP: Start on Renderer, which combines LineWrapper and LineFolder 2012-03-05 16:07:22 -07:00
Nathan Sobo
3cc559fd9c Add Range.fromObject, which takes a [start, end] array 2012-03-05 16:06:57 -07:00
Nathan Sobo
fc7a13ce05 Rename Buffer.getLine to lineForRow 2012-03-05 16:06:27 -07:00
Corey Johnson & Nathan Sobo
aff3d308ad Store mode object in Buffer 2012-03-05 15:05:49 -08:00
Nathan Sobo
95db96b238 Selection rendering accounts for the presence of gutter 2012-03-05 11:17:46 -07:00
Corey Johnson & Nathan Sobo
5a4f4955b2 Set LineWrapper.maxLength based on lines width, not editor with.
Because there's a gutter now that doesn't count.
2012-03-02 17:09:45 -08:00
Corey Johnson & Nathan Sobo
277be9df3b 💄 2012-03-02 16:29:52 -08:00
Corey Johnson & Nathan Sobo
e7f7e121f7 Gutter updates line numbers when buffer lines are inserted/removed 2012-03-02 16:24:03 -08:00
Corey Johnson & Nathan Sobo
696948cc9b Gutter is renders line numbers when buffer is assigned. 2012-03-02 16:13:29 -08:00
Corey Johnson & Nathan Sobo
b3c4fd5cce Add a nonfunctional gutter to editor layout. 2012-03-02 15:42:04 -08:00
Corey Johnson & Nathan Sobo
78161f3341 Added jquery extension file 2012-03-02 15:41:37 -08:00
Nathan Sobo
98defa865c Cursor screen position is updated when lines are rewrapped. 2012-03-01 18:00:41 -07:00
Corey Johnson & Nathan Sobo
ebca007ca4 Merge branch 'chrome' 2012-03-01 16:24:01 -08:00
Corey Johnson & Nathan Sobo
d334a26ddc All of the methods from Native are now implemented in native_handler 2012-03-01 16:10:47 -08:00
Corey Johnson
8f5ffe2e65 jscocoa is no longer a thing 2012-03-01 16:09:37 -08:00
Corey Johnson
e874512284 Move atom.native to $native 2012-03-01 15:44:36 -08:00
Nathan Sobo
c218a10b6b Don't split a fold placeholder when line wrapping. 2012-03-01 16:38:38 -07:00
Corey Johnson
a7c835ec6e 💩 2012-03-01 15:35:23 -08:00
Corey Johnson
15acd071ca Add keycap (and bound meta-o) to App 2012-03-01 12:11:45 -08:00
Nathan Sobo
c2b16ffbf9 Don't raise an exception when folding an empty range 2012-03-01 13:04:32 -07:00
Nathan Sobo
eeae6c4ee2 Corretly select word and line w/ mouse with wraps and folds 2012-03-01 12:44:26 -07:00
Nathan Sobo
eb0df2f21d Fix bug in LineMap.spliceByDelta with multi-fragment screen lines
If the row following a row being replaced had multiple fragments, some
of these fragments would be accidentally deleted.
2012-03-01 11:52:27 -07:00
Nathan Sobo
32a6a2cd7f Refer to "buffer" and "screen" coordinate spaces as "input" and "output"
Since we compose the line wrapper and the line folder together, the
line map is not always translating between screen and buffer coordinate
spaces. It's translating one step in the chain, with output closer to
the screen and input closer to the buffer.
2012-02-29 18:39:45 -07:00