From 81ae9dea91506410541ecfc12b304c303a894624 Mon Sep 17 00:00:00 2001 From: Bartolomiv Date: Thu, 3 Sep 2026 22:03:21 +0300 Subject: [PATCH 1/8] vrgb plasma vidget first iteration(very vibecoded) --- plasmoid/install.sh | 28 ++ plasmoid/package/contents/ui/ColorPicker.qml | 143 +++++++++ plasmoid/package/contents/ui/main.qml | 312 +++++++++++++++++++ plasmoid/package/metadata.json | 19 ++ 4 files changed, 502 insertions(+) create mode 100755 plasmoid/install.sh create mode 100644 plasmoid/package/contents/ui/ColorPicker.qml create mode 100644 plasmoid/package/contents/ui/main.qml create mode 100644 plasmoid/package/metadata.json diff --git a/plasmoid/install.sh b/plasmoid/install.sh new file mode 100755 index 0000000..75bf24e --- /dev/null +++ b/plasmoid/install.sh @@ -0,0 +1,28 @@ +#!/bin/sh +# Install or upgrade the VRGB Plasma 6 applet for the current user. +set -e + +APPLET_ID="org.vrgb.keyboard" +PACKAGE_DIR="$(cd "$(dirname "$0")" && pwd)/package" + +if ! command -v kpackagetool6 >/dev/null 2>&1; then + echo "kpackagetool6 not found - this applet requires Plasma 6." >&2 + exit 1 +fi + +if ! command -v vrgb >/dev/null 2>&1 && [ ! -x /usr/local/bin/vrgb ]; then + echo "Warning: vrgb was not found. Install it first with ../install.sh" >&2 +fi + +if kpackagetool6 --type Plasma/Applet --list 2>/dev/null | grep -qx "$APPLET_ID"; then + echo "Upgrading $APPLET_ID..." + kpackagetool6 --type Plasma/Applet --upgrade "$PACKAGE_DIR" +else + echo "Installing $APPLET_ID..." + kpackagetool6 --type Plasma/Applet --install "$PACKAGE_DIR" +fi + +echo +echo "Done. Add it with: right-click the panel -> Add Widgets -> \"VRGB Keyboard Lighting\"" +echo "If you upgraded an already-running applet, restart plasmashell to reload it:" +echo " systemctl --user restart plasma-plasmashell" diff --git a/plasmoid/package/contents/ui/ColorPicker.qml b/plasmoid/package/contents/ui/ColorPicker.qml new file mode 100644 index 0000000..cd5f3e0 --- /dev/null +++ b/plasmoid/package/contents/ui/ColorPicker.qml @@ -0,0 +1,143 @@ +/* + * VRGB - inline HSV colour picker (saturation/value square + hue strip). + * + * Emits picked() continuously while dragging; the caller is expected to + * throttle hardware writes rather than firing one per pixel. + * + * SPDX-License-Identifier: MIT + */ + +import QtQuick +import QtQuick.Layouts +import org.kde.kirigami as Kirigami + +ColumnLayout { + id: picker + + signal picked(color c) + + // Hue is kept separately from the emitted colour: greys report hsvHue == -1, + // so round-tripping through a colour would make the hue marker jump to red. + property real hue: 0 + property real sat: 1 + property real val: 1 + + readonly property color currentColor: Qt.hsva(hue, sat, val, 1) + + // Seed the picker from outside without emitting picked(). + function setColor(c) { + if (Qt.colorEqual(c, picker.currentColor)) { + return; + } + hue = (c.hsvHue < 0) ? hue : c.hsvHue; + sat = c.hsvSaturation; + val = c.hsvValue; + } + + spacing: Kirigami.Units.smallSpacing + + Rectangle { + id: svSquare + + Layout.fillWidth: true + Layout.preferredHeight: Kirigami.Units.gridUnit * 7 + + radius: 3 + border.width: 1 + border.color: Qt.rgba(0, 0, 0, 0.25) + + gradient: Gradient { + orientation: Gradient.Horizontal + GradientStop { position: 0.0; color: "#ffffff" } + GradientStop { position: 1.0; color: Qt.hsva(picker.hue, 1, 1, 1) } + } + + Rectangle { + anchors.fill: parent + radius: parent.radius + gradient: Gradient { + orientation: Gradient.Vertical + GradientStop { position: 0.0; color: "transparent" } + GradientStop { position: 1.0; color: "#000000" } + } + } + + Rectangle { + width: Math.round(Kirigami.Units.gridUnit * 0.8) + height: width + radius: width / 2 + color: "transparent" + border.width: 2 + // Dark ring on pale areas, light ring everywhere else. + border.color: (picker.val > 0.55 && picker.sat < 0.55) ? "#000000" : "#ffffff" + x: picker.sat * svSquare.width - width / 2 + y: (1 - picker.val) * svSquare.height - height / 2 + } + + MouseArea { + anchors.fill: parent + + function pick(mx, my) { + picker.sat = Math.max(0, Math.min(1, mx / width)); + picker.val = 1 - Math.max(0, Math.min(1, my / height)); + picker.picked(picker.currentColor); + } + + onPressed: mouse => pick(mouse.x, mouse.y) + onPositionChanged: mouse => { + if (pressed) { + pick(mouse.x, mouse.y); + } + } + } + } + + Rectangle { + id: hueStrip + + Layout.fillWidth: true + Layout.preferredHeight: Kirigami.Units.gridUnit + + radius: 3 + border.width: 1 + border.color: Qt.rgba(0, 0, 0, 0.25) + + gradient: Gradient { + orientation: Gradient.Horizontal + GradientStop { position: 0.000; color: "#ff0000" } + GradientStop { position: 0.167; color: "#ffff00" } + GradientStop { position: 0.333; color: "#00ff00" } + GradientStop { position: 0.500; color: "#00ffff" } + GradientStop { position: 0.667; color: "#0000ff" } + GradientStop { position: 0.833; color: "#ff00ff" } + GradientStop { position: 1.000; color: "#ff0000" } + } + + Rectangle { + width: 3 + height: parent.height + 4 + y: -2 + x: picker.hue * hueStrip.width - width / 2 + color: "#ffffff" + border.width: 1 + border.color: "#000000" + } + + MouseArea { + anchors.fill: parent + + function pick(mx) { + // Clamp below 1.0: a hue of exactly 1.0 wraps back to 0. + picker.hue = Math.max(0, Math.min(0.9999, mx / width)); + picker.picked(picker.currentColor); + } + + onPressed: mouse => pick(mouse.x) + onPositionChanged: mouse => { + if (pressed) { + pick(mouse.x); + } + } + } + } +} diff --git a/plasmoid/package/contents/ui/main.qml b/plasmoid/package/contents/ui/main.qml new file mode 100644 index 0000000..c3d11dc --- /dev/null +++ b/plasmoid/package/contents/ui/main.qml @@ -0,0 +1,312 @@ +/* + * VRGB - Plasma 6 applet for ASUS Vivobook HID LampArray keyboards. + * + * State lives in ~/.config/vrgb/config.json, which the applet reads directly. + * Writes always go through the `vrgb` CLI so the config file has a single + * owner and the applet never touches hidraw itself. + * + * SPDX-License-Identifier: MIT + */ + +import QtQuick +import QtQuick.Layouts +import org.kde.plasma.plasmoid +import org.kde.plasma.components as PlasmaComponents +import org.kde.plasma.plasma5support as P5Support +import org.kde.kirigami as Kirigami + +PlasmoidItem { + id: root + + // Resolved at startup; install.sh puts vrgb in /usr/local/bin, which is not + // always on plasmashell's PATH. + property string vrgbBin: "vrgb" + property color currentColor: "#00aa55" + property int brightness: 100 + property string errorText: "" + // Suppresses hardware writes while the UI is being seeded from config.json. + property bool loading: true + + readonly property var presets: [ + "#ff0000", "#ff7f00", "#ffd400", "#7fff00", "#00ff5e", "#00e5ff", + "#0080ff", "#2b3cff", "#8b00ff", "#ff00c8", "#ff4d6d", "#ffffff" + ] + + readonly property string hexColor: { + function ch(v) { + return Math.round(Math.max(0, Math.min(1, v)) * 255).toString(16).padStart(2, "0"); + } + return ch(currentColor.r) + ch(currentColor.g) + ch(currentColor.b); + } + + // The colour as it should actually appear on the keys. + readonly property color litColor: Qt.rgba(currentColor.r * brightness / 100, + currentColor.g * brightness / 100, + currentColor.b * brightness / 100, 1) + + readonly property string resolveCmd: "command -v vrgb 2>/dev/null || echo /usr/local/bin/vrgb" + readonly property string readCfgCmd: "cat \"$HOME/.config/vrgb/config.json\" 2>/dev/null" + + Plasmoid.icon: "input-keyboard" + toolTipMainText: i18n("Keyboard Lighting") + toolTipSubText: loading ? i18n("Reading configuration…") + : i18n("#%1 at %2%", hexColor.toUpperCase(), brightness) + + preferredRepresentation: compactRepresentation + + function applyNow() { + if (loading) { + return; + } + applyTimer.stop(); + // hexColor is generated locally and brightness is an int, so the + // command line is safe to build by concatenation. + executable.run(vrgbBin + " set " + hexColor + " " + brightness); + } + + function scheduleApply() { + if (!loading) { + applyTimer.restart(); + } + } + + function loadConfig(text) { + var cfg = null; + if (text.length > 0) { + try { + cfg = JSON.parse(text); + } catch (e) { + cfg = null; + } + } + if (cfg) { + if (typeof cfg.color === "string" && /^[0-9a-fA-F]{6}$/.test(cfg.color)) { + currentColor = "#" + cfg.color; + } + var p = parseInt(cfg.percent, 10); + if (!isNaN(p)) { + brightness = Math.max(0, Math.min(100, p)); + } + } + loading = false; + } + + function handleResult(source, code, out, err) { + if (source === resolveCmd) { + if (out.length > 0) { + vrgbBin = out.split("\n")[0]; + } + executable.run(readCfgCmd); + } else if (source === readCfgCmd) { + loadConfig(out); + } else { + errorText = (code === 0) ? "" + : (err.length > 0 ? err : i18n("vrgb exited with code %1", code)); + } + } + + Timer { + id: applyTimer + // vrgb returns in ~25 ms; 60 ms keeps a drag smooth without queueing up + // one process per mouse move. + interval: 60 + onTriggered: root.applyNow() + } + + P5Support.DataSource { + id: executable + + engine: "executable" + connectedSources: [] + + onNewData: (source, data) => { + var code = data["exit code"]; + var out = (data["stdout"] || "").trim(); + var err = (data["stderr"] || "").trim(); + disconnectSource(source); + root.handleResult(source, code, out, err); + } + + function run(cmd) { + // The engine keys sources by command string, so re-running an + // identical command needs an explicit disconnect first. + if (connectedSources.indexOf(cmd) !== -1) { + disconnectSource(cmd); + } + connectSource(cmd); + } + } + + Component.onCompleted: executable.run(resolveCmd) + + compactRepresentation: MouseArea { + onClicked: root.expanded = !root.expanded + + Kirigami.Icon { + anchors.centerIn: parent + width: Math.min(parent.width, parent.height) + height: width + source: "input-keyboard" + isMask: true + color: root.brightness > 0 ? root.currentColor : Kirigami.Theme.disabledTextColor + } + } + + fullRepresentation: Item { + Layout.minimumWidth: Kirigami.Units.gridUnit * 15 + Layout.minimumHeight: Kirigami.Units.gridUnit * 21 + Layout.preferredWidth: Kirigami.Units.gridUnit * 17 + Layout.preferredHeight: Kirigami.Units.gridUnit * 23 + + ColumnLayout { + anchors.fill: parent + anchors.margins: Kirigami.Units.largeSpacing + spacing: Kirigami.Units.smallSpacing + + RowLayout { + Layout.fillWidth: true + spacing: Kirigami.Units.largeSpacing + + Rectangle { + Layout.preferredWidth: Kirigami.Units.gridUnit * 2.5 + Layout.preferredHeight: Kirigami.Units.gridUnit * 2.5 + radius: 4 + color: root.litColor + border.width: 1 + border.color: Qt.rgba(0, 0, 0, 0.3) + } + + ColumnLayout { + Layout.fillWidth: true + spacing: 0 + + Kirigami.Heading { + Layout.fillWidth: true + level: 4 + elide: Text.ElideRight + text: i18n("Keyboard Lighting") + } + + PlasmaComponents.Label { + Layout.fillWidth: true + elide: Text.ElideRight + font.family: "monospace" + opacity: 0.75 + text: "#" + root.hexColor.toUpperCase() + } + } + } + + Kirigami.Separator { + Layout.fillWidth: true + Layout.topMargin: Kirigami.Units.smallSpacing + Layout.bottomMargin: Kirigami.Units.smallSpacing + } + + GridLayout { + Layout.fillWidth: true + columns: 6 + columnSpacing: Kirigami.Units.smallSpacing + rowSpacing: Kirigami.Units.smallSpacing + + Repeater { + model: root.presets + + delegate: Rectangle { + required property string modelData + + Layout.fillWidth: true + Layout.preferredHeight: Kirigami.Units.gridUnit * 1.3 + radius: 3 + color: modelData + border.width: 1 + border.color: Qt.rgba(0, 0, 0, 0.3) + + MouseArea { + anchors.fill: parent + onClicked: { + root.currentColor = parent.modelData; + picker.setColor(root.currentColor); + root.applyNow(); + } + } + } + } + } + + ColorPicker { + id: picker + + Layout.fillWidth: true + Layout.topMargin: Kirigami.Units.smallSpacing + + Component.onCompleted: setColor(root.currentColor) + + onPicked: c => { + root.currentColor = c; + root.scheduleApply(); + } + } + + RowLayout { + Layout.fillWidth: true + Layout.topMargin: Kirigami.Units.smallSpacing + + PlasmaComponents.Label { + text: i18n("Brightness") + } + + Item { + Layout.fillWidth: true + } + + PlasmaComponents.Label { + opacity: 0.75 + text: root.brightness + "%" + } + } + + PlasmaComponents.Slider { + id: brightnessSlider + + Layout.fillWidth: true + from: 0 + to: 100 + stepSize: 1 + + Component.onCompleted: value = root.brightness + + onMoved: { + root.brightness = Math.round(value); + root.scheduleApply(); + } + } + + Kirigami.InlineMessage { + Layout.fillWidth: true + type: Kirigami.MessageType.Error + text: root.errorText + visible: root.errorText.length > 0 + } + + Item { + Layout.fillHeight: true + } + } + + // Keep the popup in sync when config.json loads after the popup was built. + Connections { + target: root + + function onCurrentColorChanged() { + picker.setColor(root.currentColor); + } + + function onBrightnessChanged() { + if (!brightnessSlider.pressed) { + brightnessSlider.value = root.brightness; + } + } + } + } +} diff --git a/plasmoid/package/metadata.json b/plasmoid/package/metadata.json new file mode 100644 index 0000000..c6f8e07 --- /dev/null +++ b/plasmoid/package/metadata.json @@ -0,0 +1,19 @@ +{ + "KPackageStructure": "Plasma/Applet", + "KPlugin": { + "Authors": [ + { + "Name": "vrgb-dev" + } + ], + "Category": "Utilities", + "Description": "Set the colour and brightness of ASUS Vivobook HID LampArray keyboards", + "Icon": "input-keyboard", + "Id": "org.vrgb.keyboard", + "License": "MIT", + "Name": "VRGB Keyboard Lighting", + "Version": "0.1.0", + "Website": "https://github.com/vrgb-dev/vrgb" + }, + "X-Plasma-API-Minimum-Version": "6.0" +} From 586a6e5d961ccedd7155bb3b75b7d8a29dbc200b Mon Sep 17 00:00:00 2001 From: Bartolomiv Date: Thu, 3 Sep 2026 22:17:18 +0300 Subject: [PATCH 2/8] ukrainian translation --- plasmoid/build-translations.sh | 31 ++++++++++++++ plasmoid/extract-messages.sh | 32 +++++++++++++++ .../plasma_applet_org.vrgb.keyboard.mo | Bin 0 -> 840 bytes plasmoid/package/metadata.json | 2 + .../po/plasma_applet_org.vrgb.keyboard.pot | 38 ++++++++++++++++++ plasmoid/po/uk.po | 38 ++++++++++++++++++ 6 files changed, 141 insertions(+) create mode 100755 plasmoid/build-translations.sh create mode 100755 plasmoid/extract-messages.sh create mode 100644 plasmoid/package/contents/locale/uk/LC_MESSAGES/plasma_applet_org.vrgb.keyboard.mo create mode 100644 plasmoid/po/plasma_applet_org.vrgb.keyboard.pot create mode 100644 plasmoid/po/uk.po diff --git a/plasmoid/build-translations.sh b/plasmoid/build-translations.sh new file mode 100755 index 0000000..e606198 --- /dev/null +++ b/plasmoid/build-translations.sh @@ -0,0 +1,31 @@ +#!/bin/sh +# Compile po/*.po into the applet package. +# +# Plasma looks up an applet's catalogue under the domain +# plasma_applet_, and KPackage adds the installed package's own +# contents/locale directory to the search path, so the .mo files ship with +# the widget instead of needing root access to /usr/share/locale. +set -e + +DOMAIN="plasma_applet_org.vrgb.keyboard" +BASE="$(cd "$(dirname "$0")" && pwd)" + +found=0 +for po in "$BASE"/po/*.po; do + [ -e "$po" ] || continue + found=1 + lang="$(basename "$po" .po)" + dest="$BASE/package/contents/locale/$lang/LC_MESSAGES" + mkdir -p "$dest" + msgfmt --check -o "$dest/$DOMAIN.mo" "$po" + printf '%s -> %s\n' "$lang" "${dest#"$BASE"/}/$DOMAIN.mo" +done + +if [ "$found" -eq 0 ]; then + echo "No po/*.po files found. Run ./extract-messages.sh first." >&2 + exit 1 +fi + +echo +echo "Now reinstall the applet so the catalogues are picked up:" +echo " ./install.sh" diff --git a/plasmoid/extract-messages.sh b/plasmoid/extract-messages.sh new file mode 100755 index 0000000..0a9a01d --- /dev/null +++ b/plasmoid/extract-messages.sh @@ -0,0 +1,32 @@ +#!/bin/sh +# Re-extract translatable strings from the QML sources into po/*.pot, +# then merge the changes into the existing translations. +# +# Run this whenever you add, remove, or reword an i18n() string. +set -e + +DOMAIN="plasma_applet_org.vrgb.keyboard" +BASE="$(cd "$(dirname "$0")" && pwd)" +POT="$BASE/po/$DOMAIN.pot" + +mkdir -p "$BASE/po" + +# -C -kde is the KDE extraction mode; it understands the i18n* call family and +# parses QML well enough since the call syntax matches C++. +xgettext --from-code=UTF-8 -C -kde \ + -ci18n -ki18n:1 -ki18nc:1c,2 -ki18np:1,2 -ki18ncp:1c,2,3 \ + --package-name="VRGB Keyboard Lighting" \ + --msgid-bugs-address="https://github.com/vrgb-dev/vrgb/issues" \ + -o "$POT" \ + "$BASE"/package/contents/ui/*.qml + +echo "Wrote ${POT#"$BASE"/}" + +for po in "$BASE"/po/*.po; do + [ -e "$po" ] || continue + msgmerge --quiet --update --backup=none "$po" "$POT" + echo "Merged into ${po#"$BASE"/}" +done + +echo +echo "Next: translate any new strings in po/*.po, then run ./build-translations.sh" diff --git a/plasmoid/package/contents/locale/uk/LC_MESSAGES/plasma_applet_org.vrgb.keyboard.mo b/plasmoid/package/contents/locale/uk/LC_MESSAGES/plasma_applet_org.vrgb.keyboard.mo new file mode 100644 index 0000000000000000000000000000000000000000..34d894521a1665a9aa6ae4a2e8a024b182086a12 GIT binary patch literal 840 zcmZWnK~EDw6dnaVtS1cz51KqYwmUDRAH=U%of{z3;u*$@_Jq|1H6|inxWCMqER* z5jH*{9K=?Scag6nejsilOppH}Z(Sm!4{;mw&zA`qK>mqr{lAfikpCeUkO%q*!BWzX zz_c4zdVEUuPBzd&$laU^TtUvukzy7{HI)b{$qTVkNqH8+wEYw(5h)2CB11Jz7UHOt zaTTY@pUwxeltmQ~%drw6ypB~3D?$M|m&|7AD^XQ+Dx~uwlUVMNjiF7XNNC{j7}u@O8A^U zj8vS^B8q$ZP**(f&WDHKyAPE8&oia4BG7z3)ZlE=yB2GjX8D)9)Q_2tNOrn^tRqH@64)MGaKEt&|fYJM8DU^ z`Vi|nM1R!#W({pe`p9eo(zZU-+h!d*ywN*WFdJu^qWA0o{mpdDy5842fD@1PSAA@& PLGOV+!1FHRyIrFHYwZww literal 0 HcmV?d00001 diff --git a/plasmoid/package/metadata.json b/plasmoid/package/metadata.json index c6f8e07..466ef4f 100644 --- a/plasmoid/package/metadata.json +++ b/plasmoid/package/metadata.json @@ -8,10 +8,12 @@ ], "Category": "Utilities", "Description": "Set the colour and brightness of ASUS Vivobook HID LampArray keyboards", + "Description[uk]": "Керування кольором і яскравістю клавіатур ASUS Vivobook з HID LampArray", "Icon": "input-keyboard", "Id": "org.vrgb.keyboard", "License": "MIT", "Name": "VRGB Keyboard Lighting", + "Name[uk]": "Підсвічування клавіатури VRGB", "Version": "0.1.0", "Website": "https://github.com/vrgb-dev/vrgb" }, diff --git a/plasmoid/po/plasma_applet_org.vrgb.keyboard.pot b/plasmoid/po/plasma_applet_org.vrgb.keyboard.pot new file mode 100644 index 0000000..4a775ac --- /dev/null +++ b/plasmoid/po/plasma_applet_org.vrgb.keyboard.pot @@ -0,0 +1,38 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the VRGB Keyboard Lighting package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: VRGB Keyboard Lighting\n" +"Report-Msgid-Bugs-To: https://github.com/vrgb-dev/vrgb/issues\n" +"POT-Creation-Date: 2026-09-03 22:05+0300\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: package/contents/ui/main.qml:51 package/contents/ui/main.qml:187 +msgid "Keyboard Lighting" +msgstr "" + +#: package/contents/ui/main.qml:52 +msgid "Reading configuration…" +msgstr "" + +#: package/contents/ui/main.qml:53 +msgid "#%1 at %2%" +msgstr "" + +#: package/contents/ui/main.qml:104 +msgid "vrgb exited with code %1" +msgstr "" + +#: package/contents/ui/main.qml:256 +msgid "Brightness" +msgstr "" diff --git a/plasmoid/po/uk.po b/plasmoid/po/uk.po new file mode 100644 index 0000000..284349e --- /dev/null +++ b/plasmoid/po/uk.po @@ -0,0 +1,38 @@ +# Ukrainian translation for the VRGB Plasma applet. +# This file is distributed under the same license as the VRGB package. +# SPDX-License-Identifier: MIT +# +msgid "" +msgstr "" +"Project-Id-Version: VRGB Keyboard Lighting\n" +"Report-Msgid-Bugs-To: https://github.com/vrgb-dev/vrgb/issues\n" +"POT-Creation-Date: 2026-09-03 22:05+0300\n" +"PO-Revision-Date: 2026-09-03 22:10+0300\n" +"Last-Translator: vrgb-dev\n" +"Language-Team: Ukrainian\n" +"Language: uk\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=4; plural=n==1 ? 3 : n%10==1 && n%100!=11 ? 0 : " +"n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" + +#: package/contents/ui/main.qml:51 package/contents/ui/main.qml:187 +msgid "Keyboard Lighting" +msgstr "Колір" + +#: package/contents/ui/main.qml:52 +msgid "Reading configuration…" +msgstr "Читання налаштувань…" + +#: package/contents/ui/main.qml:53 +msgid "#%1 at %2%" +msgstr "#%1, яскравість %2%" + +#: package/contents/ui/main.qml:104 +msgid "vrgb exited with code %1" +msgstr "vrgb завершив роботу з кодом %1" + +#: package/contents/ui/main.qml:256 +msgid "Brightness" +msgstr "Яскравість" From f282e916a9aebf4bb342525fbd5009acfd027963 Mon Sep 17 00:00:00 2001 From: Bartolomiv Date: Thu, 3 Sep 2026 22:46:22 +0300 Subject: [PATCH 3/8] now brighness binds to KeyboardBrightnessControl from org.kde.plasma.private.brightnesscontrolplugin so it can be controlled from shortcut, vrgb brightness is now always 100% --- plasmoid/package/contents/ui/main.qml | 90 +++++++++++++++++++-------- 1 file changed, 63 insertions(+), 27 deletions(-) diff --git a/plasmoid/package/contents/ui/main.qml b/plasmoid/package/contents/ui/main.qml index c3d11dc..f066150 100644 --- a/plasmoid/package/contents/ui/main.qml +++ b/plasmoid/package/contents/ui/main.qml @@ -2,8 +2,14 @@ * VRGB - Plasma 6 applet for ASUS Vivobook HID LampArray keyboards. * * State lives in ~/.config/vrgb/config.json, which the applet reads directly. - * Writes always go through the `vrgb` CLI so the config file has a single - * owner and the applet never touches hidraw itself. + * Colour writes always go through the `vrgb` CLI so the config file has a + * single owner and the applet never touches hidraw itself. + * + * Brightness is deliberately NOT vrgb's own intensity channel. The keyboard + * has two controls that multiply together: the asus::kbd_backlight level the + * Fn keys and Plasma drive, and vrgb's LampArray intensity. Driving the latter + * left the widget out of step with the Fn keys, so the slider here controls + * the Plasma backlight and vrgb's intensity stays pinned wide open. * * SPDX-License-Identifier: MIT */ @@ -13,6 +19,7 @@ import QtQuick.Layouts import org.kde.plasma.plasmoid import org.kde.plasma.components as PlasmaComponents import org.kde.plasma.plasma5support as P5Support +import org.kde.plasma.private.brightnesscontrolplugin import org.kde.kirigami as Kirigami PlasmoidItem { @@ -22,11 +29,15 @@ PlasmoidItem { // always on plasmashell's PATH. property string vrgbBin: "vrgb" property color currentColor: "#00aa55" - property int brightness: 100 property string errorText: "" // Suppresses hardware writes while the UI is being seeded from config.json. property bool loading: true + // Brightness comes from Plasma so the Fn keys and the widget stay in step. + readonly property int backlight: kbdBacklight.brightness + readonly property int backlightMax: Math.max(1, kbdBacklight.brightnessMax) + readonly property real litFraction: backlight / backlightMax + readonly property var presets: [ "#ff0000", "#ff7f00", "#ffd400", "#7fff00", "#00ff5e", "#00e5ff", "#0080ff", "#2b3cff", "#8b00ff", "#ff00c8", "#ff4d6d", "#ffffff" @@ -40,9 +51,9 @@ PlasmoidItem { } // The colour as it should actually appear on the keys. - readonly property color litColor: Qt.rgba(currentColor.r * brightness / 100, - currentColor.g * brightness / 100, - currentColor.b * brightness / 100, 1) + readonly property color litColor: Qt.rgba(currentColor.r * litFraction, + currentColor.g * litFraction, + currentColor.b * litFraction, 1) readonly property string resolveCmd: "command -v vrgb 2>/dev/null || echo /usr/local/bin/vrgb" readonly property string readCfgCmd: "cat \"$HOME/.config/vrgb/config.json\" 2>/dev/null" @@ -50,7 +61,8 @@ PlasmoidItem { Plasmoid.icon: "input-keyboard" toolTipMainText: i18n("Keyboard Lighting") toolTipSubText: loading ? i18n("Reading configuration…") - : i18n("#%1 at %2%", hexColor.toUpperCase(), brightness) + : i18n("#%1 at %2%", hexColor.toUpperCase(), + Math.round(litFraction * 100)) preferredRepresentation: compactRepresentation @@ -59,9 +71,10 @@ PlasmoidItem { return; } applyTimer.stop(); - // hexColor is generated locally and brightness is an int, so the - // command line is safe to build by concatenation. - executable.run(vrgbBin + " set " + hexColor + " " + brightness); + // hexColor is generated locally, so the command line is safe to build + // by concatenation. The trailing 100 pins vrgb's intensity wide open -- + // the Plasma backlight level is this applet's brightness control. + executable.run(vrgbBin + " set " + hexColor + " 100"); } function scheduleApply() { @@ -79,16 +92,24 @@ PlasmoidItem { cfg = null; } } + var percent = 100; if (cfg) { if (typeof cfg.color === "string" && /^[0-9a-fA-F]{6}$/.test(cfg.color)) { currentColor = "#" + cfg.color; } var p = parseInt(cfg.percent, 10); if (!isNaN(p)) { - brightness = Math.max(0, Math.min(100, p)); + percent = p; } } loading = false; + + // Normalise once if the CLI (or an older build of this applet) left + // vrgb's intensity somewhere other than wide open -- otherwise the + // backlight slider could never reach full brightness. + if (percent !== 100) { + applyNow(); + } } function handleResult(source, code, out, err) { @@ -113,6 +134,13 @@ PlasmoidItem { onTriggered: root.applyNow() } + KeyboardBrightnessControl { + id: kbdBacklight + // The popup shows the level itself; a second OSD on every drag step + // would just be noise. + isSilent: true + } + P5Support.DataSource { id: executable @@ -146,9 +174,11 @@ PlasmoidItem { anchors.centerIn: parent width: Math.min(parent.width, parent.height) height: width - source: "input-keyboard" + // The symbolic variant keeps its key detail when masked; plain + // input-keyboard flattens to a solid block. + source: "input-keyboard-symbolic" isMask: true - color: root.brightness > 0 ? root.currentColor : Kirigami.Theme.disabledTextColor + color: root.backlight > 0 ? root.currentColor : Kirigami.Theme.disabledTextColor } } @@ -262,24 +292,36 @@ PlasmoidItem { PlasmaComponents.Label { opacity: 0.75 - text: root.brightness + "%" + text: root.backlight + " / " + root.backlightMax } } PlasmaComponents.Slider { - id: brightnessSlider + id: backlightSlider Layout.fillWidth: true + enabled: kbdBacklight.isBrightnessAvailable from: 0 - to: 100 + to: root.backlightMax stepSize: 1 + snapMode: PlasmaComponents.Slider.SnapAlways - Component.onCompleted: value = root.brightness + // Straight to Plasma: this is a D-Bus property rather than a + // subprocess, so it needs no throttling. + onMoved: kbdBacklight.brightness = Math.round(value) + } - onMoved: { - root.brightness = Math.round(value); - root.scheduleApply(); - } + // Follows Plasma -- Fn keys, the brightness applet, anything else -- + // whenever the user is not dragging. Depending on backlightMax as + // well as backlight matters: PowerDevil publishes the maximum after + // the current value on startup, and without that dependency the + // slider can stay clamped against a stale range. + Binding { + target: backlightSlider + property: "value" + value: Math.min(root.backlight, root.backlightMax) + when: !backlightSlider.pressed + restoreMode: Binding.RestoreNone } Kirigami.InlineMessage { @@ -301,12 +343,6 @@ PlasmoidItem { function onCurrentColorChanged() { picker.setColor(root.currentColor); } - - function onBrightnessChanged() { - if (!brightnessSlider.pressed) { - brightnessSlider.value = root.brightness; - } - } } } } From 6f7c0c0e15587c99ec3f917d65158e0982573eb9 Mon Sep 17 00:00:00 2001 From: Bartolomiv Date: Thu, 3 Sep 2026 23:10:38 +0300 Subject: [PATCH 4/8] brightness moved to vrgb profiles, basically widget is now a profile switcher for vrgb --- plasmoid/extract-messages.sh | 6 +- plasmoid/package/contents/config/main.xml | 13 + .../plasma_applet_org.vrgb.keyboard.mo | Bin 840 -> 1139 bytes plasmoid/package/contents/ui/main.qml | 548 ++++++++++++++---- .../po/plasma_applet_org.vrgb.keyboard.pot | 36 +- plasmoid/po/uk.po | 36 +- 6 files changed, 501 insertions(+), 138 deletions(-) create mode 100644 plasmoid/package/contents/config/main.xml diff --git a/plasmoid/extract-messages.sh b/plasmoid/extract-messages.sh index 0a9a01d..f70595a 100755 --- a/plasmoid/extract-messages.sh +++ b/plasmoid/extract-messages.sh @@ -11,6 +11,10 @@ POT="$BASE/po/$DOMAIN.pot" mkdir -p "$BASE/po" +# Run from the package root so the "#:" source references in the .pot stay +# repo-relative instead of baking in whoever's home directory built it. +cd "$BASE" + # -C -kde is the KDE extraction mode; it understands the i18n* call family and # parses QML well enough since the call syntax matches C++. xgettext --from-code=UTF-8 -C -kde \ @@ -18,7 +22,7 @@ xgettext --from-code=UTF-8 -C -kde \ --package-name="VRGB Keyboard Lighting" \ --msgid-bugs-address="https://github.com/vrgb-dev/vrgb/issues" \ -o "$POT" \ - "$BASE"/package/contents/ui/*.qml + package/contents/ui/*.qml echo "Wrote ${POT#"$BASE"/}" diff --git a/plasmoid/package/contents/config/main.xml b/plasmoid/package/contents/config/main.xml new file mode 100644 index 0000000..473fd12 --- /dev/null +++ b/plasmoid/package/contents/config/main.xml @@ -0,0 +1,13 @@ + + + + + + + false + + + diff --git a/plasmoid/package/contents/locale/uk/LC_MESSAGES/plasma_applet_org.vrgb.keyboard.mo b/plasmoid/package/contents/locale/uk/LC_MESSAGES/plasma_applet_org.vrgb.keyboard.mo index 34d894521a1665a9aa6ae4a2e8a024b182086a12..8f9c93e0df4d2c76216e07d9af33578509e65290 100644 GIT binary patch delta 565 zcmZ{f&nv@m7{{N@Fy=5n5~04*N|Hj#MIr}9h@;b&eateOW)Z0|%0-IVNGVq*+iV%D zxykYQl%rgnaP$v&KeIS_>ivCvp3nRF@%=oNec8jWHMSTbs-R|Q3#x`*APK`lR0+0% z4zLrnf&In%0k91DC@6iCpwyY5%v=T=z)ev4qQ(3Sys}W3k~p-$m@Oe{0yjWe7z69T zOV9~siuaFTBXV8jC)kd>6w{@y3+x34L5wE5c#s523qK)e*+JM}2rItwit?Yd@PZ1Q zNd=f;p%bGklSsn1Op3RpQ2%Neu;*IUe994uU1!SMEO)m(U{tp3z$K-F)ohR z@1Y5`{@XP5(`@+7Wku7|O>j!b^^T5+f6Q4F?&^KcNo)F7a1|VPqVi_Rz0b*_-t^r~YSOLUbK)e!4ZvoPRK)fG_C4l%Mlzs)I zS28j%FaxnHkiC|Pfk6aFp9az({SSb&29SOYq>X{J2r~l%P-#5_3y=e3g8?g)hEX6# zfdEhs1B0@vp+aJbf~t`!gHusvdPYfJYH=}xcWPx)eqvFIf)7Y2GcTPXC^az!NGl}g z=cQ$)mlh?KWaj5RYFNflR+OHkkXn&hlA5AWo>`IsRFSfI4dXe+$qSi9IcHticVYL% QX%`zNv#@AQwr4Q`0OT7v9RL6T diff --git a/plasmoid/package/contents/ui/main.qml b/plasmoid/package/contents/ui/main.qml index f066150..bea095f 100644 --- a/plasmoid/package/contents/ui/main.qml +++ b/plasmoid/package/contents/ui/main.qml @@ -1,15 +1,17 @@ /* * VRGB - Plasma 6 applet for ASUS Vivobook HID LampArray keyboards. * - * State lives in ~/.config/vrgb/config.json, which the applet reads directly. - * Colour writes always go through the `vrgb` CLI so the config file has a - * single owner and the applet never touches hidraw itself. + * The swatch grid is backed by vrgb profiles rather than hardcoded colours: + * one click loads a profile, a double click opens it in the editor, and "+" + * creates a new one. State is read straight out of ~/.config/vrgb/config.json; + * every write goes through the `vrgb` CLI so the config file has a single + * owner and the applet never touches hidraw itself. * - * Brightness is deliberately NOT vrgb's own intensity channel. The keyboard - * has two controls that multiply together: the asus::kbd_backlight level the - * Fn keys and Plasma drive, and vrgb's LampArray intensity. Driving the latter - * left the widget out of step with the Fn keys, so the slider here controls - * the Plasma backlight and vrgb's intensity stays pinned wide open. + * Two different brightnesses are in play, and they multiply: + * - asus::kbd_backlight (0..3), driven by the Fn keys and Plasma. The slider + * on the grid page is bound to it, so the widget and the Fn keys agree. + * - vrgb's own LampArray intensity (0..100), stored per profile. That one + * lives in the editor, since it is part of what a profile *is*. * * SPDX-License-Identifier: MIT */ @@ -29,31 +31,44 @@ PlasmoidItem { // always on plasmashell's PATH. property string vrgbBin: "vrgb" property color currentColor: "#00aa55" + property int currentPercent: 100 property string errorText: "" // Suppresses hardware writes while the UI is being seeded from config.json. property bool loading: true + // [{ name, color, percent }], sorted by name. + property var profiles: [] + + // "grid" or "editor" + property string page: "grid" + property string editorName: "" + property bool editorNew: false + property color editorColor: "#ffffff" + property int editorPercent: 100 + // Shown in the header instead of the hex while a swatch is hovered. + property string hoveredName: "" + // Brightness comes from Plasma so the Fn keys and the widget stay in step. readonly property int backlight: kbdBacklight.brightness readonly property int backlightMax: Math.max(1, kbdBacklight.brightnessMax) readonly property real litFraction: backlight / backlightMax - readonly property var presets: [ - "#ff0000", "#ff7f00", "#ffd400", "#7fff00", "#00ff5e", "#00e5ff", - "#0080ff", "#2b3cff", "#8b00ff", "#ff00c8", "#ff4d6d", "#ffffff" + readonly property var defaultPalette: [ + { name: "Red", color: "ff0000" }, { name: "Orange", color: "ff7f00" }, + { name: "Amber", color: "ffd400" }, { name: "Lime", color: "7fff00" }, + { name: "Green", color: "00ff5e" }, { name: "Cyan", color: "00e5ff" }, + { name: "Azure", color: "0080ff" }, { name: "Blue", color: "2b3cff" }, + { name: "Violet", color: "8b00ff" }, { name: "Magenta", color: "ff00c8" }, + { name: "Rose", color: "ff4d6d" }, { name: "White", color: "ffffff" } ] - readonly property string hexColor: { - function ch(v) { - return Math.round(Math.max(0, Math.min(1, v)) * 255).toString(16).padStart(2, "0"); - } - return ch(currentColor.r) + ch(currentColor.g) + ch(currentColor.b); - } + readonly property string hexColor: toHex(currentColor) - // The colour as it should actually appear on the keys. - readonly property color litColor: Qt.rgba(currentColor.r * litFraction, - currentColor.g * litFraction, - currentColor.b * litFraction, 1) + // What the keys should actually look like: colour x vrgb intensity x backlight. + readonly property color litColor: { + var f = litFraction * currentPercent / 100; + return Qt.rgba(currentColor.r * f, currentColor.g * f, currentColor.b * f, 1); + } readonly property string resolveCmd: "command -v vrgb 2>/dev/null || echo /usr/local/bin/vrgb" readonly property string readCfgCmd: "cat \"$HOME/.config/vrgb/config.json\" 2>/dev/null" @@ -66,23 +81,106 @@ PlasmoidItem { preferredRepresentation: compactRepresentation - function applyNow() { + function toHex(c) { + function ch(v) { + return Math.round(Math.max(0, Math.min(1, v)) * 255).toString(16).padStart(2, "0"); + } + return ch(c.r) + ch(c.g) + ch(c.b); + } + + // Profile names reach a shell, so quote them properly rather than trusting + // the field validator alone. + function shellQuote(s) { + return "'" + String(s).replace(/'/g, "'\\''") + "'"; + } + + function nameIsValid(name) { + var n = String(name).trim(); + return n.length > 0 && n.length <= 32 && /^[A-Za-z0-9 _-]+$/.test(n); + } + + function profileByName(name) { + for (var i = 0; i < profiles.length; ++i) { + if (profiles[i].name === name) { + return profiles[i]; + } + } + return null; + } + + // --- hardware / CLI --------------------------------------------------- + + // Live preview while the editor is open; snapshotted by "Save". + function applyPreview() { if (loading) { return; } - applyTimer.stop(); - // hexColor is generated locally, so the command line is safe to build - // by concatenation. The trailing 100 pins vrgb's intensity wide open -- - // the Plasma backlight level is this applet's brightness control. - executable.run(vrgbBin + " set " + hexColor + " 100"); + previewTimer.stop(); + executable.run(vrgbBin + " set " + toHex(editorColor) + " " + editorPercent); } - function scheduleApply() { + function schedulePreview() { if (!loading) { - applyTimer.restart(); + previewTimer.restart(); } } + function loadProfile(name) { + executable.run(vrgbBin + " profile load " + shellQuote(name)); + } + + function saveProfile(name) { + // `profile save` snapshots the current state, so set it first. + executable.run(vrgbBin + " set " + toHex(editorColor) + " " + editorPercent + + " && " + vrgbBin + " profile save " + shellQuote(name)); + } + + function deleteProfile(name) { + executable.run(vrgbBin + " profile delete " + shellQuote(name)); + } + + function seedDefaults() { + var parts = []; + for (var i = 0; i < defaultPalette.length; ++i) { + var p = defaultPalette[i]; + parts.push(vrgbBin + " set " + p.color + " 100"); + parts.push(vrgbBin + " profile save " + shellQuote(p.name)); + } + // Put the keys back where they were rather than leaving them on the + // last seeded colour. + parts.push(vrgbBin + " set " + hexColor + " " + currentPercent); + executable.run(parts.join(" && ")); + } + + // --- editor ----------------------------------------------------------- + + function openEditor(name) { + var p = profileByName(name); + if (!p) { + return; + } + editorNew = false; + editorName = p.name; + editorColor = "#" + p.color; + editorPercent = p.percent; + page = "editor"; + } + + function openNewEditor() { + editorNew = true; + editorName = ""; + editorColor = currentColor; + editorPercent = currentPercent; + page = "editor"; + } + + function closeEditor() { + previewTimer.stop(); + page = "grid"; + } + + // --- config ----------------------------------------------------------- + function loadConfig(text) { var cfg = null; if (text.length > 0) { @@ -92,23 +190,41 @@ PlasmoidItem { cfg = null; } } - var percent = 100; + + var list = []; if (cfg) { if (typeof cfg.color === "string" && /^[0-9a-fA-F]{6}$/.test(cfg.color)) { currentColor = "#" + cfg.color; } - var p = parseInt(cfg.percent, 10); - if (!isNaN(p)) { - percent = p; + var pc = parseInt(cfg.percent, 10); + if (!isNaN(pc)) { + currentPercent = Math.max(0, Math.min(100, pc)); + } + if (cfg.profiles && typeof cfg.profiles === "object") { + for (var name in cfg.profiles) { + var p = cfg.profiles[name]; + if (!p || !/^[0-9a-fA-F]{6}$/.test(String(p.color))) { + continue; + } + var pp = parseInt(p.percent, 10); + list.push({ + name: name, + color: String(p.color), + percent: isNaN(pp) ? 100 : Math.max(0, Math.min(100, pp)) + }); + } } } + list.sort(function (a, b) { return a.name.localeCompare(b.name); }); + profiles = list; loading = false; - // Normalise once if the CLI (or an older build of this applet) left - // vrgb's intensity somewhere other than wide open -- otherwise the - // backlight slider could never reach full brightness. - if (percent !== 100) { - applyNow(); + // First run: turn the old hardcoded palette into real profiles so the + // grid is not empty. Guarded by applet config, otherwise deleting every + // profile would resurrect them on the next start. + if (list.length === 0 && !Plasmoid.configuration.seededDefaults) { + Plasmoid.configuration.seededDefaults = true; + seedDefaults(); } } @@ -118,20 +234,42 @@ PlasmoidItem { vrgbBin = out.split("\n")[0]; } executable.run(readCfgCmd); - } else if (source === readCfgCmd) { + return; + } + if (source === readCfgCmd) { loadConfig(out); + return; + } + // Any other command was a write. + if (code === 0) { + errorText = ""; + executable.run(readCfgCmd); } else { - errorText = (code === 0) ? "" - : (err.length > 0 ? err : i18n("vrgb exited with code %1", code)); + errorText = err.length > 0 ? err : i18n("vrgb exited with code %1", code); } } Timer { - id: applyTimer + id: previewTimer // vrgb returns in ~25 ms; 60 ms keeps a drag smooth without queueing up // one process per mouse move. interval: 60 - onTriggered: root.applyNow() + onTriggered: root.applyPreview() + } + + Timer { + id: clickTimer + property string pendingName: "" + // Must be at least the system double-click interval, or the single-click + // load would fire before the second click is recognised. + interval: (Qt.styleHints && Qt.styleHints.mouseDoubleClickInterval) + ? Qt.styleHints.mouseDoubleClickInterval : 400 + onTriggered: { + if (pendingName.length > 0) { + root.loadProfile(pendingName); + pendingName = ""; + } + } } KeyboardBrightnessControl { @@ -184,20 +322,30 @@ PlasmoidItem { fullRepresentation: Item { Layout.minimumWidth: Kirigami.Units.gridUnit * 15 - Layout.minimumHeight: Kirigami.Units.gridUnit * 21 + Layout.minimumHeight: Kirigami.Units.gridUnit * 19 Layout.preferredWidth: Kirigami.Units.gridUnit * 17 - Layout.preferredHeight: Kirigami.Units.gridUnit * 23 + Layout.preferredHeight: Kirigami.Units.gridUnit * 22 ColumnLayout { anchors.fill: parent anchors.margins: Kirigami.Units.largeSpacing spacing: Kirigami.Units.smallSpacing + // --- header --------------------------------------------------- RowLayout { Layout.fillWidth: true spacing: Kirigami.Units.largeSpacing + PlasmaComponents.ToolButton { + visible: root.page === "editor" + icon.name: "draw-arrow-back" + display: PlasmaComponents.ToolButton.IconOnly + text: i18n("Back") + onClicked: root.closeEditor() + } + Rectangle { + visible: root.page === "grid" Layout.preferredWidth: Kirigami.Units.gridUnit * 2.5 Layout.preferredHeight: Kirigami.Units.gridUnit * 2.5 radius: 4 @@ -214,15 +362,21 @@ PlasmoidItem { Layout.fillWidth: true level: 4 elide: Text.ElideRight - text: i18n("Keyboard Lighting") + text: root.page === "editor" + ? (root.editorNew ? i18n("New profile") : root.editorName) + : i18n("Keyboard Lighting") } PlasmaComponents.Label { Layout.fillWidth: true + visible: root.page === "grid" elide: Text.ElideRight - font.family: "monospace" + font.family: root.hoveredName.length > 0 + ? Kirigami.Theme.defaultFont.family : "monospace" opacity: 0.75 - text: "#" + root.hexColor.toUpperCase() + text: root.hoveredName.length > 0 + ? root.hoveredName + : "#" + root.hexColor.toUpperCase() } } } @@ -233,95 +387,237 @@ PlasmoidItem { Layout.bottomMargin: Kirigami.Units.smallSpacing } - GridLayout { + // --- pages ---------------------------------------------------- + StackLayout { Layout.fillWidth: true - columns: 6 - columnSpacing: Kirigami.Units.smallSpacing - rowSpacing: Kirigami.Units.smallSpacing - - Repeater { - model: root.presets + Layout.fillHeight: true + currentIndex: root.page === "editor" ? 1 : 0 - delegate: Rectangle { - required property string modelData + // page 0: profile grid + ColumnLayout { + spacing: Kirigami.Units.smallSpacing + GridLayout { Layout.fillWidth: true - Layout.preferredHeight: Kirigami.Units.gridUnit * 1.3 - radius: 3 - color: modelData - border.width: 1 - border.color: Qt.rgba(0, 0, 0, 0.3) - - MouseArea { - anchors.fill: parent - onClicked: { - root.currentColor = parent.modelData; - picker.setColor(root.currentColor); - root.applyNow(); + columns: 6 + columnSpacing: Kirigami.Units.smallSpacing + rowSpacing: Kirigami.Units.smallSpacing + + Repeater { + model: root.profiles + + delegate: Rectangle { + id: swatch + + required property var modelData + // Marks whichever profile matches the live colour. + // Colours need colorEqual; === compares wrappers. + readonly property bool isCurrent: + Qt.colorEqual(root.currentColor, "#" + modelData.color) + + Layout.fillWidth: true + Layout.preferredHeight: Kirigami.Units.gridUnit * 1.3 + radius: 3 + color: "#" + modelData.color + border.width: isCurrent ? 2 : 1 + border.color: isCurrent ? Kirigami.Theme.highlightColor + : Qt.rgba(0, 0, 0, 0.3) + + MouseArea { + anchors.fill: parent + hoverEnabled: true + onEntered: root.hoveredName = swatch.modelData.name + onExited: { + if (root.hoveredName === swatch.modelData.name) { + root.hoveredName = ""; + } + } + // A double click also emits two clicks, so + // defer the load and cancel it if a second + // click arrives. + onClicked: { + clickTimer.pendingName = swatch.modelData.name; + clickTimer.restart(); + } + onDoubleClicked: { + clickTimer.stop(); + clickTimer.pendingName = ""; + root.openEditor(swatch.modelData.name); + } + } + } + } + + Rectangle { + Layout.fillWidth: true + Layout.preferredHeight: Kirigami.Units.gridUnit * 1.3 + radius: 3 + color: "transparent" + border.width: 1 + border.color: Kirigami.Theme.disabledTextColor + + Kirigami.Icon { + anchors.centerIn: parent + width: Kirigami.Units.iconSizes.small + height: width + source: "list-add" + isMask: true + color: Kirigami.Theme.textColor + } + + MouseArea { + anchors.fill: parent + hoverEnabled: true + onEntered: root.hoveredName = i18n("Add profile") + onExited: root.hoveredName = "" + onClicked: root.openNewEditor() } } } - } - } - ColorPicker { - id: picker + Item { + Layout.fillHeight: true + } - Layout.fillWidth: true - Layout.topMargin: Kirigami.Units.smallSpacing + RowLayout { + Layout.fillWidth: true - Component.onCompleted: setColor(root.currentColor) + PlasmaComponents.Label { + text: i18n("Brightness") + } - onPicked: c => { - root.currentColor = c; - root.scheduleApply(); - } - } + Item { + Layout.fillWidth: true + } - RowLayout { - Layout.fillWidth: true - Layout.topMargin: Kirigami.Units.smallSpacing + PlasmaComponents.Label { + opacity: 0.75 + text: root.backlight + " / " + root.backlightMax + } + } - PlasmaComponents.Label { - text: i18n("Brightness") - } + PlasmaComponents.Slider { + id: backlightSlider - Item { - Layout.fillWidth: true - } + Layout.fillWidth: true + enabled: kbdBacklight.isBrightnessAvailable + from: 0 + to: root.backlightMax + stepSize: 1 + snapMode: PlasmaComponents.Slider.SnapAlways + + // Straight to Plasma: this is a D-Bus property rather + // than a subprocess, so it needs no throttling. + onMoved: kbdBacklight.brightness = Math.round(value) + } - PlasmaComponents.Label { - opacity: 0.75 - text: root.backlight + " / " + root.backlightMax + // Follows Plasma -- Fn keys, the brightness applet, anything + // else -- whenever the user is not dragging. Depending on + // backlightMax as well as backlight matters: PowerDevil + // publishes the maximum after the current value on startup, + // and without that dependency the slider can stay clamped + // against a stale range. + Binding { + target: backlightSlider + property: "value" + value: Math.min(root.backlight, root.backlightMax) + when: !backlightSlider.pressed + restoreMode: Binding.RestoreNone + } } - } - PlasmaComponents.Slider { - id: backlightSlider + // page 1: profile editor + ColumnLayout { + spacing: Kirigami.Units.smallSpacing + + PlasmaComponents.TextField { + id: nameField - Layout.fillWidth: true - enabled: kbdBacklight.isBrightnessAvailable - from: 0 - to: root.backlightMax - stepSize: 1 - snapMode: PlasmaComponents.Slider.SnapAlways - - // Straight to Plasma: this is a D-Bus property rather than a - // subprocess, so it needs no throttling. - onMoved: kbdBacklight.brightness = Math.round(value) - } + Layout.fillWidth: true + visible: root.editorNew + placeholderText: i18n("Profile name") + maximumLength: 32 + // Seeded by onPageChanged, kept one-way so typing does + // not fight a binding. + onTextChanged: root.editorName = text + } + + ColorPicker { + id: picker + + Layout.fillWidth: true + + onPicked: c => { + root.editorColor = c; + root.schedulePreview(); + } + } + + RowLayout { + Layout.fillWidth: true + Layout.topMargin: Kirigami.Units.smallSpacing + + PlasmaComponents.Label { + text: i18n("Brightness") + } + + Item { + Layout.fillWidth: true + } + + PlasmaComponents.Label { + opacity: 0.75 + text: root.editorPercent + "%" + } + } + + PlasmaComponents.Slider { + id: percentSlider - // Follows Plasma -- Fn keys, the brightness applet, anything else -- - // whenever the user is not dragging. Depending on backlightMax as - // well as backlight matters: PowerDevil publishes the maximum after - // the current value on startup, and without that dependency the - // slider can stay clamped against a stale range. - Binding { - target: backlightSlider - property: "value" - value: Math.min(root.backlight, root.backlightMax) - when: !backlightSlider.pressed - restoreMode: Binding.RestoreNone + Layout.fillWidth: true + from: 0 + to: 100 + stepSize: 1 + + onMoved: { + root.editorPercent = Math.round(value); + root.schedulePreview(); + } + } + + Item { + Layout.fillHeight: true + } + + RowLayout { + Layout.fillWidth: true + spacing: Kirigami.Units.smallSpacing + + PlasmaComponents.Button { + visible: !root.editorNew + icon.name: "edit-delete" + text: i18n("Delete") + onClicked: { + root.deleteProfile(root.editorName); + root.closeEditor(); + } + } + + Item { + Layout.fillWidth: true + } + + PlasmaComponents.Button { + icon.name: "document-save" + text: i18n("Save") + enabled: root.nameIsValid(root.editorName) + onClicked: { + root.saveProfile(root.editorName.trim()); + root.closeEditor(); + } + } + } + } } Kirigami.InlineMessage { @@ -330,18 +626,20 @@ PlasmoidItem { text: root.errorText visible: root.errorText.length > 0 } - - Item { - Layout.fillHeight: true - } } - // Keep the popup in sync when config.json loads after the popup was built. + // Seed the editor widgets whenever a profile is opened. They live in a + // StackLayout page that is built once, so this cannot be a + // Component.onCompleted. Connections { target: root - function onCurrentColorChanged() { - picker.setColor(root.currentColor); + function onPageChanged() { + if (root.page === "editor") { + picker.setColor(root.editorColor); + percentSlider.value = root.editorPercent; + nameField.text = root.editorName; + } } } } diff --git a/plasmoid/po/plasma_applet_org.vrgb.keyboard.pot b/plasmoid/po/plasma_applet_org.vrgb.keyboard.pot index 4a775ac..c451254 100644 --- a/plasmoid/po/plasma_applet_org.vrgb.keyboard.pot +++ b/plasmoid/po/plasma_applet_org.vrgb.keyboard.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: VRGB Keyboard Lighting\n" "Report-Msgid-Bugs-To: https://github.com/vrgb-dev/vrgb/issues\n" -"POT-Creation-Date: 2026-09-03 22:05+0300\n" +"POT-Creation-Date: 2026-09-03 22:58+0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -17,22 +17,46 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: package/contents/ui/main.qml:51 package/contents/ui/main.qml:187 +#: package/contents/ui/main.qml:77 package/contents/ui/main.qml:367 msgid "Keyboard Lighting" msgstr "" -#: package/contents/ui/main.qml:52 +#: package/contents/ui/main.qml:78 msgid "Reading configuration…" msgstr "" -#: package/contents/ui/main.qml:53 +#: package/contents/ui/main.qml:79 msgid "#%1 at %2%" msgstr "" -#: package/contents/ui/main.qml:104 +#: package/contents/ui/main.qml:248 msgid "vrgb exited with code %1" msgstr "" -#: package/contents/ui/main.qml:256 +#: package/contents/ui/main.qml:343 +msgid "Back" +msgstr "" + +#: package/contents/ui/main.qml:366 +msgid "New profile" +msgstr "" + +#: package/contents/ui/main.qml:471 +msgid "Add profile" +msgstr "" + +#: package/contents/ui/main.qml:486 package/contents/ui/main.qml:561 msgid "Brightness" msgstr "" + +#: package/contents/ui/main.qml:538 +msgid "Profile name" +msgstr "" + +#: package/contents/ui/main.qml:599 +msgid "Delete" +msgstr "" + +#: package/contents/ui/main.qml:612 +msgid "Save" +msgstr "" diff --git a/plasmoid/po/uk.po b/plasmoid/po/uk.po index 284349e..21080e0 100644 --- a/plasmoid/po/uk.po +++ b/plasmoid/po/uk.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: VRGB Keyboard Lighting\n" "Report-Msgid-Bugs-To: https://github.com/vrgb-dev/vrgb/issues\n" -"POT-Creation-Date: 2026-09-03 22:05+0300\n" +"POT-Creation-Date: 2026-09-03 22:58+0300\n" "PO-Revision-Date: 2026-09-03 22:10+0300\n" "Last-Translator: vrgb-dev\n" "Language-Team: Ukrainian\n" @@ -17,22 +17,46 @@ msgstr "" "Plural-Forms: nplurals=4; plural=n==1 ? 3 : n%10==1 && n%100!=11 ? 0 : " "n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" -#: package/contents/ui/main.qml:51 package/contents/ui/main.qml:187 +#: package/contents/ui/main.qml:77 package/contents/ui/main.qml:367 msgid "Keyboard Lighting" msgstr "Колір" -#: package/contents/ui/main.qml:52 +#: package/contents/ui/main.qml:78 msgid "Reading configuration…" msgstr "Читання налаштувань…" -#: package/contents/ui/main.qml:53 +#: package/contents/ui/main.qml:79 msgid "#%1 at %2%" msgstr "#%1, яскравість %2%" -#: package/contents/ui/main.qml:104 +#: package/contents/ui/main.qml:248 msgid "vrgb exited with code %1" msgstr "vrgb завершив роботу з кодом %1" -#: package/contents/ui/main.qml:256 +#: package/contents/ui/main.qml:343 +msgid "Back" +msgstr "Назад" + +#: package/contents/ui/main.qml:366 +msgid "New profile" +msgstr "Новий профіль" + +#: package/contents/ui/main.qml:471 +msgid "Add profile" +msgstr "Додати профіль" + +#: package/contents/ui/main.qml:486 package/contents/ui/main.qml:561 msgid "Brightness" msgstr "Яскравість" + +#: package/contents/ui/main.qml:538 +msgid "Profile name" +msgstr "Назва профілю" + +#: package/contents/ui/main.qml:599 +msgid "Delete" +msgstr "Вилучити" + +#: package/contents/ui/main.qml:612 +msgid "Save" +msgstr "Зберегти" From 8fa173f335104cf0800ab82b3577a059c543663b Mon Sep 17 00:00:00 2001 From: Bartolomiv Date: Thu, 3 Sep 2026 23:20:12 +0300 Subject: [PATCH 5/8] fixed gap from colour selection grid to brighness slider --- plasmoid/package/contents/ui/main.qml | 43 +++++++++++++++++++-------- 1 file changed, 30 insertions(+), 13 deletions(-) diff --git a/plasmoid/package/contents/ui/main.qml b/plasmoid/package/contents/ui/main.qml index bea095f..1bb7875 100644 --- a/plasmoid/package/contents/ui/main.qml +++ b/plasmoid/package/contents/ui/main.qml @@ -321,14 +321,29 @@ PlasmoidItem { } fullRepresentation: Item { + id: fullRep + + readonly property int pad: Kirigami.Units.largeSpacing + // Height follows the content rather than a fixed guess, so the grid + // page is not padded out to the (much taller) editor page. Anchoring + // the content left/right/top only -- never filling -- keeps + // content.implicitHeight independent of this item's own height, so the + // binding cannot become circular. + readonly property int contentHeight: content.implicitHeight + 2 * pad + Layout.minimumWidth: Kirigami.Units.gridUnit * 15 - Layout.minimumHeight: Kirigami.Units.gridUnit * 19 Layout.preferredWidth: Kirigami.Units.gridUnit * 17 - Layout.preferredHeight: Kirigami.Units.gridUnit * 22 + Layout.minimumHeight: contentHeight + Layout.preferredHeight: contentHeight + Layout.maximumHeight: contentHeight ColumnLayout { - anchors.fill: parent - anchors.margins: Kirigami.Units.largeSpacing + id: content + + anchors.left: parent.left + anchors.right: parent.right + anchors.top: parent.top + anchors.margins: fullRep.pad spacing: Kirigami.Units.smallSpacing // --- header --------------------------------------------------- @@ -390,11 +405,17 @@ PlasmoidItem { // --- pages ---------------------------------------------------- StackLayout { Layout.fillWidth: true - Layout.fillHeight: true + // A StackLayout's own implicit height is the tallest page, which + // is what left dead space under the grid. Report just the page + // actually on screen. + Layout.preferredHeight: root.page === "editor" ? editorPage.implicitHeight + : gridPage.implicitHeight currentIndex: root.page === "editor" ? 1 : 0 // page 0: profile grid ColumnLayout { + id: gridPage + spacing: Kirigami.Units.smallSpacing GridLayout { @@ -475,12 +496,9 @@ PlasmoidItem { } } - Item { - Layout.fillHeight: true - } - RowLayout { Layout.fillWidth: true + Layout.topMargin: Kirigami.Units.smallSpacing PlasmaComponents.Label { text: i18n("Brightness") @@ -528,6 +546,8 @@ PlasmoidItem { // page 1: profile editor ColumnLayout { + id: editorPage + spacing: Kirigami.Units.smallSpacing PlasmaComponents.TextField { @@ -585,12 +605,9 @@ PlasmoidItem { } } - Item { - Layout.fillHeight: true - } - RowLayout { Layout.fillWidth: true + Layout.topMargin: Kirigami.Units.smallSpacing spacing: Kirigami.Units.smallSpacing PlasmaComponents.Button { From d223c55ca7f7633d9352f0b2385f2a07bc4c7593 Mon Sep 17 00:00:00 2001 From: Bartolomiv Date: Thu, 3 Sep 2026 23:25:37 +0300 Subject: [PATCH 6/8] Made naming a bit more right for my opinion --- plasmoid/po/plasma_applet_org.vrgb.keyboard.pot | 2 +- plasmoid/po/uk.po | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/plasmoid/po/plasma_applet_org.vrgb.keyboard.pot b/plasmoid/po/plasma_applet_org.vrgb.keyboard.pot index c451254..3dbdfef 100644 --- a/plasmoid/po/plasma_applet_org.vrgb.keyboard.pot +++ b/plasmoid/po/plasma_applet_org.vrgb.keyboard.pot @@ -18,7 +18,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" #: package/contents/ui/main.qml:77 package/contents/ui/main.qml:367 -msgid "Keyboard Lighting" +msgid "Colour" msgstr "" #: package/contents/ui/main.qml:78 diff --git a/plasmoid/po/uk.po b/plasmoid/po/uk.po index 21080e0..00f5461 100644 --- a/plasmoid/po/uk.po +++ b/plasmoid/po/uk.po @@ -18,7 +18,7 @@ msgstr "" "n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" #: package/contents/ui/main.qml:77 package/contents/ui/main.qml:367 -msgid "Keyboard Lighting" +msgid "Colour" msgstr "Колір" #: package/contents/ui/main.qml:78 From 790e0e099b097ca14dc9802773cc3e59116194a3 Mon Sep 17 00:00:00 2001 From: Bartolomiv Date: Thu, 3 Sep 2026 23:34:27 +0300 Subject: [PATCH 7/8] uninstall.sh for widget --- README.md | 10 +++++++ assets/plasma-widget-demo.png | Bin 0 -> 91319 bytes plasmoid/uninstall.sh | 48 ++++++++++++++++++++++++++++++++++ 3 files changed, 58 insertions(+) create mode 100644 assets/plasma-widget-demo.png create mode 100755 plasmoid/uninstall.sh diff --git a/README.md b/README.md index 30ed883..7ca046b 100644 --- a/README.md +++ b/README.md @@ -63,6 +63,10 @@ Current Stable Release: v0.3.5

+

+ +

+ ## Features @@ -77,6 +81,7 @@ Current Stable Release: v0.3.5 - Installer and uninstaller included - Non-root daily usage via udev permissions - Optional KDE autostart restore +- Optional KDE widget @@ -162,6 +167,11 @@ Clone the repository and run the installer. After installation log out and log back in so group permissions apply. +If want to install optional KDE widget + + cd plasmoid + chmod +x install.sh + ./install.sh **Note:** Keyboard color persists on reboot, but may reset to firmware default after a full power cycle. diff --git a/assets/plasma-widget-demo.png b/assets/plasma-widget-demo.png new file mode 100644 index 0000000000000000000000000000000000000000..7d0923b975963831e3bdecf015bea50785de5b9f GIT binary patch literal 91319 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 z znmW6U9P=l?@W1g-U-)r6{{_Fu*L=bE^4phg;zPddhxnFz+;+T~C*F1g$8UO&3k6X4 zHOC4tJd^+S2mTG8&V;=AWxV9)-h{n{!EIETFTS0J%gcL)>(Pha&XwJ*+;nyTc0B!) zzK-wyicjRdZn(lb?z@i%9=^o%lq2L`w?k1GxcPZs$PfPb=c6)l!;SEkU-@x<;D3Jw ze=?_fxIWW)o_OnyORs*&pEKbz0} zVS9-#CP-||>i>)maTT2+YIT|oU#Nrcdi8K1{Y`;qq4hCoDOuf#Q?H2E9{J!5)j~6<|mckY< zQ!nfLnL>7&PazdP@g5It>GeLc?=Ah7!n*dZZBr>*UoB?OGrdc%dj_0HfyzP}g#gDx*csKE0pZ4W^ z#pk`4hu->a{M=jOSxO#o+8{yo0#lh5$0-~CIsX`bJ*% z`5((ied;&yYq!3LuX*W*aSK#^5vE)2;0Z@&=1k7ratlZM$9VKu*}c!-<{y0XCo=x) zm+~<$_(=ZpU;8v(^x5CY%kN*@#D0pdJo>6{=dXX{NAQA=_%NRLVSkNp`lAowtA6Ak z@zUp z2Ytrhhu7ToB%IkU+!kJ%z;%*Gkm{rGL@M}%u_2MpmL`_@hNH`vk zPk0w?w&a2(+|>Zs)_**7HM=|>yr#N4Dwx_SDZ6rPg7Kf}j2N__ykKEgWDv z3-5T%t9b3jn|R7Sx3O#L;68Rw>{Ov#Bf!&jM=96wn ze5iTE<7$2@t*fHtjR$rhjpJx*Jdpq*_NIh*R+JyOTtwpVamuyK?NawN0P2N0|B-yr zSA8-!{>pdptv`RioA^%!L|}c8*Zw~bar1NkG9Pk>xWHxZFG9^%E^^@w|BAo=9lyr; z&-^C7?4!;nU64CJkPm&vk@W?TC-cD{@hqnMUc>7jQf_&#_vh)nmY@BJ|G?YJJHMaK z`#kvu>*1Joni*cX|pZf65=c{$Xx^-V1rZo3;il^2oAU zz&2`Z{Eu!MO?RqT71S~C5TN}ygo7a3UwF?)&#my42))XYtdXRl8<=u{rt`=|AdpxICQ)q(>-_BlQ}P!x$x-h zywk94`ADQN&kOUsXFueC8dm;`_eq<-B=y+a^Z^9^?0Z>__;&#!uiIzxT`e{$ zul|^k-~F+l;P;M&i}${f2dDpnPx#ai=kA-&bH}q@$QOL`7w~>37g?5e0M_wVp8lNo zLxR&0*um9th@dr=*OuqBGU&_b5@7>(>#HaAg z5BOL<@%eZ85FT#&G4N#*-rdQ2eZU9sK_B{&{MFC-M*jYbp3Vcm`3ipjLaPn^p_AL$ ztNp8S>tRyKaJp08*wy@hXAF+Nfo29#U*Ee#pb9=+v}oALohVQY|sm z9GRN)Lce)>@Al1{K8?aInIn$X5<2t~y6OqUnkc%Repyda+x;PN5Tla^^?E(^{uPa;r6?D#s~gYUi^js4e$Nv@A8YUdSC++mec)W!>hUEm#qUl8<~RLwzW8sQ@Ri^2MSR0Q`3y!~(e)C4_=BI% zD}DoDWu4cW{`yva_FKP=|MLI%dj7{R`epv$fBszn_HX!?{J^h0gD?8wf6YBN9x=}M z^IPBZ629tXZ)6Yf`#;3je(!tp4_^Fzy!}cE-}?5?;pblkW$;cebICpfBTYqNJ$a0y5C0Or@52F|x$?-HdG$a2BEIN{f7$=; zCl7u;MB->^pQU6;+pfI+AZmLwo3@RzjWd9V%{<%xBNJ(yls(QL>ORcYbxOkyz((#a z!LD&f1#KH~3=uo*{95!vhRb^%%I2nB9I5CxoT?n6tdnXWIYeI{RJ<}PSeTM_fMm&cQu6S(qcX zPvGx-%x7?R91vFak3PVE`mG=0n}6cp^QZeQY|xHFpI?>Lsc$ly9@U@8^P06o$hfw5 z0N67lZyN)7=Chw|;^fp`BI!yh7D$qynY&v#wsk5byEB}fV1IJLylS%ToPz~W16dc}&eiJh&C($QRb%*IJ zXQq{t<2_3mpSBs1<_bWdm$&!k~TIG<~pjOr#82~8hWv`@l)xJmrW>Z!elztn_ zCZ8R4p0Ci(sZ15H`AHbcp%k*BoTy8@yo6WqM&MH@&%d7E)T7gjJhEBIImK)i&jw|A zuiN(@54|fkCCA<-@;I%(MOy{wY0J-+UDiuAJ+QqNZTa4!toN?Q>Gg$iw__4}#<1o& z@h61lCIm3c5JPswXPi$>cDFZqkfOu8j^BXh1R!sJ0`*AXUQjw z12gyn$oaN?XBzc+mfRg=*oArT2Pj5iTarsE*)CzN{lv)j*Z>$E^u}IUKSX`KJXt<_SYnn9zo)d zoJf{MKey@HnR*@N5JOKPkLwne(|EnVK9^peDdP*fz8;TxQqp$-iFd|VHpodfV9|1{^1kb7Jt!nz0R>x<4b9v zk3PVkzVjro*O(b&P{<3fkDA)qE*4nu`hMf5D0NrJ*|pRJ^EAy@m4t7TR=uiAk_LsZ zdcZ^**Nk@U_Y^h}p*b=%ZQLnv97xd)nIIt4kL1a^>T^L1lifijMB?^}Po4A(M<}+q zEjTZbyMB=;0JT6$zf6jj&#bEp$}R@ReFg3U3Ys}5Qv2dOGxlrZmw8mN0N!>*!R-R9 zSik7iZpD=RLbZj;%lypi>1wi|$D>oI*UeZ3Vy-l5xpRh}?&)gLS^Rn5?=8CtLPTX}KZ#73Rl4Nn9#WA(#CX@<2*t(Omj z>eHwWNj+$SY@XFDil1x=78v>*V>J zZT>9O#|<7F@`JW)PUBz87gW0~`vcl4F0}lu_7*SNq<-+WbgxFI>7B;Uw579!D`-nU z)3xx2Z`hVyjhAq(!u|K(3kbtd50*GkPEJnz<8&58glQW63+C+GOjYg6A79{5|W z)tO+2OJHzypIdPSTQJ^MMKF_+Zk~){SHYA@dbu{qj1v1m)oIevK8n9zS%%bSzRBIR-I#i6t4E+lQ|dGuo;mcz+vS^3TY?FCg{xgoC-Y)2B zID@(xZ0Z(#T|cPlW_;1!;zc|9;UxDra&0KvY~ViN_c{@yB$nD+{9Zp(A1CW(S>e z)3ClkM6kJQe2KuuEINm#-caLLaz?`oL%$YwcA)+U83{vB){Pj+hQ1%|xOVw8bdX4* zKGE!_#~0l6tf92)&)`*ydiUQVG;MWxwaw2Kq8A5-dFyS3m>Xs%L=CHloM-rJVjrYy z@hTPLe=*x+ z0*auZ_9+PyY(dTo7I&`k-ymw;c4DB*9h~#bub5nX39EWQ@vA3N!dV0%^on@|^G?MC z7_Xn)5v!kE#m0Z+uk{Z6g_mR{m&6KEGDxbDdOQ2+buuqgZ)?}spdoLvARp)@)LPyx%(=0A<26kYl^_h$=;;yGGi67XFTRo{1XuDrM7sN+_Ibiwno-<1+h6l z6{u3Tg?zAxG1|0Uo~bNA>rfIv!>Hzz6DWZ^zAE5boCB~qA|UGZ)L_KT=!d>)i2?kgV%rIB-X7M_FB#LpBtG_kXqV^RBIEOGr5 zvp+2QdLmE{*2wJ8E+}-Hb(yec`=aZ5r4|uS#M)c2vQD-;u<`t(pM8n{*j$$#ZLT4# zox7X9B1W?9acp7lp`3;dI+?c*d~RURV;xj#OIte=`X$+w7|zdmX9}GI3|;#`C-CH4 zg73VbkacOPD)xt@AR?@5{XG7116HU$D+1FO5#sc)XFgKz-11#(=A-q%$#^1_TRki~92IQ3)?PgzvXAQDwm!4VS!V2cla1pjj*X(>VSTI0s{Y;(_I*SY9e{11`aIqkm8iKUcbhu?&&nX2l|3bW_}c1XG`FU)?e zH8Dj%eGP@bZzFSFj@4XqJ{f3-tH+vaX$*>e#?i;jn2JvDGM3)2>mS7IsMLt6 z7d+>Wtf8sbiQAEiWFlE73)~| zQW399XvD(rLs=(ppEy`!m_flmco9fr~gXdIo zPW*nsqrPSfH<8!FQ;_K1Fo>x#Lc2NZH@ z3~_#@1M|$-@(WFFMLqkKREMijgTK3;Vm}NcH{Ey(x7>1`qcdlirjcnFnb(DRUO2vT zg^L#-;n9nau)?9ALzhOOQ*=Ea%{-%ecmT|E5oa#qF%0!<<5ZP(6;}1n zb`vnruF#KH&q^gbg(sy5wjhlcAY)2qHK_5DRyc1&a+PDh2B=5)X#it*A2fOE^*M9hP7hDJlwJ}z81w{jQCl$ zeJa(XsKyUWjwFvyA)CbU{UAo_WlwWK1e^!hyuf&I)VU?%|2%B*Q!uM(*4TkEWAGT_ zzMz>l;oAf?ZpIt-CGT**RR*Vn`QB522%TIX5@t)xWTshdsQL{ho2D<4ouon}YIy4P z>3Cgz3-vm=UI($n_1NY|m?oF2V9hxiqo@@uIZmH3mT&WAQrgC4OviWM|}4gjtqqB^*XiNpe}0ODE`7{ z^wl5uHFSa>?JUpzppa#%y7_15RWGeHN2v!x^G$UZm4c)W>aj zVdt{qFY9#eLJ^lXpNykmqw}F9tQRinZrDa24r2mGM`yVE?x!)06BjOA;KId6%gbAN z&$M~;2;(?%%gs0O#529cj{N#;8kUt2WCr1Ct*<@y({D8V8QK z^qH^r$ET)?J=0lNh9TY^XLdsWh{VP9?5;Qh35MIm=0_u$Xk)fDND5XA!1Ri5r64j#UhjVZ@?d3JEkeLiOiz5#h#jH}SNmJ&Sc!-tyMB^6(=USe6Cb-&&Bt zo9CH#KKux8dFxvN;ptC*7B}2*uJbRHybC|_%ltkDEX&F=&;Ax`!)dY=k=VygUrZsD z$}ld=!hXMJSr%634H2%CrH$Q8fshrIlw9@^{5};W1CNIt6e1DJ4;(QI5vjh_?2FIp z1QFlN)O?hm9s?Yf2NDtRA`}4XK1(GN57V!XoB~V@o*0g=^qpz~ehpc+hvEbL+RLHZ zia&b2?89_gFPk`_o)j&1bi-fxq{<_nZnWF^ zn*2kR1>a*3_(UN5^|nq5W}oB=#kMjNme3DgJVI8;eFV$vWE73$qbmB9>QBV^NjJyO zcof%Fe{A`wqBb^EdDv$>Ay4`WyWJ5_dFnk}zH*uS?z^9PwnOLfkgBrZ&)j$4{T!bh z^VFw2joowvQ9rPD)EGRxV=J|rznwNSn@cF)N+N+R$+oC&?f5bSQO&@h!OLv_*8(nQ?0I=m;p+}92Ahg z@Bo|z!6<=Dw&fR+&tP=zs7A@L2%X%Y2#qXoLQ$#y+-DUe3i*~!@S>fsnX=uXzp{}5 zwz*Z^>dkm%LobpZb4Vjbrq*^Vl3CR)woSHAd)%>tt*eJZ}J$P(2GNC+UildVXz_|vtZQ)qv7`flx>{|R+`2A^NfL=h@B+jc8VdMT z{Sg7(SLlcTP_K^t5x#<#`pw@DlcYv`RIP ztP8FG>@~8>8?2Bw?`o&m;wtE*^5OwzZ*xZ)fTmmP(qrs(TV}-cYgRT!+m+a)ET>pU zW%G|q_!Fsk{gIc0o0~5x=DHDLO5ScZzTybeaapZ##+7^}66cAe1BYZ6)ceWp6g$fs zteM1%5P8KT%ey=?wy=vDl{i|*!@9L@M6p$^?E_Wy^UZ>I+hpg@KY`tD;=u!)!pk7lCAWYEB3Ud^9x5*e_zyo{-$$r!{OTj10u0*1DSj$k=x^xd|L zT8j{jPG0)%qqIZT7$?g5c)Rxv)jsF5 z>+MVd`go_1K=BcF;a|LuG_$Po;SlEm#wx2du(vYbaoZhSc;o`}T>ohE&qMRP@W_RW z+;PX9*t|ciUyLK~+s+MO(h`#~BOBazhdOan zJIkW5VUQJ&P;{Ov6+db^0Wy*ek-EH4ZU^O{nHop5&ig=HexdU7HEiQi<<*Pn#3on& zg_YUW4Z2cA*8Z&j+Q_+Oy(}^RVP|CVRPniz^kXi$mdz^+dzzocuiG{Y&vlJgk=AJ> z;IVDm3Z({8@r&cm7y>}V$W%A5w29R4UB~HSvP4={lUbf!m({iA*2#@yN}$BS+_w z_I0{W*XcT4r>l`J3uk`z+qm+`{pIb+?=D(b`!?rWZoQ3*mo6M0*y206Z}RoPab7u~ z#2;#AnD1p-{H@c1FqoWtgJpX2JeNah7zSimkyYxK$>l>P`u!o4paXFJxi94C_H5IXqHljF>V~?qu8K%~#+#oh#o4tkCbLhrc7JNGjts-#e`H#1${}Ru zTy2y34w(^6r|Wc`uG4k8HmS0%3!|w2A?LfF=6PWpeFyhVy*(%t zdj=FQ`T7ANQZ{^hInCPZs@U&<;$=9+{^&FgCO--k6hEB&kg5ljed6_y51eaJK#oxI zgeS8;^5FG@=Q>@d>vWy|ETqaL1MBkceaS7zK3O1s4+BX4on0I}0P%an^t-W!{I`Sx zNd28!96)v`SqwXv>hFfaU-2pa#dG00Lgi;UxgC#m#-R`2&v5hYDS_*Bovzb$x=xRW z>_sk^wH^@fZW5`VJZ;;wzmdZ@fE^azNY75B9st;zRMb=e``yhrj^&VvLnj{Vx>DYh zAn}2t?Kx3?=M$6>epwl%gVae6G63p zkZ678WS?d|48s1zK83ry{O2)Gedd!7nF^z&`O2d_^ok!vU-6^8=v1;(vgcNcr0c2a z{M63aPNOK|X(TDRP%A9)UJ|Gt`b^_PMwE5yHR*VeGRUem!APzL)?}Py;6VCZOE%um z^3GS&#{1FE)bpd?$H~0jCg^JMGgbRG%Pqd~tZy8_-qT~$VhO!?5h833ahs0GYqa21 zS&->O?9(!={wgQWvEu(=F1vpbP|qQ?fn-y4>&D>u=J~miOWuGA<%C-34UQt)D8OlP zLGguB^oy*CWqM{GA*@wG2aXO*fst^A9|B8pxAK=zoZskc& zek#LYUs3SxqG1>~bM_1mzU6^t{@AbW&3xcVceVV?ML9_vM1MmRG_c2A)bv#(XCJA{4BHnL`?9QSIDOM(>Dr8Fb;O(r}%km?5 znZiE!(GH&lWP0@c+|Sfv>mvuJYFTXS+du1NOY2w7EERu*hv3@0Yjg6s*vKjhsD3jB zYqb$Gg1Sjaab#;I*T;RS5}R{r`&_Dis=OjIiuorJvD(cyZ&)^W)%3K@0lIz)qnMpi zZSz`c?W$qu_gD;rE-^{WsT)g;5;Te{y6S>tsrB0!@-_NYe!m`#6I?Zz@+Xt0= zwZ7aIJQ07xL73%%2|9GStrsM;@?KYgd%p8GJFb!VKw5HX0Gq-j{svV`!y@L?`cexP z{iw8;vGP$++o1Zw)`^tygv{c{HOqn@c|x72Eh&a2t^}ys4@xT5$a>+Ur!eY#0j>U) zo^bbf#Q62TTfIXHU%g)DSzQi&_kCz>vWD?}nK!&>=Z!qtTM>e1o=(^3vobo25xM09 zE4(hxmMIH;GDO|HV+`^&?`rR^(d7FVA1=`%RL!!F{@3AG`EZSwbILAAtj< zlqL9ugeZ@9+XE{1bIeS(F59?4xi3*?k5|X1&8z4o5~&A$#uu`D&9dN^JQCJ*U3lp2 z4|4wedH>4lKR->=$gSsZ;h~2ff>IN!QB#XD9*_&0=YxpdlvsTMwXaB+=ehXGkFar1 zZ?3 z1NfbRxXcI3uBMkGmm;gX@UBRGK#Scbu=8v*Db1#;RaOF6M$U6GV9~L5B$10*vd?{} zwn14Z;^i0_L$8~CML$0>_5Dl{<1~NJ=F|J{@m5~^6KqjEJ{-AU{h6n%)#J&rLz3f} zWuE83uT!(l%Qj293fNp$2w$i}7rd-$zXP)0?f9G% z@qYZi$F5Nuv$1!;t!w#gw@MK&bu{+ili{UQoH-i~Xd z7mlM}oOwI+vn*$j^`Z6C%Yqk=K6dXn`v@Evd*AOV`wq&Oq8($BW94h#&iy{VwX25~ zYe-{5I?RtEvAJ6D+LX@tt9K-N^@b>XXt^qg`ES>ZZ3ehrUOT~yeqMXcTFQ3rU-5Yy z|2p4dV2Zs`Zvt}6Y!|#tZ7yEF&~g8WwQ<#miMDwLj*?R(i`6&F5#uEVpw_A2irCQ( zN^Pr$v6f}w-h1E3nWHn@amO81>0Kld;f_1+V49A2)4gw~If;N{t93~A#vyOi-pG(z zo`d(zSNr_~A4BL=HJ_JVKUrLnpU;T)Cb7^)aB0(fi51vrWk2 z+Vi(?ZutPPxl%W-d^N6;H$LCY3(S0Y*flnZ*t|nxJ_3g|^M)B)o+O{)E6>*&BH zUqsCJhF(x!Gpe?UXR>fr;sikJpK#;3b3ExucfHFm!A;Z1lb>`KH=H@ko9}%S`~4mf z+xR0^#-n~Mc-)U9JyJW@%AVEOK@!hqvQ4E!o6sFh{P=0h{k2H_k^A6DcGoS+Ir$it zb}p##s)Bk^h3dPJ`y<){7A*W}hg{QUV9Jgsg95Z-iefv{@nU_UCK0;fBZ^XyJIE9( zP#0c@SBPNNadp!Vet(U2jW<90zijR z)ofyIl`}Ka=Yns|sikvLR+9%gA=@xr2 z)E!wy761Ss07*naRF^JY;0=HLM@+-WJ$K*D`Sa)N-^ZLn!!U5`t+#UbQ=f_;yx|S6 z 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 S$5`?J0000/dev/null 2>&1; then + echo "kpackagetool6 not found - nothing to remove." + exit 0 +fi + +if kpackagetool6 --type Plasma/Applet --list 2>/dev/null | grep -qx "$APPLET_ID"; then + kpackagetool6 --type Plasma/Applet --remove "$APPLET_ID" + echo "Removed $APPLET_ID" +else + echo "Widget not installed. Skipping." +fi + +echo "[2/2] Checking for leftovers..." + +# kpackagetool6 normally clears this itself; catch a half-removed package. +if [ -d "$APPLET_DIR" ]; then + rm -rf "$APPLET_DIR" + echo "Removed leftover package directory." +else + echo "No leftover directory. Skipping." +fi + +echo +echo "Uninstall complete." +echo +echo "Note:" +echo "If the widget was on a panel, restart Plasma to clear its placeholder:" +echo +echo " systemctl --user restart plasma-plasmashell" +echo +echo "Your vrgb profiles were NOT removed. They belong to vrgb, not the widget," +echo "and remain available from the CLI:" +echo +echo " vrgb profile list" +echo +echo "The vrgb CLI itself is removed by the uninstaller one level up (../uninstall.sh)." From a54205d1080770ee15ca74fe8b27f6e71f6a1667 Mon Sep 17 00:00:00 2001 From: Bartolomiv Date: Thu, 3 Sep 2026 23:38:05 +0300 Subject: [PATCH 8/8] one more demo picture for README.md --- README.md | 4 ++++ assets/plasma-widget-colour-pick.png | Bin 0 -> 110220 bytes 2 files changed, 4 insertions(+) create mode 100644 assets/plasma-widget-colour-pick.png diff --git a/README.md b/README.md index 7ca046b..eb196f9 100644 --- a/README.md +++ b/README.md @@ -67,6 +67,10 @@ Current Stable Release: v0.3.5

+

+ +

+ ## Features diff --git a/assets/plasma-widget-colour-pick.png b/assets/plasma-widget-colour-pick.png new file mode 100644 index 0000000000000000000000000000000000000000..83cd8fbf337c56a737c0e029699e0d06196ff49e GIT binary patch literal 110220 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 T?%B3_069yCerN9WzD7T|}`ehlxK_ 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

uK7V2? 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 XG$5hzxg8>R00000NkvXXu0mjf39J`d literal 0 HcmV?d00001