| 1836 | } |
| 1837 | |
| 1838 | bool DocumentData::isAudioFile() const { |
| 1839 | if (isVoiceMessage() || isVideoFile()) { |
| 1840 | return false; |
| 1841 | } else if (isSong()) { |
| 1842 | return true; |
| 1843 | } |
| 1844 | const auto prefix = u"audio/"_q; |
| 1845 | if (!_mimeString.startsWith(prefix, Qt::CaseInsensitive)) { |
| 1846 | if (_filename.endsWith(u".opus"_q, Qt::CaseInsensitive)) { |
| 1847 | return true; |
| 1848 | } |
| 1849 | return false; |
| 1850 | } else if (!_filename.isEmpty() |
| 1851 | && _nameType != Core::NameType::Audio |
| 1852 | && _nameType != Core::NameType::Video) { |
| 1853 | return false; |
| 1854 | } |
| 1855 | const auto left = _mimeString.mid(prefix.size()); |
| 1856 | const auto types = { u"x-wav"_q, u"wav"_q, u"mp4"_q }; |
| 1857 | return ranges::contains(types, left); |
| 1858 | } |
| 1859 | |
| 1860 | bool DocumentData::isSharedMediaMusic() const { |
| 1861 | return isSong(); |
no test coverage detected