Commit Graph
11144 Commits
Author SHA1 Message Date
Nathan Sobo e293985af9 Work with window handles instead of ids in drag code 2023-08-08 11:14:02 -06:00
Nathan Sobo c843749cb0 Store an AnyWindowHandle in WindowContext 2023-08-08 11:08:37 -06:00
Mikayla 434f9dc2e5 Fix tests 2023-08-08 10:04:29 -07:00
Nate Butler 25b03b3485 Calculate the range for each color family in a theme (#2738)
Release Notes:
- N/A (Internal theme stuff)
2023-08-08 11:49:52 -04:00
Nathan Sobo d03f2437e5 Remove window when closing workspace in test 2023-08-08 09:13:17 -06:00
Piotr Osiewicz 6daa812d5d Do not highlgiht selections at all over the threshold 2023-08-08 13:09:27 +02:00
Nathan Sobo a4836b25d6 Remove window via handles 2023-08-07 22:58:01 -06:00
Nathan Sobo 337db743e9 Remove TestAppContext::add_view
Instead, we now call this on window handles.
2023-08-07 22:46:48 -06:00
Nathan Sobo 29e16ae866 Remove unused method 2023-08-07 22:08:44 -06:00
Nathan Sobo 5bdfe4199e Merge remote-tracking branch 'origin/main' into window-handles 2023-08-07 22:07:20 -06:00
Nathan Sobo 8a187b0b25 Move window-related methods from TestAppContext to AnyWindowHandle 2023-08-07 20:23:04 -06:00
Nathan Sobo d72e27a4c2 Move activation simulation to AnyWindowHandle 2023-08-07 19:45:43 -06:00
Nathan Sobo ce33bd19e5 Get compiling 2023-08-07 19:08:58 -06:00
Max Brunsfeld 7d045ebb88 Change collab panel icon 2023-08-07 18:04:41 -07:00
Piotr Osiewicz 2afb207a6e Address review feedback.
Rename selected_rows to background_highlight_row_ranges.
Do not return any ranges if there are more than 50k results
2023-08-08 02:47:49 +02:00
Piotr Osiewicz 2287c07c9d Use display maps 2023-08-08 02:37:27 +02:00
Piotr Osiewicz 8863e75114 Remove redundant argument 2023-08-08 02:25:30 +02:00
Piotr Osiewicz 29465aa01a Add upper bound limit. Remove dbg! statements 2023-08-08 02:17:11 +02:00
Mikaylaandmax 2c2db5537d Tune UX for context menus
Co-authored-by: max <max@zed.dev>
2023-08-07 17:14:14 -07:00
Mikaylaandmax e5812b5c7f Improve local collaboration script to accept a zed impersonate
Gate channels UI behind a flag

co-authored-by: max <max@zed.dev>
2023-08-07 16:45:13 -07:00
Mikaylaandmax 8a7d078eaf Add settings for removing the assistant and collaboration panel buttons
Add a not-logged-in state to the collaboration panel

co-authored-by: max <max@zed.dev>
2023-08-07 16:27:47 -07:00
MikaylaandMax 9f1d025937 Add context menu controls to the channel member management
co-authored-by: Max <max@zed.dev>
2023-08-07 15:29:30 -07:00
Piotr Osiewicz 2b1b1be185 Do not query start of range if it's end is the same as the previous hunk's 2023-08-08 00:27:38 +02:00
Piotr Osiewicz d98ed0e958 Baseline: Improve selection rendering for large quantities from 270ms to 90ms 2023-08-07 23:32:27 +02:00
MikaylaandMax 06f40c814a Remove admin and member button
Fix bug with invites in the member list
Fix bug when there are network errors in the member related RPC calls

co-authored-by: Max <max@zed.dev>
2023-08-07 14:32:13 -07:00
Max Brunsfeld 8af441ec62 Make LspAdapter::process_diagnostics synchronous (#2829)
When editing rust code, the project diagnostics view sometimes fails to
update, so that you have to close the view and re-open it to see the
correct state.

This PR fixes one possible cause of that problem. There was an async
step in between *receiving* diagnostics from the language server and
updating the diagnostics, due to an async call to
`LspAdapter::process_diagnostics`. This could cause the following
sequence of events to happen:

1. Rust-analyzer sends us new diagnostics for a file `a.rs`
2. We call `process_diagnostics` with those diagnostics
3. Rust-analyzer sends us a `WorkDoneProgress` message, indicating that
the "flycheck" (aka `cargo check`) process has completed
4. We update the project diagnostics view due to this message.
5. The `process_diagnostics` call for `a.rs` completes
6. 💥 We have the new diagnostics for `a.rs`, but do not update the
project diagnostics view again.

This PR fixes this bug by simply making `process_diagnostics`
synchronous. There is no I/O or expensive computation happening in that
method. If we need to make it asynchronous in the future, we need to
introduce a queue that ensures that `publishDiagnostics` and
`workDoneProgress` messages are processed serially.

Release Notes:

- Fixed a bug where the project diagnostics view would sometimes fail to
update properly when using Rust-analyzer.
2023-08-07 14:31:49 -07:00
Joseph T. Lyons 3333495307 Add syntax highlighting for Cargo.toml files (#2830)
Release Notes:

- Added syntax highlighting for `Cargo.toml` files
2023-08-07 17:28:21 -04:00
Joseph T. Lyons b8fe41ab50 Add syntax highlighting for Cargo.toml files 2023-08-07 17:24:22 -04:00
Joseph T. Lyons 71e10d21a5 Fix test name 2023-08-07 17:07:01 -04:00
Max BrunsfeldandNathan b6d577584f Make LspAdapter::process_diagnostics synchronous
Co-authored-by: Nathan <nathan@zed.dev>
2023-08-07 13:53:41 -07:00
Mikayla f267c1358b Fix modal click throughs and adjust height for channel modal 2023-08-07 13:39:05 -07:00
Mikayla 247d6c9dc5 Push focus and fix keybindings 2023-08-07 13:31:58 -07:00
Nathan Sobo cfdd299f81 WIP 2023-08-07 13:54:47 -06:00
Max Brunsfeld d51cac5ab2 Merge branch 'main' into collab-panel 2023-08-07 11:50:40 -07:00
Conrad Irwin 66e4046734 Fix selection background too
Refactor code to centralize the logic too
2023-08-07 19:01:04 +01:00
Nathan Sobo 27081b590a WIP 2023-08-06 18:57:02 -06:00
Nathan Sobo d1e01ba625 WIP 2023-08-06 12:45:31 -06:00
Joseph T. Lyons 007090f21e Fix bash path_suffixes and add cmd-/ line comment support (#2827)
<img width="1608" alt="SCR-20230806-cyrg"
src="https://github.com/zed-industries/zed/assets/19867440/2491c4bc-5797-4417-9633-08c136b4e8fe">

I noticed we weren't highlghting bash files if the shebang line didn't
exist. After checking, it looks like the `.` were accidentally added to
the `path_suffixes` list. This PR fixes that and adds in support for
`cmd-/` to trigger line comments.

<img width="1608" alt="SCR-20230806-czxh"
src="https://github.com/zed-industries/zed/assets/19867440/37dd0c8e-c4e7-49e2-9997-9dd8145f460e">


Release Notes:

- Fixed a bug where shell files weren't syntax highlighted if a shebang
didn't exist.
- Added support for `cmd-/` to add line comments to shell files.
2023-08-06 02:35:00 -04:00
Joseph T. Lyons 2c278b6149 Fix bash path_suffixes and add line_comment 2023-08-06 02:20:31 -04:00
Nathan Sobo 900d17ffef WIP 2023-08-05 18:00:44 -06:00
Joseph T. Lyons 5502e17e7a Expand empty selections to cover full word when doing case conversions and fix bugs (#2826)
When doing case conversions, specifically in the case of an empty
selection, in both VS Code and Sublime, the cursor winds up being in a
different place relative to where it started.

In VS Code, the cursor maintains it position in the text, no matter if
the text expands or shrinks


https://github.com/zed-industries/zed/assets/19867440/b24f5d86-c315-4a72-9ed4-3732b490ea9a

In Sublime, I have no idea what is going on:


https://github.com/zed-industries/zed/assets/19867440/05f21303-6e42-47b2-b844-7accd0bf05d7

I thought it would be a better experience if, when doing an empty
selection transformation, we simply expand the selection and park the
cursor at the end of the newly-transformed text.


https://github.com/zed-industries/zed/assets/19867440/833619ef-04e2-47b6-ad4e-e2b43d54fb2b

This feels similar to us expanding the selection when doing line
manipulations:


https://github.com/zed-industries/zed/assets/19867440/c30c5332-787d-4cf0-a9ee-e66c3c159956

Selections are adjusted to match however each word expands and shrinks,
even when there are multiple:


https://github.com/zed-industries/zed/assets/19867440/d7073aac-8a59-4f2c-b0e5-1df37be1694c

Release Notes:

- Improved behavior of empty-selection case transformations by selecting
resulting word.
- Fixed some bugs with overflow
2023-08-05 12:16:46 -04:00
Joseph T. Lyons 5ca419bd55 Expand empty selections to cover full word and fix bugs 2023-08-05 11:31:21 -04:00
Joseph T. Lyons 4e8025826c Add more convert to case commands (#2825)
I'm using [convert_case](https://crates.io/crates/convert_case)
underneath the hood, which has over 35 million downloads and feels
solid.

Release Notes:

- Added commands to convert between variable name styles
([#1821](https://github.com/zed-industries/community/issues/1821)).
    - `convert to kebab case`
    - `convert to snake case`
    - `convert to upper camel case`
    - `convert to lower camel case`
    - `convert to title case`
2023-08-04 22:51:32 -04:00
Joseph T. Lyons ad2c456b9a Add more convert to case commands
ConvertToTitleCase
ConvertToSnakeCase
ConvertToKebabCase
ConvertToUpperCamelCase
ConvertToLowerCamelCase
2023-08-04 22:45:26 -04:00
Max BrunsfeldandMikayla e93fc31525 Fix joining descendant channels, style channel invites
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-04 16:21:43 -07:00
Joseph T. Lyons 8c701e909a Add convert to {upper,lower} case commands (#2824)
Release Notes:

- Added `convert to upper case` and `convert to lower case` commands
([#1011](https://github.com/zed-industries/community/issues/1011)).
2023-08-04 18:12:55 -04:00
Max BrunsfeldandMikayla acce8aba4a Flesh out channel member management
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-04 14:12:08 -07:00
Joseph T. LyonsandJulia 4907349c6f Add convert to {upper,lower} case commands
Co-Authored-By: Julia <30666851+ForLoveOfCats@users.noreply.github.com>
2023-08-04 15:10:33 -04:00
Max Brunsfeld f89a7be963 Don't expose channel admin actions in UI if user isn't admin 2023-08-04 10:24:46 -07:00
Max Brunsfeld c0c1398223 Add test assertion where user is not admin of channel 2023-08-04 09:51:37 -07:00