Don't allow in-notification reply with slowmode.

This commit is contained in:
John Preston 2019-07-18 10:37:10 +02:00
parent 234b0ffcf0
commit a7d9aa947b
1 changed files with 10 additions and 5 deletions

View File

@ -444,9 +444,14 @@ Manager::DisplayOptions Manager::getNotificationOptions(HistoryItem *item) {
|| Global::ScreenIsLocked();
DisplayOptions result;
result.hideNameAndPhoto = hideEverything || (Global::NotifyView() > dbinvShowName);
result.hideMessageText = hideEverything || (Global::NotifyView() > dbinvShowPreview);
result.hideReplyButton = result.hideMessageText || !item || !item->history()->peer->canWrite();
result.hideNameAndPhoto = hideEverything
|| (Global::NotifyView() > dbinvShowName);
result.hideMessageText = hideEverything
|| (Global::NotifyView() > dbinvShowPreview);
result.hideReplyButton = result.hideMessageText
|| !item
|| !item->history()->peer->canWrite()
|| (item->history()->peer->slowmodeSecondsLeft() > 0);
return result;
}
@ -510,11 +515,11 @@ void Manager::notificationReplied(
message.textWithTags = reply;
message.replyTo = (msgId > 0 && !history->peer->isUser()) ? msgId : 0;
message.clearDraft = false;
Auth().api().sendMessage(std::move(message));
history->session().api().sendMessage(std::move(message));
const auto item = history->owner().message(history->channelId(), msgId);
if (item && item->isUnreadMention() && !item->isUnreadMedia()) {
Auth().api().markMediaRead(item);
history->session().api().markMediaRead(item);
}
}