zed/crates
Marshall Bowers d633a0da78
gpui: Fix Global trait (#11187)
This PR restores the `Global` trait's status as a marker trait.

This was the original intent from #7095, when it was added, that had
been lost in #9777.

The purpose of the `Global` trait is to statically convey what types can
and can't be accessed as `Global` state, as well as provide a way of
restricting access to said globals.

For example, in the case of the `ThemeRegistry` we have a private
`GlobalThemeRegistry` that is marked as `Global`:
91b3c24ed3/crates/theme/src/registry.rs (L25-L34)

We're then able to permit reading the `ThemeRegistry` from the
`GlobalThemeRegistry` via a custom getter, while still restricting which
callers are able to mutate the global:
91b3c24ed3/crates/theme/src/registry.rs (L46-L61)

Release Notes:

- N/A
2024-04-29 16:37:37 -04:00
..
activity_indicator preview tabs: Allow replacing preview tab when using code navigation (#10730) 2024-04-29 20:47:01 +02:00
anthropic Move lints section to the top of Cargo.toml, to match the others 2024-04-18 15:53:48 -04:00
assets New revision of the Assistant Panel (#10870) 2024-04-23 16:23:26 -07:00
assistant windows: Support all OpenType font features (#10756) 2024-04-26 13:58:12 -07:00
assistant2 gpui: Fix Global trait (#11187) 2024-04-29 16:37:37 -04:00
assistant_tooling Semantic index progress (#11071) 2024-04-26 17:06:05 -07:00
audio Introduce InlineCompletionProvider (#9777) 2024-03-26 13:28:06 +01:00
auto_update preview tabs: Allow replacing preview tab when using code navigation (#10730) 2024-04-29 20:47:01 +02:00
breadcrumbs Break typography styles out of StyledExt (#11013) 2024-04-25 17:42:53 -04:00
call remote projects per user (#10594) 2024-04-23 15:33:09 -06:00
channel remote projects per user (#10594) 2024-04-23 15:33:09 -06:00
cli Allow cli to accept --dev-server-token (#10944) 2024-04-24 13:15:19 -06:00
client New revision of the Assistant Panel (#10870) 2024-04-23 16:23:26 -07:00
clock Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
collab preview tabs: Allow replacing preview tab when using code navigation (#10730) 2024-04-29 20:47:01 +02:00
collab_ui Set appid/wmclass for zed window (#10909) 2024-04-29 09:27:25 -07:00
collections gpui: Add SVG rendering to img element and generic asset cache (#9931) 2024-03-29 17:09:49 -07:00
color Fix hex_to_hsla inside the color crate (#9412) 2024-03-15 16:58:46 -04:00
command_palette preview tabs: Allow replacing preview tab when using code navigation (#10730) 2024-04-29 20:47:01 +02:00
command_palette_hooks Introduce InlineCompletionProvider (#9777) 2024-03-26 13:28:06 +01:00
copilot Revert "Revert "language: Remove buffer fingerprinting (#9007)"" (#9671) 2024-04-12 18:40:35 +02:00
copilot_ui Refactor workspace notifications to use explicit NotificationId type (#10342) 2024-04-10 17:21:23 -04:00
db Clean up whitespace (#10755) 2024-04-23 13:31:21 -04:00
diagnostics preview tabs: Allow replacing preview tab when using code navigation (#10730) 2024-04-29 20:47:01 +02:00
editor editor: Clear diagnostics when folding a range that contains it (#11167) 2024-04-29 20:50:14 +02:00
extension Add SettingsSources::<T>::json_merge_with function (#10869) 2024-04-22 18:38:34 -04:00
extension_api Improve extension API documentation (#10322) 2024-04-09 10:38:29 -04:00
extension_cli Add git blame (#8889) 2024-03-28 18:32:11 +01:00
extensions_ui preview tabs: Allow replacing preview tab when using code navigation (#10730) 2024-04-29 20:47:01 +02:00
feature_flags WIP: remoting (#10085) 2024-04-11 15:36:35 -06:00
feedback Refactor workspace notifications to use explicit NotificationId type (#10342) 2024-04-10 17:21:23 -04:00
file_finder new path picker (#11015) 2024-04-26 13:25:25 -06:00
file_icons gpui: Fix Global trait (#11187) 2024-04-29 16:37:37 -04:00
fs Switch from delete file by default to trash file by default (#10875) 2024-04-26 17:43:50 -07:00
fsevent Add rs-notify implementation of fs::watch (#9040) 2024-03-08 22:18:44 -08:00
fuzzy Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
git git: Do not log error if repository has no commits (#11163) 2024-04-29 16:00:29 +02:00
go_to_line Line numbers short mode (#10354) 2024-04-10 12:08:07 +02:00
google_ai Fix licensing errors 2024-03-20 15:52:02 +01:00
gpui gpui: Fix Global trait (#11187) 2024-04-29 16:37:37 -04:00
gpui_macros gpui-macros: Hide autogenerated action types/functions (#10417) 2024-04-11 15:38:47 +02:00
headless Allow cli to accept --dev-server-token (#10944) 2024-04-24 13:15:19 -06:00
image_viewer Merge ElementContext into WindowContext (#10979) 2024-04-25 12:54:39 +02:00
install_cli Fix flickering (#9012) 2024-03-11 10:45:57 +01:00
journal Add the ability for extensions to provide language settings (#10296) 2024-04-08 19:17:12 -04:00
language Don't panic when a tree-sitter parse fails (#11076) 2024-04-26 16:59:35 -06:00
language_selector Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
language_tools preview tabs: Allow replacing preview tab when using code navigation (#10730) 2024-04-29 20:47:01 +02:00
languages Register ESLint as an available language server (#11178) 2024-04-29 13:18:30 -04:00
live_kit_client Hoist nanoid to workspace-level (#11029) 2024-04-25 22:37:40 -04:00
live_kit_server Merge prost dependecies (#9522) 2024-03-18 20:33:20 -06:00
lsp lsp: Do not set error/result fields if they're missing. (#10610) 2024-04-16 14:27:12 +02:00
markdown_preview markdown preview: Break up list items into individual blocks (#10852) 2024-04-26 21:34:45 +02:00
media Revert "Revert "Revert dependency updates in #9836 (#10089)"" 2024-04-02 13:12:38 -06:00
menu Fix the linux keymap (#9829) 2024-03-26 16:10:09 -07:00
multi_buffer Add a command to expand the context for a multibuffer (#10300) 2024-04-19 14:27:56 -07:00
node_runtime Allow extensions to define more of the methods in the LspAdapter trait (#9554) 2024-03-20 12:47:04 -07:00
notifications Fix mention notifications are not updated after message change and not removed after a message is deleted (#9847) 2024-04-02 20:40:00 -06:00
open_ai New revision of the Assistant Panel (#10870) 2024-04-23 16:23:26 -07:00
outline windows: Support all OpenType font features (#10756) 2024-04-26 13:58:12 -07:00
picker new path picker (#11015) 2024-04-26 13:25:25 -06:00
prettier Fix prettier-plugin-organize-imports plugin removes used imports (#9598) 2024-03-21 08:23:15 +01:00
project Switch from delete file by default to trash file by default (#10875) 2024-04-26 17:43:50 -07:00
project_panel Fix bugs from recent PRs (#11147) 2024-04-28 20:56:17 -07:00
project_symbols Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
quick_action_bar Do not show tooltip for editor controls if clicked (#10679) 2024-04-17 13:20:47 +02:00
recent_projects new path picker (#11015) 2024-04-26 13:25:25 -06:00
refineable Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
release_channel cli: Treat first argument as name of release channel to use for the cli (#10856) 2024-04-22 18:01:06 +02:00
remote_projects remote projects per user (#10594) 2024-04-23 15:33:09 -06:00
rich_text New revision of the Assistant Panel (#10870) 2024-04-23 16:23:26 -07:00
rope Revert "Revert "language: Remove buffer fingerprinting (#9007)"" (#9671) 2024-04-12 18:40:35 +02:00
rpc Switch from delete file by default to trash file by default (#10875) 2024-04-26 17:43:50 -07:00
search preview tabs: Allow replacing preview tab when using code navigation (#10730) 2024-04-29 20:47:01 +02:00
semantic_index gpui: Fix Global trait (#11187) 2024-04-29 16:37:37 -04:00
semantic_version Extract SemanticVersion into its own crate (#9956) 2024-03-29 12:11:57 -04:00
settings gpui: Fix Global trait (#11187) 2024-04-29 16:37:37 -04:00
snippet Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
sqlez remote projects per user (#10594) 2024-04-23 15:33:09 -06:00
sqlez_macros Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
story Enable clippy::eq_op (#9369) 2024-03-14 17:05:07 -04:00
storybook windows: Move manifest file to gpui (#11036) 2024-04-26 13:56:48 -07:00
sum_tree Update docstring for SumTree (#10927) 2024-04-24 14:01:10 +02:00
tab_switcher Add preview tabs (#9125) 2024-04-11 23:09:12 +02:00
task Properly pass nested script arguments for tasks (#10776) 2024-04-19 16:24:35 +03:00
tasks_ui gpui: Fix Global trait (#11187) 2024-04-29 16:37:37 -04:00
telemetry_events Extract SemanticVersion into its own crate (#9956) 2024-03-29 12:11:57 -04:00
terminal chore: remove repetitive word (#10923) 2024-04-24 11:34:32 +03:00
terminal_view preview tabs: Allow replacing preview tab when using code navigation (#10730) 2024-04-29 20:47:01 +02:00
text Validate buffer_id of anchors in is_valid (#11170) 2024-04-29 10:24:04 -06:00
theme windows: Support all OpenType font features (#10756) 2024-04-26 13:58:12 -07:00
theme_importer themes: Add pane_group.border color (#9986) 2024-04-01 12:07:26 -04:00
theme_selector Add support for applying theme after extension is installed (#9529) 2024-03-20 11:13:58 -04:00
time_format Inline git blame (#10398) 2024-04-15 14:21:52 +02:00
ui Incorporate ElementId as part of the Element::id trait method and expose GlobalId (#11101) 2024-04-28 13:59:21 -06:00
ui_text_field windows: Support all OpenType font features (#10756) 2024-04-26 13:58:12 -07:00
util Remove unused fields (#11158) 2024-04-29 15:34:34 +02:00
vcs_menu fs: Move Repository trait into git crate (#10768) 2024-04-19 11:57:17 +02:00
vim Use fewer fancy cursors even for vim users (#11041) 2024-04-26 09:42:21 +02:00
welcome preview tabs: Allow replacing preview tab when using code navigation (#10730) 2024-04-29 20:47:01 +02:00
workspace preview tabs: Allow replacing preview tab when using code navigation (#10730) 2024-04-29 20:47:01 +02:00
worktree Switch from delete file by default to trash file by default (#10875) 2024-04-26 17:43:50 -07:00
zed preview tabs: Allow replacing preview tab when using code navigation (#10730) 2024-04-29 20:47:01 +02:00
zed_actions Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00