Nathan Sobo
2f42f23ec6
Revert changes to editor-view
2014-04-22 17:09:03 -06:00
Nathan Sobo
5a8ca1ae66
Move screen-related properties to DisplayBuffer
...
Scroll positions, height, width, line height. We force update when one
of these observed properties changes.
2014-04-22 17:09:03 -06:00
Nathan Sobo
53cc5c9856
Base cursor x position on char widths stored in DisplayBuffer
...
Whenever new lines are added to the screen, we measure and store any
unseen scope/character combinations in the DisplayBuffer.
2014-04-22 17:09:03 -06:00
Nathan Sobo
148a9f0248
Add DisplayBuffer::pixelPositionForScreenPosition
...
This bakes character width tracking into display buffer directly, which
moves us toward a world where all rendering decisions can be made in the
model to strictly control DOM reads.
2014-04-22 17:09:03 -06:00
Nathan Sobo
48e2302ccb
Handle almost all editor commands in EditorComponent
2014-04-22 17:09:03 -06:00
Nathan Sobo
6327094696
Transfer focus from editor component to its hidden input
2014-04-22 17:09:03 -06:00
Nathan Sobo
c4fdb54650
Update editor component when a visible selection is removed
2014-04-22 17:09:03 -06:00
Nathan Sobo
a55c329226
💄
2014-04-22 17:09:03 -06:00
Nathan Sobo
e365e51a2b
Render all visible cursors
2014-04-22 17:09:03 -06:00
Nathan Sobo
c44fd62eb1
Update cursor view when selection screen position changes
2014-04-22 17:09:03 -06:00
Nathan Sobo
9c2d321327
Break out selection, cursor, and input components
2014-04-22 17:09:02 -06:00
Nathan Sobo
70e5880b1d
Start on cursor rendering
2014-04-22 17:09:02 -06:00
Nathan Sobo
61d9ff4ba4
Put the hidden input in the overlayer
...
The overlayer is absolutely positioned to exactly fill the scroll-view.
If we can retain this strategy and never give the input a position that
exceeds the bounds of the overlayer, we can guarantee that it never
forces the scroll position of the scroll view to change when it is
focused due to the browsers default behavior.
2014-04-22 17:09:02 -06:00
Nathan Sobo
e4c1bf10f5
Handle basic input
2014-04-22 17:09:02 -06:00
Nathan Sobo
fddd411279
Use className instead of class
...
Might as well go with the flow
2014-04-22 17:09:02 -06:00
Nathan Sobo
2dda577d7c
Improve TokenizedLine::getScopeTree specs and fix bug
2014-04-22 17:09:02 -06:00
Nathan Sobo
958bc638d7
Improve scrolling performance
2014-04-22 17:09:02 -06:00
Nathan Sobo
33ed403818
Update editor with tokenized lines when it appears on screen.
2014-04-22 17:09:02 -06:00
Nathan Sobo
3c69fd2d49
Handle mouse wheel and make some tweaks to improve scroll performance
2014-04-22 17:09:02 -06:00
Nathan Sobo
a134a60ce8
Render the entire editor with React. Handle vertical scrolling.
...
The space-pen view is now a simple wrapper around the entire React
component to integrate it cleanly into our existing system. React
components can't adopt existing DOM nodes, otherwise I would just have
the react component take over the entire view instead of wrapping.
2014-04-22 17:09:02 -06:00
Nathan Sobo
9c49a2d970
Use reactionary helper for creating virtual DOM elements
2014-04-22 17:09:01 -06:00
Nathan Sobo
8ad13d3045
Add a real spec for visible line rendering in the react editor view
2014-04-22 17:09:01 -06:00
Nathan Sobo
cc8ba2d679
Update the rendered lines when the screen lines change
2014-04-22 17:09:01 -06:00
Nathan Sobo
da36d5f40f
Start experimenting with an EditorView that renders content with React
2014-04-22 17:09:01 -06:00
Kevin Sawicki
743e79b659
Look at first character instead of indexOf call
2014-04-22 09:35:30 -07:00
Kevin Sawicki
3d10c3856b
Replace all periods with a single space
...
Refs atom/language-make#6
2014-04-22 09:33:17 -07:00
Corey Johnson
4a6b70d261
Use Marker::get/setProperties
2014-04-18 15:50:30 -07:00
Corey Johnson
5917f71685
Use KeymapManager::findKeyBindings
2014-04-18 15:50:30 -07:00
Corey Johnson
fb42c499b1
Use KeymapManager::handleKeyboardEvent
2014-04-18 15:50:30 -07:00
Corey Johnson
1583271e2f
Use setTextInRange instead of change
2014-04-18 15:50:30 -07:00
Corey Johnson
a407b0107a
Remove deprecated call to keystroke
2014-04-18 10:43:27 -07:00
Corey Johnson
36c3c38047
Don't rename deprecated method
2014-04-18 10:43:27 -07:00
Corey Johnson
e56317bd64
Use paneView as var name instead of pane
2014-04-18 10:43:27 -07:00
Corey Johnson
da49751f24
Remove usage of PaneContainerView::getActivePaneView
2014-04-18 10:43:27 -07:00
Kevin Sawicki
87afa50477
💄 Add space after comma
2014-04-17 18:35:54 -07:00
Kevin Sawicki
2e71e2fa4b
Remove unneeded mkdir call
2014-04-17 18:34:59 -07:00
Kevin Sawicki
b537ba8864
Use fs-plus isFileSync method
2014-04-17 18:34:10 -07:00
Kevin Sawicki
c156119882
Store compiled coffee files with js extension
2014-04-17 18:32:22 -07:00
Kevin Sawicki
8e0a695f7c
Store less cache in ~/.atom/compile-cache
2014-04-17 18:32:22 -07:00
Kevin Sawicki
47f99cd74e
Store coffee/cson cache in ~/.atom/compile-cache
2014-04-17 18:32:22 -07:00
Kevin Sawicki
0c01de350d
📝 Shorten and tweak comment
2014-04-17 18:23:40 -07:00
Kevin Sawicki
77641f138b
Make Editor::mutateSelectedText public
2014-04-17 18:23:01 -07:00
Kevin Sawicki
690fc7180a
Defer requiring of $ in Package
...
This is needed in the case that the package manager is being used
in the browser process to open a URL.
Closes #1869
2014-04-17 13:53:00 -07:00
Kevin Sawicki
81646532b4
Ignore non-string core.themes config entries
...
Previously exceptions would be raised downstream if invalid theme
names were returned from ThemeManager::getEnabledThemeNames
Closes #1877
2014-04-17 13:33:51 -07:00
Kevin Sawicki
27fe5b784c
📝 Use package instead of plugin in example
2014-04-17 13:24:34 -07:00
Kevin Sawicki
9b2901583e
📝 Clean up docs
2014-04-17 13:24:34 -07:00
Kevin Sawicki
408665d7d2
Add Config::isDefault(keyPath)
2014-04-17 13:24:34 -07:00
Kevin Sawicki
6ec58e1163
Rename value var to defaultValue
2014-04-17 13:24:34 -07:00
Kevin Sawicki
35d268fcf8
Use _.isEqual when comparing value to default
2014-04-17 13:24:34 -07:00
Kevin Sawicki
20c3ca21e3
Add Config::getDefault(keyPath)
2014-04-17 13:24:34 -07:00