forked from Shinonome/dots-hyprland
stuff
This commit is contained in:
Executable
+390
@@ -0,0 +1,390 @@
|
||||
(defwidget wingamebarwidget []
|
||||
(box
|
||||
:space-evenly false
|
||||
:orientation "v"
|
||||
:class "thewholething"
|
||||
:height 1080
|
||||
:width 1920
|
||||
(overlay
|
||||
(box
|
||||
:height 1080
|
||||
:width 1920
|
||||
:class "wingamebar-overlay"
|
||||
)
|
||||
; Controls
|
||||
(eventbox
|
||||
:onclick "scripts/toggle-wingamebar.sh --close"
|
||||
:onrightclick "scripts/toggle-wingamebar.sh --close"
|
||||
:onmiddleclick "scripts/toggle-wingamebar.sh --close"
|
||||
(box :space-evenly false
|
||||
:style "
|
||||
margin-left: ${RES_WIDTH / 2 + ((gamebarwidgets.controls.at[0] - (RES_WIDTH / 2)) * (rev_wingamebar ? 1 : 1.03)) - (gamebarwidgets.controls.size[0] / 2)};
|
||||
margin-top: ${RES_HEIGHT / 2 + ((gamebarwidgets.controls.at[1] - (RES_HEIGHT / 2)) * (rev_wingamebar ? 1 : 1.03)) - (gamebarwidgets.controls.size[1] / 2)};
|
||||
margin-right: ${RES_WIDTH - (RES_WIDTH / 2 + ((gamebarwidgets.controls.at[0] - (RES_WIDTH / 2)) * (rev_wingamebar ? 1 : 1.03)) + (gamebarwidgets.controls.size[0] / 2))};
|
||||
margin-bottom: ${RES_HEIGHT - (RES_HEIGHT / 2 + ((gamebarwidgets.controls.at[1] - (RES_HEIGHT / 2)) * (rev_wingamebar ? 1 : 1.03)) + (gamebarwidgets.controls.size[1] / 2))};
|
||||
"
|
||||
:class "wingamebar-window"
|
||||
:halign "center"
|
||||
(box :space-evenly false :orientation "h"
|
||||
:class "wingamebar-control-sidesection-left"
|
||||
(button
|
||||
:class "wingamebar-control-button"
|
||||
(label :class "win-segoeicon wingamebar-control-button" :text "")
|
||||
)
|
||||
)
|
||||
(box
|
||||
:class "wingamebar-control-appsection"
|
||||
(button
|
||||
:class "wingamebar-control-button-active"
|
||||
(label :class "win-segoeicon wingamebar-control-button" :text "")
|
||||
)
|
||||
(button
|
||||
:class "wingamebar-control-button-active"
|
||||
(label :class "win-segoeicon wingamebar-control-button" :text "")
|
||||
)
|
||||
(button
|
||||
:class "wingamebar-control-button-active"
|
||||
(label :class "win-segoeicon wingamebar-control-button" :text "")
|
||||
)
|
||||
)
|
||||
(box :space-evenly false :orientation "h"
|
||||
:class "wingamebar-control-sidesection-right"
|
||||
(label :class "wingamebar-text wingamebar-text-clock" :text {time12})
|
||||
)
|
||||
)
|
||||
)
|
||||
; Capture
|
||||
(box
|
||||
:style "
|
||||
margin-left: ${RES_WIDTH / 2 + ((gamebarwidgets.capture.at[0] - (RES_WIDTH / 2)) * (rev_wingamebar ? 1 : 1.03)) - (gamebarwidgets.capture.size[0] / 2)};
|
||||
margin-top: ${RES_HEIGHT / 2 + ((gamebarwidgets.capture.at[1] - (RES_HEIGHT / 2)) * (rev_wingamebar ? 1 : 1.03)) - (gamebarwidgets.capture.size[1] / 2)};
|
||||
margin-right: ${RES_WIDTH - (RES_WIDTH / 2 + ((gamebarwidgets.capture.at[0] - (RES_WIDTH / 2)) * (rev_wingamebar ? 1 : 1.03)) + (gamebarwidgets.capture.size[0] / 2))};
|
||||
margin-bottom: ${RES_HEIGHT - (RES_HEIGHT / 2 + ((gamebarwidgets.capture.at[1] - (RES_HEIGHT / 2)) * (rev_wingamebar ? 1 : 1.03)) + (gamebarwidgets.capture.size[1] / 2))};
|
||||
"
|
||||
:class "wingamebar-window"
|
||||
:orientation "v" :space-evenly false
|
||||
(centerbox
|
||||
:class "wingamebar-titlebar"
|
||||
:valign "start" :height 33
|
||||
(box
|
||||
:space-evenly false :spacing 10
|
||||
(label :xalign 0 :class "wingamebar-icon" :text "")
|
||||
(label :xalign 0 :class "wingamebar-text" :text "Capture")
|
||||
)
|
||||
(box)
|
||||
(label :halign "end" :xalign 1 :class "wingamebar-title" :text "")
|
||||
)
|
||||
(box
|
||||
:class "wingamebar-capture"
|
||||
:space-evenly false :spacing 21
|
||||
(button
|
||||
:valign "start"
|
||||
:class "wingamebar-capture-button wingamebar-button"
|
||||
:onclick "scripts/toggle-wingamebar.sh --close && grim ~/Pictures/Screenshots/screenshot_$(date '+%Y_%m_%_d..%H.%M').png &"
|
||||
(label :class "win-segoeicon" :text "")
|
||||
)
|
||||
(button
|
||||
:valign "start"
|
||||
:class "wingamebar-capture-button-unavailable"
|
||||
(label :class "win-segoeicon" :text "")
|
||||
)
|
||||
(button
|
||||
:valign "start"
|
||||
:class "wingamebar-capture-button wingamebar-button"
|
||||
:onclick "scripts/toggle-wingamebar.sh --close && ~/.local/bin/record-script.sh ${record_sound ? '--sound ' : ''}&"
|
||||
(label :class "win-segoeicon" :text "")
|
||||
)
|
||||
(button
|
||||
:valign "start"
|
||||
:class "wingamebar-capture-button wingamebar-button"
|
||||
:onclick "${EWW_CMD} update record_sound='${!record_sound}'"
|
||||
(label :class "win-segoeicon" :text "${record_sound ? '' : ''}")
|
||||
)
|
||||
)
|
||||
(label :xalign 0 :class "wingamebar-content wingamebar-text wingamebar-subtext" :text {awin.title} :limit-width 38)
|
||||
(eventbox
|
||||
:class "wingamebar-button-pad"
|
||||
:onclick "scripts/toggle-wingamebar.sh --close && xdg-open ~/Videos &"
|
||||
(box
|
||||
:class "wingamebar-content wingamebar-capture-bottom"
|
||||
:space-evenly false :spacing 8
|
||||
(label :class "win-segoeicon" :text "")
|
||||
(label :class "wingamebar-text" :text "See my captures")
|
||||
)
|
||||
)
|
||||
)
|
||||
; Autio
|
||||
(box
|
||||
:style "
|
||||
margin-left: ${RES_WIDTH / 2 + ((gamebarwidgets.audio.at[0] - (RES_WIDTH / 2)) * (rev_wingamebar ? 1 : 1.03)) - (gamebarwidgets.audio.size[0] / 2)};
|
||||
margin-top: ${RES_HEIGHT / 2 + ((gamebarwidgets.audio.at[1] - (RES_HEIGHT / 2)) * (rev_wingamebar ? 1 : 1.03)) - (gamebarwidgets.audio.size[1] / 2)};
|
||||
margin-right: ${RES_WIDTH - (RES_WIDTH / 2 + ((gamebarwidgets.audio.at[0] - (RES_WIDTH / 2)) * (rev_wingamebar ? 1 : 1.03)) + (gamebarwidgets.audio.size[0] / 2))};
|
||||
margin-bottom: ${RES_HEIGHT - (RES_HEIGHT / 2 + ((gamebarwidgets.audio.at[1] - (RES_HEIGHT / 2)) * (rev_wingamebar ? 1 : 1.03)) + (gamebarwidgets.audio.size[1] / 2))};
|
||||
"
|
||||
:orientation "v" :space-evenly false
|
||||
:class "wingamebar-window"
|
||||
(centerbox
|
||||
:class "wingamebar-titlebar"
|
||||
:valign "start" :height 33
|
||||
(box
|
||||
:space-evenly false :spacing 10
|
||||
(label :xalign 0 :class "wingamebar-icon" :text "")
|
||||
(label :xalign 0 :class "wingamebar-text" :text "Audio")
|
||||
)
|
||||
(box)
|
||||
(label :halign "end" :xalign 1 :class "wingamebar-title" :text "")
|
||||
)
|
||||
; Select audio/mic
|
||||
(box
|
||||
:space-evenly false :orientation "h"
|
||||
:class "wingamebar-navbar"
|
||||
(button
|
||||
:class "wingamebar-navbar-button"
|
||||
(label :class "wingamebar-text" :text "MIX")
|
||||
)
|
||||
)
|
||||
; System volume
|
||||
(box
|
||||
:space-evenly false :orientation "v"
|
||||
:class "wingamebar-audio-sys"
|
||||
(label :xalign 0 :class "wingamebar-text wingamebar-text-small wingamebar-subtext"
|
||||
:text "DEFAULT OUTPUT"
|
||||
)
|
||||
(label :xalign 0 :class "wingamebar-text" :style "padding-top: 21px; padding-bottom: 7px;"
|
||||
:text {audiodevice} :limit-width 37
|
||||
)
|
||||
(box
|
||||
:space-evenly false :orientation "h"
|
||||
(button
|
||||
:class "winicon winvol${volume.audio == 1 ? round(volume.percent / 33, 0) : 'mute'}"
|
||||
:onclick "scripts/volume mute SINK &"
|
||||
)
|
||||
(scale
|
||||
:value "${volume.percent}"
|
||||
:onchange "scripts/volume setvol SINK {}"
|
||||
:class "winslider winslider-gamebar-sys"
|
||||
)
|
||||
)
|
||||
)
|
||||
; (scroll
|
||||
; :height 576
|
||||
(box
|
||||
:space-evenly false :orientation "v"
|
||||
(for app in audiojson
|
||||
(box
|
||||
:orientation "v" :space-evenly false :spacing 17
|
||||
:style "margin-top: 17px;"
|
||||
(for ser in {app["volume"]}
|
||||
(eventbox
|
||||
:onscroll "pactl set-sink-input-volume ${ser[0]} $(echo {} | sed -e \"s/up/+5/g\" -e \"s/down/-5/g\")%"
|
||||
:onrightclick "pactl set-sink-input-volume ${ser[0]} 100%"
|
||||
:onclick "pactl set-sink-input-volume ${ser[0]} 0%"
|
||||
(box :orientation "h" :space-evenly false :spacing 17
|
||||
(image :class "wingamebar-audio-appicon" :image-width 37 :image-height 37
|
||||
:path {app.icon}
|
||||
)
|
||||
(box :space-evenly false :orientation "v"
|
||||
(label :xalign 0 :class "wingamebar-text" :text "${app.name} #${ser[0]}")
|
||||
(box
|
||||
:space-evenly false :orientation "h"
|
||||
(button
|
||||
:class "winicon winvol${round((ser[1] < 100 ? ser[1] : 100) / 33, 0)}"
|
||||
:style "margin-right: 2px;"
|
||||
)
|
||||
(scale
|
||||
:value {ser[1] <= 100 ? ser[1] : 100}
|
||||
:onchange "pactl set-sink-input-volume ${ser[0]} {}%"
|
||||
:class "winslider winslider-gamebar-app"
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
; )
|
||||
)
|
||||
)
|
||||
; Performancee
|
||||
(box :orientation "v" :space-evenly false
|
||||
:style "
|
||||
margin-left: ${RES_WIDTH / 2 + ((gamebarwidgets.performance.at[0] - (RES_WIDTH / 2)) * (rev_wingamebar ? 1 : 1.03)) - (gamebarwidgets.performance.size[0] / 2)};
|
||||
margin-top: ${RES_HEIGHT / 2 + ((gamebarwidgets.performance.at[1] - (RES_HEIGHT / 2)) * (rev_wingamebar ? 1 : 1.03)) - (gamebarwidgets.performance.size[1] / 2)};
|
||||
margin-right: ${RES_WIDTH - (RES_WIDTH / 2 + ((gamebarwidgets.performance.at[0] - (RES_WIDTH / 2)) * (rev_wingamebar ? 1 : 1.03)) + (gamebarwidgets.performance.size[0] / 2))};
|
||||
margin-bottom: ${RES_HEIGHT - (RES_HEIGHT / 2 + ((gamebarwidgets.performance.at[1] - (RES_HEIGHT / 2)) * (rev_wingamebar ? 1 : 1.03)) + (gamebarwidgets.performance.size[1] / 2))};
|
||||
"
|
||||
:class "wingamebar-window"
|
||||
(centerbox
|
||||
:class "wingamebar-titlebar"
|
||||
:valign "start" :height 33
|
||||
(box
|
||||
:space-evenly false :spacing 10
|
||||
(label :xalign 0 :class "wingamebar-icon" :text "")
|
||||
(label :xalign 0 :class "wingamebar-text" :text "Performance")
|
||||
)
|
||||
(box)
|
||||
(label :halign "end" :xalign 1 :class "wingamebar-title" :text "")
|
||||
)
|
||||
(box :orientation "h" :space-evenly false
|
||||
(box :orientation "v" :space-evenly false
|
||||
:class "wingamebar-performance-metricscolumn"
|
||||
(button
|
||||
:class "wingamebar-performance-metric-${resource_metric == 'cpu'}"
|
||||
:onclick "${EWW_CMD} update resource_metric='cpu' &"
|
||||
(label :xalign 0 :class "wingamebar-text"
|
||||
:text "CPU ${round(EWW_CPU.avg, 0)}%"
|
||||
)
|
||||
)
|
||||
(button
|
||||
:class "wingamebar-performance-metric-${resource_metric == 'ram'}"
|
||||
:onclick "${EWW_CMD} update resource_metric='ram' &"
|
||||
(label :xalign 0 :class "wingamebar-text"
|
||||
:text "RAM ${round(memory.percentage, 0)}%"
|
||||
)
|
||||
)
|
||||
(button
|
||||
:class "wingamebar-performance-metric-${resource_metric == 'swap'}"
|
||||
:onclick "${EWW_CMD} update resource_metric='swap' &"
|
||||
(label :xalign 0 :class "wingamebar-text"
|
||||
:text "SWAP ${round(memory.swappercentage, 0)}%"
|
||||
)
|
||||
)
|
||||
)
|
||||
; Graph
|
||||
(box :width 236 :height 191 :space-evenly false
|
||||
:class "wingamebar-performance-grapharea"
|
||||
(revealer :reveal {resource_metric == 'cpu'}
|
||||
:transition "slideright" :duration "0ms"
|
||||
(overlay
|
||||
(box
|
||||
:width 236 :height 191
|
||||
:orientation "v" :space-evenly false
|
||||
:class "wingamebar-performance-graph-graphpad"
|
||||
(graph
|
||||
:width 202 :height 117
|
||||
:class "wingamebar-graph"
|
||||
:value {round(EWW_CPU.avg, 0)}
|
||||
:thickness 3
|
||||
:time-range "30s"
|
||||
:line-style "round"
|
||||
)
|
||||
)
|
||||
(centerbox
|
||||
:width 236 :height 191
|
||||
:orientation "v" :space-evenly false
|
||||
:class "wingamebar-performance-graphpad"
|
||||
(box :space-evenly false :orientation "v"
|
||||
(centerbox
|
||||
(label :xalign 0 :class "wingamebar-text wingamebar-text-bigmetric" :text "${round(EWW_CPU.avg, 0)}%")
|
||||
(box)
|
||||
(label :xalign 1 :yalign 0 :class "wingamebar-text wingamebar-text-small" :text "100")
|
||||
)
|
||||
(label :xalign 0 :class "wingamebar-text wingamebar-subtext wingamebar-text-small" :text "${EWW_CPU['cores'][0]['freq']} MHz")
|
||||
)
|
||||
(box)
|
||||
(centerbox
|
||||
:valign "end"
|
||||
(label :xalign 0 :class "wingamebar-text wingamebar-subtext wingamebar-text-small" :text "30 SECONDS")
|
||||
(box)
|
||||
(label :xalign 1 :yalign 1 :class "wingamebar-text wingamebar-text-small" :text "0")
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(revealer :reveal {resource_metric == 'ram'}
|
||||
:transition "slideright" :duration "0ms"
|
||||
(overlay
|
||||
(box
|
||||
:width 236 :height 191
|
||||
:orientation "v" :space-evenly false
|
||||
:class "wingamebar-performance-graph-graphpad"
|
||||
(graph
|
||||
:width 202 :height 117
|
||||
:class "wingamebar-graph"
|
||||
:value {round(memory.percentage, 0)}
|
||||
:thickness 3
|
||||
:time-range "30s"
|
||||
:line-style "round"
|
||||
)
|
||||
)
|
||||
(centerbox
|
||||
:width 236 :height 191
|
||||
:orientation "v" :space-evenly false
|
||||
:class "wingamebar-performance-graphpad"
|
||||
(box :space-evenly false :orientation "v"
|
||||
(centerbox
|
||||
(label :xalign 0 :class "wingamebar-text wingamebar-text-bigmetric" :text "${round(memory.percentage, 0)}%")
|
||||
(box)
|
||||
(label :xalign 1 :yalign 0 :class "wingamebar-text wingamebar-text-small" :text "100")
|
||||
)
|
||||
(label :xalign 0 :class "wingamebar-text wingamebar-subtext wingamebar-text-small" :text "${memory.used}b")
|
||||
)
|
||||
(box)
|
||||
(centerbox
|
||||
:valign "end"
|
||||
(label :xalign 0 :class "wingamebar-text wingamebar-subtext wingamebar-text-small" :text "30 SECONDS")
|
||||
(box)
|
||||
(label :xalign 1 :yalign 1 :class "wingamebar-text wingamebar-text-small" :text "0")
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(revealer :reveal {resource_metric == 'swap'}
|
||||
:transition "slideright" :duration "0ms"
|
||||
(overlay
|
||||
(box
|
||||
:width 236 :height 191
|
||||
:orientation "v" :space-evenly false
|
||||
:class "wingamebar-performance-graph-graphpad"
|
||||
(graph
|
||||
:width 202 :height 117
|
||||
:class "wingamebar-graph"
|
||||
:value {round(memory.swappercentage, 0)}
|
||||
:thickness 3
|
||||
:time-range "30s"
|
||||
:line-style "round"
|
||||
)
|
||||
)
|
||||
(centerbox
|
||||
:width 236 :height 191
|
||||
:orientation "v" :space-evenly false
|
||||
:class "wingamebar-performance-graphpad"
|
||||
(box :space-evenly false :orientation "v"
|
||||
(centerbox
|
||||
(label :xalign 0 :class "wingamebar-text wingamebar-text-bigmetric" :text "${round(memory.swappercentage, 0)}%")
|
||||
(box)
|
||||
(label :xalign 1 :yalign 0 :class "wingamebar-text wingamebar-text-small" :text "100")
|
||||
)
|
||||
(label :xalign 0 :class "wingamebar-text wingamebar-subtext wingamebar-text-small" :text "${memory.swapused}b")
|
||||
)
|
||||
(box)
|
||||
(centerbox
|
||||
:valign "end"
|
||||
(label :xalign 0 :class "wingamebar-text wingamebar-subtext wingamebar-text-small" :text "30 SECONDS")
|
||||
(box)
|
||||
(label :xalign 1 :yalign 1 :class "wingamebar-text wingamebar-text-small" :text "0")
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(defwindow wingamebar
|
||||
:stacking "overlay"
|
||||
:focusable true
|
||||
:wm-ignore true
|
||||
:monitor 0
|
||||
:namespace "gamebar"
|
||||
:geometry (geometry
|
||||
:height "100%"
|
||||
:width "100%"
|
||||
:anchor "center center"
|
||||
)
|
||||
(wingamebarwidget)
|
||||
)
|
||||
Reference in New Issue
Block a user