diff --git a/cockatrice/src/interface/widgets/tabs/tab_message.cpp b/cockatrice/src/interface/widgets/tabs/tab_message.cpp index 9e9dbce1c..1fe185ca5 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_message.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab_message.cpp @@ -96,7 +96,15 @@ void TabMessage::closeEvent(QCloseEvent *event) void TabMessage::sendMessage() { - if (sayEdit->text().isEmpty() || !userOnline) { + if (sayEdit->text().isEmpty()) { + return; + } + + if (!userOnline) { + // Keep the draft: the user may be back momentarily, and the typed text + // should not be lost to a transient offline spell. + chatView->appendMessage( + tr("Message not sent — %1 is offline.").arg(QString::fromStdString(otherUserInfo->name()))); return; }