Commit graph

499 commits

Author SHA1 Message Date
Antonio Scandurra
c7d97adf23 Introduce a gpui::test macro 2021-05-12 17:05:03 +02:00
Antonio Scandurra
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 Scandurra
e72a309734 Add a basic tab keybinding
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-05-11 17:10:37 +02:00
Antonio Scandurra
e076c2c6dc
Merge pull request #48 from zed-industries/file-deletion
Fix management of buffers' dirty state
2021-05-11 17:00:44 +02:00
Antonio Scandurra
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 Scandurra
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 Scandurra
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 Scandurra
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 Brunsfeld
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
01b20d524d
Merge pull request #51 from zed-industries/add-cursors-and-cancel-selections
Implement `add_selection_above`, `add_selection_below` and `cancel`
2021-05-11 13:02: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
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
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
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
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
af6ab2762f
Merge pull request #47 from zed-industries/macos-10-compat
Ensure that the bundle runs on macOS versions < 11.0
2021-05-10 14:10:33 -07:00
Max Brunsfeld
f2b009ea6b Ensure that the bundle runs on macOS versions < 11.0 2021-05-10 14:14:04 -06:00
Nathan Sobo
76d9a40f35
Merge pull request #40 from zed-industries/close-window
Correctly handle closing windows and removing entities
2021-05-08 09:06:54 -06:00
Nathan Sobo
2c74d75687 Fix double borrow error in Window::on_close callbacks when quitting app
The simplest solution I could come up with was to make quitting the app asynchronous. Calling mac::Platform::quit enqueues a request to quit the app and then allows the call stack to fully return. This ensures we aren't holding a borrow when we quit and invoke all the Window::on_close callbacks. Seems like it should be fine to be async on quitting.
2021-05-08 08:49:14 -06:00
Max Brunsfeld
f3d7aa55f1
Merge pull request #46 from zed-industries/keyup-keystrokes
Ignore events for held-down keys after a key combo is partially released
2021-05-07 17:15:29 -07:00
Max Brunsfeld
9dbda4551f Ignore events for held-down keys after a key combo is partially released 2021-05-07 16:54:55 -07:00
Max Brunsfeld
b292baf334 Remove logging of retained views 2021-05-07 14:51:55 -07:00
Max Brunsfeld
3120906275 Merge branch 'master' into close-window 2021-05-07 14:24:48 -07:00
Max Brunsfeld
83a844f120 Fix the Clone impl for AnyViewHandle 2021-05-07 14:16:16 -07:00
Nathan Sobo
318e8abf2f Avoid redundant entity refcount operations
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-05-07 14:15:43 -07:00
Max Brunsfeld
d8d36a32bf Add emacs key bindings for up/down/left/right 2021-05-07 13:51:17 -07:00
Nathan Sobo
1c50059575
Merge pull request #38 from zed-industries/new-file
Allow creating untitled buffers and saving them to new files
2021-05-07 13:57:09 -06: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
29d44c8a10 Go back to using upstream core-foundation-rs 2021-05-07 09:53:07 -07:00
Max Brunsfeld
3c3cf3b7c5 Keep weak handles to workspace items 2021-05-07 09:52:15 -07:00
Antonio Scandurra
98c4dc4b9b
Merge pull request #43 from zed-industries/select-line
Implement `select_line` and `split_selection_into_lines`
2021-05-07 18:49:47 +02:00
Antonio Scandurra
c7c8ec9e54
Merge pull request #44 from zed-industries/emit-symbols-in-release
Include debug symbols in release mode
2021-05-07 18:21:09 +02:00
Antonio Scandurra
806c09bf11 Autoscroll when folding an arbitrary range 2021-05-07 18:15:00 +02:00
Nathan Sobo
b5f1f31693 Fix focus test
Call on_focus on the root view when the window is originally created. Test dropping a focused view. Simplify test to avoid relying on emitting events.

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-05-07 09:43:07 -06:00
Antonio Scandurra
8bbaa0bd34 Handle reversed selections correctly in split_selection_into_lines 2021-05-07 14:54:46 +02:00
Antonio Scandurra
f85669c681 Include debug symbols in release mode 2021-05-07 14:42:56 +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
cfb7c8770c
Merge pull request #41 from zed-industries/faster-fold-querying
Optimize querying folds
2021-05-07 10:09:34 +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