250 lines
No EOL
6 KiB
Text
250 lines
No EOL
6 KiB
Text
(include "variables.yuck")
|
|
(include "templates.yuck")
|
|
|
|
|
|
;; left
|
|
|
|
|
|
;; Test
|
|
|
|
(defwidget time []
|
|
(eventbox
|
|
:onclick ``
|
|
:class "smallBox"
|
|
:valign "center"
|
|
:height 20
|
|
:width 70
|
|
(label
|
|
:text "${formattime(EWW_TIME, "%H:%M:%S")}")))
|
|
|
|
;; center
|
|
|
|
|
|
(defwidget normalWorkspaces [monitor]
|
|
(box
|
|
:space-evenly false
|
|
:spacing 3
|
|
(for workspace in workspaces
|
|
(workspace
|
|
:activeOn {workspace.normal.activeOn}
|
|
:occupied {workspace.normal.occupied}
|
|
:id {workspace.normal.id}
|
|
:cmd {workspace.normal.id}
|
|
:icon {workspace.normal.icon}
|
|
:monitor {monitor}))))
|
|
|
|
|
|
;; right
|
|
|
|
|
|
(defwidget cpu []
|
|
(icon
|
|
:widgetclass "cpu"
|
|
:hover "${round(EWW_CPU.avg, 1)}%"
|
|
:percentage {round(EWW_CPU.avg, 1)}
|
|
:image "images/cpu.png"))
|
|
|
|
(defwidget ram []
|
|
(icon
|
|
:widgetclass "ram"
|
|
:hover "${round(EWW_RAM.used_mem /(1024*1024*1024), 1)} GiB | ${round(EWW_RAM.used_mem_perc, 1)}%"
|
|
:percentage {round(EWW_RAM.used_mem_perc, 1)}
|
|
:image "images/ram.png"))
|
|
|
|
(defwidget audio []
|
|
(icon
|
|
:widgetclass {volume.muted == 1 ? "muted" : "volume"}
|
|
:hover "${volume.volume}%"
|
|
:percentage {volume.volume >= 0 && volume.volume <= 100 ? volume.volume : 0}
|
|
:image {volume.muted == 1 ? "images/volumeMuted.png" : "images/volume.png"}))
|
|
|
|
(defwidget brightness []
|
|
(icon
|
|
:widgetclass "brightness"
|
|
:hover "${brightnessValue / 960}%"
|
|
:percentage {brightnessValue / 960}
|
|
:image "images/brightness.png"))
|
|
|
|
(defwidget network []
|
|
(icon
|
|
:widgetclass "network"
|
|
:hover {network.name}
|
|
:percentage "100"
|
|
:image "images/${network.image}.png"))
|
|
|
|
(defwidget bluetooth []
|
|
(icon
|
|
:widgetclass "bluetooth"
|
|
:hover {bluetooth.name}
|
|
:percentage {bluetooth.battery}
|
|
:image "images/bluetooth.png"))
|
|
|
|
(defwidget battery []
|
|
(icon
|
|
:widgetclass {EWW_BATTERY.BAT1.status == "Charging" ? "battery" : EWW_BATTERY.total_avg > 25 ? "battery" : "batteryLow"}
|
|
:hover "${round(EWW_BATTERY.total_avg, 1)}%"
|
|
:percentage {EWW_BATTERY.total_avg <= 90 ? round(EWW_BATTERY.total_avg, 1)/0.9 : 100}
|
|
:image {EWW_BATTERY.BAT1.status == "Charging" ? "images/charging.png" : EWW_BATTERY.total_avg > 25 ? "images/battery.png" : "images/batteryLow.png"}))
|
|
|
|
(defwidget power []
|
|
(icon
|
|
:widgetclass "power"
|
|
:hover "placeholder"
|
|
:percentage "0"
|
|
:image "images/power.png"))
|
|
|
|
|
|
|
|
|
|
;; Widget blocks
|
|
|
|
;;(defwidget media []
|
|
;; (box
|
|
;; :class "smallBox"
|
|
;; :height 20
|
|
;; :valign "center"
|
|
;; :space-evenly false
|
|
;; :visible {media.status == "Playing" ? true : false}
|
|
;; (smallSpacer)
|
|
;; (label
|
|
;; :text {media.name}
|
|
;; :tooltip {media.name}
|
|
;; :limit-width 40)
|
|
;; (smallSpacer)))
|
|
|
|
(defwidget processing []
|
|
(eventbox
|
|
:onclick 'hyprctl dispatch exec "[float; pin; size 40% 40%; move 100%-41% 40] kitty bpytop -b proc"'
|
|
:class "smallBox"
|
|
(box
|
|
:space-evenly false
|
|
:halign "end"
|
|
:valign "center"
|
|
:height 20
|
|
(smallSpacer)
|
|
(cpu)
|
|
(space)
|
|
(ram)
|
|
(smallSpacer))))
|
|
|
|
(defwidget controlls []
|
|
(eventbox
|
|
:onclick 'hyprctl dispatch exec "[float; pin; size 40% 40%; move 100%-41% 40] kitty pulsemixer"'
|
|
:class "smallBox"
|
|
(box
|
|
:space-evenly false
|
|
:halign "end"
|
|
:valign "center"
|
|
:height 20
|
|
(smallSpacer)
|
|
(audio)
|
|
(space)
|
|
(brightness)
|
|
(smallSpacer))))
|
|
|
|
(defwidget wireless []
|
|
(eventbox
|
|
:onclick "`networkmanager_dmenu`"
|
|
:class "smallBox"
|
|
(box
|
|
:space-evenly false
|
|
:halign "end"
|
|
:valign "center"
|
|
:height 20
|
|
(smallSpacer)
|
|
(network)
|
|
(space)
|
|
(bluetooth)
|
|
(smallSpacer))))
|
|
|
|
(defwidget energy []
|
|
(eventbox
|
|
:onclick `sleep 1 && systemctl hibernate`
|
|
:class "smallBox"
|
|
(box
|
|
:space-evenly false
|
|
:halign "end"
|
|
:valign "center"
|
|
:height 20
|
|
(smallSpacer)
|
|
(battery)
|
|
(space)
|
|
(power)
|
|
(smallSpacer))))
|
|
|
|
|
|
(defwidget start []
|
|
(box
|
|
:orientation "h"
|
|
:space-evenly false
|
|
:halign "start"
|
|
(space)
|
|
(time)))
|
|
|
|
(defwidget center [monitor]
|
|
(box
|
|
:orientation "h"
|
|
:space-evenly false
|
|
:halign "center"
|
|
(workspace
|
|
:activeOn {workspaces[0].special.activeOn}
|
|
:occupied {workspaces[0].special.occupied}
|
|
:id {workspaces[0].special.id}
|
|
:icon {workspaces[0].special.icon}
|
|
:monitor {monitor})
|
|
(seperator)
|
|
(normalWorkspaces
|
|
:monitor {monitor})
|
|
(seperator)
|
|
(workspace
|
|
:activeOn {workspaces[1].special.activeOn}
|
|
:occupied {workspaces[1].special.occupied}
|
|
:id {workspaces[1].special.id}
|
|
:icon {workspaces[1].special.icon}
|
|
:monitor {monitor})))
|
|
|
|
(defwidget end []
|
|
(box
|
|
:spacing 2
|
|
:orientation "h"
|
|
:space-evenly false
|
|
:valign "center"
|
|
:halign "end"
|
|
|
|
(processing)
|
|
|
|
(seperator)
|
|
|
|
(controlls)
|
|
|
|
(seperator)
|
|
|
|
(wireless)
|
|
|
|
(seperator)
|
|
|
|
(energy)
|
|
|
|
(space)))
|
|
|
|
(defwidget bar [monitor]
|
|
(centerbox :orientation "h"
|
|
(start)
|
|
(center
|
|
:monitor {monitor})
|
|
(end)))
|
|
|
|
|
|
(defwindow bar [monitor width height]
|
|
:monitor {monitor}
|
|
:class "bar"
|
|
:geometry (geometry
|
|
:x "0%"
|
|
:y "5px"
|
|
:width "${width}px"
|
|
:height "${height}px"
|
|
:anchor "top center")
|
|
:stacking "fg"
|
|
:exclusive true
|
|
(bar
|
|
:monitor {monitor})) |