Skip to content

Commit

Permalink
Added very simple photo viewer
Browse files Browse the repository at this point in the history
  • Loading branch information
HenkKalkwater committed Oct 10, 2020
1 parent d6a1f43 commit e838fcc
Show file tree
Hide file tree
Showing 6 changed files with 46 additions and 5 deletions.
1 change: 1 addition & 0 deletions core/include/jellyfinapiclient.h
Original file line number Diff line number Diff line change
Expand Up @@ -179,6 +179,7 @@ public slots:
* @brief Shares the capabilities of this device to the server.
*/
void postCapabilities();
QString downloadUrl(const QString &itemId) const;

protected slots:
void defaultNetworkErrorHandler(QNetworkReply::NetworkError error);
Expand Down
4 changes: 4 additions & 0 deletions core/src/jellyfinapiclient.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -248,6 +248,10 @@ void ApiClient::postCapabilities() {
setDefaultErrorHandler(rep);
}

QString ApiClient::downloadUrl(const QString &itemId) const {
return m_baseUrl + "/Items/" + itemId + "/Download?api_key=" + this->m_token;
}

void ApiClient::generateDeviceProfile() {
QJsonObject root = DeviceProfile::generateProfile();
m_playbackDeviceProfile = QJsonObject(root);
Expand Down
3 changes: 3 additions & 0 deletions harbour-sailfin.pro
Original file line number Diff line number Diff line change
Expand Up @@ -22,4 +22,7 @@ message($$SUBDIRS)
# modify the localized app name in the the .desktop file.
# TRANSLATIONS += \

DISTFILES += \
sailfish/qml/pages/itemdetails/PhotoPage.qml


2 changes: 2 additions & 0 deletions sailfish/qml/Utils.js
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,8 @@ function getPageUrl(mediaType, itemType) {
return Qt.resolvedUrl("pages/itemdetails/CollectionPage.qml")
case "video":
return Qt.resolvedUrl("pages/itemdetails/VideoPage.qml")
case "photo":
return Qt.resolvedUrl("pages/itemdetails/PhotoPage.qml")
default:
return Qt.resolvedUrl("pages/itemdetails/UnsupportedPage.qml")
}
Expand Down
6 changes: 1 addition & 5 deletions sailfish/qml/components/VideoPlayer.qml
Original file line number Diff line number Diff line change
Expand Up @@ -41,14 +41,10 @@ SilicaItem {
property alias subtitleTrack: mediaSource.subtitleIndex
property real startTicks: 0

// Force a Light on Dark theme since I doubt that there are persons who are willing to watch a Video
// on a white background.
palette.colorScheme: Theme.LightOnDark

// Blackground to prevent the ambience from leaking through
Rectangle {
anchors.fill: parent
color: "black"
color: Theme.overlayBackgroundColor
}

PlaybackManager {
Expand Down
35 changes: 35 additions & 0 deletions sailfish/qml/pages/itemdetails/PhotoPage.qml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
import QtQuick 2.6
import Sailfish.Silica 1.0

import nl.netsoj.chris.Jellyfin 1.0

BaseDetailPage {
id: pageRoot
navigationStyle: PageNavigation.Vertical

Rectangle {
anchors.fill: parent
color: Theme.overlayBackgroundColor
}

PageHeader {
title: itemData.name
titleColor: Theme.primaryColor
}

Image {
id: image
source: ApiClient.downloadUrl(itemId)
fillMode: Image.PreserveAspectFit
anchors.fill: parent

opacity: status == Image.Ready ? 1.0 : 0.0
Behavior on opacity { FadeAnimator {}}
}

BusyIndicator {
running: image.status == Image.Loading
size: BusyIndicatorSize.Large
anchors.centerIn: parent
}
}

0 comments on commit e838fcc

Please sign in to comment.