all repos — quickshell @ 2c2697390e3019990af3a64e3b5be9bb0f49dfdf

A desert-witch desktop shell

bar/modules/Network.qml (view raw)

 1
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
  // Sunset.qml
import QtQuick
import Quickshell
import Quickshell.Io
import QtQuick.Layouts
import "../../"
import "../classes" as Class

Class.RightRowLayout {
  property var wifi_strength
  Class.TopbarText {
    id: network
    Process {
      id: network_script
      command: ["bar/scripts/network.sh"]
      workingDirectory: Quickshell.shellDir
      running: true
      stdout: StdioCollector {
        onStreamFinished: {
          network.text = this.text.trim().split(" ")[1]
          indicator.indicator_data = this.text.split(" ")[0].trim()
        }
      }
    }
    Timer {
      interval: 1000
      running: true
      repeat: true
      onTriggered: network_script.running = true
    }
  }
  Class.TopbarIcon {
    id: indicator
    property var indicator_data
    font.pixelSize: 9*Size.scale
    text:
      (indicator_data == 100) ? Icons.network.ethernet
    : (indicator_data == 404) ? Icons.network.nobar
    : (indicator_data > -50) ? Icons.network.bar4
    : (indicator_data > -60) ? Icons.network.bar3
    : (indicator_data > -70) ? Icons.network.bar2
    : (indicator_data > -80) ? Icons.network.bar1
    : Icons.network.bar0
  }
}