Commit Graph
39175 Commits
Author SHA1 Message Date
Conrad Irwin c9c4b2c4bc Remove ZED_SECRET_CLIENT_TOKEN 2024-01-23 10:34:00 -07:00
a9ef7e0eca Drop active searchable item subscription when changing active item
We were leaking the previous active item's subscription, which meant
that we would receive the `MatchesInvalidated` event as many times as
we changed items.

Co-Authored-By: Thorsten Ball <thorsten@zed.dev>
Co-Authored-By: Mikayla Maki <mikayla@zed.dev>
2024-01-23 18:31:21 +01:00
Conrad Irwin d4226bc98b Add keymatch modes so terminal can have cmd-k (#4219)
This isn't my favorite idea of a fix, but it does work for now, and it
seems likely the terminal will need to configure other aspects of action
dispatch in the future.

In the future we should explore making it possible to do this via the
keymap, either by making disabling bindings more robust; or by having a
way to indicate immediate mode per binding.

Release Notes:

- Fixed a bug where cmd-k in terminal took 1s
2024-01-23 10:23:45 -07:00
Piotr Osiewicz 1e1b434acc Remove license-file from Cargo.toml as it is apparently redundant (#4218)
Release Notes:

- N/A
2024-01-23 17:40:30 +01:00
Conrad Irwin 0c41121dbc Add keymatch modes so terminal can have cmd-k
This isn't my favorite idea of a fix, but it does work for now, and it
seems likely the terminal will need to configure other aspects of action
dispatch in the future.

In the future we should explore making it possible to do this via the
keymap, either by making disabling bindings more robust; or by having a
way to indicate immediate mode per binding.
2024-01-23 09:37:44 -07:00
Piotr Osiewicz 47f28aa5ba Add missing license for derive_refineable (#4217)
Missed one crate.
Release Notes:

- N/A
2024-01-23 17:22:40 +01:00
Piotr OsiewiczandDavid 3fe512e1aa chore: Add crate licenses. (#4158)
- GPUI and all dependencies: Apache 2
- Everything else: AGPL

Here's a script that I've generated for it:
https://gist.github.com/osiewicz/6afdd6626e517da24a2092807e6f0b6e

Release Notes:
- N/A

---------

Co-authored-by: David <david@zed.dev>
2024-01-23 16:56:22 +01:00
Thorsten Ball ddff3ab136 Make scripts/histogram ignore lines without frame duration (#4214)
Previously the script would choke on lines generated, for example, by
`cargo run`.

This just skips lines that don't contain `frame duration:`.

Release Notes:

- N/A
2024-01-23 16:55:48 +01:00
Thorsten Ball 54308133d0 Print error message and skip line 2024-01-23 16:52:08 +01:00
Thorsten Ball 14467e8c2a Fix scroll jitter by ignoring autoscroll events if following (#4216)
When following someone else we saw jitter because
`ScrollPositionChanged` events were battling `SelectionsChanged` events,
both of which were scrolling the viewport.

This ignores the ScrollPositionChanged if autoscrolling is on.

Release Notes:

- Fixed jittery scrolling when following someone else that had a bigger
viewport.
2024-01-23 16:45:47 +01:00
45e72b68a5 Fix scroll jitter by ignoring autoscroll events if following
When following someone else we saw jitter because
`ScrollPositionChanged` events were battling `SelectionsChanged` events,
both of which were scrolling the viewport.

This ignores the ScrollPositionChanged if autoscrolling is on.

Co-authored-by: Antonio <antonio@zed.dev>
Co-authored-by: Julia <julia@zed.dev>
2024-01-23 16:16:21 +01:00
Thorsten BallandAntonio 605a7322c6 Make scripts/histogram ignore lines without frame duration
Previously the script would choke on lines generated, for example, by
`cargo run`.

This just skips lines that don't contain `frame duration:`.

Co-authored-by: Antonio <antonio@zed.dev>
2024-01-23 13:52:55 +01:00
Antonio Scandurra 957a7f0d36 Fix horizontal scroll going too far to the left (#4213)
Previously one could scroll infinitely to the left. This clams it to 0.

Release Notes:

- Fixed horizontal scroll possibly going too far to the left.
2024-01-23 13:38:35 +01:00
Thorsten BallandAntonio 7598e29236 Fix horizontal scroll going too far to the left
Previously one could scroll infinitely to the left. This clams it to 0.

Co-authored-by: Antonio <antonio@zed.dev>
2024-01-23 12:28:50 +01:00
Kirill Bulatov bba898b70b Fix LSP shenanigans when opening and/or editing settings files (#4212)
Fixes
* LSP servers never being shut down on worktree release
* worktrees (and LSP servers) being re-created for settings files on
every opening

Also,
* removes `async` from `workspace_configuration` to simplify the code:
we only return static configurations now

Release Notes:

- Fixed excessive LSP server creation for Zed settings files
2024-01-23 13:20:00 +02:00
Kirill BulatovandPiotr 69aecab4c1 Create a special worktree for settings files
To avoid LSP server restarts/leaks when those are being opened

co-authored-by: Piotr <piotr@zed.dev>
2024-01-23 13:10:30 +02:00
Thorsten Ball bebb323c09 Trim diagnostic messages to fix rendering bug (#4210)
Before this change a diagnostic message with a trailing newline (e.g.
`line1\nline2\n`) would be rendered in a `Block` with `line_height: 2`.
But the content we then display in this block had 3 "lines", which
pushed the content out of the block.

This fixes the issue by trimming the newlines at the end from the
diagnostics.

Release Notes:

- Fixed rendering multi-line diagnostic errors inside of the editor.
2024-01-23 11:58:45 +01:00
Thorsten Ball 191e021d63 Cache last used layer_id for StackingOrder (#4211)
This optimizes rendering time by saving computation of the layer_id and
comparison when inserting it into the `BTreeMaps`.


![layer_id_caching](https://github.com/zed-industries/zed/assets/1185253/2944fa3d-586b-4a9a-9dfc-0acf59b77402)

Release Notes:

- Improved rendering performance when a lot of text is being displayed.
2024-01-23 11:58:37 +01:00
Thorsten BallandAntonio e299efc436 Cache last used layer_id for StackingOrder
This optimizes rendering time by saving computation of the layer_id and
comparison when inserting it into the `BTreeMaps`.

Co-authored-by: Antonio <antonio@zed.dev>
2024-01-23 11:46:11 +01:00
Kirill Bulatov 42444558e9 Remove the async modifier from the workspace_configuration method 2024-01-23 11:58:17 +02:00
Thorsten BallandAntonio fb98103a91 Trim diagnostic messages to fix rendering bug
Before this change a diagnostic message with a trailing newline (e.g.
`line1\nline2\n`) would be rendered in a `Block` with `line_height: 2`.
But the content we then display in this block had 3 "lines", which
pushed the content out of the block.

This fixes the issue by trimming the newlines at the end from the
diagnostics.

Co-authored-by: Antonio <antonio@zed.dev>
2024-01-23 10:36:06 +01:00
Kirill Bulatov 9623a9bf24 Clean up LSP servers on worktree release 2024-01-23 11:34:51 +02:00
Conrad Irwin 0434e717a4 fix local collab tests (#4209)
I was unable to run the collab tests locally because I would run out of
file descriptors.

From some digging it turned out that tokio allocates a new file
descriptor to do work on the CurrentThread using KQUEUE.

We create a new tokio Runtime with each database connection, and these
database connections were being retained by the Client, which is
retained by the Context.

Cleaning up our leaked contexts (and an unrelated retain cycle in the
UserStore) fixes the problem (though does make me
wonder if a different approach might be preferrable).

Release Notes:

- N/A
2024-01-22 23:17:23 -07:00
Conrad Irwin 970d5f9d0c Fix off-by-one highlighting in hover tooltip (#4206)
rust analyzer has a tendency to return markdown of the form:

```rust
 // <-- note the leading space
blah blah blah
```

This is clearly defectuous, so we used to .trim() the output.

Unfortunately we trim after applying syntax highlighting, so that causes
the output to look goofy.

Fix this by updating the highlighting when we trim.

[[PR Description]]

Release Notes:

- Fixed a bug where syntax highlighting was off in hover tooltips
2024-01-22 23:12:08 -07:00
Conrad Irwin adcd2b8b74 Update Channel membership UI (#4203)
* Remove ability to act on people defined in parent channels
* Show promote buttons on guests

Release Notes:

- Improved channel membership manangement
2024-01-22 23:11:54 -07:00
Conrad Irwin a8e3a17827 Fix docs 2024-01-22 23:10:53 -07:00
Conrad Irwin 90795aa2de Fix a circular reference between Client and UserStore
Before this change once the UserStore had been created, the Client would
never be dropped.
2024-01-22 23:05:58 -07:00
Conrad Irwin 1050cf8637 Fix leaking test contexts
I was unable to run the collab tests locally because I would run out of
file descriptors.

From some digging it turned out that tokio allocates a new file
descriptor to do work on the CurrentThread using KQUEUE.

We create a new tokio Runtime with each database connection, and these
database connections were being retained by the Client, which is
retained by the Context.

Cleaning up our leaked contexts fixes the problem (though does make me
wonder if a different approach might be preferrable).
2024-01-22 23:05:54 -07:00
Mikayla Maki 76c928ea60 Fix clippy lints in GPUI and finish documenting GPUI modules (#4188)
TODO:
- [x] Clippy pass
- [x] Element / WindowContext refactor
- [x] `geometry `
- [x] `text_system`
- [x] `styled`
- [x] `element_cx`

Release Notes:

- N/A
2024-01-22 19:56:47 -08:00
Mikayla 9a9a0abdf8 fix test 2024-01-22 19:42:25 -08:00
Mikayla 9e129b9c16 Finish documenting GPUI 2024-01-22 19:33:45 -08:00
Mikayla a0e6abc13a Document more styling functions 2024-01-22 19:31:31 -08:00
Mikayla 277ccfd164 WIP: text_system 2024-01-22 19:30:40 -08:00
Mikayla 2e686c74c9 Document geometry 2024-01-22 19:30:40 -08:00
Mikayla 155ff24478 WIP: Start geometry crate 2024-01-22 19:30:40 -08:00
Mikayla fdb8adc7ba Switch Arc<Mutex<Keymap>> to Rc<RefCell<Keymap>>, a relic of the GPUI2 port.
Make gpui pass clippy
2024-01-22 19:30:38 -08:00
Max Brunsfeld 347c79ed0b collab 0.40.0 2024-01-22 17:30:55 -08:00
Max Brunsfeld b015ce257e Don't allow granting write access to guests who haven't signed the CLA, if the channel requires the zed CLA (#4208) 2024-01-22 17:29:23 -08:00
Max BrunsfeldandMarshall e6db1d447d Add requires_zed_cla column to channels table
Don't allow granting guests write access in a call where the channel
or one of its ancestors requires the zed CLA, until that guest has
signed the Zed CLA.

Co-authored-by: Marshall <marshall@zed.dev>
2024-01-22 16:41:24 -08:00
Julia cfba58e5ec Avoid overwriting mouse wheel scroll with selection auto-scroll (#4207)
Release Notes:

- Fixed an issue where mouse wheel events could be ignored while
selecting text near the top or bottom of the editor with the mouse.
2024-01-22 19:07:03 -05:00
Julia da0f1288b0 Avoid overwriting mouse wheel scroll with selection auto-scroll 2024-01-22 18:12:25 -05:00
Conrad Irwin b15c7acbb3 One off 2024-01-22 15:53:12 -07:00
Kirill Bulatov 7a18cd1db3 Fix the fonts panic and completions in the settings (#4205)
* Do not add fonts' `font_family` into the font completion list, if
there's no corresponding attribute in the font data
* Remove `font_style_name` and `font_name` attribute from the completion
options, since those bring `-Italic`, `-Bold` variants that are not
family names (which we use to load the fonts, so they are useless)

Release Notes:

- Improved font family names completion in the settings
2024-01-23 00:29:36 +02:00
Kirill BulatovandPiotr 07a1613dfd Fix the fonts panic
co-authored-by: Piotr <piotr@zed.dev>
2024-01-23 00:23:48 +02:00
Conrad Irwin c18ae7a99f Fix off-by-one highlighting in hover tooltip
rust analyzer has a tendency to return markdown of the form:

```rust
 // <-- note the leading space
blah blah blah
```

This is clearly defectuous, so we used to .trim() the output.

Unfortunately we trim after applying syntax highlighting, so that causes
the output to look goofy.

Fix this by updating the highlighting when we trim.
2024-01-22 15:23:37 -07:00
Max Brunsfeld febf000417 collab 0.39.0 2024-01-22 14:22:04 -08:00
Max Brunsfeld 264aa92961 Add REST APIs for signing the CLA, retrieving users who've signed the CLA (#4202) 2024-01-22 14:20:39 -08:00
Max Brunsfeld d1c33d1932 Fix call to get_or_create_user in seed binary 2024-01-22 14:15:41 -08:00
Max Brunsfeld 4fd55f2ae9 Fix get_or_create_user test 2024-01-22 14:12:31 -08:00
Max BrunsfeldandMarshall 42fbf2bd20 Allow checking CLA signatures by GitHub login
This will be used by CLA Bot.

Co-authored-by: Marshall <marshall@zed.dev>
2024-01-22 13:55:12 -08:00