Nathan Sobo
a3be5595dd
Pass a handle to the current view model when spawning
...
Most of the time, we'll want a way to get a reference back to the current view or model, so this facilitates that common case.
2021-05-12 15:28:59 -06:00
Nathan Sobo and Max Brunsfeld
fa6bd1f926
Introduce AsyncAppContext and simplify spawning
...
Now when you call spawn in various context, you pass an FnOnce that is called with an AsyncAppContext and returns a static future. This allows you to write async code similar to how our tests work, borrowing the guts of the AsyncAppContext when needed to interact, but using normal async await semantics instead of callbacks.
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-05-12 15:16:49 -06:00
Antonio Scandurra
1c2b381f74
Use gpui::test macro for synchronous tests in zed
2021-05-12 17:18:23 +02:00
Antonio Scandurra and Nathan Sobo
e72a309734
Add a basic tab keybinding
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-05-11 17:10:37 +02:00
Antonio Scandurra
d9e7547d95
💄
2021-05-11 12:43:24 +02:00
Antonio Scandurra
07ef0d474e
Bind add_selection_{above,below} to cmd-alt-{up,down}
2021-05-11 12:37:30 +02:00
Antonio Scandurra
17258d4f8c
Add test for add_selection_above and add_selection_below
2021-05-11 12:35:27 +02:00
Antonio Scandurra
6f5e47d631
Add test for BufferView::cancel
2021-05-11 12:35:27 +02:00
Antonio Scandurra
0622722ab7
Split multi-line selection when starting a new columnar selection
2021-05-11 12:35:27 +02:00
Antonio Scandurra and Nathan Sobo
951aa0e443
Keep only one selection when starting to add selections above/below
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-05-11 12:35:27 +02:00
Antonio Scandurra and Nathan Sobo
3fe64400c6
Rename add_cursor_{above,below} to add_selection_{above, below}
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-05-11 12:35:27 +02:00
Antonio Scandurra and Nathan Sobo
b6449b3809
Support undo of adding cursor above by adding cursor below and viceversa
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-05-11 12:35:27 +02:00
Antonio Scandurra and Nathan Sobo
acbda9184e
Empty last selection on cancel
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-05-11 12:35:27 +02:00
Antonio Scandurra
143c50f321
Implement cancel for buffer
2021-05-11 12:35:27 +02:00
Antonio Scandurra
0baff0c61d
Implement add_cursor_above and add_cursor_below for buffer
2021-05-11 12:35:27 +02:00
Max Brunsfeld
3120906275
Merge branch 'master' into close-window
2021-05-07 14:24:48 -07:00
Max Brunsfeld
d8d36a32bf
Add emacs key bindings for up/down/left/right
2021-05-07 13:51:17 -07:00
Max Brunsfeld
e32b6bc8f8
Merge branch 'master' into new-file
2021-05-07 10:10:20 -07:00
Antonio Scandurra
806c09bf11
Autoscroll when folding an arbitrary range
2021-05-07 18:15:00 +02:00
Antonio Scandurra
8bbaa0bd34
Handle reversed selections correctly in split_selection_into_lines
2021-05-07 14:54:46 +02:00
Antonio Scandurra
4797ccfdcd
Implement split_selection_into_lines for buffer
2021-05-07 14:32:57 +02:00
Antonio Scandurra
06fb4e8200
Implement select_line for buffer
2021-05-07 11:13:21 +02:00
Nathan Sobo and Max Brunsfeld
4eac765f1a
Replace zed::watch with postage::watch for settings
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-05-06 15:27:18 -06:00
Nathan Sobo and Max Brunsfeld
008f2b905b
Hold a WeakViewHandle in BufferElement
...
Otherwise, the element never goes away because the view never goes away because the element is holding a strong reference.
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-05-06 15:13:01 -06:00
Max Brunsfeld
490fb485fd
Merge branch 'master' into new-file
2021-05-06 09:19:16 -07:00
Max Brunsfeld
bf28aba1a7
Restore Buffer::file field and workspace::Item trait
2021-05-05 18:08:18 -07:00
Max Brunsfeld
78a5d0a378
Maintain workspace buffers state after saving untitled buffer
2021-05-05 13:12:51 -07:00
Max Brunsfeld
47d03498f4
Wait to update bufferview's file handle until save has completed
2021-05-05 11:05:50 -07:00
Antonio Scandurra
e771e70788
Add test for moving lines up and down
2021-05-05 10:23:35 +02:00
Antonio Scandurra
10aef856e3
Merge branch 'master' into move-lines-folds
2021-05-05 09:58:34 +02:00
Max Brunsfeld
5fd084ec09
Start work on creating and saving new files
2021-05-04 19:04:11 -07:00
Antonio Scandurra and Nathan Sobo
05ab1bdddf
Synchronize FoldMap with buffer's contents lazily
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-05-04 18:27:56 +02:00
Antonio Scandurra
c135c84ef0
Use correct bias when calculating next_row_end
2021-05-04 16:13:01 +02:00
Antonio Scandurra
a0428667d0
Fix folds_in_range and add a test for it
...
With the current ordering, a linear scan is required in order to
determine which folds intersect the given range.
2021-05-04 11:24:33 +02:00
Nathan Sobo
5c392f933f
Merge branch 'master' into buffer-per-inode
2021-05-03 20:47:28 -06:00
Nathan Sobo and Max Brunsfeld
ed28bd3f95
Combine Workspace and WorkspaceView
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-05-03 20:15:55 -06:00
Nathan Sobo
aa2a2ececf
Merge pull request #37 from zed-industries/move-line-up-down
...
Move line up and down
2021-05-03 18:25:42 -06:00
Nathan Sobo and Max Brunsfeld
b801628230
Clean up
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-05-03 16:33:13 -06:00
Nathan Sobo and Max Brunsfeld
afb623b6b5
Make Workspace::open_entry2, which returns a dyn ItemViewHandle
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-05-03 16:25:18 -06:00
Antonio Scandurra
4b38f2850d
WIP
2021-05-03 18:58:39 +02:00
Antonio Scandurra
4c4657515e
Account for folds when moving selections up/down
2021-05-03 16:13:09 +02:00
Antonio Scandurra
49dc040786
Use a more direct manipulation for moving lines up or down
2021-05-03 15:10:20 +02:00
Antonio Scandurra
76b454d34b
Push selections down correctly when moving a line down
2021-05-03 14:49:35 +02:00
Antonio Scandurra
8cd451f3ca
Implement move_line_up and move_line_down
...
This does not restore folds yet.
2021-05-03 11:37:36 +02:00
Antonio Scandurra
c01263be8e
Merge pull request #35 from zed-industries/move-to-prev-next-word-boundary
...
Implement word boundary movement/selection/deletion
2021-04-30 16:34:06 +02:00
Antonio Scandurra
51ae37e578
Bind ctrl-h to backspace
2021-04-30 10:45:58 +02:00
Antonio Scandurra
9c3216507b
Add test for word boundary movement/selection/deletion
2021-04-30 10:14:20 +02:00
Antonio Scandurra
f352cfb686
Implement delete_to_{previous,next}_word_boundary
2021-04-30 10:14:20 +02:00
Antonio Scandurra
1a0dbb2907
Implement select_to_{previous,next}_word_boundary
2021-04-30 10:14:20 +02:00
Antonio Scandurra and Max Brunsfeld
bc686b4561
Implement move_to_previous_word_boundary
...
Co-Authored-By: Max Brunsfeld <max@zed.dev >
2021-04-30 10:14:20 +02:00