**This PR also bumps wasmtime version from 0.38 to 2.0 as 0.38 does not
build with Rust 1.75**. I did not test the plugin runtime as (AFAIK) we
intend to deprecate it; also, wasmtime's most recent version is 16.0, so
it'd make sense to bump the version at some point anyways. I did not
bump the version to 16.0 straight away as that'd require code changes in
`plugin_runtime`.
Release Notes:
- N/A
Remove the event send timer in Zed 2 telemetry in effort to continue
reducing the amount of stress the vercel endpoint receives. This allows
the queues to fill up entirely before sending them off. I'm leaving the
timer in for Zed 1 because we don't force the events queue to clear on
app close in Zed 1, so it feels best to leave it in there, as it might
catch some unsent events before closing.
Release Notes:
- N/A
This PR applies another round of refinements to the ported Zed1 themes.
Most of this was focused around the coloration of UI text to better
match Zed1.
Release Notes:
- N/A
This PR adjusts the sizes of the current call controls in the title bar
to be smaller.
This matches the size of the other title bar items that are always
present.
Release Notes:
- N/A
This PR adjusts the size of the tab descriptions to use the extra small
label size.
This makes it easier to distinguish between the filename and the
description:
<img width="320" alt="Screenshot 2023-12-22 at 6 49 11 PM"
src="https://github.com/zed-industries/zed/assets/1486634/451d4cd0-666c-43c2-b5df-6d9cf91dacda">
It's also more in line with how things look in Zed1.
Release Notes:
- N/A
This PR is a first pass at porting the Zed1 themes to Zed2.
For the initial release of Zed2 we'll be shipping just the themes that
existed in Zed1, ported to Zed2. The new themes that were previously
added just in Zed2 have been removed.
Release Notes:
- N/A
1. Blocks (with their headers) and mouse listeners should be drawn together otherwise either starts to loose mouse events.
2. Scrollbar should be above all to match zed1 look and avoid buffer headers popping slightly to the right of the scrollbar.
The panic was caused by Cocoa synchronously invoking the
`selected_text_range` method on the registered input handler while we
already had a borrow of the app.
This pull request fixes this issue by showing the character palette on
the next tick of the loop (we've had this problem in other spots too and
used the same technique).
Release Notes:
- N/A
This PR disambiguates the macOS class names used in GPUI2 from the ones
used in GPUI1.
Right now if you happen to end up with a copy of both `gpui` and `gpui2`
in the dependency tree you get an unhelpful `unwrap` error when we try
to build the class names.
By giving them different names we are able to get to our more helpful
error that informs you that both GPUI1 and GPUI2 are in the module tree.
We can change these names back once we do the big "un-2-ing".
Release Notes:
- N/A
The panic was caused by Cocoa synchronously invoking the `selected_text_range`
method on the registered input handler while we already had a borrow of the
app.
This commit fixes this issue by showing the character palette on the next tick
of the loop (we've had this problem in other spots too and used the same technique).
This addresses a bug where popover menus in the titlebar were rendered
only after a 2nd click. The first click was creating the View which the
second one then rendered.
In addition to this, `PopoverMenu::menu` function argument can now
return an `Option<View<T>>` instead of `View<T>` as the creation of the
menu can fail (as it might in case of git popover).
Release Notes:
- N/A
Now, if we receive a scroll event for an axis, but that axis can't be scrolled
(overflow != scroll), we will apply it to the opposite axis instead
if that axis supports scrolling.
The project panel was actually working just fine, the problem was due to
`UniformList` not re-hydrating the element state's scroll offset when
being rendered again.
Release Notes:
- N/A
The project panel was actually working just fine, the problem was due to
`UniformList` not re-hydrating the element state's scroll offset when
being rendered again.
We were shifting all the positions while keeping the original string,
which caused problems later when combining highlighted ranges with
matched indices.
Release Notes:
- N/A
We were shifting all the positions while keeping the original
string, which caused problems later when combining highlighted
ranges with matched indices.
This PR increases the indent step size for the collab panel.
This gives the channel list a clearer hierarchy for nested channels, as
well as help align the disclosures with the parent channel's icon.
Release Notes:
- N/A
This PR fixes the names of the Rosé Pine themes.
We want to keep the Unicode "é" in the theme name, both because this is
the actual name of the theme, and also to maintain parity with Zed1.
Release Notes:
- N/A
This PR adds vertical padding to the list of picker entries.
This prevents us from ending up with entries squished against the edges
of the picker.
Release Notes:
- N/A
Fixes:
- drag and drop into terminal element does not change its style
- drag and drop terminal tab into main pane then back panics
- can drop non-terminal items into the terminal pane
Release Notes:
- N/A
This PR adjusts the sizing of the labels in the buttons in the title bar
to use the small label size.
This should bring them more in line with how things looked in Zed1.
Release Notes:
- N/A
We were mistakenly pushing an opaque layer without intersecting it with
the content mask. Also, we were pushing two opaque layers for the same
div unnecessarily.
Release Notes:
- N/A
We were mistakenly pushing an opaque layer without intersecting it
with the content mask. Also, we were pushing two opaque layers for
the same div unnecessarily.
This commit also allows turning an `ArenaBox` into an `ArenaRef` when
non-mutable access is required, which makes `ArenaRef: Clone`. This fixes
a bug that prevented the command palette from reading all the available
actions while the `command_palette::Toggle` action was being dispatched.
This prevents the `cmd-k` keystroke, which clears the terminal, from
staying around as a pending keystroke on the parent workspace.
Release Notes:
- N/A
Rather than relying on the focused element, instead explicitly pass the
focus handle for the query editor when determining the prev/next
bindings. Only compute these values once.
Release Notes:
- N/A
Once a drag starts, we won't fire click listeners or style any elements
as active.
- Don't fire click listeners or show active state once a drag is in
progress
- Don't show hover style when a drag is in progress
- Draw borders above content
- If borders are opaque, apply them to the content mask. This prevents
hovers from firing on content underneath the border, which was creating
issues where the drag handle was inside the border, so we'd flicker the
hover when the mouse moved out of the drag handle and into the 1px
border on the left dock.
- Add a `block_mouse` helper which causes transparent elements to paint
an "opaque" layer to prevent mouse events from falling through. We use
this for the drag handle as well to disable hover, click, etc on items
in the panel.
Release Notes:
- N/A
* Ensure that views' on_release callbacks are always called (even if
their window is gone), by passing them a `AppContext`, not a
`WindowContext`.
* Fix leaked handles to `CollabPanel`, `NotificationPanel`, and
`ChatPanel` caused by captures in a `ListState` render callback.
This fixes two issues we were seeing with following:
* inability to rejoin a remote project after you closed it
* following not working if a window had previously been closed