Files
dotfiles/home/.config/eww/widgets/media/media.yuck
T
2024-07-06 12:59:14 +03:00

51 lines
1.8 KiB
Plaintext

(defpoll media-status :interval "1s" "playerctl status")
(defpoll media-artist :interval "1s" "playerctl metadata --format \"{{artist}}\"")
(defpoll media-title :interval "1s" "playerctl metadata --format \"{{title}}\"")
(defpoll media-album :interval "1s" "playerctl metadata --format \"{{album}}\"")
(defpoll media-artUrl :interval "1s" "playerctl metadata --format \"{{mpris:artUrl}}\"")
(defpoll media-length :interval "1s" "playerctl metadata --format \"{{duration(mpris:length)}}\"")
(defwidget media []
(box
(eventbox :cursor "pointer" :onclick "eww open --toggle window_media" :class "interactive" :onmiddleclick "playerctl play-pause"
(box :class "media-status"
(label :text "${media-status == "Playing" ? "" : media-status == "Paused" ? "" : ""}")
)
)
)
)
(defwidget media_full []
(box :orientation "v" :space-evenly false :class "media-window"
(label :text media-artist :show-truncated false)
(label :text media-title :show-truncated false)
(label :text media-album :show-truncated false)
(box :class "media-cover" :style "background: url('${media-artUrl}')" :width 180 :height 140)
(box :class "media-controls" :spacing 16
(eventbox :cursor "pointer" :onclick "playerctl previous" :class "media-button" "")
(eventbox :cursor "pointer" :class "media-button play" :onclick "playerctl play" "")
(eventbox :cursor "pointer" :class "media-button pause" :onclick "playerctl pause" "")
(eventbox :cursor "pointer" :class "media-button next" :onclick "playerctl next" "")
)
)
)
(defwindow window_media
:monitor 0
:geometry (geometry :x "8px"
:y "8px"
:width "300px"
:anchor "top right"
)
:wm-ignore false
:focusable false
(box :class "control-centre bar"
(media_full)
)
)