Commit Graph

63 Commits

Author SHA1 Message Date
Nathan Sobo
5f253d78e9 Optimization: Use absolute positioning instead of flexbox in editor
Flexbox was causing layouts and repaints to cover the entire scroll view instead of just the edited line. This cuts down on DOM manipulation cost significantly.
2012-09-25 14:58:31 -06:00
Nathan Sobo
d3df0a305b Use <pre> tag for lines instead of using white-space: pre css property
One less CSS rule, since the whitespace behavior of a `pre` tag is already baked into the browser's default styles.
2012-09-25 13:09:12 -06:00
Corey Johnson & Nathan Sobo
44db540528 All specs pass 2012-08-30 17:12:52 -06:00
Corey Johnson & Nathan Sobo
f84f9c5dd2 Add bundles and themes 2012-08-27 13:20:22 -07:00
Nathan Sobo
c2c8724ad0 Initial commit 2012-08-10 13:32:19 -06:00
Nathan Sobo
1996ba5558 Merge branch 'master' of github.com:github/atom 2012-08-27 11:02:39 -05:00
Corey Johnson
08ae611ff8 add fold selected state 2012-08-22 17:48:00 -07:00
Nathan Sobo
85b6cc3cf5 Make cursor a bit transparent when editor is not focused 2012-08-15 14:54:20 -07:00
Corey Johnson & Nathan Sobo
16b453e2e5 Remove z-index on .lines and .line-number
This was causing AutoComplete to be shown UNDER the lines
2012-08-09 17:22:44 -07:00
Corey Johnson
956cffe225 Add temp styling for folds 2012-08-09 15:18:37 -07:00
Nathan Sobo
34cac4336b Order selection regions behind editor's text
The key here is to force editor's overall z-index to be 0 in order to establish a *local stacking context*. Then we can put the lines at z-index 1 and the selection at z-index -1  within that context without them overlapping elements outside of the editor.
2012-08-08 22:35:57 -06:00
Nathan Sobo
3da19cd93b WIP: Style in a manner compatible w/ TextMate themes 2012-08-08 22:17:00 -06:00
Nathan Sobo
8c5e77d325 Move theme activation to RootView 2012-08-08 17:04:54 -06:00
Corey Johnson & Nathan Sobo
430fc0eff1 Put a bit more space between editor lines 2012-08-01 17:16:15 -06:00
Nathan Sobo
6de055aa1c Lines aren't taller when they contain an Inconsolata em dash (–) character 2012-08-01 17:04:33 -06:00
Nathan Sobo
454557b502 Merge branch 'master' into global-find
Conflicts:
	spec/extensions/command-panel-spec.coffee
	src/app/buffer.coffee
	src/extensions/command-panel/command-panel.coffee
	src/extensions/command-panel/keymap.coffee
2012-07-24 17:59:49 -06:00
Corey Johnson
e089b74867 Editor.renderedLines' css width is set to 100% when editor.maxScreenLineLength() is less than Editor.scrollView's width 2012-07-16 09:14:33 -07:00
Corey Johnson & Nathan Sobo
d44c648d4b Editor.renderedLines' width is set to the maximum of either Editor.scrollView's width or the maximum rendered line width 2012-07-13 09:05:38 -07:00
Nathan Sobo
3ee7c0dc0f "Scroll" gutter by relatively positioning its line numbers
This matches how we scroll lines, and eliminates opportunities for the gutter to get out of sync with the lines. If that happened, it would probably be a bug, but this at least eliminates one source of confusion when debugging.
2012-07-03 11:09:34 -06:00
Nathan Sobo
4aed73d947 Selections don't absorb click events
Clicking on a selection was causing the click event not to reach the editor, which was causing the editor to lose focus. Using CSS to disallow pointer events on selection region elements fixes this.
2012-06-29 13:34:01 -06:00
Corey Johnson
3c826ec898 Use 'pt' instead of 'px' for font sizes 2012-06-01 11:06:13 -07:00
Corey Johnson & Nathan Sobo
c11ee74405 Remove unused css 2012-05-24 14:08:32 -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
c93c63d721 Editor.scroller WheelEvents are forwarded to Editor.scrollbar 2012-05-11 11:04:04 -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
1a6ef9d7e2 Revert "Temporarily disable gutter. Add transition affect to margin-top."
This reverts commit 811e5264cf.
2012-05-10 18:00:58 -06:00
Corey Johnson & Nathan Sobo
811e5264cf Temporarily disable gutter. Add transition affect to margin-top. 2012-05-10 17:52:41 -06:00
Corey Johnson & Nathan Sobo
502b463a72 WIP: Adding an artificial scrollbar so we can render content before we scroll. It's blue. 2012-05-10 16:59:46 -06:00
Corey Johnson & Nathan Sobo
d3127a2686 slowed cursor blink down 2012-05-09 12:24:27 -07:00
Nathan Sobo
8b1ac28b89 Editor font sizes can be adjusted with RootView.proto.setFontSize 2012-05-09 08:34:08 -06:00
Nathan Sobo
f41ca1843b Make editor scroller overflow be auto, not scroll 2012-05-07 12:35:25 -06:00
Nathan Sobo
37438c6da8 Status bar path and cursor position updates 2012-05-04 13:58:11 -06:00
Corey Johnson & Nathan Sobo
038b491247 Add 'mini' option to editor, which styles it with auto-height, no gutter, and overflow hidden on scroller 2012-04-19 16:45:57 -06:00
Nathan Sobo
144fb29d83 Make lines have 100% height so the area below last line is clickable 2012-04-11 14:28:26 -06:00
Nathan Sobo
8a4f6510c9 Lighten selections because they're hard to see against darker bg 2012-04-04 11:09:45 -06:00
Nathan Sobo
d521dab2cf Horizontal scrollbar is always visible, and clicking scrollbars doesn't move cursor.
The editor is divided into gutter and scroller. The gutter is scrolled to the correct vertical position whenever the lines are scrolled inside of scroller.
2012-04-03 15:01:28 -06:00
Corey Johnson & Nathan Sobo
b2cd059759 Set .hidden-input to fixed position so we don't have to move it when the cursor moves 2012-03-23 10:13:41 -07:00
Nathan Sobo
29d0e1fe3d Move all screen-splitting-related selectors to atom.css 2012-03-19 12:23:39 -06:00
Nathan Sobo
5b145f64c2 Add vertical splitting. Still some issues with some nested arrangements. 2012-03-19 12:15:37 -06:00
Nathan Sobo
509bac15b6 Cursor is colored / blinks on on focused editor pane 2012-03-19 09:31:03 -06:00
Corey Johnson & Nathan Sobo
2e42df3401 WIP: alt-meta-right splits editor pane to the right 2012-03-19 08:34:37 -06:00
Nathan Sobo
5d1bde62a6 Ensure gutter drop-shadow always extends to bottom of window, even if file is shorter.
This is fragile. Had to apply a min-height of 100% to horizontal scroller. If I apply it to gutter it causes rendering artifacts. I think we're on the edge of the flexbox code here and may even be causing crashes.
2012-03-16 05:49:03 -06:00
Nathan Sobo
174c4e18cc Fix scrolling misbehavior and display artifacts.
Switching back to the new flexbox and re-introducing a scrollable-content node that the flexbox is applied to. This has no height settings so it grows to contains the gutter and lines. The editor outside of it has a width / height of 100% of its container plus overflow-y of scroll. Trying to apply flexbox AND a 100% height + scroll all to the editor causes display artifacts.
2012-03-16 05:41:43 -06:00
Corey Johnson & Nathan Sobo
fd5439f357 Simplify layout and prevent scrollbar flash when toggling file finder. 2012-03-15 17:18:26 -06:00
Nathan Sobo
f02244412f Disable scrolling on the horizontal scroller when soft wrap is on. 2012-03-13 12:13:47 -06: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
Corey Johnson
3a6b3e6650 💄 2012-03-07 11:42:39 -08: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
Corey Johnson & Nathan Sobo
696948cc9b Gutter is renders line numbers when buffer is assigned. 2012-03-02 16:13:29 -08:00