// CPU / RAM / GPU readout, in that order — the exact set and order the GNOME // Vitals extension was configured with (_processor_usage_, _memory_usage_, // _gpu#1_usage_). // // Values are color-coded rather than graphed: at bar size a number you can // glance at beats a sparkline you have to squint at. import QtQuick import qs.config import qs.services import qs.widgets Pill { id: root // Right-click opens the settings that govern this widget. Which readouts // appear in the bar, and how often they update. onSecondaryActivated: ShellState.openSettings("bar") // Turning off all three readouts should remove the pill, not leave an empty // one behind: an invisible child still occupies its Row, so without this the // padding stays and the bar keeps a gap that reports nothing. visible: Settings.showCpu || Settings.showMemory || (Settings.showGpu && Vitals.gpuAvailable) interactive: false Row { spacing: Theme.itemSpacing VitalsField { glyph: "\u{F4BC}" // oct-cpu value: Vitals.cpu visible: Settings.showCpu } VitalsField { glyph: "\u{F035B}" // md-memory value: Vitals.memory visible: Settings.showMemory // Memory sitting high is normal (page cache, browsers); only start // complaining much later than for CPU. warnAt: 80 dangerAt: 92 } VitalsField { glyph: "\u{F08AE}" // md-expansion_card value: Vitals.gpu visible: Settings.showGpu && Vitals.gpuAvailable } } }