| 201 | } |
| 202 | |
| 203 | bool PhotoMedia::saveToFile(const QString &path) { |
| 204 | constexpr auto large = PhotoSize::Large; |
| 205 | if (const auto video = videoContent(large); !video.isEmpty()) { |
| 206 | QFile f(path); |
| 207 | return f.open(QIODevice::WriteOnly) |
| 208 | && (f.write(video) == video.size()); |
| 209 | } else if (const auto photo = imageBytes(large); !photo.isEmpty()) { |
| 210 | QFile f(path); |
| 211 | return f.open(QIODevice::WriteOnly) |
| 212 | && (f.write(photo) == photo.size()); |
| 213 | } else if (const auto fallback = image(large)->original() |
| 214 | ; !fallback.isNull()) { |
| 215 | return fallback.save(path, "JPG"); |
| 216 | } |
| 217 | return false; |
| 218 | } |
| 219 | |
| 220 | bool PhotoMedia::setToClipboard() { |
| 221 | constexpr auto large = PhotoSize::Large; |
no test coverage detected