import QtQuick 2.11
import QtQuick.Layouts 1.11
import QtQuick.Controls 2.4
-
-import QtQuick.Window 2.11
+import QtQuick.Window 2.13
import AGL.Demo.Controls 1.0
}
}
+ Component.onCompleted : {
+ // Let the mediaplayer backend know we're ready for metadata events
+ mediaplayer.start()
+
+ VehicleSignals.connect()
+ }
+
Connections {
target: mediaplayer
}
}
+ Connections {
+ target: VehicleSignals
+
+ onConnected: {
+ VehicleSignals.authorize()
+ }
+
+ onAuthorized: {
+ VehicleSignals.subscribe("Vehicle.Cabin.SteeringWheel.Switches.Next")
+ VehicleSignals.subscribe("Vehicle.Cabin.SteeringWheel.Switches.Previous")
+ VehicleSignals.subscribe("Vehicle.Cabin.SteeringWheel.Switches.Mode")
+ }
+
+ onSignalNotification: {
+ if (path === "Vehicle.Cabin.SteeringWheel.Switches.Next" && value === "true") {
+ mediaplayer.next()
+ } else if (path === "Vehicle.Cabin.SteeringWheel.Switches.Previous" && value === "true") {
+ mediaplayer.previous()
+ } else if (path === "Vehicle.Cabin.SteeringWheel.Switches.Mode" && value === "true") {
+ if (player.av_connected)
+ mediaplayer.connect()
+ else
+ mediaplayer.disconnect()
+ }
+ }
+ }
+
Timer {
id: timer
interval: 250
Item {
id: container
anchors.centerIn: parent
- width: Screen.width
- height: Screen.height
+ width: Window.width
+ height: Window.height
//scale: screenInfo.scale_factor()
scale: 1
Layout.fillHeight: true
Layout.preferredHeight: 1080
clip: true
+
Image {
+ anchors.top: parent.top
anchors.left: parent.left
anchors.right: parent.right
- anchors.bottom: parent.bottom
- height: sourceSize.height * width / sourceSize.width
- fillMode: Image.PreserveAspectCrop
+ anchors.bottom: controls.top
+ fillMode: Image.PreserveAspectFit
source: AlbumArt
visible: player.av_connected === false
}
Item {
+ id: controls
anchors.left: parent.left
anchors.right: parent.right
anchors.bottom: parent.bottom
Item {
Layout.fillWidth: true
Layout.fillHeight: true
- Layout.preferredHeight: 407
+ Layout.preferredHeight: 480
ListView {
anchors.fill: parent