diff --git a/crates/language_selector/src/language_selector.rs b/crates/language_selector/src/language_selector.rs index 5a2918660e07297c9eac60bb2edc2fb924ddea78..786dd5abe0ba92a6425cc94e197bc4fc56bb2762 100644 --- a/crates/language_selector/src/language_selector.rs +++ b/crates/language_selector/src/language_selector.rs @@ -211,11 +211,16 @@ impl PickerDelegate for LanguageSelector { ) -> ElementBox { let settings = cx.global::(); let theme = &settings.theme; - let theme_match = &self.matches[ix]; + let mat = &self.matches[ix]; let style = theme.picker.item.style_for(mouse_state, selected); + let buffer_language_name = self.buffer.read(cx).language().map(|l| l.name()); + let mut label = mat.string.clone(); + if buffer_language_name.as_deref() == Some(mat.string.as_str()) { + label.push_str(" (current)"); + } - Label::new(theme_match.string.clone(), style.label.clone()) - .with_highlights(theme_match.positions.clone()) + Label::new(label, style.label.clone()) + .with_highlights(mat.positions.clone()) .contained() .with_style(style.container) .boxed()