mirror of
https://github.imc.re/void-land/hyprland-void-dots
synced 2025-06-05 21:33:42 +02:00
feat: osd widget
This commit is contained in:
parent
978037d7d0
commit
f0a51d2f8c
8 changed files with 119 additions and 101 deletions
|
@ -20,9 +20,6 @@
|
|||
}
|
||||
|
||||
.vertical-bar-slider {
|
||||
scale {
|
||||
all: unset;
|
||||
|
||||
trough {
|
||||
background-color: $surface2;
|
||||
border-radius: get-token(border-radius);
|
||||
|
@ -40,5 +37,8 @@
|
|||
border-radius: get-token(border-radius);
|
||||
}
|
||||
}
|
||||
|
||||
.volume-icon {
|
||||
font-size: get-token(font-sizes, large);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -17,6 +17,10 @@ entry {
|
|||
color: $white0;
|
||||
}
|
||||
|
||||
scale {
|
||||
all: unset;
|
||||
}
|
||||
|
||||
calendar {
|
||||
all: unset;
|
||||
background-color: $surface0;
|
||||
|
|
|
@ -1,10 +1,24 @@
|
|||
@mixin window {
|
||||
border-radius: 1rem;
|
||||
padding: 1rem;
|
||||
box-shadow: 0 0 4px 2px;
|
||||
margin: 1rem;
|
||||
.volume-osd {
|
||||
@extend .panel-widget;
|
||||
border-radius: get-token(border-radius, large);
|
||||
|
||||
min-width: 320px;
|
||||
}
|
||||
|
||||
.volume-osd {
|
||||
@include window;
|
||||
.volume-scale {
|
||||
trough {
|
||||
border-radius: get-token(border-radius, large);
|
||||
min-height: 32px;
|
||||
background-color: $surface1;
|
||||
|
||||
highlight {
|
||||
border-radius: get-token(border-radius, large);
|
||||
background-color: $accent;
|
||||
}
|
||||
}
|
||||
|
||||
.volume-icon {
|
||||
font-size: get-token(font-sizes, large);
|
||||
margin-left: 8px;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
@import "./assets/scss/windows/control-panel";
|
||||
@import "./assets/scss/windows/vertical-bar";
|
||||
@import "./assets/scss/windows/dashboard";
|
||||
@import "./assets/scss/windows/osd";
|
||||
|
||||
@import "./src/dock/styles.scss";
|
||||
@import "./src/desktop/styles.scss";
|
||||
|
|
|
@ -1,11 +1,10 @@
|
|||
(defwidget VerticalBarSlider [var ?onchange]
|
||||
(box
|
||||
:class "vertical-bar-slider"
|
||||
(scale
|
||||
:value var
|
||||
:onchange onchange
|
||||
:class "vertical-bar-slider"
|
||||
:orientation "v"
|
||||
:tooltip "${var}%"
|
||||
:max 101
|
||||
:min 0
|
||||
:flipped true)))
|
||||
:flipped true))
|
||||
|
|
|
@ -51,7 +51,7 @@
|
|||
(defvar caffeine false)
|
||||
|
||||
; Osd
|
||||
(defvar revealOsd true)
|
||||
(defvar revealOsd false)
|
||||
|
||||
; Sidebar
|
||||
(defvar revealVolume false)
|
||||
|
@ -77,7 +77,7 @@
|
|||
"popups": []
|
||||
}'
|
||||
"./scripts/notif.py"
|
||||
)
|
||||
)
|
||||
|
||||
; Playerctl
|
||||
(deflisten pstatus :initial "" "playerctl status -F")
|
||||
|
@ -102,33 +102,33 @@
|
|||
(defpoll weatherjson
|
||||
:initial '{
|
||||
"FeelsLikeC": "0",
|
||||
"FeelsLikeF": "0",
|
||||
"cloudcover": "0",
|
||||
"humidity": "0",
|
||||
"localObsDateTime": "2000-00-00 07:27 AM",
|
||||
"observation_time": "07:27 AM",
|
||||
"precipInches": "0.0",
|
||||
"precipMM": "0.0",
|
||||
"pressure": "0",
|
||||
"pressureInches": "0",
|
||||
"temp_C": "0",
|
||||
"temp_F": "0",
|
||||
"uvIndex": "0",
|
||||
"visibility": "0",
|
||||
"visibilityMiles": "0",
|
||||
"weatherCode": "727",
|
||||
"weatherDesc": [{"value": "Idk"}],
|
||||
"weatherIconUrl": [{"value": ""}],
|
||||
"winddir16Point": "",
|
||||
"winddirDegree": "0",
|
||||
"windspeedKmph": "0",
|
||||
"windspeedMiles": "0",
|
||||
"icon": "idk",
|
||||
"hourly": []
|
||||
}'
|
||||
"FeelsLikeF": "0",
|
||||
"cloudcover": "0",
|
||||
"humidity": "0",
|
||||
"localObsDateTime": "2000-00-00 07:27 AM",
|
||||
"observation_time": "07:27 AM",
|
||||
"precipInches": "0.0",
|
||||
"precipMM": "0.0",
|
||||
"pressure": "0",
|
||||
"pressureInches": "0",
|
||||
"temp_C": "0",
|
||||
"temp_F": "0",
|
||||
"uvIndex": "0",
|
||||
"visibility": "0",
|
||||
"visibilityMiles": "0",
|
||||
"weatherCode": "727",
|
||||
"weatherDesc": [{"value": "Idk"}],
|
||||
"weatherIconUrl": [{"value": ""}],
|
||||
"winddir16Point": "",
|
||||
"winddirDegree": "0",
|
||||
"windspeedKmph": "0",
|
||||
"windspeedMiles": "0",
|
||||
"icon": "idk",
|
||||
"hourly": []
|
||||
}'
|
||||
:interval "1h"
|
||||
:run-while revealControlpanel
|
||||
"./scripts/weather.py")
|
||||
"./scripts/weather.py")
|
||||
(defpoll datehour :initial "12" :interval "30m" "date +'%H'")
|
||||
(defpoll notesc :interval "2s" :run-while reveal4 "cat -s ~/Documents/fuck.txt")
|
||||
(defpoll quotejson :interval "1h" `./scripts/quote.py`)
|
||||
|
|
|
@ -4,8 +4,8 @@
|
|||
(VolumeScale))))
|
||||
|
||||
(defwidget VolumeScale []
|
||||
(overlay :hexpand true
|
||||
(scale :min 0 :max 100 :active {volume != "muted"} :value {volume == "muted" ? 0 : volume} :onchange "pamixer --set-volume {}" :class "volume-scale")
|
||||
(overlay :hexpand true :class "volume-scale"
|
||||
(scale :min 0 :max 100 :active {volume != "muted"} :value {volume == "muted" ? 0 : volume} :onchange "pamixer --set-volume {}")
|
||||
(label :class 'volume-icon ${volume == "muted" ? "less" : volume < 5 ? "less" : "more"}' :halign "start" :text {volume == "muted" ? "" : volume < 33 ? "" : volume < 67 ? "" : ""})))
|
||||
|
||||
(defwidget VolumeControlCenter []
|
||||
|
|
Loading…
Add table
Reference in a new issue