Nathan Sobo
cdb5fe15d2
Render nbsp on empty lines to ensure they have a non-zero height
...
Fixes #2958
2014-07-16 00:56:14 -07:00
Lee Dohm
b100310764
Add failing test for #2274
...
Tested first on a branch off of `master` to ensure that it would
actually fail 😀
2014-07-13 13:27:32 -07:00
Ben Ogle
9976166902
Render the line numbers after gutter mount
...
Fixes #2916
2014-07-10 17:25:58 -07:00
Nathan Sobo
e170b9f56b
Render line-ending invisibles on empty lines
...
Fixes #2857
Including correct interleaving with indent guides.
2014-07-08 16:53:06 -06:00
Nathan Sobo
997529774c
Clean up after stylesheet applications in editor-component-spec
2014-07-08 11:55:50 -06:00
Nathan Sobo
48d20ff1ec
Only remeasure char widths on stylesheet changes if editor is visible
...
Fixes #2856
2014-07-08 11:46:23 -06:00
Ben Ogle
eda55156e5
Merge pull request #2819 from atom/bo-decoration-api
...
Update the decoration API
2014-07-07 18:06:35 -07:00
Nathan Sobo
2878196e0a
Make React editor indent guide work like it did in the old editor
...
Fixes #2367
* The indent level of empty lines is the *max* of the nearest non empty
line, rather than favoring the level of the line below.
* An extra wrap guide is no longer rendered for empty lines
I didn't port the specs over because we already had good coverage at the
model level. It just needed to be updated for the preferred behavior.
2014-07-07 17:59:26 -06:00
Ben Ogle
d7a3ffa9de
Handle Decoration::update
2014-07-07 15:13:04 -07:00
Ben Ogle
e991b3d10c
Move from addDecoration -> decorateMarker
2014-07-07 14:43:56 -07:00
Nathan Sobo
e1e510e473
Re-measure character widths when stylesheets change
...
Fixes #2845
2014-07-07 15:39:00 -06:00
Nathan Sobo
fad2a63a14
Account for padding-left on the scroll view when soft-wrapping lines
...
Fixes #2844
2014-07-07 14:02:24 -06:00
Nathan Sobo
2de42303d4
💄
2014-07-07 13:55:32 -06:00
Nathan Sobo
7ac8b80172
Explicitly test removal of flash class prior to next animation frame
2014-07-04 09:56:51 -06:00
Ben Ogle
48b6c24882
Add Editor::selectionFlashDuration rather than magic number
2014-07-03 17:36:45 -07:00
Ben Ogle
e5f800ef35
💄
2014-07-03 17:32:38 -07:00
Ben Ogle
492022fdd8
Fix spec
2014-07-03 17:32:38 -07:00
Ben Ogle
abbe8d2eec
Flash works for selections
2014-07-03 17:32:37 -07:00
Ben Ogle
bf33d96899
Decorations can be flashed
2014-07-03 17:32:37 -07:00
Nathan Sobo
9ece33dbfe
Handle double and triple click with command key held down
...
Fixes #2812
2014-07-03 15:18:53 -06:00
Nathan Sobo
a4ed02c3c5
Update lines for line insertions/removals preceding rendered row range
2014-07-03 11:22:57 -06:00
Nathan Sobo
66319ca9c0
Merge pull request #2801 from atom/ns-react-fix-jitter
...
Fix jitter in React editor
2014-07-02 10:34:01 -06:00
Nathan Sobo
17fa580ecd
Ignore 'scroll' events when an update is pending
...
This prevents feedback loops where we handle stale 'scroll' events
for scrolls requested in the model layer. It prevents jitter when
autoscrolling with the cursor.
2014-07-02 10:11:35 -06:00
Nathan Sobo
9508909a9f
Don't defer updates with setImmediate in animation frames
...
I previously thought this was okay, but now I'm experiencing jitter when
scrolling with the trackpad when updates are deferred, and the frames
seem jagged. So this commit restores a synchronous approach to display
updates whenever we use animation frames.
2014-07-02 09:26:24 -06:00
Ben Ogle
dcb0d9b039
Update editor component specs
2014-07-01 11:41:44 -07:00
Ben Ogle
65c2f26656
Little note 📝
2014-07-01 10:54:36 -07:00
Ben Ogle
43e88f6515
Invalidate whitespace lines when their indent level changes
...
Refs #2376
2014-07-01 10:54:36 -07:00
Nathan Sobo
15ca3e2a40
Match existing editor's behavior for .cursor-line class
2014-06-28 15:39:22 +01:00
Nathan Sobo
ea9f5eb1c7
💄 Unify specs for all line decorations
2014-06-28 15:39:22 +01:00
Nathan Sobo
7f70b41696
Update the specs for .cursor/selection-line decorations
2014-06-28 15:39:22 +01:00
Nathan Sobo
bd238d6885
Add specs for gutter decoration options
...
- onlyHead
- onlyEmpty
- onlyNonEmpty
2014-06-28 15:39:22 +01:00
Nathan Sobo
fa7e388352
Add 'onlyEmpty' and 'onlyNonEmpty' decoration options
2014-06-28 15:39:21 +01:00
Nathan Sobo
a2b90cd501
Add 'onlyHead' option for decorations
...
It only decorates the head position of the decoration's marker.
2014-06-28 15:39:21 +01:00
Nathan Sobo
3bf0c73170
Assign line width explicitly to prevent full screen repaints
...
Fixes #2746
2014-06-25 19:13:50 -06:00
Nathan Sobo
eb84737109
Fix specs for use of setImmediate instead of nextTick in requestUpdate
2014-06-25 18:38:06 -06:00
Nathan Sobo
63e8099088
Allow successive accented characters to be inserted in React editor
...
Refs #2732
Because we're only checking the length of the input element's selection
in the React editor on textinput events and not also its content, we
were mistaking some IME compositions as accented character menu
insertions. Clearing the content of the input on 'compositionend'
prevents this issue.
2014-06-25 18:19:53 -06:00
Ben Ogle
b7d8e581ee
Merge pull request #2727 from atom/bo-subscribe-to-marker-changes
...
Subscribe to marker changes
2014-06-24 11:15:47 -07:00
Ben Ogle
396b21bc04
Fix specs failures caused by making lines 100% width
2014-06-24 10:32:48 -06:00
Ben Ogle
ccada33d57
Remove nextTick in spec
2014-06-23 22:27:40 -06:00
Ben Ogle
1d9514ca81
Don't call nextTick within requestAnimationFrame
...
This seems to be causing stutter when scrolling on the GPU. When I don't
use nextTick when requesting animation frames, the problem seems to go
away. Maybe there's some issue with the integration between the Node
and Chromium event loops plus sending things to the compositor.
/cc @benogle
2014-06-23 22:21:28 -06:00
Ben Ogle
f381abcbad
Re-render when a marker changes
...
fixes #2705
2014-06-23 16:00:36 -07:00
Ben Ogle
7139fd9f98
Conditionally render the gutter for the showLineNumbers option
...
Fixes #2707
2014-06-23 15:22:16 -07:00
probablycorey
9a5da3c27e
Add next tick call
2014-06-23 09:13:39 -07:00
probablycorey
43cb9af4a4
Add editor-event spec
2014-06-23 08:51:17 -07:00
Nathan Sobo
7c356d2592
Revert "Render highlights on their own layer to avoid GPU artifacts"
2014-06-21 01:58:11 -06:00
Nathan Sobo
d839ea9aa5
Don't render an opaque background behind line numbers
...
It doesn't help subpixel anti-aliasing like I thought, so screw it.
2014-06-20 16:07:19 -06:00
Nathan Sobo
68d0a99c6e
Default EditorComponent to updating synchronously in specs
...
This commit adds a static property, EditorComponent.performSyncUpdates,
which can be used to control the update behavior of all editor
components. In addition, an instance property called performSyncUpdates
be assigned to control the update behavior of a specific instance.
2014-06-20 15:06:16 -06:00
Nathan Sobo
64f3938f5c
Batch all editor updates together automatically via process.nextTick
2014-06-20 15:06:10 -06:00
Ben Ogle
72b1821828
Render line decorations.
2014-06-19 17:20:05 -07:00
Ben Ogle
85abed2406
Merge pull request #2676 from atom/bo-cursor-gutter
...
Don’t render decorations on the last empty line when selection not empty
2014-06-19 15:10:18 -07:00