diff --git a/deltachat-ffi/deltachat.h b/deltachat-ffi/deltachat.h index 45aa6762a3..eeee972e15 100644 --- a/deltachat-ffi/deltachat.h +++ b/deltachat-ffi/deltachat.h @@ -7749,6 +7749,11 @@ void dc_event_unref(dc_event_t* event); /// Description in connectivity view when proxy is enabled. #define DC_STR_PROXY_ENABLED_DESCRIPTION 221 +/// "Messages in this chat use classic email and are not encrypted." +/// +/// Used as the first info messages in newly created classic email threads. +#define DC_STR_CHAT_UNENCRYPTED_EXPLANATON 230 + /** * @} */ diff --git a/src/chat.rs b/src/chat.rs index c94ab920cb..ba97878ac8 100644 --- a/src/chat.rs +++ b/src/chat.rs @@ -3463,7 +3463,13 @@ pub(crate) async fn create_group_ex( if !context.get_config_bool(Config::Bot).await? && !context.get_config_bool(Config::SkipStartMessages).await? { - let text = stock_str::new_group_send_first_message(context).await; + let text = if !grpid.is_empty() { + // Add "Others will only see this group after you sent a first message." message. + stock_str::new_group_send_first_message(context).await + } else { + // Add "Messages in this chat use classic email and are not encrypted." message. + stock_str::chat_unencrypted_explanation(context).await + }; add_info_msg(context, chat_id, &text, create_smeared_timestamp(context)).await?; } if let (true, true) = (sync.into(), !grpid.is_empty()) { diff --git a/src/stock_str.rs b/src/stock_str.rs index 82f9319271..b7ab40924d 100644 --- a/src/stock_str.rs +++ b/src/stock_str.rs @@ -447,6 +447,9 @@ https://delta.chat/donate"))] fallback = "You are using a proxy. If you're having trouble connecting, try a different proxy." ))] ProxyEnabledDescription = 221, + + #[strum(props(fallback = "Messages in this chat use classic email and are not encrypted."))] + ChatUnencryptedExplanation = 230, } impl StockMessage { @@ -1335,6 +1338,11 @@ pub(crate) async fn proxy_description(context: &Context) -> String { translated(context, StockMessage::ProxyEnabledDescription).await } +/// Stock string: `Messages in this chat use classic email and are not encrypted.`. +pub(crate) async fn chat_unencrypted_explanation(context: &Context) -> String { + translated(context, StockMessage::ChatUnencryptedExplanation).await +} + impl Context { /// Set the stock string for the [StockMessage]. ///