Remove cx from ThemeSettings (#38836)

Before this change the active theme and icon theme were retrofitted onto
the ThemeSettings.

Now they're in their own new global (GlobalTheme::theme(cx) and
GlobalTheme::icon_theme(cx))

This lets us remove cx from the settings traits, and tidy up a few other
things along the way.

Release Notes:

- N/A
This commit is contained in:
Conrad Irwin
2025-10-06 23:06:50 +00:00
committed by GitHub
parent 4de13e06ec
commit a2a7bd139a
60 changed files with 360 additions and 423 deletions
@@ -16,7 +16,7 @@ pub fn init(cx: &mut App) {
pub struct VimModeSetting(pub bool);
impl Settings for VimModeSetting {
fn from_settings(content: &SettingsContent, _cx: &mut App) -> Self {
fn from_settings(content: &SettingsContent) -> Self {
Self(content.vim_mode.unwrap())
}
@@ -28,7 +28,7 @@ impl Settings for VimModeSetting {
pub struct HelixModeSetting(pub bool);
impl Settings for HelixModeSetting {
fn from_settings(content: &SettingsContent, _cx: &mut App) -> Self {
fn from_settings(content: &SettingsContent) -> Self {
Self(content.helix_mode.unwrap())
}