kdeconnect-kde/app/qml/FindDevicesPage.qml

78 lines
2 KiB
QML
Raw Normal View History

/*
* SPDX-FileCopyrightText: 2016 Aleix Pol Gonzalez <aleixpol@kde.org>
*
* SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
*/
import QtQuick 2.2
2018-06-08 00:58:50 +01:00
import QtQuick.Controls 2.3
import QtQuick.Layouts 1.1
import org.kde.kirigami 2.12 as Kirigami
import org.kde.kdeconnect 1.0
Kirigami.ScrollablePage
{
id: root
Component {
id: deviceComp
DevicePage {}
}
2016-08-21 17:45:49 +01:00
objectName: "FindDevices"
2023-07-22 18:58:18 +01:00
title: i18ndc("kdeconnect-app", "Title of the page listing the devices", "Devices")
supportsRefreshing: true
onRefreshingChanged: {
DaemonDbusInterface.forceOnNetworkChange()
refreshResetTimer.start()
}
Timer {
id: refreshResetTimer
interval: 1000
onTriggered: root.refreshing = false
}
Kirigami.PlaceholderMessage {
text: i18nd("kdeconnect-app", "No devices found")
anchors.centerIn: parent
visible: devices.count === 0
}
ListView {
id: devices
section {
property: "status"
2020-02-06 15:43:44 +00:00
delegate: Kirigami.ListSectionHeader {
text: switch (parseInt(section))
{
case DevicesModel.Paired:
return i18nd("kdeconnect-app", "Remembered")
case DevicesModel.Reachable:
return i18nd("kdeconnect-app", "Available")
case (DevicesModel.Reachable | DevicesModel.Paired):
return i18nd("kdeconnect-app", "Connected")
}
}
}
model: DevicesSortProxyModel {
sourceModel: DevicesModel {}
}
delegate: Kirigami.BasicListItem {
@KIRIGAMI_ICON@: iconName
2019-02-08 16:40:47 +00:00
iconColor: "transparent"
2022-06-23 10:49:22 +01:00
label: model.name
2020-07-17 00:05:22 +01:00
subtitle: toolTip
highlighted: false
onClicked: {
pageStack.push(
deviceComp,
{currentDevice: device}
);
}
}
}
}