Show a user-visible error message if saving fails (#19311)

Release Notes:

- Added a user-visible error message when a manual save fails.
This commit is contained in:
Conrad Irwin 2024-10-16 15:17:38 -06:00 committed by GitHub
parent fedd177b08
commit 08b1545c85
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -46,7 +46,9 @@ use itertools::Itertools;
use language::{LanguageRegistry, Rope};
pub use modal_layer::*;
use node_runtime::NodeRuntime;
use notifications::{simple_message_notification::MessageNotification, NotificationHandle};
use notifications::{
simple_message_notification::MessageNotification, DetachAndPromptErr, NotificationHandle,
};
pub use pane::*;
pub use pane_group::*;
pub use persistence::{
@ -4359,17 +4361,17 @@ impl Workspace {
.on_action(cx.listener(|workspace, action: &Save, cx| {
workspace
.save_active_item(action.save_intent.unwrap_or(SaveIntent::Save), cx)
.detach_and_log_err(cx);
.detach_and_prompt_err("Failed to save", cx, |_, _| None);
}))
.on_action(cx.listener(|workspace, _: &SaveWithoutFormat, cx| {
workspace
.save_active_item(SaveIntent::SaveWithoutFormat, cx)
.detach_and_log_err(cx);
.detach_and_prompt_err("Failed to save", cx, |_, _| None);
}))
.on_action(cx.listener(|workspace, _: &SaveAs, cx| {
workspace
.save_active_item(SaveIntent::SaveAs, cx)
.detach_and_log_err(cx);
.detach_and_prompt_err("Failed to save", cx, |_, _| None);
}))
.on_action(cx.listener(|workspace, _: &ActivatePreviousPane, cx| {
workspace.activate_previous_pane(cx)