From 021ddae2d06580eeae9b284f8607e0ca23c1c9d0 Mon Sep 17 00:00:00 2001 From: voidarc Date: Sat, 8 Aug 2026 19:59:10 +0100 Subject: [PATCH] null safety so that it might load properly idk --- Services/BatteryManager.qml | 8 +++++--- Services/BluetoothManager.qml | 27 ++++++++++++++++++++------- 2 files changed, 25 insertions(+), 10 deletions(-) diff --git a/Services/BatteryManager.qml b/Services/BatteryManager.qml index b5325eb..4f9f6ba 100644 --- a/Services/BatteryManager.qml +++ b/Services/BatteryManager.qml @@ -8,9 +8,11 @@ import "../Color.js" as Colors Singleton { id: root - property double batteryPercentage: root.mainBattery.percentage - property bool batteryPresent: root.mainBattery.ready - property UPowerDevice mainBattery: UPower.displayDevice + property double batteryPercentage: root.mainBattery.percentage || 0 + property bool batteryPresent: root.mainBattery.ready || false + property UPowerDevice mainBattery: UPower.displayDevice || undefined + + function getBatteryColor() { let criticalLevel = 20; diff --git a/Services/BluetoothManager.qml b/Services/BluetoothManager.qml index f3c268c..eaa1e5d 100644 --- a/Services/BluetoothManager.qml +++ b/Services/BluetoothManager.qml @@ -6,22 +6,29 @@ import Quickshell.Bluetooth Singleton { id: root - property BluetoothAdapter defaultAdapter: Bluetooth.defaultAdapter - property string defaultAdapterName: Bluetooth.defaultAdapter.adapterId + property BluetoothAdapter defaultAdapter: Bluetooth.defaultAdapter || null + property string defaultAdapterName: defaultAdapter ? defaultAdapter.adapterId : "" function getConnected() { let deviceList = getDevicesList(); - for (let device in deviceList) { - let currentDevice = deviceList[device]; - if (currentDevice.connected == true) { - return true; + if (deviceList.length == 0) { + return false; + } else { + for (let device in deviceList) { + let currentDevice = deviceList[device]; + if (currentDevice.connected == true) { + return true; + } } + return false; } - return false; } function getConnectedDevicesList() { let devicesList = getDevicesList(); + if (!devicesList) { + return []; + } let connectedList = []; for (let device of devicesList) { if (device.connected == true) { @@ -32,6 +39,9 @@ Singleton { } function getDeviceText(device) { + if (!device) { + return undefined; + } let deviceName = device.deviceName; let deviceIcon = getIcon(device.icon); let deviceMac = device.address; @@ -54,6 +64,9 @@ Singleton { } function getDevicesList() { + if (!root.defaultAdapter) { + return []; + } return root.defaultAdapter.devices.values; }