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
Antonio Scandurra and Nathan Sobo
0a28c78a7a
Implement move_to_next_word_boundary for buffer
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-04-30 10:14:20 +02:00
Antonio Scandurra
0e432ed889
Merge pull request #32 from zed-industries/editor-keybindings
...
Initial editor keybindings
2021-04-30 09:31:32 +02:00
Antonio Scandurra
d19fd77f91
💄
2021-04-29 10:38:11 +02:00
Antonio Scandurra
283c734c91
Implement {move_to,select_to,delete_to}_{beginning,end}_of_line
2021-04-29 10:38:11 +02:00
Antonio Scandurra
0aacf858ce
Don't rely on Range::is_empty to check for selection emptiness
...
This method returns true when `start > end`, so our `backspace` and
`delete` implementations were subtly wrong because they always deleted
one extra character for reversed selections.
2021-04-29 10:38:11 +02:00
Antonio Scandurra
fdefd32de0
Implement duplicate_line for buffer
2021-04-29 10:38:11 +02:00
Antonio Scandurra
5d28fb871f
Extract a Selection::buffer_row_range method
2021-04-29 10:38:11 +02:00
Antonio Scandurra
2a0a2ee636
Fix delete_line for non-empty selections that end at the start of line
2021-04-29 10:38:11 +02:00
Antonio Scandurra
618cb8ac18
Bind also ctrl-d to buffer:delete
2021-04-29 10:38:11 +02:00
Antonio Scandurra
cee9509127
Fix delete_line test
2021-04-29 10:38:11 +02:00
Antonio Scandurra
ccd244bac7
WIP: start on a test for delete_line
...
Discovered a bug that's highlighted by the test that causes selections
to not be in the right order.
2021-04-29 10:38:11 +02:00
Antonio Scandurra
834602ef67
Implement delete_line for buffer
...
This still needs unit tests.
2021-04-29 10:38:11 +02:00
Antonio Scandurra
21442bd2b7
Don't propagate action when selecting up/down in single-line editors
2021-04-29 10:38:11 +02:00
Antonio Scandurra
c524cc4d61
Implement select_to_beginning and select_to_end for buffer
2021-04-29 10:38:11 +02:00
Antonio Scandurra
45452bbb3a
Implement move_to_beginning and move_to_end for buffer
2021-04-29 10:38:11 +02:00
Antonio Scandurra
b7c30eba30
Implemente delete for buffer
2021-04-29 10:38:11 +02:00
Antonio Scandurra
324a6ff7ae
Implement select_all for buffer
2021-04-29 10:38:11 +02:00
Max Brunsfeld
88b88a8067
Start work on opening files
2021-04-28 17:46:27 -07:00
Antonio Scandurra
b52a3b5a24
Autoscroll on paste
...
This also removes the `changed_selections` and moves the autoscroll
request inside of `update_selections`. This is nicer because it'll force
us to determine whether we want to autoscroll every time we update the
selections, so that we don't forget this in the future.
2021-04-27 11:52:46 +02:00
Nathan Sobo
870925e2ac
Rerender tabs when buffers' file handles change
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-04-26 14:16:35 -07:00
Nathan Sobo and Max Brunsfeld
c9d7249305
WIP
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-04-23 11:37:23 -06:00
Nathan Sobo
db8cce9aa9
Merge branch 'master' into rescan
2021-04-14 22:26:09 -06:00
Antonio Scandurra and Nathan Sobo
f4538e9eb5
Generalize pasting when number of selections doesn't match clipboard's
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-04-14 19:02:44 +02:00
Antonio Scandurra
40980edffe
Merge branch 'master' into copy-paste
2021-04-14 12:05:52 +02:00
Antonio Scandurra
a1053f7820
📝
2021-04-14 11:59:39 +02:00
Antonio Scandurra
6a181ac692
Add test for copying/cutting/pasting full lines
2021-04-14 11:56:17 +02:00
Antonio Scandurra
4a395314b2
Handle paste correctly when there is only one full-line in the clipboard
2021-04-14 11:15:55 +02:00
Nathan Sobo
24cdfd2471
Identify Worktree entries by their inode
...
This will allow us to re-parent elements when re-scanning when the file system changes.
2021-04-13 20:09:41 -06:00
Nathan Sobo and Brooks Swinnerton
0a2d2aa684
Replace app/app_mut on contexts with AsRef/AsMut impls
...
Co-Authored-By: Brooks Swinnerton <934497+bswinnerton@users.noreply.github.com >
2021-04-13 20:07:25 -06:00
Max Brunsfeld
e082935076
Handle 'full-line' clipboard items when pasting
2021-04-13 17:58:13 -07:00
Max Brunsfeld
c83f02dd04
Implement multi-selection copy/cut/paste
2021-04-13 17:28:51 -07:00
Antonio Scandurra and Max Brunsfeld
13514aae6c
Allow metadata to be associated with text written to clipboard
...
Co-Authored-By: Max Brunsfeld <max@zed.dev >
2021-04-13 19:03:56 +02:00
Antonio Scandurra
f4c1ffc329
Start on copy-paste
2021-04-13 14:58:10 +02:00
Max Brunsfeld
b2723fd1dd
Remove unused variables
2021-04-12 11:45:41 -07:00
Max Brunsfeld
a0da23799d
Merge branch 'master' into undo-stack
2021-04-12 10:49:46 -07:00
Antonio Scandurra
8f6b8b2e43
📝
2021-04-12 19:05:56 +02:00
Antonio Scandurra
3a33fab091
Generate operation when updating selection set after undo/redo
2021-04-12 17:47:19 +02:00
Antonio Scandurra
ab14b99a73
Introduce transactional edits and allow snapshotting of selections
2021-04-12 16:01:41 +02:00
Antonio Scandurra
40bfdd38ae
💄
2021-04-12 16:01:41 +02:00
Antonio Scandurra
551c86f87a
WIP: Start on pushing selection management down into Buffer
2021-04-12 16:01:41 +02:00
Antonio Scandurra
e534fe9112
Add initial support for undo/redo stack
...
We're still not capturing selections/anchors, that's right up next.
2021-04-12 16:01:41 +02:00
Nathan Sobo
97a8a8ed43
Remove unsafe code from App::test_async
...
I don't actually think it was correct to allow the future to borrow a mutable app reference. I went back to passing a wrapper around the refcell to async tests. They'll be a bit more annoying to write but also totally safe.
2021-04-10 00:05:09 -06:00
Max Brunsfeld
079050541f
Get app running and test passing after gpui App+Platform restructure
2021-04-09 16:56:32 -07:00
Nathan Sobo and Max Brunsfeld
4ecc17b1bb
WIP: Make App the only entry point from main
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-04-09 13:38:09 -06:00
Max Brunsfeld
ae57178f3e
Restructure event-handling methods in workspace ItemView
2021-04-07 15:05:16 -07:00
Nathan Sobo and Max Brunsfeld
2619bc4602
Update modified status by emitting event whenever buffer is dirtied or saved
...
I used the word "dirty" because it felt more expressive than "modified" to me, but not married to it. Tagging Max because we did a lot of this thinking together.
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-04-06 20:46:35 -06:00
Max Brunsfeld
d724387158
wip
2021-04-06 18:25:50 -07:00