summaryrefslogtreecommitdiff
path: root/raveos-sddm-theme/sddm-rave-theme/Components/BatteryIndicator.qml
diff options
context:
space:
mode:
Diffstat (limited to 'raveos-sddm-theme/sddm-rave-theme/Components/BatteryIndicator.qml')
-rw-r--r--raveos-sddm-theme/sddm-rave-theme/Components/BatteryIndicator.qml18
1 files changed, 0 insertions, 18 deletions
diff --git a/raveos-sddm-theme/sddm-rave-theme/Components/BatteryIndicator.qml b/raveos-sddm-theme/sddm-rave-theme/Components/BatteryIndicator.qml
index 0caedbe..0d2e36e 100644
--- a/raveos-sddm-theme/sddm-rave-theme/Components/BatteryIndicator.qml
+++ b/raveos-sddm-theme/sddm-rave-theme/Components/BatteryIndicator.qml
@@ -7,7 +7,6 @@ Row {
height: root.font.pointSize * 1.6
spacing: root.font.pointSize * 0.5
- // -1 = nincs akkumulátor / nem laptop
property int batteryLevel: -1
property bool isCharging: false
property bool isFull: false
@@ -15,7 +14,6 @@ Row {
visible: batteryLevel >= 0
- // Ismert akksi elérési utak
property var tryPaths: [
"/sys/class/power_supply/BAT0/",
"/sys/class/power_supply/BAT1/",
@@ -24,7 +22,6 @@ Row {
"/sys/class/power_supply/BATT/"
]
- // Dinamikus akkumulátor kereső (pl. kontroller, UPS, egyéb külső akkuk észleléséhez)
FolderListModel {
id: powerSupplyScanner
folder: "file:///sys/class/power_supply"
@@ -45,7 +42,6 @@ Row {
for (var i = 0; i < count; i++) {
var name = get(i, "fileName")
if (name && name !== "." && name !== "..") {
- // Csak a tipikus laptop akkumulátor elnevezések (pl. BAT0, BAT1, BATT, battery)
var isLaptopBat = /^bat/i.test(name) || /^battery/i.test(name)
if (isLaptopBat) {
var fullPath = "/sys/class/power_supply/" + name + "/"
@@ -60,7 +56,6 @@ Row {
}
}
- // ── Fájl olvasó ──────────────────────────────────────────────────────────
function readFile(path, cb) {
var xhr = new XMLHttpRequest()
xhr.open("GET", "file://" + path, true)
@@ -71,7 +66,6 @@ Row {
xhr.send()
}
- // ── Akkumulátor keresés és frissítés ─────────────────────────────────────
function detectBattery(idx) {
if (idx >= tryPaths.length) { batteryLevel = -1; return }
readFile(tryPaths[idx] + "capacity", function(cap) {
@@ -90,7 +84,6 @@ Row {
})
}
- // ── Akkumulátor frissítés ────────────────────────────────────────────────
function refresh() {
if (batteryPath !== "") {
readFile(batteryPath + "capacity", function(cap) {
@@ -118,7 +111,6 @@ Row {
onTriggered: batteryIndicator.refresh()
}
- // ── Szín a töltési szint alapján ─────────────────────────────────────────
function levelColor(lvl, charging) {
if (charging) return "#4ade80" // zöld – tölt
if (lvl > 60) return "#ffffff" // fehér – ok
@@ -127,7 +119,6 @@ Row {
return "#f87171" // piros – kritikus
}
- // ── UI ───────────────────────────────────────────────────────────────────
Canvas {
id: batteryCanvas
width: root.font.pointSize * 3.2
@@ -138,7 +129,6 @@ Row {
var ctx = getContext("2d")
ctx.clearRect(0, 0, width, height)
- // Qt Canvas nem támogatja ctx.roundRect() – saját helper
function rr(c, x, y, w, h, r) {
r = Math.min(Math.max(r, 0), Math.min(w, h) / 2)
c.beginPath()
@@ -165,20 +155,17 @@ Row {
var tx = bw // terminál x
var ty = (height - th) / 2
- // Terminál (+ pólus)
rr(ctx, tx, ty, tw, th, height * 0.15)
ctx.fillStyle = col
ctx.globalAlpha = 0.7
ctx.fill()
ctx.globalAlpha = 1.0
- // Keret (akksi test)
rr(ctx, bx, by, bw, bh, r)
ctx.strokeStyle = col
ctx.lineWidth = height * 0.09
ctx.stroke()
- // Töltési szint kitöltés
var padding = height * 0.18
var fillW = Math.max(0, (bw - padding * 2) * lvl / 100)
if (fillW > 0) {
@@ -191,7 +178,6 @@ Row {
ctx.globalAlpha = 1.0
}
- // Villám jel (töltés közben)
if (charging && !full) {
var cx = bw / 2
var cy = height / 2
@@ -210,7 +196,6 @@ Row {
ctx.globalAlpha = 1.0
}
- // Tele jel (checkbox-szerű pipával)
if (full) {
ctx.beginPath()
ctx.moveTo(bw * 0.32, by + bh / 2)
@@ -227,7 +212,6 @@ Row {
}
}
- // Százalék szöveg
Text {
id: batteryText
anchors.verticalCenter: parent.verticalCenter
@@ -241,7 +225,6 @@ Row {
font.family: root.font.family
font.bold: batteryIndicator.batteryLevel <= 15 && !batteryIndicator.isCharging
- // Pulzáló animáció kritikus töltésnél
SequentialAnimation on opacity {
running: batteryIndicator.batteryLevel <= 15 && !batteryIndicator.isCharging
loops: Animation.Infinite
@@ -250,7 +233,6 @@ Row {
}
}
- // Szint változáskor újrafest
onBatteryLevelChanged: batteryCanvas.requestPaint()
onIsChargingChanged: batteryCanvas.requestPaint()
onIsFullChanged: batteryCanvas.requestPaint()