Allowed to select loaded documents for bulk download menu item.

This commit is contained in:
23rd 2023-09-06 13:26:36 +03:00
parent 90adc2d97c
commit ed345e0823
1 changed files with 4 additions and 11 deletions

View File

@ -34,8 +34,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
namespace Menu {
namespace {
using DocumentViewPtr = std::shared_ptr<Data::DocumentMedia>;
using Documents = std::vector<std::pair<DocumentViewPtr, FullMsgId>>;
using Documents = std::vector<std::pair<not_null<DocumentData*>, FullMsgId>>;
using Photos = std::vector<std::shared_ptr<Data::PhotoMedia>>;
[[nodiscard]] bool Added(
@ -52,12 +51,8 @@ using Photos = std::vector<std::shared_ptr<Data::PhotoMedia>>;
}
}
} else if (const auto document = media->document()) {
if (const auto view = document->activeMediaView()) {
if (!view->loaded()) {
documents.emplace_back(view, item->fullId());
return true;
}
}
documents.emplace_back(document, item->fullId());
return true;
}
}
}
@ -131,9 +126,7 @@ void AddAction(
}
};
const auto saveDocuments = [=](const QString &folderPath) {
for (const auto &pair : documents) {
const auto &document = pair.first->owner();
const auto &origin = pair.second;
for (const auto &[document, origin] : documents) {
if (!folderPath.isEmpty()) {
document->save(origin, folderPath + document->filename());
} else {