D17141: Add a plugin for reporting system statistics

Billy Laws noreply at phabricator.kde.org
Sat Nov 24 20:18:06 GMT 2018


blaws added a comment.


  To test you can apply
  
    diff --git a/plasmoid/package/contents/ui/DeviceDelegate.qml b/plasmoid/package/contents/ui/DeviceDelegate.qml
    index 8640f651..9170aa1c 100644
    --- a/plasmoid/package/contents/ui/DeviceDelegate.qml
    +++ b/plasmoid/package/contents/ui/DeviceDelegate.qml
    @@ -48,9 +48,9 @@ PlasmaComponents.ListItem
                 }
     
                 PlasmaComponents.Label {
    +        id: batts
                     horizontalAlignment: Text.AlignHCenter
                     elide: Text.ElideRight
    -                text: (battery.available && battery.charge > -1) ? i18n("%1 (%2)", deviceName, battery.displayString) : deviceName
                     Layout.fillWidth: true
                     textFormat: Text.PlainText
                 }
    @@ -77,21 +77,21 @@ PlasmaComponents.ListItem
                 //Find my phone
                 PlasmaComponents.Button
                 {
    -                FindMyPhone {
    -                    id: findmyphone
    +                SystemStats {
    +                    id: systemstats
                         device: root.device
                     }
     
                     id: ring
                     iconSource: "irc-voice"
    -                visible: findmyphone.available
    +                visible: systemstats.available
                     tooltip: i18n("Ring my phone")
     
    -                onClicked: {
    -                    findmyphone.ring()
    -                }
                 }
    -
    +              Timer {
    +                 interval: 500; running: true; repeat: true
    +                onTriggered: {systemstats.requestStatsUpdate(); batts.text = systemstats.systemStats.CPUUsage}
    +            }
                 //SFTP
                 PlasmaComponents.Button
                 {
    @@ -245,7 +245,9 @@ PlasmaComponents.ListItem
                 id: share
                 device: root.device
             }
    -
    +           PlasmaComponents.Label {
    +    id: cpuu
    +        }
             PlasmaComponents.Label {
                 text: i18n("Share text")
             }
    diff --git a/plasmoid/package/contents/ui/FindMyPhone.qml b/plasmoid/package/contents/ui/FindMyPhone.qml
    deleted file mode 100644
    index 846c1530..00000000
    --- a/plasmoid/package/contents/ui/FindMyPhone.qml
    +++ /dev/null
    @@ -1,53 +0,0 @@
    -/**
    - * Copyright 2014 Samoilenko Yuri <kinnalru at gmail.com>
    - *
    - * This program is free software; you can redistribute it and/or
    - * modify it under the terms of the GNU General Public License as
    - * published by the Free Software Foundation; either version 2 of
    - * the License or (at your option) version 3 or any later version
    - * accepted by the membership of KDE e.V. (or its successor approved
    - * by the membership of KDE e.V.), which shall act as a proxy
    - * defined in Section 14 of version 3 of the license.
    - *
    - * This program is distributed in the hope that it will be useful,
    - * but WITHOUT ANY WARRANTY; without even the implied warranty of
    - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    - * GNU General Public License for more details.
    - *
    - * You should have received a copy of the GNU General Public License
    - * along with this program.  If not, see <http://www.gnu.org/licenses/>.
    - */
    -
    -import QtQuick 2.1
    -import org.kde.plasma.core 2.0 as PlasmaCore
    -import org.kde.plasma.components 2.0 as PlasmaComponents
    -import org.kde.kdeconnect 1.0
    -
    -QtObject {
    -
    -    id: root
    -
    -    property alias device: checker.device
    -    readonly property alias available: checker.available
    -
    -    readonly property PluginChecker pluginChecker: PluginChecker {
    -        id: checker
    -        pluginName: "findmyphone"
    -    }
    -
    -    property variant findMyPhone: null
    -
    -    function ring() {
    -        if (findMyPhone) {
    -            findMyPhone.ring();
    -        }
    -    }
    -
    -    onAvailableChanged: {
    -        if (available) {
    -            findMyPhone = FindMyPhoneDbusInterfaceFactory.create(device.id())
    -        } else {
    -            findMyPhone = null
    -        }
    -    }
    -}
  
  and create a file called SystemStats.qml in the ui directory of plasmoid containing
  
    /**
     * Copyright 2014 Samoilenko Yuri <kinnalru at gmail.com>
     *
     * This program is free software; you can redistribute it and/or
     * modify it under the terms of the GNU General Public License as
     * published by the Free Software Foundation; either version 2 of
     * the License or (at your option) version 3 or any later version
     * accepted by the membership of KDE e.V. (or its successor approved
     * by the membership of KDE e.V.), which shall act as a proxy
     * defined in Section 14 of version 3 of the license.
     *
     * This program is distributed in the hope that it will be useful,
     * but WITHOUT ANY WARRANTY; without even the implied warranty of
     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     * GNU General Public License for more details.
     *
     * You should have received a copy of the GNU General Public License
     * along with this program.  If not, see <http://www.gnu.org/licenses/>.
     */
    
    import QtQuick 2.1
    import org.kde.plasma.core 2.0 as PlasmaCore
    import org.kde.plasma.components 2.0 as PlasmaComponents
    import org.kde.kdeconnect 1.0
    
    QtObject {
    
        id: root
    
        property alias device: checker.device
        readonly property alias available: checker.available
    
        readonly property PluginChecker pluginChecker: PluginChecker {
            id: checker
            pluginName: "systemstats"
        }
    
        property variant systemStats: null
        property int cpuusage: systemStats.CPUUsage
    
        function requestStatsUpdate() {
            if (systemStats) {
                systemStats.requestStatsUpdate();
            }
        }
    
        onAvailableChanged: {
            if (available) {
                systemStats = SystemStatsDbusInterfaceFactory.create(device.id())
            } else {
                systemStats = null
            }
        }
    }
  
  the usage will show in the headerbar

REPOSITORY
  R224 KDE Connect

REVISION DETAIL
  https://phabricator.kde.org/D17141

To: blaws, #kde_connect
Cc: kdeconnect, varunp, shivanshukantprasad, skymoore, brute4s99, wistak, dvalencia, rmenezes, julioc, Leptopoda, timothyc, jdvr, Danial0_0, johnq, Pitel, adeen-s, SemperPeritus, daniel.z.tg, jeanv, seebauer, bugzy, MayeulC, menasshock, mikesomov, tctara, apol
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdeconnect/attachments/20181124/52aeaba6/attachment-0001.html>


More information about the KDEConnect mailing list