summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxim Devaev <[email protected]>2024-11-26 19:11:59 +0200
committerMaxim Devaev <[email protected]>2024-11-26 19:11:59 +0200
commit7fd4dae3c6e8007fdc6a6bf1d127271288650cf8 (patch)
tree13ce286466db075ce0197015d5250c846e4acbb6
parent0cf5f8de9e1ef67cfe6b00dd35204665fbd4e54c (diff)
pikvm/pikvm#1408: Additional colors for GPIO
-rw-r--r--kvmd/apps/kvmd/ugpio.py2
-rw-r--r--web/share/css/led.css38
2 files changed, 35 insertions, 5 deletions
diff --git a/kvmd/apps/kvmd/ugpio.py b/kvmd/apps/kvmd/ugpio.py
index e4735c61..a3c453f5 100644
--- a/kvmd/apps/kvmd/ugpio.py
+++ b/kvmd/apps/kvmd/ugpio.py
@@ -408,7 +408,7 @@ class UserGpio:
def __make_item_input(self, parts: list[str]) -> dict:
assert len(parts) >= 1
color = (parts[1] if len(parts) > 1 else None)
- if color not in ["green", "yellow", "red"]:
+ if color not in ["green", "yellow", "red", "blue", "cyan", "magenta", "pink", "white"]:
color = "green"
return {
"type": UserGpioModes.INPUT,
diff --git a/web/share/css/led.css b/web/share/css/led.css
index b7e00116..4f5a437e 100644
--- a/web/share/css/led.css
+++ b/web/share/css/led.css
@@ -41,6 +41,13 @@
--led-spin-slow: spin 6s linear infinite;
--led-spin-medium: spin 3s linear infinite;
--led-spin-fast: spin 2s linear infinite;
+
+ /* Additional colors for GPIO */
+ --led-filter-blue: invert(0.5) sepia(1) saturate(5) hue-rotate(170deg);
+ --led-filter-cyan: invert(0.5) sepia(1) saturate(5) hue-rotate(130deg);
+ --led-filter-magenta: invert(0.5) sepia(1) saturate(5) hue-rotate(200deg);
+ --led-filter-pink: invert(0.5) sepia(1) saturate(5) hue-rotate(300deg);
+ --led-filter-white: invert(1) sepia(1);
}
img.led-gray {
@@ -48,19 +55,16 @@ img.led-gray {
-webkit-filter: var(--led-filter-gray);
filter: var(--led-filter-gray);
}
-
img.led-green {
-webkit-transform: translateZ(0);
-webkit-filter: var(--led-filter-green);
filter: var(--led-filter-green);
}
-
img.led-red {
-webkit-transform: translateZ(0);
-webkit-filter: var(--led-filter-red);
filter: var(--led-filter-red);
}
-
img.led-yellow {
-webkit-transform: translateZ(0);
-webkit-filter: var(--led-filter-yellow);
@@ -73,10 +77,36 @@ img.led-red-rotating-fast {
-webkit-animation: var(--led-spin-fast);
animation: var(--led-spin-fast);
}
-
img.led-yellow-rotating-fast {
-webkit-filter: var(--led-filter-yellow);
filter: var(--led-filter-yellow);
-webkit-animation: var(--led-spin-fast);
animation: var(--led-spin-fast);
}
+
+/* Additional colors for GPIO */
+img.led-blue {
+ -webkit-transform: translateZ(0);
+ -webkit-filter: var(--led-filter-blue);
+ filter: var(--led-filter-blue);
+}
+img.led-cyan {
+ -webkit-transform: translateZ(0);
+ -webkit-filter: var(--led-filter-cyan);
+ filter: var(--led-filter-cyan);
+}
+img.led-magenta {
+ -webkit-transform: translateZ(0);
+ -webkit-filter: var(--led-filter-magenta);
+ filter: var(--led-filter-magenta);
+}
+img.led-pink {
+ -webkit-transform: translateZ(0);
+ -webkit-filter: var(--led-filter-pink);
+ filter: var(--led-filter-pink);
+}
+img.led-white {
+ -webkit-transform: translateZ(0);
+ -webkit-filter: var(--led-filter-white);
+ filter: var(--led-filter-white);
+}