keymap_ui: Open Keymap editor from settings dropdown (#34576)

@probably-neb I guess we should be opening the keymap editor from title
bar and menu as well. I believe this got missed in this: #34568.

Release Notes:

- Open Keymap editor from settings from menu and title bar.
This commit is contained in:
Umesh Yadav 2025-07-17 03:00:08 +05:30 committed by Joseph T. Lyons
parent f249ee481d
commit 991887a3ea
4 changed files with 7 additions and 3 deletions

1
Cargo.lock generated
View file

@ -16452,6 +16452,7 @@ dependencies = [
"schemars", "schemars",
"serde", "serde",
"settings", "settings",
"settings_ui",
"smallvec", "smallvec",
"story", "story",
"telemetry", "telemetry",

View file

@ -40,6 +40,7 @@ rpc.workspace = true
schemars.workspace = true schemars.workspace = true
serde.workspace = true serde.workspace = true
settings.workspace = true settings.workspace = true
settings_ui.workspace = true
smallvec.workspace = true smallvec.workspace = true
story = { workspace = true, optional = true } story = { workspace = true, optional = true }
telemetry.workspace = true telemetry.workspace = true

View file

@ -30,6 +30,7 @@ use onboarding_banner::OnboardingBanner;
use project::Project; use project::Project;
use rpc::proto; use rpc::proto;
use settings::Settings as _; use settings::Settings as _;
use settings_ui::keybindings;
use std::sync::Arc; use std::sync::Arc;
use theme::ActiveTheme; use theme::ActiveTheme;
use title_bar_settings::TitleBarSettings; use title_bar_settings::TitleBarSettings;
@ -683,7 +684,7 @@ impl TitleBar {
) )
.separator() .separator()
.action("Settings", zed_actions::OpenSettings.boxed_clone()) .action("Settings", zed_actions::OpenSettings.boxed_clone())
.action("Key Bindings", Box::new(zed_actions::OpenKeymap)) .action("Key Bindings", Box::new(keybindings::OpenKeymapEditor))
.action( .action(
"Themes…", "Themes…",
zed_actions::theme_selector::Toggle::default().boxed_clone(), zed_actions::theme_selector::Toggle::default().boxed_clone(),
@ -727,7 +728,7 @@ impl TitleBar {
.menu(|window, cx| { .menu(|window, cx| {
ContextMenu::build(window, cx, |menu, _, _| { ContextMenu::build(window, cx, |menu, _, _| {
menu.action("Settings", zed_actions::OpenSettings.boxed_clone()) menu.action("Settings", zed_actions::OpenSettings.boxed_clone())
.action("Key Bindings", Box::new(zed_actions::OpenKeymap)) .action("Key Bindings", Box::new(keybindings::OpenKeymapEditor))
.action( .action(
"Themes…", "Themes…",
zed_actions::theme_selector::Toggle::default().boxed_clone(), zed_actions::theme_selector::Toggle::default().boxed_clone(),

View file

@ -1,5 +1,6 @@
use collab_ui::collab_panel; use collab_ui::collab_panel;
use gpui::{Menu, MenuItem, OsAction}; use gpui::{Menu, MenuItem, OsAction};
use settings_ui::keybindings;
use terminal_view::terminal_panel; use terminal_view::terminal_panel;
pub fn app_menus() -> Vec<Menu> { pub fn app_menus() -> Vec<Menu> {
@ -16,7 +17,7 @@ pub fn app_menus() -> Vec<Menu> {
name: "Settings".into(), name: "Settings".into(),
items: vec![ items: vec![
MenuItem::action("Open Settings", super::OpenSettings), MenuItem::action("Open Settings", super::OpenSettings),
MenuItem::action("Open Key Bindings", zed_actions::OpenKeymap), MenuItem::action("Open Key Bindings", keybindings::OpenKeymapEditor),
MenuItem::action("Open Default Settings", super::OpenDefaultSettings), MenuItem::action("Open Default Settings", super::OpenDefaultSettings),
MenuItem::action( MenuItem::action(
"Open Default Key Bindings", "Open Default Key Bindings",