Commit Graph

1440 Commits

Author SHA1 Message Date
Nathan Sobo
ee2ceb6bcb Always render a non-breaking space at the end of screen lines
This ensures that if the line only contains a placeholder that it still
has a single character to keep the line div at a consistent height with
other lines.
2012-03-08 12:20:28 -07:00
Nathan Sobo
6d303aad18 Add a horizontal-scroller to address selection issues when scrolled right
The lines element is now display: table and contained inside of the
scroller. This means the lines element always expands to contain all
lines, which allows absolute positioning inside of it to be relative to
the entire scroll contents, not just to the currently visible area.
2012-03-08 11:23:05 -07:00
Nathan Sobo
4bfc09b18d Run benchmarks 100 times and other 💄 2012-03-07 19:43:59 -07:00
Corey Johnson & Nathan Sobo
f44a9df701 Add benchmark for inserting and deleting a character 2012-03-07 19:07:56 -07:00
Corey Johnson & Nathan Sobo
18c8c7e14f Add benchmark suite, which runs with ctrl-alt-meta-b 2012-03-07 18:21:17 -07:00
Corey Johnson
423a4dc17d Ensure editor and cursor methods explain if they act on buffer or screen lines 2012-03-07 16:23:23 -08:00
Nathan Sobo
8e4a6f65f7 Translate clicks to screen positions correctly when lines are scrolled right 2012-03-07 17:22:13 -07:00
Nathan Sobo
acb6c94ebb Make cursor and selection children of editor.lines to fix positioning when scrolled 2012-03-07 17:10:24 -07:00
Corey Johnson
ac77b7af87 Outdent and indent use bufferRow and screenRow in the appropriate places 2012-03-07 15:22:41 -08:00
Nathan Sobo
dc815f67ad 💄 2012-03-07 14:46:27 -07:00
Nathan Sobo
65920fdc25 Rename GlobalKeymap to Keymap 2012-03-07 14:45:26 -07:00
Nathan Sobo
62319113c1 Meta-w closes specs window 2012-03-07 14:27:21 -07:00
Corey Johnson
f6414c543c Add save command and keyboard shortcuts to editor. 2012-03-07 12:43:29 -08:00
Corey Johnson
fabe8fd609 Update test to use meta-/ instead of meta-s 2012-03-07 12:43:09 -08:00
Corey Johnson
3a6b3e6650 💄 2012-03-07 11:42:39 -08:00
Corey Johnson
c258c2847e Fix bug introduced when I resolved a conflict resolution. 2012-03-07 11:42:39 -08:00
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
20deb80d9f Give specs window a keymap with the default bindings 2012-03-07 11:04:41 -07:00
Nathan Sobo
baeef54be3 Revert "Global Keyboard shortcuts work from spec window."
This reverts commit 6134d9e41e.
2012-03-07 10:53:09 -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 & Nathan Sobo
6134d9e41e Global Keyboard shortcuts work from spec window. 2012-03-06 16:48:28 -08: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
a1a5d9ac75 Add additional auto-indent test 2012-03-06 15:34:39 -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
cb23fdbf92 Add spec for position translation with folds + line wrapping 2012-03-06 15:51:04 -07:00
Nathan Sobo
7e4aae7b4f Add position translation methods to Renderer 2012-03-06 15:33:29 -07:00
Nathan Sobo
8b7638998c Add spec for a fold causing a line to unwrap 2012-03-06 15:13:51 -07:00
Corey Johnson
8129183486 Merge pull request #4 from github/fix-xcode-4.3-build
Fix compiler error in Xcode 4.3
2012-03-06 13:42:09 -08:00
Adam Roben
5665fcb48c Fix compiler error in Xcode 4.3
Presumably this also indicated infinite recursion, but I don't believe Atom is
ever actually deallocated.
2012-03-06 13:27:47 -08: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
ed13a27821 Add specs for more fold corner cases. 2012-03-05 17:46:55 -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