gpui: Store action documentation (#33809)

Closes #ISSUE

Adds a new `documentation` method to actions, that is extracted from doc
comments when using the `actions!` or derive macros.

Additionally, this PR adds doc comments to as many action definitions in
Zed as possible.

Release Notes:

- N/A *or* Added/Fixed/Improved ...
This commit is contained in:
Ben Kunkle
2025-07-02 21:14:33 -04:00
committed by GitHub
parent def8bab5a8
commit 6cd4dbdea1
96 changed files with 1467 additions and 78 deletions
+9 -1
View File
@@ -12,7 +12,15 @@ use smallvec::SmallVec;
use ui::{ContextMenu, PopoverMenu, PopoverMenuHandle, Tooltip, prelude::*};
#[cfg(not(target_os = "macos"))]
actions!(app_menu, [ActivateMenuRight, ActivateMenuLeft]);
actions!(
app_menu,
[
/// Navigates to the menu item on the right.
ActivateMenuRight,
/// Navigates to the menu item on the left.
ActivateMenuLeft
]
);
#[cfg(not(target_os = "macos"))]
#[derive(Clone, Deserialize, JsonSchema, PartialEq, Default, Action)]
+11 -1
View File
@@ -11,7 +11,17 @@ use workspace::notifications::DetachAndPromptErr;
use crate::TitleBar;
actions!(collab, [ToggleScreenSharing, ToggleMute, ToggleDeafen]);
actions!(
collab,
[
/// Toggles screen sharing on or off.
ToggleScreenSharing,
/// Toggles microphone mute.
ToggleMute,
/// Toggles deafen mode (mute both microphone and speakers).
ToggleDeafen
]
);
fn toggle_screen_sharing(_: &ToggleScreenSharing, window: &mut Window, cx: &mut App) {
let call = ActiveCall::global(cx).read(cx);
+11 -1
View File
@@ -47,7 +47,17 @@ const MAX_PROJECT_NAME_LENGTH: usize = 40;
const MAX_BRANCH_NAME_LENGTH: usize = 40;
const MAX_SHORT_SHA_LENGTH: usize = 8;
actions!(collab, [ToggleUserMenu, ToggleProjectMenu, SwitchBranch]);
actions!(
collab,
[
/// Toggles the user menu dropdown.
ToggleUserMenu,
/// Toggles the project menu dropdown.
ToggleProjectMenu,
/// Switches to a different git branch.
SwitchBranch
]
);
pub fn init(cx: &mut App) {
TitleBarSettings::register(cx);