Commit log

7620feb Prevent many call participants from overflowing the title bar (#4173)

Click to expand commit body
This PR fixes an issue where having a lot of participants in a call
could cause the avatars/facepiles to overflow the title bar, pushing the
call controls off-screen.

The participant list will now scroll when it would otherwise exceed the
available space:


https://github.com/zed-industries/zed/assets/1486634/806c77e6-bd4c-4864-8567-92e0960734ee

Release Notes:

- Fixed participant list overflowing the title bar.

Marshall Bowers created

ac350e9 Fix positioning of windows on secondary displays (#4169)

Click to expand commit body
CGDisplayBounds returns data in "global display coordinates" (which are
the same as Zed's coordinates), different from the NS APIs which use
"screen coordinates" (which have the Y axis inverted)

Also remove some transmutes while we're at it

Release Notes:

- Fixed position of notifications on secondary displays

Conrad Irwin created

137e219 Don't toggle WHOLE_WORD in vim search (#4165)

Click to expand commit body
Fixes */# in visual mode, and avoids setting up irritating state.

[[PR Description]]

Release Notes:

- vim: Improved `*` and `#` to not toggle Zed's search state. Instead we
now use the regex to identify start and end of words (more like vim).

Conrad Irwin created

98ef4ce Show cursors sligthly longer (#4172)

Click to expand commit body
2 seconds feels a little jittery, lets try a bit longer

Release Notes:

- (Added|Fixed|Improved) ...
([#<public_issue_number_if_exists>](https://github.com/zed-industries/community/issues/<public_issue_number_if_exists>)).

Conrad Irwin created

af30a9b Show cursors sligthly longer

Conrad Irwin created

139986d Start work on autocomplete for chat mentions

Click to expand commit body
Co-authored-by: Conrad <conrad@zed.dev>
Co-authored-by: Nathan <nathan@zed.dev>
Co-authored-by: Marshall <marshall@zed.dev>

Max Brunsfeld , Conrad , Nathan , and Marshall created

cb84043 Merge branch 'main' into fix-notification-positioning

Conrad Irwin created

1ceccdf Move the details of completion-resolution logic into Project

Click to expand commit body
Co-authored-by: Conrad <conrad@zed.dev>

Max Brunsfeld and Conrad created

00e46fd Fix positioning of windows on secondary displays

Click to expand commit body
CGDisplayBounds returns data in "global display coordinates" (which are
the same as Zed's coordinates), different from the NS APIs which use
"screen coordinates" (which have the Y axis inverted)

Also remove some transmutes while we're at it

Conrad Irwin created

df2b0f6 Add more terminal colors to the theme (#4168)

Click to expand commit body
This PR adds more terminal colors that were present in the Zed1 themes
to the Zed2 theme.

Namely, we now have the `dim_` variants for the various ANSI colors and
various `foreground` colors.

Release Notes:

- Improved terminal colors.

Marshall Bowers created

1cc7f66 Fix documentation labels obscuring other content in completion menu (#4167)

Click to expand commit body
This PF fixes an issue where the documentation labels in the completion
menu could end up completing obscuring the primary content.

#### Before
<img width="691" alt="Screenshot 2024-01-19 at 1 42 19 PM"
src="https://github.com/zed-industries/zed/assets/1486634/187f2978-08be-4f5e-ba93-91ed09cd6e87">

#### After

<img width="704" alt="Screenshot 2024-01-19 at 1 39 45 PM"
src="https://github.com/zed-industries/zed/assets/1486634/e5929c04-bace-4336-b878-4ada5660d235">

Since this involved changes to the `ListItem`, I also made sure to test
the other problematic case that was fixed in #3845 to make sure we
didn't regress there:

<img width="665" alt="Screenshot 2024-01-19 at 1 39 11 PM"
src="https://github.com/zed-industries/zed/assets/1486634/14b72d44-b6a6-4aef-a708-37fb60b8875a">

I also tried to capture these cases in the `ListItem` stories to make it
easier to test all of them at once:

<img width="1141" alt="Screenshot 2024-01-19 at 1 40 03 PM"
src="https://github.com/zed-industries/zed/assets/1486634/333886ff-e394-4cba-89db-98352481c7f6">

Release Notes:

- Fixed an issue where documentation labels could obscure other content
in the editor completion menu
([#2419](https://github.com/zed-industries/community/issues/2419)).

Marshall Bowers created

2166f07 Fix panic in window open (#4148)

Click to expand commit body
Fix a panic caused by toggleFullScreen on one window untoggling
full-screen on
another.

I managed to reproduce this only once, which makes me sad, but this
change
should fix it regardless.

https://zed-industries.slack.com/archives/C04S6T1T7TQ/p1705631681238979

Release Notes:

- Fixed an occasional panic when opening a new fullscreen window.

Conrad Irwin created

cfbd49c Watch deploys a little closer (#4164)

Click to expand commit body
The current thing of returning before it's done makes me so nervous

Conrad Irwin created

9ec6855 Start work on API docs for the language crate (#3981)

Max Brunsfeld created

0479ebc Don't toggle WHOLE_WORD in vim search

Click to expand commit body
Fixes */# in visual mode, and avoids setting up irritating state.

Conrad Irwin created

ce5adc7 Rename `show cursors` to `display cursor names` (#4162)

Click to expand commit body
Release Notes:

- N/A

Joseph T. Lyons created

4a92506 Watch deploys a little closer

Conrad Irwin created

0578c1b Style notifications for notification panel (#4163)

Click to expand commit body
This PR styles the notifications for the notification panel.

These are the notification toasts you receive when you have a new
notification (e.g., a mention in chat):

<img width="423" alt="Screenshot 2024-01-19 at 11 39 16 AM"
src="https://github.com/zed-industries/zed/assets/1486634/a1fc7a67-5aad-4cb2-8dc9-35d302984fcb">

Release Notes:

- Improved the look of toasts for incoming notifications.

Marshall Bowers created

595428a Rename `show cursors` to `display cursor names`

Joseph T. Lyons created

01f06f9 Update tenses of doc comment summary lines (#4161)

Click to expand commit body
This PR updates the tenses used by the summary line of doc comments to
match the [Rust API documentation
conventions](https://rust-lang.github.io/rfcs/1574-more-api-documentation-conventions.html#summary-sentence).

Specifically:

> The summary line should be written in third person singular present
indicative form. Basically, this means write ‘Returns’ instead of
‘Return’.

I'm sure there are plenty occurrences that I missed.

Release Notes:

- N/A

Marshall Bowers created

cb1b791 Allow cursors to be shown via a command (#4153)

Joseph T. Lyons created

14863e9 Fix assistant panel header when viewing conversation history (#4160)

Click to expand commit body
This PR fixes the assistant panel header when in the conversation
history view to hide the irrelevant tools and/or the slots where they
would go.

Release Notes:

- Improved the assistant panel header when viewing conversation history.

Marshall Bowers created

e55e895 Cancel language server requests if request is dropped (#4159)

Click to expand commit body
Before this change, we would send requests to language servers without
canceling them even if we never wait for their response.

Example: when doing document highlights, we'd send a request (modulo
debouncing) whenever a change was made, ignoring previously sent
requests that might still be in-flight.

With this change, we now send a Cancel request (from the LSP spec) to
the language server in case no one listens to the response anymore
(which is what happens when the `Future` returned by `request_internal`)
is dropped.

Release Notes:

- Improved performance when interacting with language servers.

Thorsten Ball created

1a6cd73 Cancel language server requests if request is dropped

Click to expand commit body
Before this change, we would send requests to language servers without
canceling them even if we never wait for their response.

Example: when doing document highlights, we'd send a request (modulo
debouncing) whenever a change was made, ignoring previously sent
requests that might still be in-flight.

With this change, we now send a Cancel request (from the LSP spec) to
the language server in case no one listens to the response anymore
(which is what happens when the `Future` returned by `request_internal`)
is dropped.

Thorsten Ball created

f4e3c4a Remove VS Code config (#4151)

Click to expand commit body
Who uses VS Code anymore?

Release Notes:

- N/A

Marshall Bowers created

bcc13e1 Change struct field name

Joseph T. Lyons created

338dcd7 Center "Open Chat" button in chat panel (#4157)

Click to expand commit body
The layout of the chat panel wasn't correct but this visual glitch was
being masked by caching, because it seems like Taffy was rendering
things slightly differently when laying out the chat panel as a detached
layout node. This wasn't an issue with caching, but rather an
inconsistency with how Taffy lays things out.

Release Notes:

- N/A

Antonio Scandurra created

0b3923a Center "Open Chat" button in chat panel

Click to expand commit body
The layout of the chat panel wasn't correct but this visual glitch
was being masked by caching, because it seems like Taffy was rendering
things slightly differently when laying out the chat panel as a detached
layout node. This wasn't an issue with caching, but rather an inconsistency
with how Taffy lays things out.

Co-Authored-By: Thorsten <thorsten@zed.dev>
Co-Authored-By: Piotr <piotr@zed.dev>

Antonio Scandurra , Thorsten , and Piotr created

90c2da4 Reuse layout for view's element when it wasn't cached (#4156)

Click to expand commit body
Refs https://github.com/zed-industries/zed/pull/4131
Refs https://github.com/zed-industries/community/issues/2415

Previously, when a view cache miss occurred during paint, we would
either use the element produced during layout or create a new, detached
node layout node. In both cases, we would issue a call to `draw`.

The problem with this approach, however, is that `draw` would always
paint the element at the given `bounds.origin`, which was required when
the layout node was detached but harmful when the element was already
embedded in the layout tree and already knew its bounds. In this second
case, in fact, it was as if we were positioning the element "twice",
which caused content to jump.

Release Notes:

- N/A

Antonio Scandurra created

ad177a5 Show channel rename keybinding in the context menu (#4155)

Click to expand commit body
Deals with `Can't rename channels from keyboard` #product note.
We actually already have the action binding to rename the context menu
entries, but had no label entry to show that.

Release Notes:

- Added a channel rename keymap label on the collab panel context menu

Kirill Bulatov created

9446e57 Reuse layout for view's element when it wasn't cached

Antonio Scandurra created

070de14 Show channel rename keybinding in the context menu

Kirill Bulatov created

a4a0a02 Avoid gutter resizes on line number increase/decrease (#4135)

Kirill Bulatov created

0062cc0 Allow cursors to be shown via a command

Joseph T. Lyons created

4ce0c27 Remove more commented-out code (#4150)

Click to expand commit body
This PR removes some more commented-out code from various spots in the
codebase.

Release Notes:

- N/A

Marshall Bowers created

ebce622 Remove commented-out code in `auto_update` (#4149)

Click to expand commit body
This PR removes some commented-out code in the `auto_update` crate that
we no longer need.

Release Notes:

- N/A

Marshall Bowers created

fd726ad collab 0.38.0

Conrad Irwin created

d76bd10 Show cursors for remote participants (#4082)

Click to expand commit body
This PR enables cursors for remote participants.

They are shown for 2 seconds when you focus a buffer, and then on hover.

Release Notes:

- Added usernames next to remote cursors

Conrad Irwin created

87d60be Fix a double borrow error in window.open

Click to expand commit body
It seems that sometimes calling toggleFullScreen will cause the
display_layer callback of a different window to fire.

Conrad Irwin created

03826be Fix docs references in `ui` (#4147)

Click to expand commit body
This PR fixes some more references in the docs in the `ui` crate.

Release Notes:

- N/A

Marshall Bowers created

decf320 Rename `overflow_hidden_{x,y}` to `overflow_{x,y}_hidden` (#4146)

Click to expand commit body
This PR renames the `overflow_hidden_x` and `overflow_hidden_y` methods
to `overflow_x_hidden` and `overflow_y_hidden`, respectively.

This provides consistency with our `overflow_x_scroll` /
`overflow_y_scroll` methods, as well as better matches Tailwind's
naming.

Release Notes:

- N/A

Marshall Bowers created

9993418 Prevent diagnostics from overflowing the status bar (#4145)

Click to expand commit body
This PR makes it so long diagnostic messages no longer overflow the
status bar and push the right tools off-screen.

Here is an example with a long (placeholder) diagnostic message:

<img width="1136" alt="Screenshot 2024-01-18 at 9 47 07 PM"
src="https://github.com/zed-industries/zed/assets/1486634/18568527-c608-4d4a-9118-b84c6d81c13e">

Release Notes:

- Fixed long diagnostic messages overflowing the status bar.

Marshall Bowers created

f8081ed Revert "Improve panic logging" (#4144)

Click to expand commit body
This reverts commit 345b983c8edd18acc346845dcdd1266e144a05a9.

This seems to have caused only the first line of panics to be reported
in production builds.

Release Notes:

- (Added|Fixed|Improved) ...
([#<public_issue_number_if_exists>](https://github.com/zed-industries/community/issues/<public_issue_number_if_exists>)).

Conrad Irwin created

fbc693d Revert "Improve panic logging"

Click to expand commit body
This reverts commit 345b983c8edd18acc346845dcdd1266e144a05a9.

Conrad Irwin created

e278410 Make `FacePile` a component again (#4143)

Click to expand commit body
This PR turns `FacePile` back into a component.

Our usage of it seemed a little weird, with us calling `render`
manually.

We're now implementing `Styled` on `FacePile` through its inner `Div` so
that we can apply the `p_1` at the call site.

Release Notes:

- N/A

Marshall Bowers created

bac2e59 Fix popin for project panel by pre-resolving keybindings in the project panel (#4141)

Click to expand commit body
Also, factors out the fluent building APIs from IntoElement into their
own traits.

Also makes the project panel context menu initialization fluent:

<img width="1328" alt="Screenshot 2024-01-18 at 3 33 45 PM"
src="https://github.com/zed-industries/zed/assets/2280405/3468b6f2-07f0-48cf-bec1-ac0379333209">

Release Notes:

- Fixed pop in when right clicking on the project panel.

Mikayla Maki created

20b58fe Merge branch 'main' into fix-popin-for-project-panel

Mikayla Maki created

2760323 Fix overflow in hover handler

Conrad Irwin created

3542b99 Tweak the description of the `gpui` crate (#4142)

Click to expand commit body
This PR tweaks the description of the `gpui` crate, since it's now the
only version.

There can only be one!

Release Notes:

- N/A

Marshall Bowers created

f11d676 Remove missing docs warning for now

Max Brunsfeld created