| 241 | } |
| 242 | |
| 243 | void Premium::reloadCloudSet() { |
| 244 | if (_cloudSetRequestId) { |
| 245 | return; |
| 246 | } |
| 247 | _cloudSetRequestId = _api.request(MTPmessages_GetStickers( |
| 248 | MTP_string("\xf0\x9f\x93\x82\xe2\xad\x90\xef\xb8\x8f"), |
| 249 | MTP_long(_cloudSetHash) |
| 250 | )).done([=](const MTPmessages_Stickers &result) { |
| 251 | _cloudSetRequestId = 0; |
| 252 | result.match([&](const MTPDmessages_stickersNotModified &) { |
| 253 | }, [&](const MTPDmessages_stickers &data) { |
| 254 | _cloudSetHash = data.vhash().v; |
| 255 | const auto owner = &_session->data(); |
| 256 | _cloudSet.clear(); |
| 257 | for (const auto &sticker : data.vstickers().v) { |
| 258 | const auto document = owner->processDocument(sticker); |
| 259 | if (document->isPremiumSticker()) { |
| 260 | _cloudSet.push_back(document); |
| 261 | } |
| 262 | } |
| 263 | _cloudSetUpdated.fire({}); |
| 264 | }); |
| 265 | }).fail([=] { |
| 266 | _cloudSetRequestId = 0; |
| 267 | }).send(); |
| 268 | } |
| 269 | |
| 270 | void Premium::reloadHelloStickers() { |
| 271 | if (_helloStickersRequestId) { |
nothing calls this directly
no test coverage detected