Make newline behave consistently in markdown mode

by always sending as formatted when a newline is in the body
This commit is contained in:
Nicolas Werner 2023-01-28 10:50:39 +01:00
parent ec3ba352c0
commit 872b00807f
No known key found for this signature in database
GPG Key ID: C8D75E610773F2D9

View File

@ -457,7 +457,11 @@ InputBar::message(const QString &msg, MarkdownOverride useMarkdown, bool rainbow
text.body = replaceMatrixToMarkdownLink(msg.trimmed()).toStdString();
// Don't send formatted_body, when we don't need to
if (text.formatted_body.find('<') == std::string::npos)
// Specifically, if it includes no html tag and no newlines (which behave differently in
// formatted bodies). Probably we forgot something, so this might need to expand at some
// point.
if (text.formatted_body.find('<') == std::string::npos &&
text.body.find('\n') == std::string::npos)
text.formatted_body = "";
else
text.format = "org.matrix.custom.html";