Update status bar theming

Co-Authored-By: Nate Butler <iamnbutler@gmail.com>
This commit is contained in:
Conrad Irwin 2023-07-25 10:58:44 -06:00
parent baa16a2fc6
commit 1f65effe57
7 changed files with 25 additions and 28 deletions

View file

@ -33,6 +33,7 @@ search = { path = "../search" }
settings = { path = "../settings" }
workspace = { path = "../workspace" }
theme = { path = "../theme" }
language_selector = { path = "../language_selector"}
[dev-dependencies]
indoc.workspace = true

View file

@ -40,7 +40,10 @@ impl View for ModeIndicator {
Mode::Visual { line: false } => "-- VISUAL --",
Mode::Visual { line: true } => "VISUAL LINE ",
};
Label::new(text, theme.vim_mode_indicator.clone()).into_any()
Label::new(text, theme.vim_mode_indicator.text.clone())
.contained()
.with_style(theme.vim_mode_indicator.container)
.into_any()
}
}

View file

@ -289,9 +289,8 @@ impl Vim {
Some(cx.add_view(|_| ModeIndicator::new(vim.state.mode)));
};
let mode_indicator = vim.mode_indicator.as_ref().unwrap();
// TODO: would it be better to depend on the diagnostics crate
// so we can pass the type directly?
let position = status_bar.position_of_named_item("DiagnosticIndicator");
let position = status_bar
.position_of_item::<language_selector::ActiveBufferLanguage>();
if let Some(position) = position {
status_bar.insert_item_after(position, mode_indicator.clone(), cx)
} else {