Fixed rescheduling of selected and grouped scheduled messages.

This commit is contained in:
23rd 2024-05-02 23:39:27 +03:00 committed by John Preston
parent 5e1f0e9f7f
commit de1f222bac

View File

@ -553,11 +553,18 @@ bool AddRescheduleAction(
}
const auto callback = [=](Api::SendOptions options) {
list->cancelSelection();
auto groupedIds = std::vector<MessageGroupId>();
for (const auto &id : ids) {
const auto item = owner->message(id);
if (!item || !item->isScheduled()) {
continue;
}
if (const auto groupId = item->groupId()) {
if (ranges::contains(groupedIds, groupId)) {
continue;
}
groupedIds.push_back(groupId);
}
Api::RescheduleMessage(item, options);
// Increase the scheduled date by 1s to keep the order.
options.scheduled += 1;