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'
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.
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.
7beb194
Merge pull request #1091 from zed-industries/fix-project-diagnostics-panic
Click to expand commit body
Don't reuse the same diagnostic group id across buffers
Antonio Scandurra
created
6baf8b0
Don't reuse the same diagnostic group id across buffers
Click to expand commit body
This lets us use the group id as the key for an `ElementState`, which
fixes a panic that would occur in project diagnostics when opening it
while there were multiple diagnostic groups with the same id.
Antonio Scandurra
created
c34b30e
Merge pull request #1090 from zed-industries/context-menu-polish
Click to expand commit body
Context menu polish
Antonio Scandurra
created
1226730
Don't dismiss context menu when right-clicking project panel again
Antonio Scandurra
created
701e209
Align context menu to fit within the window bounds
Antonio Scandurra
created
f1964cf
Merge pull request #1089 from zed-industries/jump-to-diagnostic
Click to expand commit body
Jump to diagnostic
Antonio Scandurra
created
6979e67
Use anchors to jump to diagnostic whenever possible
Now you simply specify a text, an action and a style and GPUI will
take of rendering it properly. This is simpler compared to always
providing a custom element and should make tooltip more consistent
across the UI.