import QtQuick 2.12 import QtQuick.Controls 2.12 import QtQuick.Window 2.12 import nl.netsoj.chris.Jellyfin 1.0 as J import "../components" import "../.." import ".." Page { id: detailPage property bool _modelsLoaded: false property StackView stackView: StackView.view property string itemId property alias jellyfinItem: jellyfinItemLoader.data header: ToolBar { Label { anchors.horizontalCenter: parent.horizontalCenter font.pixelSize: SailfinStyle.fontSizeLarge text: jellyfinItem.name } } MouseArea { anchors.fill: parent onClicked: stackView.pop() } J.ItemLoader { id: jellyfinItemLoader itemId: detailPage.itemId apiClient: ApiClient } Image { anchors.top: parent.top width: parent.width height: parent.height / 3 source: ApiClient.baseUrl + "/Items/" + itemId + "/Images/Primary?tag=" + jellyfinItem.tag } J.ItemModel { id: tracks loader: J.UserItemsLoader { apiClient: ApiClient parentId: detailPage.itemId } } ListView { width: parent.width height: parent.height / 3 * 2 anchors.bottom: parent.bottom model: tracks header: Label { text: "Play count: %1".arg(jellyfinItem.userData.playCount) } delegate: ItemDelegate { icon.source: ApiClient.baseUrl + "/Items/" + model.jellyfinId + "/Images/Primary?tag=" + model.tag text: model.name width: ListView.view.width onClicked: playbackManager.playItemInList(tracks, model.index) } } }