Add fullscreen map to live location delegates as well

This commit is contained in:
Volker Krause
2023-06-18 10:16:14 +02:00
parent 30f8573dfc
commit c06e69931a
2 changed files with 20 additions and 5 deletions

View File

@@ -11,10 +11,11 @@ import org.kde.kirigami 2.15 as Kirigami
ApplicationWindow {
id: root
required property real latitude
required property real longitude
required property string asset
required property var author
property real latitude: NaN
property real longitude: NaN
property string asset
property var author
property QtObject liveLocationModel: null
flags: Qt.FramelessWindowHint | Qt.WA_TranslucentBackground
visibility: Qt.WindowFullScreen
@@ -35,7 +36,8 @@ ApplicationWindow {
Map {
id: map
anchors.fill: parent
center: QtPositioning.coordinate(root.latitude, root.longitude)
center: root.liveLocationModel ? QtPositioning.coordinate(root.liveLocationModel.boundingBox.y, root.liveLocationModel.boundingBox.x)
: QtPositioning.coordinate(root.latitude, root.longitude)
zoomLevel: 15
plugin: OsmLocationPlugin.plugin
LocationMapItem {
@@ -44,6 +46,11 @@ ApplicationWindow {
asset: root.asset
author: root.author
isLive: true
visible: !isNaN(root.latitude) && !isNaN(root.longitude)
}
MapItemView {
model: root.liveLocationModel
delegate: LocationMapItem {}
}
onCopyrightLinkActivated: {
Qt.openUrlExternally(link)

View File

@@ -47,6 +47,10 @@ TimelineContainer {
TapHandler {
acceptedButtons: Qt.LeftButton
onTapped: {
let map = fullScreenMap.createObject(parent, {liveLocationModel: liveLocationModel});
map.open()
}
onLongPressed: openMessageContext("")
}
TapHandler {
@@ -54,5 +58,9 @@ TimelineContainer {
onTapped: openMessageContext("")
}
}
Component {
id: fullScreenMap
FullScreenMap {}
}
}
}