diff --git a/sailfish/qml/pages/itemdetails/FilmPage.qml b/sailfish/qml/pages/itemdetails/FilmPage.qml index dd7a4ae..4291c7e 100644 --- a/sailfish/qml/pages/itemdetails/FilmPage.qml +++ b/sailfish/qml/pages/itemdetails/FilmPage.qml @@ -1,6 +1,6 @@ /* Sailfin: a Jellyfin client written using Qt -Copyright (C) 2020 Chris Josten +Copyright (C) 2020-2024 Chris Josten This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public @@ -27,6 +27,8 @@ import "../.." VideoPage { subtitle: qsTr("Released: %1 — Run time: %2").arg(itemData.productionYear).arg(Utils.ticksToText(itemData.runTimeTicks)) + imageSource: Utils.itemBackdropUrl(apiClient.baseUrl, itemData, 0, {"maxWidth": parent.width}) + imageBlurhash: itemData.imageBlurHashes["Backdrop"][itemData.backdropImageTags[0]] SectionHeader { text: qsTr("Overview") diff --git a/sailfish/qml/pages/itemdetails/VideoPage.qml b/sailfish/qml/pages/itemdetails/VideoPage.qml index 639a7be..ae5bf66 100644 --- a/sailfish/qml/pages/itemdetails/VideoPage.qml +++ b/sailfish/qml/pages/itemdetails/VideoPage.qml @@ -1,6 +1,6 @@ /* Sailfin: a Jellyfin client written using Qt -Copyright (C) 2020 Chris Josten +Copyright (C) 2020-2024 Chris Josten This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public @@ -30,10 +30,15 @@ import "../.." * the FilmPage or EpisodePage. */ BaseDetailPage { + id: detailPage property alias subtitle: pageHeader.description default property alias _data: content.data property real _playbackProsition: itemData.userData.playbackPositionTicks readonly property bool _userdataReady: itemLoader.status === J.ItemLoader.Ready && itemData.userData !== null + + property string imageSource: Utils.itemImageUrl(apiClient.baseUrl, itemData, "Primary", {"maxWidth": parent.width}) + property string imageBlurhash: itemData.imageBlurHashes["Primary"][itemData.imageTags["Primary"]] + SilicaFlickable { anchors.fill: parent contentHeight: content.height + Theme.paddingLarge @@ -55,9 +60,9 @@ BaseDetailPage { PlayToolbar { id: toolbar width: parent.width - imageSource: Utils.itemImageUrl(apiClient.baseUrl, itemData, "Primary", {"maxWidth": parent.width}) + imageSource: detailPage.imageSource imageAspectRatio: Constants.horizontalVideoAspectRatio - imageBlurhash: itemData.imageBlurHashes["Primary"][itemData.imageTags["Primary"]] + imageBlurhash: detailPage.imageBlurhash Binding on favourited { when: _userdataReady value: itemData.userData.favorite