Return duration of web page in get_message_content_duration.

This commit is contained in:
levlam 2021-07-26 04:33:56 +03:00
parent 20a98ad7c9
commit 5d579af30a
3 changed files with 14 additions and 0 deletions

View File

@ -4904,6 +4904,10 @@ int32 get_message_content_duration(const MessageContent *content, const Td *td)
auto audio_file_id = static_cast<const MessageAudio *>(content)->file_id; auto audio_file_id = static_cast<const MessageAudio *>(content)->file_id;
return td->audios_manager_->get_audio_duration(audio_file_id); return td->audios_manager_->get_audio_duration(audio_file_id);
} }
case MessageContentType::Text: {
auto web_page_id = static_cast<const MessageText *>(content)->web_page_id;
return td->web_pages_manager_->get_web_page_duration(web_page_id);
}
case MessageContentType::Video: { case MessageContentType::Video: {
auto video_file_id = static_cast<const MessageVideo *>(content)->file_id; auto video_file_id = static_cast<const MessageVideo *>(content)->file_id;
return td->videos_manager_->get_video_duration(video_file_id); return td->videos_manager_->get_video_duration(video_file_id);

View File

@ -1690,6 +1690,14 @@ string WebPagesManager::get_web_page_search_text(WebPageId web_page_id) const {
return PSTRING() << web_page->title + " " + web_page->description; return PSTRING() << web_page->title + " " + web_page->description;
} }
int32 WebPagesManager::get_web_page_duration(WebPageId web_page_id) const {
const WebPage *web_page = get_web_page(web_page_id);
if (web_page == nullptr) {
return 0;
}
return web_page->duration;
}
vector<FileId> WebPagesManager::get_web_page_file_ids(const WebPage *web_page) const { vector<FileId> WebPagesManager::get_web_page_file_ids(const WebPage *web_page) const {
if (web_page == nullptr) { if (web_page == nullptr) {
return vector<FileId>(); return vector<FileId>();

View File

@ -87,6 +87,8 @@ class WebPagesManager final : public Actor {
string get_web_page_search_text(WebPageId web_page_id) const; string get_web_page_search_text(WebPageId web_page_id) const;
int32 get_web_page_duration(WebPageId web_page_id) const;
private: private:
static constexpr int32 WEBPAGE_FLAG_HAS_TYPE = 1 << 0; static constexpr int32 WEBPAGE_FLAG_HAS_TYPE = 1 << 0;
static constexpr int32 WEBPAGE_FLAG_HAS_SITE_NAME = 1 << 1; static constexpr int32 WEBPAGE_FLAG_HAS_SITE_NAME = 1 << 1;