Commit log

6a086f6 Merge pull request #1121 from zed-industries/update-invite-code

Click to expand commit body
Update connected users' invite info when they are granted invite codes

Max Brunsfeld created

7efd689 Merge pull request #1123 from zed-industries/add-context-menu-borders

Click to expand commit body
Add border to context menu

Max Brunsfeld created

c920a42 Add border to context menu

Nate Butler created

ce080e9 Update connected users' invite info when they are granted invite codes

Max Brunsfeld created

6899eac v0.37.0

Max Brunsfeld created

075dd83 Merge pull request #1115 from zed-industries/offset-out-of-range

Click to expand commit body
Fix `offset out of range` panic during `FoldMap::sync`

Max Brunsfeld created

436c989 Merge pull request #1109 from zed-industries/fix-vim-clearing-selections

Click to expand commit body
Avoid collapsing selections on editor creation when vim_mode is disabled

Max Brunsfeld created

1ecc51f Fix warnings

Antonio Scandurra created

70afc06 Handle out-of-order edits coming from LSP

Antonio Scandurra created

8826ad5 Make `Buffer::edit` and `MultiBuffer::edit` resilient to inverted ranges

Click to expand commit body
Previously, we would accept edits containing out-of-order ranges. When
generating such ranges in our randomized tests, many invariants started
breaking causing e.g. undo/redo to misbehave and operation application
to panic.

In theory, we should never pass inverted ranges, but this commit changes
the above functions to swap the start and the end when that occurs to avoid
breaking the entire system and panicking.

Antonio Scandurra created

939020a Merge pull request #1114 from zed-industries/fix-menu-bindings

Click to expand commit body
Add keystroke for menu item only when action is equal to binding

Antonio Scandurra created

c22aedf Fix tests

Antonio Scandurra created

22dd68f Add keystroke for menu item only when action is equal to binding

Click to expand commit body
This fixes a bug where we would show `cmd-e` instead of `cmd-f` for
`Edit -> Find` because both bindings would have the `buffer_search::Deploy`
action and we were mistakenly selecting the former.

Antonio Scandurra created

3a69943 Require that `PartialEq` is implemented for `Action`

Antonio Scandurra created

492cc71 Don't manipulate selections when syncing options if vim-mode is disabled

Click to expand commit body
Previously, we were always mutating selections when `sync_editor_options`
was called. This seems to happen every time vim is enabled/disabled, but also
when vim is disabled and editors are simply focused/blurred.

This commit changes it so that we only manipulate selections when vim-mode is active.

Antonio Scandurra created

905fbac vim: Avoid collapsing selections on editor creation when vim_mode is disabled

Max Brunsfeld created

eae7c22 Merge pull request #1107 from zed-industries/event-handler-capture-all

Click to expand commit body
Capture mouse events when rendering disconnected overlay

Antonio Scandurra created

74aa9c1 Capture mouse events when rendering disconnected overlay

Click to expand commit body
We do so by replacing `EventHandler::capture` with a new `::capture_all` method.
After switching to mouse regions as part of zed-industries/zed#1081, overriding
`dispatch_event` on `EventHandler` wasn't enough anymore because mouse interactions
take place on a privileged code path that runs *before* dispatching any event.

With this change, `EventHandler` will now push a mouse region that intercepts all
mouse interactions, as well as pushing a cursor region that resets the cursor style
to `Arrow`.

One interesting change as part of this is that we've removed the ability to see which
event we are capturing: we were not using this capability anyway and `capture_all` provides
a simpler interface, so I went with that. In the future, we can opt into capturing specific
events or mouse interactions if there's a code path that needs that.

Antonio Scandurra created

ff3e3d0 Merge pull request #1084 from zed-industries/private-projects

Click to expand commit body
Offline projects

Max Brunsfeld created

41b7fd4 Rename a public/private to online/offline in a few more places

Max Brunsfeld created

ed14fd6 Add setting to make projects online/offline by default

Max Brunsfeld created

24aafde Avoid persisting project's state before it has been initialized

Max Brunsfeld created

e18bc24 Rename project's 'public'/'private' flag to 'online'/'offline'

Max Brunsfeld created

b2aa831 Store a FakeFs on TestClient

Max Brunsfeld created

8bd4a0a Don't store Project on TestClient in integration tests

Max Brunsfeld created

afdd386 Move persistence and restoration logic from workspace into project

Click to expand commit body
Co-authored-by: Antonio Scandurra <me@as-cii.com>

Max Brunsfeld and Antonio Scandurra created

3ce739f Merge pull request #1098 from zed-industries/cpp

Click to expand commit body
Introduce support for C++

Max Brunsfeld created

6a3a3a1 Add tooltip to the toggle public button in the contacts panel

Click to expand commit body
Co-authored-by: Antonio Scandurra <me@as-cii.com>

Max Brunsfeld and Antonio Scandurra created

55fc234 Consolidate C and C++ LSP adapters

Click to expand commit body
Co-Authored-By: Max Brunsfeld <max@zed.dev>

Antonio Scandurra and Max Brunsfeld created

1db4970 Implement `CppLspAdapter::name` by delegating to `CLspAdapter::name`

Click to expand commit body
This makes it more evident that both languages share the same language
server.

Co-Authored-By: Max Brunsfeld <max@zed.dev>

Antonio Scandurra and Max Brunsfeld created

4164962 Syntax-highlight project-wide symbols for C++

Antonio Scandurra created

c6e6a9f Show prettier completions for C++

Antonio Scandurra created

8ca0127 Make `LspAdapter::process_diagnostics` optional

Antonio Scandurra created

d4da513 Introduce support for C++

Antonio Scandurra created

98b5476 Bump protocol version

Max Brunsfeld created

36a4d31 Keep unregistered projects' ids until pending contact updates are done

Max Brunsfeld created

db97dcd Don't update contacts when a project is first registered

Click to expand commit body
Until the host has sent an UpdateProject message to populate the project's
metadata, there is no reason to update contacts.

Max Brunsfeld created

f7e7a7c Use rocksdb to store project paths' public/private state

Max Brunsfeld created

724affc Upgrade deps to avoid multiple versions of transitive deps

Click to expand commit body
* env_logger
* prost-build
* bindgen

Max Brunsfeld created

d45db17 Style the contact panel while public/private operations are in-flight

Max Brunsfeld created

d11beb3 Change project registration RPC APIs to smooth out UI updates

Click to expand commit body
* Make `UnregisterProject` a request. This way the client-side project can wait
  to clear out its remote id until the request has completed, so that the
  contacts panel can avoid showing duplicate private/public projects in the
  brief time after unregistering a project, before the next UpdateCollaborators
  message is received.
* Remove the `RegisterWorktree` and `UnregisterWorktree` methods and replace
  them with a single `UpdateProject` method that idempotently updates the
  Project's list of worktrees.

Max Brunsfeld created

4d4ec79 Remove stray println

Max Brunsfeld created

b70396b Disconnect FakeServer when dropping it

Click to expand commit body
This prevents memory leak errors in tests, due to parked tasks waiting
for RPC responses.

Max Brunsfeld created

3ea061a Allow making projects private

Max Brunsfeld created

8f676e7 Fix mismatched client/context in integration test

Max Brunsfeld created

8d46edd Avoid holding RefCell borrow while calling TestAppContext::spawn callback

Max Brunsfeld created

7ef9de3 Show private projects in the contacts panel

Click to expand commit body
Introduce a ProjectStore that lets you iterate through all open projects.
Allow projects to be made public by clicking the lock.

Max Brunsfeld created

a60fef5 Start work on private projects

Max Brunsfeld created

3ffbd56 Merge pull request #1093 from zed-industries/fix-panic-version

Click to expand commit body
Report the correct app version when sending panics to server

Antonio Scandurra created

7ecc67b Report the correct app version when sending panics to server

Click to expand commit body
Previously, we were just relying on the `ZED_APP_VERSION` environment
variable without consulting `Platform::app_version`. That would always
report "dev" as the app version because `ZED_APP_VERSION` is only used
for testing.

Antonio Scandurra created