Commit Graph
11195 Commits
Author SHA1 Message Date
Max Brunsfeld 1d4f2745fb Translate coordinates using the primary screen not the main screen 2023-08-17 16:12:52 -07:00
Max Brunsfeld 62f33adbc5 Return to master branch of alacritty 2023-08-17 15:31:27 -07:00
Max Brunsfeld e89cbd76ec Fix AppKit screen coordinate conversion leading to wrong window bounds 2023-08-17 15:23:28 -07:00
Max Brunsfeld ca81930220 Use our fork of alacritty to avoid winit dependency (#2853)
Bumps `alacritty_terminal` for
https://github.com/alacritty/alacritty/pull/7149
2023-08-16 14:54:55 -07:00
Max Brunsfeld 65e251d596 Use our fork of alacritty to avoid winit dependency 2023-08-16 14:31:38 -07:00
Kirill Bulatov ccb58f45f0 Add editor::ToggleInlayHints command and a bar to toggle editor-related items (#2839)
Closes
https://linear.app/zed-industries/issue/Z-2735/make-inlay-hints-discoverable
Deals with https://github.com/zed-industries/community/issues/1764

Adds `editor::ToggleInlayHints` command and a new panel with two
buttons for 
* toggling hints on/off for every editor separately (overrides settings)

Would benefit from a new icon.

* toggling buffer search on/off 

Does not have a keybinding shown in its tooltip, that is a separate
issue with the way `KeystrokeLabel` gets these for panels not in the
view directly.

Release Notes:

- Adds `editor::ToggleInlayHints` command and a bar to toggle
editor-related items
2023-08-16 23:50:54 +03:00
Kirill Bulatov 56f5c6c788 Better multibuffer tests 2023-08-16 23:38:11 +03:00
Nate Butler 6fbca64b1f Use the ghost variant for a flat button style in the toolbar 2023-08-16 23:38:11 +03:00
Nate Butler a00b6a640f Update inlay_hint icon 2023-08-16 23:38:11 +03:00
Kirill Bulatov 07f95983fe Fix rebase issues 2023-08-16 23:38:11 +03:00
Nate Butler 213ef710bd Add inlay_hint icon, update search icon, update tooltips 2023-08-16 23:38:11 +03:00
Kirill Bulatov 08fcb3f10e Use InlayHint instead of Inlay where appropriate 2023-08-16 23:38:11 +03:00
Kirill Bulatov 2b1a1afcfb Do not leak pane handles 2023-08-16 23:38:11 +03:00
Kirill Bulatov d9a90a3035 Test hints toggle 2023-08-16 23:38:11 +03:00
Kirill Bulatov e1dd34c185 Extract quick_action_bar into its own crate 2023-08-16 23:38:11 +03:00
Kirill BulatovandMikayla Maki 4acb8eeabb Repaint inlays icon on inlays cache disabling/enabling
Co-Authored-By: Mikayla Maki <mikayla@zed.dev>
2023-08-16 23:38:11 +03:00
Kirill Bulatov 5ce0d2244d Improve toggle UI, fix inlays update speed 2023-08-16 23:38:11 +03:00
Kirill Bulatov 4d914c6b75 Toggle buffer search via quick actions 2023-08-16 23:38:11 +03:00
Kirill Bulatov 7cd278f4b8 Draft quick actions bar 2023-08-16 23:38:11 +03:00
Joseph T. Lyons 45cbc6b7c5 v0.101.x dev 2023-08-16 14:22:54 -04:00
Max Brunsfeld 57a8c6d506 collab 0.17.0 2023-08-16 11:05:08 -07:00
Max Brunsfeld 5b150ecfc7 Introduce channels and move collab popover contents to a collaboration panel (#2828)
### Summary

This PR introduces channels: a new way of starting collaboration
sessions. You can create channels and invite others to join them. You
can then hold a call in a channel, where any member of the channel is
free to join the call without needing to be invited.

Channels are displayed in a new panel called the collaboration panel,
which now also contains the contacts list, and the current call. The
collaboration popover has been removed from the titlebar.

![Screen Shot 2023-08-15 at 9 25 37
AM](https://github.com/zed-industries/zed/assets/326587/0f989dea-7fb7-4d50-9acd-25c8f1c30cd1)


For now, the channels functionality will only be revealed to staff, so
the public-facing change is just the move from the popover to the panel.

### To-do

* User-facing UI
  * [x] signed-out state for collab panel
  * [x] new icon for collab panel
  * [x] for now, channels section only appears for zed staff
* [x] current call section styling
(https://zed-industries.slack.com/archives/C05CJUNF2BU/p1691189389988239?thread_ts=1691189120.403009&cid=C05CJUNF2BU)
* [x] Channel members
* Channels
  * [x] style channel name editor
* [x] decide on a special "empty state" for the panel, when user has no
contacts
* [x] ensure channels are sorted in a consistent way (expose channel id
paths to client)
  * [x] Figure out layered panels UX
  * [x] Change add contacts to be the same kind of tabbed modal
* [x] race condition between channel updates and user fetches
(`ChannelStore::handle_update_contacts`)
* [x] race condition between joining channels and channel update
messages `collab::rpc::channel_updated`)
* [x] don't display mic as muted when microphone share is pending upon
first joining call

Release Notes:

- Moved the collaboration dropdown into its own panel.
- Added settings for disabling the AI assistant panel button.
- Switch to lazily initializing audio output sources
(https://github.com/zed-industries/community/issues/1840,
https://github.com/zed-industries/community/issues/1919)
2023-08-16 11:03:53 -07:00
Nate ButlerandMax Brunsfeld f77504f5ac Update collab panel empty state to match project panel
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2023-08-16 13:56:11 -04:00
Nate ButlerandMax Brunsfeld dd531145c2 Update modal icon styles
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2023-08-16 13:48:12 -04:00
Nate Butler 8027b0d4d8 Style cleanup for channels panel 2023-08-16 12:38:44 -04:00
Kirill Bulatov 145df4f156 Focus terminal view on mouse click in terminal (#2852)
Before, terminal view focused the parent (pane) instead and, if
terminal's search bar was open and focused, pane transferred the focus
back

Release Notes:

- Fixed terminal search focus not switching to terminal on mouse click
inside
2023-08-16 15:25:17 +03:00
Kirill Bulatov 19cf3ec52d Focus terminal view on mouse click in terminal
Before, terminal view focused the parent (pane) instead and, if
terminal's search bar was open and focused, pane transferred the focus
back
2023-08-16 15:16:20 +03:00
Kirill Bulatov 01cb8375e6 Move gpui derives tests into gpui crate to avoid dependency cycles (#2851)
`cargo run` on Zed project leads to rust-analyzer evantually emitting

`[ERROR project_model::workspace] cyclic deps:
gpui_macros(Idx::<CrateData>(269)) -> gpui(Idx::<CrateData>(264)),
alternative path: gpui(Idx::<CrateData>(264)) ->
gpui_macros(Idx::<CrateData>(269))`

error after loading the project.

The PR fixes this by moving away the test to the "root" project.

Release Notes:

- N/A
2023-08-16 10:41:12 +03:00
Kirill Bulatov 6d3e568fdc Move gpui derives tests into gpui crate to avoid dependency cycles
`cargo run` on Zed project leads to rust-analyzer evantually emitting

`[ERROR project_model::workspace] cyclic deps:
gpui_macros(Idx::<CrateData>(269)) -> gpui(Idx::<CrateData>(264)),
alternative path: gpui(Idx::<CrateData>(264)) ->
gpui_macros(Idx::<CrateData>(269))`

error after loading the project.

The PR fixes this by moving away the test to the "root" project.
2023-08-16 10:19:20 +03:00
Mikayla 81e0c0dd5c Lazily initialize and destroy the audio handle state on call initiation and end 2023-08-15 23:19:11 -07:00
Max Brunsfeld f053542057 Keep collab panel focused after deleting a channel 2023-08-15 16:14:24 -07:00
Mikayla Maki 6958fae895 Add component traits to GPUI (#2850)
Release Notes:

- N/A
2023-08-15 15:53:12 -07:00
Mikayla 5f9984e246 move component into gpui 2023-08-15 15:44:59 -07:00
Nate Butler 3783ca1eed Update assistant status bar icon 2023-08-15 18:36:30 -04:00
Nate Butler b4c41dc9bd Update channel context menu 2023-08-15 18:36:23 -04:00
Max BrunsfeldandMikayla 07f71c67b5 Simplify Component implementation
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-15 15:26:02 -07:00
Max BrunsfeldandMikayla 2223d15c96 Implement calling contacts into your current channel
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-15 14:56:54 -07:00
Kirill Bulatov ccba4ff141 Support editor::SelectAll in Terminal (#2848)
![image](https://github.com/zed-industries/zed/assets/2690773/3aae1e6a-9993-4e65-8ed1-20f2f4b452df)

Allows to use `editor::SelectAll`(`cmd-a` by default) in Terminal to
select all text in it, for future copying.
Currently, does not try to be smart and trim the selected whitespaces
after the last prompt, and copies them too.

Release Notes:

- Support `editor::SelectAll` in Terminal
2023-08-15 23:59:26 +03:00
Joseph T. Lyons 92e3381eb3 Associate additional file extensions with known languages (#2847)
Going to do these in batches.  Here is the first one.

Release Notes:

- Associated additional file extensions with known languages
(([#633](https://github.com/zed-industries/community/issues/633)),
([#1822](https://github.com/zed-industries/community/issues/1822))).
    - C++: `cxx`, `hxx`, `inl`
    - JavaScript: `cjs`
    - Python: `mpy`
    - TypeScript: `cts`, `d.cts`, `d.mts`, `mts`
2023-08-15 16:46:42 -04:00
Kirill Bulatov 661229e647 Support editor::SelectAll in Terminal 2023-08-15 23:43:32 +03:00
Max BrunsfeldandMikayla 96f14e23a9 Run until parked when setting editor's state via EditorTestContext
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-15 13:42:54 -07:00
Joseph T. Lyons c2589d9efa Associate extensions with language 2023-08-15 16:33:02 -04:00
Nate Butler 6859972936 Update checked icon 2023-08-15 16:29:01 -04:00
Max Brunsfeld c48492a1cb Avoid flicker when moving between channels 2023-08-15 13:18:56 -07:00
Max Brunsfeld 5e38546d17 Reword channel-creation tooltips 2023-08-15 13:08:44 -07:00
Nate Butler f201875d07 Additional status bar styles 2023-08-15 15:32:14 -04:00
Mikayla 8471c16343 seperate out channel styles in theme 2023-08-15 12:12:30 -07:00
Mikayla 697ff6dbdf Add dismiss on escape 2023-08-15 11:02:18 -07:00
MikaylaandNate 7b595e1702 Fix cursor style
co-authored-by: Nate <nate@zed.dev>
2023-08-15 10:58:31 -07:00
Mikayla 2be5aa22e2 Add active styling 2023-08-15 10:53:30 -07:00