Mikayla Maki
0122cd61c5
fmt
2023-05-30 16:33:42 -07:00
Mikayla Maki
685e8d7007
Seperate pane and panel styling
...
co-authored-by: max <max@zed.dev>
2023-05-30 16:23:16 -07:00
Mikayla Maki
9c707eff27
Rework new terminal actions
2023-05-30 16:10:07 -07:00
Mikayla Maki
e80ab5f096
Fix focus bug with new docks
...
co-authored-by: max <max@zed.dev>
2023-05-30 15:40:30 -07:00
Mikayla Maki
5e4a9abd09
Fix bug in panel button dispatch
2023-05-30 15:17:42 -07:00
Mikayla Maki
5065804388
WIP: iron out bugs in interaction between toggle and toggle focus key bindings
...
co-authored-by: max <max@zed.dev>
2023-05-30 14:55:49 -07:00
Mikayla Maki
9c9af5ed94
Remove focus side effects from toggle dock commands
...
co-authored-by: max <max@zed.dev>
2023-05-30 12:32:00 -07:00
Mikayla Maki
1a23fe91b4
WIP: Remove focus side effects from toggle dock commands
...
co-authored-by: max <max@zed.dev>
2023-05-30 12:00:15 -07:00
Mikayla Maki
84f98f13c4
Seperate open and zoom bits conceptually for new panels
...
co-authored-by: max <max@zed.dev>
2023-05-30 11:52:14 -07:00
Antonio Scandurra
bd494037bb
Call ItemHandle::added_to_pane
when an item is added to a pane
2023-05-30 14:46:41 +02:00
Antonio Scandurra
88eb2b2163
Move history navigation logic to Workspace
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-05-29 19:47:59 +02:00
Antonio Scandurra
6d3464fd1f
Make Pane::add_item
a proper Pane
method
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-05-29 19:16:22 +02:00
Kirill Bulatov
d593377e45
Improves project search panel shortcut handling
...
* ESC (project_search::ToggleFocus) toggles focus from
include/exclude fields to the editor
* Cmd+Shift+F (workspace::NewSearch) can be triggered from the editor,
and moves focus to the query editor
2023-05-29 16:58:06 +03:00
Kirill Bulatov
fdad1adaf6
Update LSP to the newest version
2023-05-28 21:55:08 +03:00
Max Brunsfeld
e4530471de
Make worktree UpdatedEntries
events fully describe all changes ( #2533 )
...
This PR makes the worktree's change events more useful in a few ways:
* The changes are now described by a cheaply clone-able collection, so
that they can be used in background tasks. Right now, I'm using a simple
Arc slice.
* The `UpdatedEntries` event now captures not only changes due to FS
changes, but also newly-loaded paths that are discovered during the
initial scan.
* The `UpdatedGitRepositories` event now includes repositories whose
work-dir changed but git dir didn't change. A boolean flag is included,
to indicate whether the git content changed.
* The `UpdatedEntries` and `UpdatedGitRepositories` events are now
*used* to compute the worktree's `UpdateWorktree` messages, used to sync
changes to guests. This unifies two closely-related code paths, and
makes the host more efficient when collaborating, because the
`UpdateWorktree` message computation used to require walking the entire
`entries` tree on every FS change.
2023-05-26 15:55:14 -07:00
Max Brunsfeld
1f42bfc1bd
Include repositories with workdir changes in worktree UpdatedGitRepsositories event
2023-05-26 15:47:37 -07:00
Max Brunsfeld
2db57b5139
Adjust diagnostic transformation test to not wait for two buffer notifications
2023-05-26 15:47:37 -07:00
Max Brunsfeld
02b95ef320
Derive worktree update messages from existing change events
2023-05-26 15:47:37 -07:00
Kirill Bulatov
5fda9e934d
Shorten full paths with ~
2023-05-27 01:21:38 +03:00
Kirill Bulatov
3a3c1c5a5b
Add a test
...
co-authored-by: Mikayla <mikayla@zed.dev>
2023-05-27 01:12:22 +03:00
Max Brunsfeld
6628c4df28
Store worktree changes in a sorted arc slice, not a HashMap
...
We don't need to look-up change types by an arbitrary key, but we
do need to iterate it. It would also be useful to be able to
cheaply clone the changes, to use them in a background task.
2023-05-26 09:24:15 -07:00
Max Brunsfeld
59bfd40679
Make stricter assertions about change events in random worktree test
2023-05-26 09:24:15 -07:00
Max Brunsfeld
f890eefdef
Include paths loaded during initial scan in worktree UpdatedEntries event
2023-05-26 09:24:15 -07:00
Kirill Bulatov
cf2bbfc85a
Better display labels for external files
2023-05-26 18:18:32 +03:00
Kirill Bulatov
508533ebb7
Track abs paths in history
2023-05-26 17:31:35 +03:00
Kirill Bulatov
2fdc960704
Properly display labels for currently opened external files
2023-05-26 15:44:44 +03:00
Kirill Bulatov
b75c27da6f
Simplify selected index handling
2023-05-26 14:15:58 +03:00
Kirill Bulatov
364631a155
Add absolute paths to historic elements
2023-05-26 14:03:44 +03:00
Kirill Bulatov
5501dd741c
Fix duplicate item creation in project panel
2023-05-26 02:07:25 +03:00
Julia
5e39ba596e
Clean up final remaining code paths calling old diff update method
2023-05-25 14:41:09 -04:00
Julia
f40c498491
Fix tests
2023-05-25 14:29:28 -04:00
Julia
8d662edb6c
Remove concept of git diff refresh from Item
trait
2023-05-25 14:29:28 -04:00
Julia
cede296b04
Project level git diff recalc handling
...
This avoids an issue where in a many-buffer multi-buffer, each modified
buffer could complete its recalc independently, causing a cascade of
repeated notifies
Now all recalcs started at the same time must complete before
A: Starting another recalc pass
B: The master notify occurring
Each buffer can still show its new diff if something else triggers it
to notify earlier, this is desirable and does not have the same negative
effects as the notify cascade as those re-layouts would need to happen
anyway
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2023-05-25 14:10:27 -04:00
Max Brunsfeld
54421b11f3
wip
2023-05-25 14:10:27 -04:00
Kirill Bulatov
ae3bdd755e
Support OnTypeFormatting LSP request ( #2517 )
...
Supports
https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#textDocument_onTypeFormatting
rust-analyzer uses this feature to add matching brackets semantically,
e.g.
before:

after:

`use_on_type_format` settings entry was added, enabled by default, to
disable the new feature.
Release Notes:
* Support `OnTypeFormatting` LSP protocol feature, allowing
rust-analyzer to add matching brackets
2023-05-25 18:35:47 +03:00
Kirill Bulatov
739d5ca373
Have proper undo for both client and host
2023-05-25 18:29:57 +03:00
Antonio Scandurra
4185a178e7
Prevent bottom dock from becoming too large or too small
2023-05-25 15:29:59 +02:00
Antonio Scandurra
aa8c0475b1
Don't show navigation controls for terminal panel
2023-05-25 15:15:20 +02:00
Kirill Bulatov
e2ff829f98
Use Transaction instead of ProjectTransaction
...
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-05-25 16:12:14 +03:00
Antonio Scandurra
414b97adce
Add search bar to terminal panel
2023-05-25 14:46:10 +02:00
Antonio Scandurra
c2f3ac24a4
Prevent zoom from being restored when focusing a modal
2023-05-25 12:11:11 +02:00
Antonio Scandurra
7e1ea8f274
Remove stray dbg!
2023-05-25 12:04:41 +02:00
Kirill Bulatov
aa58d0fd77
Do not send edits over the wire
2023-05-25 12:55:44 +03:00
Kirill Bulatov
f812151840
Add integration tests
2023-05-25 09:45:50 +03:00
Kirill Bulatov
eca6d2b597
Process remote format typing also
2023-05-25 09:45:50 +03:00
Kirill Bulatov
58a56bdda2
Always use server formatting settings
2023-05-25 09:45:50 +03:00
Kirill Bulatov
d1f4b60fa1
Allow to disable the new feature
2023-05-25 09:45:50 +03:00
Kirill Bulatov
b9dabb165e
Use formatting options
2023-05-25 09:45:50 +03:00
Kirill Bulatov
3327e8a6dd
Support remote sessions
2023-05-25 09:45:50 +03:00
Kirill Bulatov
f6d7b3d2e8
Send and handle OnTypeFormatting LSP request
2023-05-25 09:45:50 +03:00