Added file origin to sticker pack for gifts.

This commit is contained in:
23rd 2024-07-17 14:30:19 +03:00 committed by John Preston
parent bcb6e9e1af
commit 3f2cb8f8c9
2 changed files with 12 additions and 0 deletions

View file

@ -9,6 +9,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "apiwrap.h"
#include "data/data_document.h"
#include "data/data_file_origin.h"
#include "data/data_session.h"
#include "main/main_session.h"
@ -38,6 +39,10 @@ DocumentData *GiftBoxPack::lookup(int months) const {
return (index >= _documents.size()) ? fallback : _documents[index];
}
Data::FileOrigin GiftBoxPack::origin() const {
return Data::FileOriginStickerSet(_setId, _accessHash);
}
void GiftBoxPack::load() {
if (_requestId || !_documents.empty()) {
return;
@ -59,6 +64,7 @@ void GiftBoxPack::load() {
void GiftBoxPack::applySet(const MTPDmessages_stickerSet &data) {
_setId = data.vset().data().vid().v;
_accessHash = data.vset().data().vaccess_hash().v;
auto documents = base::flat_map<DocumentId, not_null<DocumentData*>>();
for (const auto &sticker : data.vdocuments().v) {
const auto document = _session->data().processDocument(sticker);

View file

@ -9,6 +9,10 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
class DocumentData;
namespace Data {
struct FileOrigin;
} // namespace Data
namespace Main {
class Session;
} // namespace Main
@ -22,6 +26,7 @@ public:
void load();
[[nodiscard]] DocumentData *lookup(int months) const;
[[nodiscard]] Data::FileOrigin origin() const;
private:
using SetId = uint64;
@ -32,6 +37,7 @@ private:
std::vector<DocumentData*> _documents;
SetId _setId = 0;
uint64 _accessHash = 0;
mtpRequestId _requestId = 0;
};