937186d
gpui: Don't export named `Context` from prelude (#21869)
Click to expand commit body
This PR updates the `gpui::prelude` to not export the `Context` trait
named.
This prevents some naming clashes in downstream consumers.
Release Notes:
- N/A
This PR adds the ability to remove individual pieces of context from the
message editor:
<img width="1159" alt="Screenshot 2024-12-11 at 12 38 45 PM"
src="https://github.com/user-attachments/assets/77d04272-f667-4ebb-a567-84b382afef3d"
/>
Release Notes:
- N/A
Marshall Bowers
created
124e63d
Show inline completions when completion menu is visible (#21858)
Click to expand commit body
This changes the behavior of how we display inline completions and
non-inline completions (i.e. completion menu).
Previously we would never show inline completions if a completion menu
was visible, meaning that we'd never show Copilot/Supermaven/...
suggestions if the language server had a suggestion.
With this change, we now display the inline completions even if there is
a completion menu visible.
In that case `<tab>` then accepts the inline completion and `<enter>`
accepts the selected entry in the completion menu.
Release Notes:
- Changed how inline completions (Copilot, Supermaven, ...) and normal
completions (from language servers) interact. Zed will now also show
inline completions when the completion menu is visible. The user can
accept the inline completion with `<tab>` and the active entry in the
completion menu with `<enter>`. Previously, `<tab>` would also select
the active entry in the completion menu.
---------
Co-authored-by: Antonio <antonio@zed.dev>
Thorsten Ball
and
Antonio
created
dd66a20
Move prediction diff computation to background thread (#21862)
dfe455b
zeta: Improve UI for feedback instructions (#21857)
Click to expand commit body
If the instructions are added as the input placeholder, when in a
smaller window size (like the one from the screenshot), scrolling is
needed to see them all. So, thought of extracting it out of there. Also
thought it looked more refined this way!
<img width="800" alt="Screenshot 2024-12-11 at 11 48 17"
src="https://github.com/user-attachments/assets/46974b94-6365-4a59-bf71-a6c0863aac68"
/>
Release Notes:
- N/A
Danilo Leal
created
db7e384
zeta: Show keybinding on rating buttons (#21853)
Related to #21481 ; it fixes a bunch of hotspots I saw while looking at
the provided profiles. MultiBuffer still takes up 100% CPU on the
foreground thread for me - this time around it's on selection updates
(when dragging the selected text towards an edge of a screen).
Release Notes:
- N/A
This PR adds keyboard shortcuts to common interactions you might want to
do in the Zeta rating panel.
This PR also adds a way to fake inline completion requests, as well as
the test data used to create this PR, to make it easier to adjust the UI
in the future.
It also changes the status bar from the text "Zeta" to "ζ", because I
thought it looked cool.
Release Notes:
- N/A
Starting to fine-tune it.
| No edits scenario | Rated edits scenario |
|--------|--------|
| <img width="1577" alt="Screenshot 2024-12-11 at 01 57 46"
src="https://github.com/user-attachments/assets/42926e84-7a7f-4692-af44-672b52d3d377">
| <img width="1577" alt="Screenshot 2024-12-11 at 01 58 37"
src="https://github.com/user-attachments/assets/ee8ab0ef-75af-424c-b916-9f1ce8b5264d">
Release Notes:
- N/A
Danilo Leal
created
62a6a75
Add `musl` package for Arch Linux (#21830)
Click to expand commit body
It seems like `musl` is required to build on Arch Linux, but it is not included in the dependencies list.
Connor Tsui
created
28faba1
Recognize .C and .H as supported cpp extensions (#21647)
Click to expand commit body
Co-authored-by: Peter Tripp <peter@zed.dev>
Ethan Budd
and
Peter Tripp
created
c255e55
assistant2: Sketch in sending file context to model (#21829)
Click to expand commit body
This PR sketches in support for sending file context attached to a
message to the model.
Right now the context is just mocked.
<img width="1159" alt="Screenshot 2024-12-10 at 4 18 41 PM"
src="https://github.com/user-attachments/assets/3ee4e86a-7893-42dc-98f9-982aa202d310">
<img width="1159" alt="Screenshot 2024-12-10 at 4 18 53 PM"
src="https://github.com/user-attachments/assets/8a3c2dd7-a466-4dbf-83ec-1c7d969c1a4b">
Release Notes:
- N/A
Marshall Bowers
created
f80eb73
Update event type to conform to standard (#21827)
Click to expand commit body
Release Notes:
- N/A
Joseph T. Lyons
created
faf79e5
zed_extension_api: Add a short explanation of `repo` format (#21824)
Click to expand commit body
Improved extension api documentation for latest_github_release function
Release Notes:
- N/A
---------
Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
strowk
and
Marshall Bowers
created
ab595b0
Resolve documentation for visible completions (#21705)
Click to expand commit body
Release Notes:
- Improved LSP resolution of documentation for completions. It now
queries documentation for visible completions and avoids doing too many
redundant queries.
---
In #21286, documentation resolution was made more efficient by only
resolving the current completion. However, this meant that single line
documentation shown inline in the menu was missing until scrolled
to. This also meant that it would wait for navigation to resolve
completion docs, leading to lag for displaying documentation.
This change resolves this by attempting to fetch all the completions
that will be shown. It also mostly avoids re-resolving completions. It
intentionally re-resolves the current selection on navigation, as some
language servers will respond with more information later on.
Michael Sloan
created
ab1e9bf
On windows, recreate renderer swap chain on restore from minimized (#21756)
Click to expand commit body
Closes #21688
Release Notes:
- Windows: Fix freeze after window minimize and maximize
Release Notes:
- N/A
---
This change adds two new methods to the cursor_style_methods function in
the gpui_macros crate (according to the Tailwind CSS documentation
https://tailwindcss.com/docs/cursor):
1. `cursor_nesw_resize`: Sets the cursor style to nesw-resize when
hovering over an element. This is useful for indicating resizing
diagonally from top-right to bottom-left.
2. `cursor_nwse_resize`: Sets the cursor style to nwse-resize when
hovering over an element. This is used for resizing diagonally from
top-left to bottom-right.
Minqi Pan
created
119b5de
assistant2: Change chat keybinding to just `Enter` (#21819)
Click to expand commit body
This PR changes the Assistant2 chat keybinding from `Cmd-Enter` to just
`Enter`.
Release Notes:
- N/A
Marshall Bowers
created
c80ea60
assistant2: Update to match latest designs (#21818)
Click to expand commit body
This PR updates the Assistant2 panel to match the latest designs.
<img width="1159" alt="Screenshot 2024-12-10 at 11 49 14 AM"
src="https://github.com/user-attachments/assets/53739709-e7b9-4e35-8a5d-97b6560623ed">
Release Notes:
- N/A
This reverts commit 571c7d4f6645528c0bf1d2bcacfd623676c69ee7.
Manually tracking the hovered entities causes issues with hightlighting:
https://github.com/user-attachments/assets/932dc022-a0ad-485c-a9db-ef03d7b86032
cc @danilo-leal @nilskch
Release Notes:
- Fixed an issue where hovering over project panel would not update the
background correctly
Bennet Bo Fenner
created
58f9301
image viewer: Allow dropping images on pane (#21803)
Click to expand commit body
Partially addresses #21484
https://github.com/user-attachments/assets/777da5de-15c3-4af3-a597-1835c0155326
Release Notes:
- Support opening images by dropping them onto a pane
Bennet Bo Fenner
created
96499b7
zeta: Refresh LLM token in case it expired (#21796)
These were silently passing after the delay in updating diagnostics was
added.
Co-Authored-By: Max <max@zed.dev>
cc @someonetoignore
Release Notes:
- N/A
---------
Co-authored-by: Max <max@zed.dev>
Conrad Irwin
and
Max
created
8a85d6e
collab: Make `metrics_id` required in `LlmTokenClaims` (#21771)
Click to expand commit body
This PR makes the `metrics_id` field on the `LlmTokenClaims` required,
as we always have one in practice.
Release Notes:
- N/A
Marshall Bowers
created
158cdc3
collab: Attach additional properties to `Language Model Used` event (#21770)
Click to expand commit body
This PR attaches two new properties to the `Language Model Used` event:
- `has_llm_subscription` - This will tell us if a user is a paid
subscriber.
- `max_monthly_spend_in_cents` - This will indicate what their maximum
monthly spend is set to.
Release Notes:
- N/A
Marshall Bowers
created
bdeac79
collab: Prevent `max_monthly_llm_usage_spending_in_cents` from being negative (#21768)
Click to expand commit body
This PR fixes an issue where the
`max_monthly_llm_usage_spending_in_cents` preference could be set to a
negative value.
Release Notes:
- N/A
Marshall Bowers
created
73e0d81
Move `ContextMenu` out of editor.rs and rename `ContextMenu` to `CodeContextMenu` (#21766)
Click to expand commit body
This is a no-functionality refactor of where the `ContextMenu` type is
defined. Just the type definition and implementation is up to almost
1,000 lines; so I've moved it to it's own file and renamed the type to
`CodeContextMenu`
Release Notes:
- N/A
Mikayla Maki
created
6538227
Revert "Avoid endless loop of the diagnostic updates (#21209)" (#21764)
Click to expand commit body
This reverts commit 9999c31859210654dd572d54dfa42b67c00b33b0.
Release Notes:
- Fixes diagnostics not updating in some circumstances
Conrad Irwin
created
ef45eca
extension_host: Fix uploading dev extensions to the remote server (#21761)
Click to expand commit body
This PR fixes an issue where dev extensions were not working when
uploaded to the remote server.
The `extension.toml` for dev extensions may not contain all of the
information (such as the list of languages), as this is something that
we derive from the filesystem at packaging time. This meant that
uploading a dev extension that contained languages could have them
absent from the uploaded `extension.toml`.
For dev extensions we now upload a serialized version of the in-memory
extension manifest, which should have all of the information present.
Release Notes:
- SSH Remoting: Fixed an issue where some dev extensions would not work
after being uploaded to the remote server.
---------
Co-authored-by: Conrad <conrad@zed.dev>
Marshall Bowers
and
Conrad
created
803855e
Add `async_task::spawn_local` variant that includes caller in panics (#21758)
Fixed project diff multi buffer not expanding its diff until edited
Release Notes:
- N/A
Kirill Bulatov
created
a5355e9
Add per-language settings `show_completions_on_input` and `show_completion_documentation` (#21722)
Click to expand commit body
Release Notes:
- Added `show_completions_on_input` and `show_completion_documentation`
per-language settings. These settings were available before, but were
not configurable per-language.
Michael Sloan
created
b7edf31
lsp: Disable usage of follow-up completion invokes (#21755)
Click to expand commit body
Some of our users ran into a peculiar bug: autoimports with vtsls were
leaving behind an extra curly brace. I think we were slightly incorrect
in always requesting a follow-up completion without regard for last
result of completion request (whether it was incomplete or not).
Specifically, we're falling into this branch in current form:
https://github.com/yioneko/vtsls/blob/037c2b615bf4cfe9dd65d9affc7a155fbb2ca255/packages/service/src/service/completion.ts#L121
which then leads to incorrect edits being returned from vtsls.
Release Notes:
- Fixed an edge case with appliance of autocompletions in VTSLS that
could result in incorrect edits being applied.
Piotr Osiewicz
created
7bd6913
Make space for documentation aside during followup completion select (#21716)
Click to expand commit body
The goal of #7115 appears to be to limit the disruptiveness of
completion documentation load causing the completion selector to move
around. The approach was to debounce load of documentation via a setting
`completion_documentation_secondary_query_debounce`. This particularly
had a nonideal interaction with #21286, where now this debounce interval
was used between the documentation fetches of every individual
completion item.
I think a better solution is to continue making space for documentation
to be shown as soon as any documentation is shown. #21704 implemented
part of this, but it did not persist across followup completions.
Release Notes:
- Fixed completion list moving around on load of documentation. The
previous approach to mitigating this was to rate-limit the fetch of
docs, configured by a
`completion_documentation_secondary_query_debounce` setting, which is
now deprecated.