Commit Graph
331 Commits
Author SHA1 Message Date
Antonio Scandurra 048bbc9da0 Test prompting when saving while there's a conflict 2021-05-12 15:21:50 +02:00
Antonio Scandurra ac2168f1bd Update mtime and is_deleted when saving/loading a file 2021-05-12 14:34:56 +02:00
Antonio Scandurra 62403343fa Display prompt when trying to save a conflicting file 2021-05-12 11:54:48 +02:00
Max Brunsfeld c54a49e5d1 Use a different tab icon color for buffers with conflicts 2021-05-11 16:59:31 -07:00
Max Brunsfeld 040189db3c Add basic handling for buffer's files changing on disk 2021-05-11 16:18:29 -07:00
Max Brunsfeld d5218fbac5 Add failing test for buffer detecting on-disk changes 2021-05-11 11:38:10 -07:00
Antonio ScandurraandNathan Sobo de6376ca80 Mark FileHandle as not deleted right after saving it
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-05-11 17:26:26 +02:00
Antonio ScandurraandNathan Sobo e72a309734 Add a basic tab keybinding
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-05-11 17:10:37 +02:00
Antonio ScandurraandNathan Sobo 45b41465e1 Don't consider scan as being complete until its state is Idle
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-05-11 16:54:01 +02:00
Antonio ScandurraandNathan Sobo d8f7054f28 Fix saving files in single-file worktrees
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-05-11 16:46:22 +02:00
Antonio ScandurraandNathan Sobo d8eed53f13 Emit Dirtied event when a clean buffer's file is deleted
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-05-11 16:32:52 +02:00
Antonio ScandurraandNathan Sobo 02bd9c8420 Make sure next_scan_complete resolves
Sometimes the scan state could change so quickly that the consumer
wouldn't notice that it ever went to a scanning state before going back
to an idle state, hence never resolving.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-05-11 16:06:12 +02:00
Max BrunsfeldandNathan Sobo ff5561d402 Fix management of buffers' dirty state
* Don't consider files deleted if they just haven't been scanned yet.
* Consider a buffer dirty if its file has been deleted.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-05-11 15:37:01 +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 ScandurraandNathan 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 ScandurraandNathan 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 ScandurraandNathan 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 ScandurraandNathan 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 4b0bd6b8e3 Clean up Workspace::open_entry 2021-05-07 11:21:49 -07:00
Max Brunsfeld e32b6bc8f8 Merge branch 'master' into new-file 2021-05-07 10:10:20 -07:00
Max Brunsfeld 3c3cf3b7c5 Keep weak handles to workspace items 2021-05-07 09:52:15 -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 5f1d0b8850 💄 2021-05-07 14:38:21 +02:00
Antonio Scandurra 4797ccfdcd Implement split_selection_into_lines for buffer 2021-05-07 14:32:57 +02:00
Antonio Scandurra 1c2f549c82 Don't report folds that touch the endpoints of the given range
Fold ranges are exclusive, exactly like the query ranges. So if the end
of a fold coincides with the start of the query range, we shouldn't
report that fold. Analogously, if the start of a fold coincides with the
end of the query range, that fold shouldn't be reported.
2021-05-07 14:30:40 +02:00
Antonio Scandurra 06fb4e8200 Implement select_line for buffer 2021-05-07 11:13:21 +02:00
Antonio Scandurra 6a2fe38d94 Verify FoldMap::unfold in randomized test 2021-05-07 09:39:55 +02:00
Max Brunsfeld e6323f0d02 Fix handling of new files with new buffer/file structure 2021-05-06 21:06:20 -07:00
Nathan SoboandMax 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 SoboandMax 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
Antonio ScandurraandNathan Sobo 6890a3d9fa Batch fold insertion
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-05-06 19:50:51 +02:00
Antonio ScandurraandNathan Sobo 2c1e4cae19 Merge FoldRange into Fold
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-05-06 19:36:19 +02:00
Antonio ScandurraandNathan Sobo e8179f7e3e Always provide a context to sum tree's methods
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-05-06 19:29:38 +02:00
Antonio ScandurraandNathan Sobo 65e92ac2f2 Ignore empty folds in FoldMap::fold
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-05-06 18:53:09 +02:00
Antonio Scandurra 178705f8f9 Add FoldMap::folds_in_range to randomized test and fix issues it found 2021-05-06 18:49:41 +02:00
Max Brunsfeld 490fb485fd Merge branch 'master' into new-file 2021-05-06 09:19:16 -07:00
Antonio Scandurra 652fc9e4ec Remove add_summary_with_ctx and always require a ctx in add_summary 2021-05-06 16:57:47 +02:00
Antonio Scandurra 901525bf77 Implement FoldMap's folds using a SumTree
This required passing a `Context` object to `Summary` and introducing a
new `SeekDimension` trait that allows comparing two dimensions and pass
an additional context object.
2021-05-06 16:20:23 +02:00
Antonio Scandurra 7fb7a6adfc Add a Summary trait in preparation of passing a context struct 2021-05-06 09:32:14 +02: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