Commit Graph

31795 Commits

Author SHA1 Message Date
Nathan Sobo
e6026a145c Fix auto-width 2017-05-05 09:29:28 +02:00
Nathan Sobo
f58a249be1 Pull from compnoent's rendered screen lines in tests 2017-05-05 09:29:28 +02:00
Nathan Sobo
2cde4aea76 Remove TextEditorComponent.getModel 2017-05-05 09:29:28 +02:00
Nathan Sobo
927648d318 Use marker id as highlight key
This keeps highlight elements in stable positions on the DOM, which
ensures that CSS transitions don't appear in the wrong spot.
2017-05-05 09:29:28 +02:00
Nathan Sobo
90c326b985 Fix clearing of marker-specific properties for layer decorations 2017-05-05 09:29:28 +02:00
Nathan Sobo
bef043a8ad Refactor highlight flashing 2017-05-05 09:29:28 +02:00
Nathan Sobo
6023159819 Add highlight decoration flashing 2017-05-05 09:29:28 +02:00
Nathan Sobo
4e00139965 Support placeholderText parameter 2017-05-05 09:29:28 +02:00
Nathan Sobo
36f5262f40 Honor the isLineNumberGutterVisible option 2017-05-05 09:29:28 +02:00
Nathan Sobo
88b30bc4dc Support autoHeight and autoWidth settings 2017-05-05 09:29:28 +02:00
Nathan Sobo
369818b475 Emit editor blur events as if no hidden input existed 2017-05-05 09:29:28 +02:00
Nathan Sobo
b152bfd9c6 Guard against unfocused window in beforeEach 2017-05-05 09:29:28 +02:00
Nathan Sobo
401434858b Gracefully handle focus prior to detecting the editor has become visible 2017-05-05 09:29:28 +02:00
Nathan Sobo
82feef9f68 Don't render cursor line decorations in mini editors 2017-05-05 09:29:28 +02:00
Nathan Sobo
1427dbf540 Make lines extend across the entire width of the scroller
This ensures line decorations render properly, even when the content is
narrower than the editor.
2017-05-05 09:29:28 +02:00
Nathan Sobo
5c7208751f Correctly autoscroll if a horizontal scrollbar appears in the same frame 2017-05-05 09:29:28 +02:00
Nathan Sobo
5d82dcf87a Wait for content width to update before autoscrolling horizontally 2017-05-05 09:29:28 +02:00
Nathan Sobo
758466c9af Make various tweaks to improve mini editors
Still a ways to go, but this is a start toward getting the mini-editors
to play nice with our existing styling.
2017-05-05 09:29:28 +02:00
Nathan Sobo
f00941f299 Only create EditorComponent once per editor 2017-05-05 09:29:28 +02:00
Nathan Sobo
ebad2e6605 Implement detachment to eliminate spurious drag events 2017-05-05 09:29:28 +02:00
Nathan Sobo
173cdcb372 Cache rendered screen lines on component to avoid drifting from model
The model may have screen lines that aren't yet rendered in the page,
and we want to avoid referring to them on mouse clicks.
2017-05-05 09:29:27 +02:00
Nathan Sobo
625990d22f Null guard target check to keep tests simple 2017-05-05 09:29:27 +02:00
Nathan Sobo
df4d52c89a Use constrained scroll values 2017-05-05 09:29:27 +02:00
Nathan Sobo
c2206b88da Destroy folds on fold marker click 2017-05-05 09:29:27 +02:00
Nathan Sobo
68659d9698 When decorating a MarkerLayer, get its corresponding DisplayMarkerLayer
This fixes 'folded' line number decorations.
2017-05-05 09:29:27 +02:00
Nathan Sobo
a2f75c8337 Toggle folds when clicking the arrow icon in the line number gutter 2017-05-05 09:29:27 +02:00
Nathan Sobo
cf19d0efd5 Autoscroll vertically when click-dragging the line number gutter 2017-05-05 09:29:27 +02:00
Nathan Sobo
6e9a9ef43c Add spec structure 2017-05-05 09:29:27 +02:00
Nathan Sobo
ffc2025df5 Handle clicking, shift-clicking, cmd-clicking and dragging in gutter 2017-05-05 09:29:27 +02:00
Nathan Sobo
17d579f949 Only handle the left mouse button (and middle on Linux) 2017-05-05 09:29:27 +02:00
Nathan Sobo
35ae3fb08f Implement autoscroll when mouse is dragged on content 2017-05-05 09:29:27 +02:00
Nathan Sobo
5594c9d82f Expand selections on mouse drag 2017-05-05 09:29:27 +02:00
Nathan Sobo
6bfe08e9b0 Remove cyclic requires 2017-05-05 09:29:27 +02:00
Nathan Sobo
4ef9d385f3 Add tests for shift-clicking in wordwise and linewise mode 2017-05-05 09:29:27 +02:00
Nathan Sobo
e92cf0fe70 Fix event handler method name in specs 2017-05-05 09:29:27 +02:00
Nathan Sobo
3f4cd5e438 Correctly render cursors on reversed selections 2017-05-05 09:29:27 +02:00
Nathan Sobo
8f385377cf Make cursors render above lines 2017-05-05 09:29:27 +02:00
Nathan Sobo
4ef2119ef8 Inherit background color so line tiles get a solid background 2017-05-05 09:29:27 +02:00
Nathan Sobo
c410309827 Expand selections on shift-click 2017-05-05 09:29:27 +02:00
Nathan Sobo
35753c3a8d Add specs for single-, triple-, and cmd-clicking 2017-05-05 09:29:27 +02:00
Nathan Sobo
2996500d90 Handle double and triple click on lines 2017-05-05 09:29:27 +02:00
Nathan Sobo
fab5a93254 Set cursor position on single click 2017-05-05 09:29:27 +02:00
Nathan Sobo
88f3a5b468 WIP: Port screenPositionForPixelPosition from old LinesYardstick
Still need to port tests. This will support various mouse interactions.
2017-05-05 09:29:27 +02:00
Nathan Sobo
d7e76d9302 Remove unused event parameters 2017-05-05 09:29:27 +02:00
Nathan Sobo
ec9115e749 Skip un-accented character when undoing after using press-and-hold menu 2017-05-05 09:29:27 +02:00
Nathan Sobo
00933c7c63 Handle IME input 2017-05-05 09:29:27 +02:00
Nathan Sobo
9a38e8c0d1 Support scrollPastEnd option 2017-05-05 09:29:27 +02:00
Nathan Sobo
0a9ecd5369 ⬆️ etch 2017-05-05 09:29:27 +02:00
Nathan Sobo
c80dbbce3c Add tests for highlight rendering 2017-05-05 09:29:27 +02:00
Nathan Sobo
003f6ff231 Add test for off-screen cursors of selections intersecting rendered rows
We should not attempt to render these cursors even though part of their
associated selection is visible.
2017-05-05 09:29:27 +02:00