disable modules, README, warning fixes
This commit is contained in:
parent
ed68b9fd93
commit
5ad933c03b
9 changed files with 215 additions and 24 deletions
|
|
@ -5,7 +5,7 @@ import "." as M
|
|||
M.BarSection {
|
||||
id: root
|
||||
spacing: M.Theme.moduleSpacing
|
||||
visible: percent > 0
|
||||
visible: M.Modules.backlight && percent > 0
|
||||
tooltip: "Brightness: " + root.percent + "%"
|
||||
|
||||
property int percent: 0
|
||||
|
|
|
|||
|
|
@ -39,8 +39,8 @@ PanelWindow {
|
|||
anchors.verticalCenter: parent.verticalCenter
|
||||
spacing: M.Theme.barSpacing
|
||||
|
||||
M.Clock {}
|
||||
M.Notifications {}
|
||||
M.Clock { visible: M.Modules.clock }
|
||||
M.Notifications { visible: M.Modules.notifications }
|
||||
}
|
||||
|
||||
// ---- left ----
|
||||
|
|
@ -52,9 +52,11 @@ PanelWindow {
|
|||
|
||||
M.Tray {
|
||||
bar: bar
|
||||
visible: M.Modules.tray
|
||||
}
|
||||
M.WindowTitle {
|
||||
Layout.maximumWidth: 400
|
||||
visible: M.Modules.windowTitle
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -69,19 +71,19 @@ PanelWindow {
|
|||
Layout.fillWidth: true
|
||||
}
|
||||
M.Mpris {}
|
||||
M.Volume {}
|
||||
M.Volume { visible: M.Modules.volume }
|
||||
M.Bluetooth {}
|
||||
M.Backlight {}
|
||||
M.Network {}
|
||||
M.PowerProfile {}
|
||||
M.IdleInhibitor {}
|
||||
M.Weather {}
|
||||
M.Temperature {}
|
||||
M.Cpu {}
|
||||
M.Memory {}
|
||||
M.Disk {}
|
||||
M.Network { visible: M.Modules.network }
|
||||
M.PowerProfile { visible: M.Modules.powerProfile }
|
||||
M.IdleInhibitor { visible: M.Modules.idleInhibitor }
|
||||
M.Weather { visible: M.Modules.weather }
|
||||
M.Temperature { visible: M.Modules.temperature }
|
||||
M.Cpu { visible: M.Modules.cpu }
|
||||
M.Memory { visible: M.Modules.memory }
|
||||
M.Disk { visible: M.Modules.disk }
|
||||
M.Battery {}
|
||||
M.Wlogout {}
|
||||
M.Wlogout { visible: M.Modules.wlogout }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ import "." as M
|
|||
M.BarSection {
|
||||
id: root
|
||||
spacing: M.Theme.moduleSpacing
|
||||
visible: UPower.displayDevice?.isLaptopBattery ?? false
|
||||
visible: M.Modules.battery && (UPower.displayDevice?.isLaptopBattery ?? false)
|
||||
tooltip: {
|
||||
const state = root.charging ? "Charging" : "Discharging";
|
||||
const t = root.charging ? root.dev?.timeToFull : root.dev?.timeToEmpty;
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ import "." as M
|
|||
M.BarSection {
|
||||
id: root
|
||||
spacing: M.Theme.moduleSpacing
|
||||
visible: root.state !== "unavailable"
|
||||
visible: M.Modules.bluetooth && root.state !== "unavailable"
|
||||
tooltip: {
|
||||
if (root.state === "off") return "Bluetooth: off";
|
||||
if (root.state === "connected") return "Bluetooth: " + root.device;
|
||||
|
|
@ -61,10 +61,9 @@ M.BarSection {
|
|||
anchors.verticalCenter: parent.verticalCenter
|
||||
}
|
||||
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
TapHandler {
|
||||
cursorShape: Qt.PointingHandCursor
|
||||
onClicked: {
|
||||
onTapped: {
|
||||
toggle.cmd = root.state === "off" ? "on" : "off";
|
||||
toggle.running = true;
|
||||
}
|
||||
|
|
|
|||
48
modules/Modules.qml
Normal file
48
modules/Modules.qml
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
pragma Singleton
|
||||
|
||||
import QtQuick
|
||||
import Quickshell
|
||||
import Quickshell.Io
|
||||
|
||||
QtObject {
|
||||
id: root
|
||||
|
||||
property bool tray: true
|
||||
property bool windowTitle: true
|
||||
property bool clock: true
|
||||
property bool notifications: true
|
||||
property bool mpris: true
|
||||
property bool volume: true
|
||||
property bool bluetooth: true
|
||||
property bool backlight: true
|
||||
property bool network: true
|
||||
property bool powerProfile: true
|
||||
property bool idleInhibitor: true
|
||||
property bool weather: true
|
||||
property bool temperature: true
|
||||
property bool cpu: true
|
||||
property bool memory: true
|
||||
property bool disk: true
|
||||
property bool battery: true
|
||||
property bool wlogout: true
|
||||
|
||||
property FileView _file: FileView {
|
||||
path: (Quickshell.env("XDG_CONFIG_HOME") || (Quickshell.env("HOME") + "/.config")) + "/nova-shell/modules.json"
|
||||
watchChanges: true
|
||||
onFileChanged: reload()
|
||||
onLoaded: root._apply(text())
|
||||
}
|
||||
|
||||
function _apply(raw) {
|
||||
let data;
|
||||
try {
|
||||
data = JSON.parse(raw);
|
||||
} catch (e) {
|
||||
return;
|
||||
}
|
||||
for (const k of Object.keys(data)) {
|
||||
if (k in root && typeof root[k] === "boolean")
|
||||
root[k] = data[k];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -5,7 +5,7 @@ import "." as M
|
|||
M.BarSection {
|
||||
id: root
|
||||
spacing: M.Theme.moduleSpacing
|
||||
visible: player !== null
|
||||
visible: M.Modules.mpris && player !== null
|
||||
tooltip: {
|
||||
const p = root.player;
|
||||
if (!p)
|
||||
|
|
@ -14,7 +14,7 @@ M.BarSection {
|
|||
if (p.trackTitle)
|
||||
parts.push(p.trackTitle);
|
||||
if (p.trackArtists?.length)
|
||||
parts.push(p.trackArtists.join(", "));
|
||||
parts.push(Array.isArray(p.trackArtists) ? p.trackArtists.join(", ") : p.trackArtists);
|
||||
if (p.trackAlbum)
|
||||
parts.push(p.trackAlbum);
|
||||
return parts.join("\n") || p.identity;
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
module modules
|
||||
singleton Theme 1.0 Theme.qml
|
||||
singleton FlyoutState 1.0 FlyoutState.qml
|
||||
singleton Modules 1.0 Modules.qml
|
||||
Bar 1.0 Bar.qml
|
||||
BarSection 1.0 BarSection.qml
|
||||
Flyout 1.0 Flyout.qml
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue