From e02542fca8dfe25bc22346b55b35d2a6cbc0c35c Mon Sep 17 00:00:00 2001 From: Florian Fischer Date: Wed, 25 Nov 2015 20:17:15 +0100 Subject: rework media buttons control to function with spotify also remove bash wrapper for fish scripts and just use bash scripts --- scripts/media_control.sh | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 scripts/media_control.sh (limited to 'scripts/media_control.sh') diff --git a/scripts/media_control.sh b/scripts/media_control.sh new file mode 100644 index 0000000..c0ce02a --- /dev/null +++ b/scripts/media_control.sh @@ -0,0 +1,36 @@ +# NOTE: +# if spotify is running toggle is consumed by spotify. + +#!/bin/bash + +# arg parsing +if [ "$1" = "toggle" ] +then + spotify_cmd="PlayPause" +elif [ "$1" = "next" ] +then + spotify_cmd="Next" +elif [ "$1" = "prev" ] +then + spotify_cmd="Previous" +fi + +if [ "$spotify_cmd" != "" ] +then + # can't be sure if spotify was running and should play again + if [ "$spotify_cmd" = "PlayPause" ] + then + if [ "$(ps -A | grep spotify)" != "" ] + then + dbus-send --print-reply --dest=org.mpris.MediaPlayer2.spotify /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.$spotify_cmd + else + mpc $1 + fi + elif [ "$(lsof | grep /dev/snd | grep spotify)" != "" ] + then + dbus-send --print-reply --dest=org.mpris.MediaPlayer2.spotify /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.$spotify_cmd + elif [ "$(mpc | grep '\[' | cut -f1 -d' ')" != "" ] + then + mpc $1 &>/dev/null + fi +fi -- cgit v1.2.3