feat: redesign status chrome and floating prompts

This commit is contained in:
Valdemar Lorenzen
2026-10-12 12:21:31 +02:00
parent 8c6a050171
commit 52915ffacf
12 changed files with 1333 additions and 373 deletions
+21 -5
View File
@@ -251,9 +251,7 @@ impl EditorSession {
));
}
}
if notices.is_empty() {
editor.set_message("Ready • --no-config uses default keybindings");
} else {
if !notices.is_empty() {
editor.set_message(notices.join(" | "));
}
let mut session = Self {
@@ -512,7 +510,7 @@ impl EditorSession {
}
if !self.lsp.is_enabled() && !self.plugins.values().any(RubyPlugin::is_async) {
self.documents.clear();
return false;
return self.refresh_lsp_names();
}
let mut events = Vec::new();
if !self.editor.should_quit() {
@@ -604,7 +602,25 @@ impl EditorSession {
for (owner, error) in failures {
self.retire(&owner, &error);
}
changed
changed | self.refresh_lsp_names()
}
fn refresh_lsp_names(&mut self) -> bool {
let buffer_id = self.editor.buffer_id();
if self.lsp.active_server_names(buffer_id).eq(self
.editor
.lsp_names()
.iter()
.map(String::as_str))
{
return false;
}
self.editor.set_lsp_names(
self.lsp
.active_server_names(buffer_id)
.map(str::to_owned)
.collect(),
)
}
fn source_is_current(&self, source: InvocationSource) -> bool {