diff --git a/Telegram/SourceFiles/history/history_widget.cpp b/Telegram/SourceFiles/history/history_widget.cpp index b8a243a202..aa92502368 100644 --- a/Telegram/SourceFiles/history/history_widget.cpp +++ b/Telegram/SourceFiles/history/history_widget.cpp @@ -821,6 +821,13 @@ void HistoryWidget::initVoiceRecordBar() { }, lifetime()); _voiceRecordBar->hideFast(); + + _voiceRecordBar->shownValue( + ) | rpl::start_with_next([=](bool shown) { + if (!shown) { + applyDraft(); + } + }, lifetime()); } void HistoryWidget::initTabbedSelector() { @@ -2082,8 +2089,15 @@ bool HistoryWidget::contentOverlapped(const QRect &globalRect) { } bool HistoryWidget::canWriteMessage() const { - if (!_history || !_canSendMessages) return false; - if (isBlocked() || isJoinChannel() || isMuteUnmute() || isBotStart()) return false; + if (!_history || !_canSendMessages) { + return false; + } + if (isBlocked() || isJoinChannel() || isMuteUnmute() || isBotStart()) { + return false; + } + if (!_voiceRecordBar->isHidden()) { + return false; + } return true; }