Removed showDocument and showPhoto from Application.

This commit is contained in:
23rd 2021-06-15 22:41:56 +03:00 committed by John Preston
parent 1f816c249b
commit b4bff939b1
3 changed files with 14 additions and 43 deletions

View File

@ -390,41 +390,6 @@ bool Application::hideMediaView() {
return false;
}
void Application::showPhoto(not_null<const PhotoOpenClickHandler*> link) {
const auto photo = link->photo();
const auto peer = link->peer();
const auto item = photo->owner().message(link->context());
return (!item && peer)
? showPhoto(photo, peer)
: showPhoto(photo, item);
}
void Application::showPhoto(not_null<PhotoData*> photo, HistoryItem *item) {
Expects(_mediaView != nullptr);
_mediaView->showPhoto(photo, item);
}
void Application::showPhoto(
not_null<PhotoData*> photo,
not_null<PeerData*> peer) {
Expects(_mediaView != nullptr);
_mediaView->showPhoto(photo, peer);
}
void Application::showDocument(not_null<DocumentData*> document, HistoryItem *item) {
Expects(_mediaView != nullptr);
if (cUseExternalVideoPlayer()
&& document->isVideoFile()
&& !document->filepath().isEmpty()) {
File::Launch(document->location(false).fname);
} else {
_mediaView->showDocument(document, item);
}
}
void Application::showTheme(
not_null<DocumentData*> document,
const Data::CloudTheme &cloud) {

View File

@ -143,10 +143,6 @@ public:
// Media view interface.
void checkMediaViewActivation();
bool hideMediaView();
void showPhoto(not_null<const PhotoOpenClickHandler*> link);
void showPhoto(not_null<PhotoData*> photo, HistoryItem *item);
void showPhoto(not_null<PhotoData*> photo, not_null<PeerData*> item);
void showDocument(not_null<DocumentData*> document, HistoryItem *item);
void showTheme(
not_null<DocumentData*> document,
const Data::CloudTheme &cloud);

View File

@ -216,6 +216,16 @@ void ResolveDocument(
}
const auto msgId = item ? item->fullId() : FullMsgId();
const auto showDocument = [&] {
if (cUseExternalVideoPlayer()
&& document->isVideoFile()
&& !document->filepath().isEmpty()) {
File::Launch(document->location(false).fname);
} else {
controller->openDocument(document, msgId, true);
}
};
const auto media = document->createMediaView();
const auto openImageInApp = [&] {
if (document->size >= App::kImageSizeLimit) {
@ -229,7 +239,7 @@ void ResolveDocument(
const auto path = location.name();
if (Core::MimeTypeForFile(path).name().startsWith("image/")
&& QImageReader(path).canRead()) {
controller->openDocument(document, msgId, true);
showDocument();
return true;
}
} else if (document->mimeString().startsWith("image/")
@ -237,7 +247,7 @@ void ResolveDocument(
auto bytes = media->bytes();
auto buffer = QBuffer(&bytes);
if (QImageReader(&buffer).canRead()) {
controller->openDocument(document, msgId, true);
showDocument();
return true;
}
}
@ -245,7 +255,7 @@ void ResolveDocument(
};
const auto &location = document->location(true);
if (document->isTheme() && media->loaded(true)) {
controller->openDocument(document, msgId, true);
showDocument();
location.accessDisable();
} else if (media->canBePlayed()) {
if (document->isAudioFile()
@ -257,7 +267,7 @@ void ResolveDocument(
&& HistoryView::Gif::CanPlayInline(document)) {
document->owner().requestAnimationPlayInline(item);
} else {
controller->openDocument(document, msgId, true);
showDocument();
}
} else {
document->saveFromDataSilent();