Skip to content

Commit

Permalink
title_bar: Remove dependency on theme_selector (zed-industries#21009)
Browse files Browse the repository at this point in the history
This PR removes the `title_bar` crate's dependency on the
`theme_selector`.

The `theme_selector::Toggle` action now resides at
`zed_actions::theme_selector::Toggle`.

Release Notes:

- N/A
  • Loading branch information
maxdeviant authored and Anthony-Eid committed Nov 22, 2024
1 parent 9cbdd0e commit 43dd485
Show file tree
Hide file tree
Showing 8 changed files with 31 additions and 16 deletions.
2 changes: 1 addition & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion crates/extensions_ui/src/extensions_ui.rs
Original file line number Diff line number Diff line change
Expand Up @@ -257,7 +257,7 @@ impl ExtensionsPage {
.update(cx, |workspace, cx| {
theme_selector::toggle(
workspace,
&theme_selector::Toggle {
&zed_actions::theme_selector::Toggle {
themes_filter: Some(themes),
},
cx,
Expand Down
1 change: 1 addition & 0 deletions crates/theme_selector/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -25,5 +25,6 @@ theme.workspace = true
ui.workspace = true
util.workspace = true
workspace.workspace = true
zed_actions.workspace = true

[dev-dependencies]
13 changes: 3 additions & 10 deletions crates/theme_selector/src/theme_selector.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,25 +2,18 @@ use client::telemetry::Telemetry;
use fs::Fs;
use fuzzy::{match_strings, StringMatch, StringMatchCandidate};
use gpui::{
actions, impl_actions, AppContext, DismissEvent, EventEmitter, FocusableView, Render,
UpdateGlobal, View, ViewContext, VisualContext, WeakView,
actions, AppContext, DismissEvent, EventEmitter, FocusableView, Render, UpdateGlobal, View,
ViewContext, VisualContext, WeakView,
};
use picker::{Picker, PickerDelegate};
use serde::Deserialize;
use settings::{update_settings_file, SettingsStore};
use std::sync::Arc;
use theme::{Appearance, Theme, ThemeMeta, ThemeRegistry, ThemeSettings};
use ui::{prelude::*, v_flex, ListItem, ListItemSpacing};
use util::ResultExt;
use workspace::{ui::HighlightedLabel, ModalView, Workspace};
use zed_actions::theme_selector::Toggle;

#[derive(PartialEq, Clone, Default, Debug, Deserialize)]
pub struct Toggle {
/// A list of theme names to filter the theme selector down to.
pub themes_filter: Option<Vec<String>>,
}

impl_actions!(theme_selector, [Toggle]);
actions!(theme_selector, [Reload]);

pub fn init(cx: &mut AppContext) {
Expand Down
1 change: 0 additions & 1 deletion crates/title_bar/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,6 @@ serde.workspace = true
smallvec.workspace = true
story = { workspace = true, optional = true }
theme.workspace = true
theme_selector.workspace = true
ui.workspace = true
util.workspace = true
vcs_menu.workspace = true
Expand Down
10 changes: 8 additions & 2 deletions crates/title_bar/src/title_bar.rs
Original file line number Diff line number Diff line change
Expand Up @@ -579,7 +579,10 @@ impl TitleBar {
})
.action("Settings", zed_actions::OpenSettings.boxed_clone())
.action("Key Bindings", Box::new(zed_actions::OpenKeymap))
.action("Themes…", theme_selector::Toggle::default().boxed_clone())
.action(
"Themes…",
zed_actions::theme_selector::Toggle::default().boxed_clone(),
)
.action("Extensions", zed_actions::Extensions.boxed_clone())
.separator()
.link(
Expand Down Expand Up @@ -615,7 +618,10 @@ impl TitleBar {
ContextMenu::build(cx, |menu, _| {
menu.action("Settings", zed_actions::OpenSettings.boxed_clone())
.action("Key Bindings", Box::new(zed_actions::OpenKeymap))
.action("Themes…", theme_selector::Toggle::default().boxed_clone())
.action(
"Themes…",
zed_actions::theme_selector::Toggle::default().boxed_clone(),
)
.action("Extensions", zed_actions::Extensions.boxed_clone())
.separator()
.link(
Expand Down
5 changes: 4 additions & 1 deletion crates/zed/src/zed/app_menus.rs
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,10 @@ pub fn app_menus() -> Vec<Menu> {
zed_actions::OpenDefaultKeymap,
),
MenuItem::action("Open Project Settings", super::OpenProjectSettings),
MenuItem::action("Select Theme...", theme_selector::Toggle::default()),
MenuItem::action(
"Select Theme...",
zed_actions::theme_selector::Toggle::default(),
),
],
}),
MenuItem::separator(),
Expand Down
13 changes: 13 additions & 0 deletions crates/zed_actions/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,19 @@ pub mod command_palette {
actions!(command_palette, [Toggle]);
}

pub mod theme_selector {
use gpui::impl_actions;
use serde::Deserialize;

#[derive(PartialEq, Clone, Default, Debug, Deserialize)]
pub struct Toggle {
/// A list of theme names to filter the theme selector down to.
pub themes_filter: Option<Vec<String>>,
}

impl_actions!(theme_selector, [Toggle]);
}

#[derive(Clone, Default, Deserialize, PartialEq)]
pub struct InlineAssist {
pub prompt: Option<String>,
Expand Down

0 comments on commit 43dd485

Please sign in to comment.