Change summary
crates/activity_indicator/src/activity_indicator.rs | 5 ++++-
crates/project/src/lsp_store.rs | 4 ++++
crates/project/src/project.rs | 5 +++++
3 files changed, 13 insertions(+), 1 deletion(-)
Detailed changes
@@ -352,7 +352,10 @@ impl ActivityIndicator {
.into_any_element(),
),
message: format!("Formatting failed: {}. Click to see logs.", failure),
- on_click: Some(Arc::new(|_, cx| {
+ on_click: Some(Arc::new(|indicator, cx| {
+ indicator.project.update(cx, |project, cx| {
+ project.reset_last_formatting_failure(cx);
+ });
cx.dispatch_action(Box::new(workspace::OpenLog));
})),
});
@@ -5270,6 +5270,10 @@ impl LspStore {
self.last_formatting_failure.as_deref()
}
+ pub fn reset_last_formatting_failure(&mut self) {
+ self.last_formatting_failure = None;
+ }
+
pub fn environment_for_buffer(
&self,
buffer: &Model<Buffer>,
@@ -2414,6 +2414,11 @@ impl Project {
self.lsp_store.read(cx).last_formatting_failure()
}
+ pub fn reset_last_formatting_failure(&self, cx: &mut AppContext) {
+ self.lsp_store
+ .update(cx, |store, _| store.reset_last_formatting_failure());
+ }
+
pub fn update_diagnostics(
&mut self,
language_server_id: LanguageServerId,