41 lines
1.5 KiB
Plaintext
41 lines
1.5 KiB
Plaintext
|
|
(defvar media_reveal_controls false)
|
|
|
|
(deflisten media :initial "{}"
|
|
`python3 ./scripts/mediaplayer.py`)
|
|
|
|
(defwidget media []
|
|
(eventbox :onhover "eww update media_reveal_controls=true"
|
|
:onhoverlost "eww update media_reveal_controls=false"
|
|
(box :class "mediaplayer ${ media_reveal_controls ? 'revealed' : '' }"
|
|
:space-evenly false
|
|
:visible { media.title == "null" && media.artist == "null" ?
|
|
false
|
|
:
|
|
"${ active_window.class =~ media.player || active_window.title =~ media.title ? false : true }"
|
|
}
|
|
|
|
(label :class "media-title"
|
|
:text "${media.title}")
|
|
(label :class "media-artist"
|
|
:text "${media.artist}")
|
|
(revealer :class "media-controls-revealer"
|
|
:reveal { media_reveal_controls ? true : false }
|
|
:transition "slideright"
|
|
:duration "180ms"
|
|
(box
|
|
(button :class "previous"
|
|
:onclick "playerctl previous --player=${media.player}"
|
|
"")
|
|
(button :class "toggle play-pause"
|
|
:onclick "playerctl play-pause --player=${media.player}"
|
|
{ media.status == "playing" ? "" : "" })
|
|
(button :class "next"
|
|
:onclick "playerctl next --player=${media.player}"
|
|
"")
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|