Commit Graph

11144 Commits

Author SHA1 Message Date
Nathan Sobo
da7dc9c880 Work with window handles instead of ids in drag code 2023-08-08 11:14:02 -06:00
Nathan Sobo
d896d89842 Store an AnyWindowHandle in WindowContext 2023-08-08 11:08:37 -06:00
Mikayla
17c9b4ca96
Fix tests 2023-08-08 10:04:29 -07:00
Nate Butler
662e196267
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
49f1f1c6c2 Remove window when closing workspace in test 2023-08-08 09:13:17 -06:00
Piotr Osiewicz
1aff642981 Do not highlgiht selections at all over the threshold 2023-08-08 13:09:27 +02:00
Nathan Sobo
dba2facd23 Remove window via handles 2023-08-07 22:58:01 -06:00
Nathan Sobo
f0da6b05fd Remove TestAppContext::add_view
Instead, we now call this on window handles.
2023-08-07 22:46:48 -06:00
Nathan Sobo
0f332238b3 Remove unused method 2023-08-07 22:08:44 -06:00
Nathan Sobo
d687c3d81f Merge remote-tracking branch 'origin/main' into window-handles 2023-08-07 22:07:20 -06:00
Nathan Sobo
f2be3181a9 Move window-related methods from TestAppContext to AnyWindowHandle 2023-08-07 20:23:04 -06:00
Nathan Sobo
0197d49230 Move activation simulation to AnyWindowHandle 2023-08-07 19:45:43 -06:00
Nathan Sobo
486f5bc6ca Get compiling 2023-08-07 19:08:58 -06:00
Max Brunsfeld
299906346e Change collab panel icon 2023-08-07 18:04:41 -07:00
Piotr Osiewicz
371c669e00 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
b0fc6da55b Use display maps 2023-08-08 02:37:27 +02:00
Piotr Osiewicz
241d3951b8 Remove redundant argument 2023-08-08 02:25:30 +02:00
Piotr Osiewicz
42e1221357 Add upper bound limit. Remove dbg! statements 2023-08-08 02:17:11 +02:00
Mikayla
fa71de8842
Tune UX for context menus
Co-authored-by: max <max@zed.dev>
2023-08-07 17:14:14 -07:00
Mikayla
bedf60b6b2
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
Mikayla
8980a9f1c1
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
Mikayla
e37e76fc0b
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
fa16895976 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
ca21626064 Baseline: Improve selection rendering for large quantities from 270ms to 90ms 2023-08-07 23:32:27 +02:00
Mikayla
9913067e51
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
7288be4251
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
d417993c9d
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
dbf25ea2ff Add syntax highlighting for Cargo.toml files 2023-08-07 17:24:22 -04:00
Joseph T. Lyons
580c2ea8eb Fix test name 2023-08-07 17:07:01 -04:00
Max Brunsfeld
4e33654aba Make LspAdapter::process_diagnostics synchronous
Co-authored-by: Nathan <nathan@zed.dev>
2023-08-07 13:53:41 -07:00
Mikayla
90cdbe8bf3
Fix modal click throughs and adjust height for channel modal 2023-08-07 13:39:05 -07:00
Mikayla
f1957b1737
Push focus and fix keybindings 2023-08-07 13:31:58 -07:00
Nathan Sobo
3e0d0e5c01 WIP 2023-08-07 13:54:47 -06:00
Max Brunsfeld
c537cf2a57 Merge branch 'main' into collab-panel 2023-08-07 11:50:40 -07:00
Conrad Irwin
19eb280351 Fix selection background too
Refactor code to centralize the logic too
2023-08-07 19:01:04 +01:00
Nathan Sobo
d4d32611fe WIP 2023-08-06 18:57:02 -06:00
Nathan Sobo
adc50469ff WIP 2023-08-06 12:45:31 -06:00
Joseph T. Lyons
e3a4d174de
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
ef5b982ea5 Fix bash path_suffixes and add line_comment 2023-08-06 02:20:31 -04:00
Nathan Sobo
dcf8b00656 WIP 2023-08-05 18:00:44 -06:00
Joseph T. Lyons
7777d973cd
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
1abb6a0176 Expand empty selections to cover full word and fix bugs 2023-08-05 11:31:21 -04:00
Joseph T. Lyons
d1048d03b0
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
12e8f417e4 Add more convert to case commands
ConvertToTitleCase
ConvertToSnakeCase
ConvertToKebabCase
ConvertToUpperCamelCase
ConvertToLowerCamelCase
2023-08-04 22:45:26 -04:00
Max Brunsfeld
2ccd153233 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
5c2f38a0bc
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 Brunsfeld
87b2d599c1 Flesh out channel member management
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-04 14:12:08 -07:00
Joseph T. Lyons
8c98b02e45 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
a2486de045 Don't expose channel admin actions in UI if user isn't admin 2023-08-04 10:24:46 -07:00
Max Brunsfeld
1762d2c6d4 Add test assertion where user is not admin of channel 2023-08-04 09:51:37 -07:00